Примечание. Если вы впервые читаете этот дневник разработчиков, в котором я рассказываю историю создания текстовой многопользовательской онлайн-игры в жанре фэнтези, то я предлагаю вам начать с Записи 1 и двигаться дальше. . Эта игра предназначена для всех, в том числе для слабовидящих, которые используют программы чтения с экрана, чтобы читать им вслух экран.

Начиная с последней Записи в дневнике разработчиков, я сосредоточился на аспекте персонажей в игре. Я добавил очки опыта, уровни и характеристики (которые я ранее называл атрибутами — ловкость, мудрость и т. д.). Позвольте мне показать вам, что я сделал.

Уровни и очки опыта

Первое, что я сделал, это создал команду уровня. Когда игрок запускает игру в первый раз, его персонаж будет иметь уровень 0, как показано здесь:

> level 
You are level 0. 
You have 0 experience points, and need another 500 for next level.

Знак «›» перед словом «уровень» указывает на то, что эта строка вводится с проигрывателя. Итак, как мы видим, эта новая команда уровня показывает нам, что мы на уровне 0, и сколько очков опыта нам нужно для следующего уровня. Тогда возникает очевидный вопрос: как нам получить эти «очки опыта», чтобы мы могли перейти на следующий уровень и стать более могущественными? Что ж, со временем будет много способов накопить опыт, но пока нам придется довольствоваться борьбой с нашим единственным врагом в этой игре: зомби.

> look
This spooky cemetery seems to be largely abandoned. There are cracked tombstones everywhere, covered with moss. A temple is visible to the north. 
Exits: north 
You see: a Zombie
> kill zombie 
You have defeated Zombie! 
You receive 300 experience points. 
> kill zombie 
You have been defeated by Zombie!
> kill zombie 
You have defeated Zombie! 
You receive 300 experience points. 
Congratulations, you are now level 1!
> level
You are level 1. 
You have 600 experience points, and need another 500 for next level.

Как вы, возможно, помните из предыдущих записей в этом дневнике разработчиков, у нас пока нет настоящей боевой системы. Игра просто подбрасывает монету, чтобы определить, кто выиграет бой, и с проигравшим ничего не происходит. Что нового на этой неделе, так это то, что победитель получает очки опыта. И после нескольких попыток у нас достаточно очков опыта, чтобы перейти на уровень 1 (мы начали с уровня 0).

Статистика — насколько силен и умен ваш персонаж?

Хорошо, теперь мы повысили уровень — как это делает персонажа более сильным? Само по себе это не так; но это дает нам «очки повышения характеристик», которые мы можем использовать, чтобы сделать нашего персонажа сильнее, умнее, проницательнее и так далее. Теперь я добавил поддержку и для этого. Посмотрите на вывод команды level:

> level 
You are level 1. 
You have 600 experience points, and need another 500 for next level. 
Intelligence:  8 
Charisma    :  8 
Constitution:  8 
Strength    :  8 
Dexterity   :  8 
Perception  :  8 
Wisdom      :  8 
You have 5 unused stat increase points.

Теперь команда выводит список всех наших статов (которые ранее назывались атрибутами. Оказывается, у движка Evennia, который я использую, есть что-то еще, называемое атрибутами, поэтому я решил не использовать этот термин).

Продвижение по уровням позволяет нам увеличивать нашу статистику

Как вы, возможно, заметили выше, у нас также есть пять «очков повышения характеристик», так как мы продвинулись на уровень, который мы, что неудивительно, можем использовать для повышения нашей статистики. В первый раз, когда вы повышаете характеристику, это стоит одно из этих очков. Второй раз, когда вы увеличиваете ту же характеристику, это стоит два очка и так далее. Если мы введем «увеличение», мы увидим, сколько будет стоить увеличение каждой характеристики:

> increase 
The costs to increase your stats are as follows: 
Intelligence:  1 
Charisma    :  1 
Constitution:  1 
Strength    :  1 
Dexterity   :  1 
Perception  :  1 
Wisdom      :  1 
You have 5 unused stat increase points to increase your stats with.

Давайте попробуем немного увеличить нашу силу:

> increase strength 
Your strength has been increased to 9. 
> increase strength 
Your strength has been increased to 10. 
> increase strength 
Unfortunately, you do not have enough stat increase points to do that.

Мы могли позволить себе сделать это дважды, что имеет смысл — первое увеличение стоило одно очко, второе — два, а третье стоило бы три, в результате чего общая сумма увеличилась бы до шести, что на один больше, чем у нас есть. Итак, если мы просто напечатаем «увеличить» еще раз, мы увидим, что это правда:

> increase 
The costs to increase your stats are as follows: 
Intelligence:  1 
Charisma    :  1 
Constitution:  1 
Strength    :  3 
Dexterity   :  1 
Perception  :  1 
Wisdom      :  1 
You have 2 unused stat increase points to increase your stats with.

Помните, что числа, перечисленные выше, показывают, сколько «очков повышения характеристик» потребуется для увеличения каждой из этих характеристик. Чтобы увидеть фактическое значение каждой характеристики теперь, когда мы увеличили нашу силу, мы вернемся к команде уровня:

> level
You have 600 experience points, and need another 500 for next level. 
Intelligence:  8 
Charisma    :  8 
Constitution:  8 
Strength    : 10 
Dexterity   :  8 
Perception  :  8 
Wisdom      :  8 
You have 2 unused stat increase points.

Вывод

Как я упоминал в начале статьи, на прошлой неделе я сосредоточился только на «персонажной» части игры. Это означает, что на этот раз мы заполняем только одно новое поле в нашей модели концентрических кругов:

Что дальше?

Теперь, когда у нас есть поддержка продвижения по уровням и увеличения наших характеристик, я думаю, что сделаю бой немного более интересным, заставив учитывать характеристики (или, по крайней мере, некоторые из них). Возможно, если будет достаточно времени, я тоже добавлю еще несколько комнат в наш доселе крошечный трехкомнатный мирок.

Не стесняйтесь подписаться ниже, чтобы получать уведомления, когда я опубликую следующую запись в дневнике разработчиков. А пока вы также можете присоединиться к нашей группе Facebook, если хотите. Вы также можете связаться со мной в Твиттере.

Если вы хотите иметь возможность читать неограниченное количество статей на Medium, таких как эта, каждый месяц и в то же время поддерживать независимых авторов, рассмотрите возможность подписаться на членство в Medium.

Спасибо за чтение, и увидимся в следующий раз!

Обновление: Часть 4 опубликована!