O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Dúvida Sobre Variable.

Iniciado por speed2050, 21/04/2018 às 16:03

21/04/2018 às 16:03 Última edição: 21/04/2018 às 17:24 por Corvo
Bom dia gente, gostaria de tirar uma dúvida, atualmente desenvolvo meu projeto a uns 4 meses,
e nunca precisei mexer com variables, porém hoje decidi criar um "baú de recompensas" com recompensas aleatórias.

eu queria dessa forma :
toda vez que eu entro na dungeon, abro um baú, e ele me da coisas diferentes toda vez, vamos dizer que
os itens mais fáceis de serem entregues pelo baú fosse por exemplo :

*Hp potion      ( grandes chances de vim )
*100 de gold    ( poucas chances )
*1 Espada     ( poucas chances )
* comida    ( grandes chances )
*mp potion ( poucas chances de vim )

e que se possível mostrasse também acompanhado do item uma
mensagem do que foi recebido. Será que existe um escript para recompensas aleatórias ?
ou algum tutorial sobre como fazer isso por variable ou common event. desde já grato
meu email > rodrigokoerber18@gmail.com  :br:


21/04/2018 às 16:16 #1 Última edição: 21/04/2018 às 16:25 por Kazzter
Isso é bem fácil de fazer. O que você precisa é criar uma variável chamada Chances.
Então, abra a sua janela de eventos e selecione o comando "Controle de Variável".
Você então seleciona que o número selecionado seja um aleatório de 1 a 10 por exemplo, e dê OK.
Feito isso, basta criar condições para definir as porcentagens de cada item vir.
Crie uma condição que caso a variável Chances seja de 1 a 5, o item que possui uma chance alta de aparecer, seja dado ao jogador, e ative a opção de exceção.
Dentro da exceção da condição acima, crie outra condição que caso a variável Chances seja de 5 a 7, o item que possui uma chance média de aparecer, seja dado ao jogador e ative novamente a opção de exceção.
Dentro da exceção da condição acima, crie outra condição que caso a variável Chances seja de 8 a 9, o item que possui uma chance baixa de aparecer, seja dado ao jogador e ative mais uma vez a opção de exceção.
Por fim, dentro da exceção desta condição acima, crie outra condição que caso a variável Chances seja de 10, o item que possui uma chance baixíssima de aparecer seja dado ao jogador, e desta vez deixe a opção de exceção desativada.

Feito isso, está pronto. Vou explicar o funcionamento:
Basicamente, a variável vai selecionar um número aleatório de 1 a 10 para selecionar qual item irá cair.
A primeira condição selecionará os números de 1 a 5, ou seja, 50% de chance do item vir, uma chance alta.
A segunda selecionará os números de 5 a 7, ou seja, 30% de chance do item vir, uma chance média.
A terceira selecionará os números de 8 a 9, ou seja, 20% de chance do item vir, uma chance baixa.
Por fim, a quarta selecionará somente o número 10, ou seja, 10% de chance do item vir, uma chance baixíssima.

Claro que isso é totalmente aleatório, então caso o item com chance baixíssima ou baixa apareça várias vezes, não está errado, é porque é assim que aleatoridades funcionam. Espero que tenha compreendido.

Esta é somente a base do sistema, você pode fazer de maneiras diferentes como:
Duas condições, a primeira que exige que a variável esteja entre 1 a 5 e a outra entre 6 a 10 por exemplo, o que significa que é 50% de chance do primeiro item aparecer e 50% de chance do segundo...

Três condições, a primeira que exige que a variável esteja entre 1 e 2 e a outra entre 3 a 5 e a outra entre 6 a 10. Respectivamente, chances muito baixa, média e alta.

Você pode modificar e fazer da maneira que preferir e que se encaixar melhor.

Para mostrar a mensagem basta utilizar o comando mostrar mensagem embaixo do comando de dar o item, e colocar uma mensagem:
"Parabéns, você ganhou o item Poção" e fazer uma mensagem dessa pra cada um dos itens.


Pra que o baú seja renovado toda vez que você entre na dungeon, pode fazer de algumas maneiras:
Maneira Fácil: Utilizando o comando de evento "Apagar evento temporário", o baú vai desaparecer e quando você sair e voltar ao mapa ele vai estar lá de volta.
Maneira Não Tão Fácil: Se não quiser que o baú desapareça, você pode fazer com que uma switch chamada "Baú" ou algo assim seja ativada após o baú ser aberto, criar uma nova aba no evento, e nas condições daquela aba você pode colocar que a switch "Baú" esteja ativada. O gráfico do evento pode ser o baú aberto. Não é necessário colocar nenhum comando de evento. Aí, na porta da dungeon no evento de teletransporte pra fora dela, você pode colocar um comando de evento para desativar a switch "Baú", assim o baú voltará ao seu estado original.

Espero que tenha compreendido.

21/04/2018 às 16:35 #2 Última edição: 21/04/2018 às 16:49 por speed2050
Citação de: Kazzter online 21/04/2018 às 16:16
Isso é bem fácil de fazer. O que você precisa é criar uma variável chamada Chances.
Então, abra a sua janela de eventos e selecione o comando "Controle de Variável".
Você então seleciona que o número selecionado seja um aleatório de 1 a 10 por exemplo, e dê OK.
Feito isso, basta criar condições para definir as porcentagens de cada item vir.
Crie uma condição que caso a variável Chances seja de 1 a 5, o item que possui uma chance alta de aparecer, seja dado ao jogador, e ative a opção de exceção.
Dentro da exceção da condição acima, crie outra condição que caso a variável Chances seja de 5 a 7, o item que possui uma chance média de aparecer, seja dado ao jogador e ative novamente a opção de exceção.
Dentro da exceção da condição acima, crie outra condição que caso a variável Chances seja de 8 a 9, o item que possui uma chance baixa de aparecer, seja dado ao jogador e ative mais uma vez a opção de exceção.
Por fim, dentro da exceção desta condição acima, crie outra condição que caso a variável Chances seja de 10, o item que possui uma chance baixíssima de aparecer seja dado ao jogador, e desta vez deixe a opção de exceção desativada.

Feito isso, está pronto. Vou explicar o funcionamento:
Basicamente, a variável vai selecionar um número aleatório de 1 a 10 para selecionar qual item irá cair.
A primeira condição selecionará os números de 1 a 5, ou seja, 50% de chance do item vir, uma chance alta.
A segunda selecionará os números de 5 a 7, ou seja, 30% de chance do item vir, uma chance média.
A terceira selecionará os números de 8 a 9, ou seja, 20% de chance do item vir, uma chance baixa.
Por fim, a quarta selecionará somente o número 10, ou seja, 10% de chance do item vir, uma chance baixíssima.

Claro que isso é totalmente aleatório, então caso o item com chance baixíssima ou baixa apareça várias vezes, não está errado, é porque é assim que aleatoridades funcionam. Espero que tenha compreendido.

Esta é somente a base do sistema, você pode fazer de maneiras diferentes como:
Duas condições, a primeira que exige que a variável esteja entre 1 a 5 e a outra entre 6 a 10 por exemplo, o que significa que é 50% de chance do primeiro item aparecer e 50% de chance do segundo...

Três condições, a primeira que exige que a variável esteja entre 1 e 2 e a outra entre 3 a 5 e a outra entre 6 a 10. Respectivamente, chances muito baixa, média e alta.

Você pode modificar e fazer da maneira que preferir e que se encaixar melhor.

Para mostrar a mensagem basta utilizar o comando mostrar mensagem embaixo do comando de dar o item, e colocar uma mensagem:
"Parabéns, você ganhou o item Poção" e fazer uma mensagem dessa pra cada um dos itens.


Pra que o baú seja renovado toda vez que você entre na dungeon, pode fazer de algumas maneiras:
Maneira Fácil: Utilizando o comando de evento "Apagar evento temporário", o baú vai desaparecer e quando você sair e voltar ao mapa ele vai estar lá de volta.
Maneira Não Tão Fácil: Se não quiser que o baú desapareça, você pode fazer com que uma switch chamada "Baú" ou algo assim seja ativada após o baú ser aberto, criar uma nova aba no evento, e nas condições daquela aba você pode colocar que a switch "Baú" esteja ativada. O gráfico do evento pode ser o baú aberto. Não é necessário colocar nenhum comando de evento. Aí, na porta da dungeon no evento de teletransporte pra fora dela, você pode colocar um comando de evento para desativar a switch "Baú", assim o baú voltará ao seu estado original.

Espero que tenha compreendido.

Estou na parte de condições ( condição chances ), e não há opções de definição de 1a5, apenas opções como :

equal to
or greater
less than or equal to
( entre outras que não é o caso )

constant onde posso por apenas 1 numero

e mais uma vez "variable"

estou em duvida, nesse item :

"definir as porcentagens de cada item vir.
Crie uma condição que caso a variável Chances seja de 1 a 5"

obs : uso o Vx Ace.

21/04/2018 às 17:09 #3 Última edição: 21/04/2018 às 17:17 por Runes
Citação de: speed2050 online 21/04/2018 às 16:35


Estou na parte de condições ( condição chances ), e não há opções de definição de 1a5, apenas opções como :

equal to
or greater
less than or equal to
( entre outras que não é o caso )

constant onde posso por apenas 1 numero

e mais uma vez "variable"

estou em duvida, nesse item :

"definir as porcentagens de cada item vir.
Crie uma condição que caso a variável Chances seja de 1 a 5"

obs : uso o Vx Ace.

Fiz mais ou menos um sistema com o baú aleatório para vc, mais ou menos baseado no q Kazzter falou acima:

Tente estuda-lo, pode ajuda-lo : http://www.mediafire.com/file/fj5m7zr2wce8j2o/Bau+aleat%C3%B3rio.rar

Espero q ajude :ok: e boa sorte com o projeto ^^

Respondendo a sua pergunta se vc por de 1 a 5. A possibilidade de pegar qlq um dos 5 itens será a msm.

Vamos considerar q a variável valha 1:

"equal to" significa q o evento ocorrerá qd a variavel for exatamente 1;
"Or great" significa q o evento ocorrerá qd a variavel for igual ou maior q 1;
"Less that or equal to" significa q ocorrerá qd a variavel for menor ou igual a 1;
Existem diversos caminhos para o mesmo destino, trilhe o seu com cuidado...

Citação de: Runes online 21/04/2018 às 17:09
Fiz mais ou menos um sistema com o baú aleatório para vc, mais ou menos baseado no q Kazzter falou acima:

Tente estuda-lo, pode ajuda-lo : http://www.mediafire.com/file/fj5m7zr2wce8j2o/Bau+aleat%C3%B3rio.rar

Espero q ajude :ok: e boa sorte com o projeto ^^

Caramba obrigado mesmo ! , vou testa-lo e estuda-lo de imediato !