Linha de Experiência manual.

13 Respostas   753 Visualizações

0 Membros e 1 Visitante estão vendo este tópico.

Rawen

Tópico criado em: 09/07/2016 às 16:10 - Última modificação por Skyloftian em 20/07/2016 às 22:25

Não importa a forma, mas há uma maneira de colocar os valores de todos os níveis manualmente? Digo, colocando valor por valor, exemplo: Nível 1-2= 300 nível 2-3= 400, e assim por diante. Eu fiz uma fórmula para calcular os valores manualmente, mas preciso arrumar uma forma, nem que seja por script.
-Abraços do Manec, até*

MendigoDoMato

  • *
  • Posts: 40
  • Ouros: 4
Resposta 1: 10/07/2016 às 11:02

Por script deve dar sim, mas não sei fazer...você pode fazer a variável XP...acho que pode dar certo.

Cria o evento comum lv rodando em paralelo desde o começo do jogo, (você falou que tem uma formula para o lv em função da xp, certo ?) é só criar uma variável e fazer as operações, e no final é só botar " mudar lv do herói-especificar por variável"

Se você acha que pode ser uma opção e não me entendeu muito bem é só falar.

Rawen

Resposta 2: 10/07/2016 às 11:25

Eu entendi, mas o nível do data base ia continuar correndo, e ia bugar, não?

MendigoDoMato

  • *
  • Posts: 40
  • Ouros: 4
Resposta 3: 10/07/2016 às 11:33 - Última modificação por MendigoDoMato em 10/07/2016 às 11:36

eu acho que não, o jogo te da a opção de mudar o lv por evento...acho que quando você muda dessa forma o jogo completa o seu xp para o próximo lv. só testando...

mas você teria que remover as outras fontes de xp 

Rawen

Resposta 4: 10/07/2016 às 11:54

Valeu, jovem, mas irei usar a curva básica do maker, dei uma manipulada básica e acho que vai dar certo.

MendigoDoMato

  • *
  • Posts: 40
  • Ouros: 4
Resposta 5: 10/07/2016 às 11:57

show, é o ideal mesmo

Geraldo de Rívia

  • Mito
  • *
  • Posts: 4452
  • Ouros: 3887
  • O vento está sibilando.
  • Medalhas Vencedor do Protótipo Premiado Participantes do Maps Together 2
Resposta 6: 10/07/2016 às 12:11

Parece que já encontrou uma saída, mas ainda assim, se quiser algo mais personalizado, há um tempo
tentei fazer essa curva manualmente. Resultou num scriptzinho, cada level é configurado manualmente.
Bem mais trabalho, mas tem a compensação de ser o valor exato que queremos.

O módulo New_Exp é onde tu irá modificar e criar a "tabela" de exp que tu quer. Note que 0 é a quantidade
de exp necessária para chegar ao nível 1, pois é o nível que começamos. Para ir para o 2, é necessário 100,
isso em relação à classe de ID 1 no banco de dados. A classe de ID 2 precisaria de 125, como pode ver.
É só continuar adicionando as outras classes seguindo o modelo.
No método exp_for_level não é necessário editar, creio eu.


Código: [Selecionar]
#==============================================================================
# Novos valores de experiência.
#==============================================================================
module New_Exp
  EXP = {
    1 => [0, 100, 200],
    2 => [0, 125, 275],
  }
end

class Game_Actor < Game_Battler
  def exp_for_level(level)
    return New_Exp::EXP[@class_id][level - 1]
  end
end

Rawen

Resposta 7: 10/07/2016 às 12:28

Putz, Gerar, isso é muito útil, o que seria o 2, ali abaixo do primeiro módulo? O ID da segunda classe?

Geraldo de Rívia

  • Mito
  • *
  • Posts: 4452
  • Ouros: 3887
  • O vento está sibilando.
  • Medalhas Vencedor do Protótipo Premiado Participantes do Maps Together 2
Resposta 8: 10/07/2016 às 12:53

Putz, Gerar, isso é muito útil, o que seria o 2, ali abaixo do primeiro módulo? O ID da segunda classe?
Não tá embaixo, tá dentro xD
Sim, o ID da segunda classe. Para adicionar mais é só seguir o exemplo. No caso, só coloquei o tanto necessário
para os níveis 1 e 2.

Rawen

Resposta 9: 10/07/2016 às 12:59

Valeu, isso vai ser muito útil. Assim posso ter uma ideia melhor de como fazer a relação monstro-jogador. Valeu mesmo, Gerar.

Syureri

Resposta 10: 10/07/2016 às 13:59

Pra reforçar mais ainda o que o Gerar citou, tem também o script de Exp Tables do Hime.
Ele permite, in a nutshell, você definir os valores de exp nível por nível manualmente.
Basta ler as instruções no tópico lá.

Conspiracy

  • *
  • Posts: 91
  • Ouros: 30
  • Eventer, Roteirista, e revendo ticket de loteria..
Resposta 11: 20/07/2016 às 21:57

Bom, se você tem a fórmula, e tem o script do gerar, provavelmente é possivel fazer um script em loop que passa a fórmula e adiciona no vetor de exp.
Algo como um
Código: [Selecionar]
#x vai ser a variavel usada para o level.
x = 0
#while para o x assumir todos os valores do 1 ao maximo.
while x < 100
  array.push(SUA_FORMULA(x))
  x++
end
Não sei direito a sintaxe do ruby, mas é só substituir as coisas ali, e colocar na sintaxe correta.
Writing codes. Writing novels. Writing... Fates.

Rawen

Resposta 12: 20/07/2016 às 22:09

Valeu, mesmo, cara. Mas já tá resolvido aqui, faz um tempinho. Mas valeu por perder tempo comigo
 :XD:

Gabriel

Resposta 13: 20/07/2016 às 22:25

Então, trancando aqui! :lock: