@JTester

Правильная реализация уровней?

Здравствуйте! Помогите пожалуйста!

Заходит новый игрок, ему в базу ставится
exp = 0;
step_exp = 20;

P.S. exp - сколько он насобирал опыта, step_exp - сколько нужно, чтобы перейти на следующий уровень.

То есть, мы получаем на данный момент, что у игрока 0 уровень (exp / step_exp = 0)

Так вот в чем мой вопрос. Как правильно сделать реализацию выдачи опыта, типа, сколько ему нужно, чтобы перейти на следующий уровень.

Наткнулся на одно видео, просто был обзор. Там у нового игрока вот так
1 уровень (0/20)
Когда у игрока 5-й уровень, то каким-то образом, игрок должен насобирать 320 опыта, чтобы перейти на следующей.

5*20=100
как?

Как мне правильно выдавать step_exp?

Спасибо!
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
wataru
@wataru Куратор тега Математика
Разработчик на С++, экс-олимпиадник.
Обычно опыт задается какой-то експоненциальной или квадратичной функцией. Конкретную формулу можно понять, если посмотреть числа для всех уровней.

Могу предположить, что в описанном вами случае надо 2^level * 10 опыта до следующего уровня.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos
Это все относительно и зависит от вашего желаемого темпа роста игрока. Тут же надо балансировать все - и темп выдачи экспы, и влияение уровня на сложность - и как следствие на темп.

Самое простое - возьмите что то из готовых систем - пасфайндер, спешиал, днд и прочее.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы