С чего все началось или у меня это в первый раз
Я мечтал об этом, я читал об этом статьи и смотрел как это делают другие, но сам никогда не решался, точнее, робкие попытки были, но дело до конца так и не доходило…
И вот он выпал случай - я случайно наткнулся на рекламу в инстаграмм, показал ее другу и мы решили сделать это вдвоем! Так человек переигравший практически во все и умеющий на сервере творить темную магию (бэкенд же как никак), и человек, который помешан на алгоритмах и почти ни во что не играющий решились и подали заявку на участие в хакатоне!
До начала у нас было две недели чтобы понять во что мы ввязались. Мы читали статьи, искали движки и даже не догадывались что нас ждёт.
Суббота 9 утра, тема. Словно у нас все под контролем мы завтракаем и обсуждаем что делать? Бежать было поздно и мы стали думать.
4D - никто не может;
1D - никто не поймет;
3D - в топку - долго не успеем, значит остаётся 2D.
Что это будет?
Настройка с картами и полем и ещё это РПГ и онлайн и чтобы как в Марио но с теннисом и танком!
Фантазия работала как безумная и всячески отказывалась дружить с логикой и разумом, но вдоволь набесившись устала и оставила за собой кучу из идей и отрицаний.
- Генерированный лабиринт!
- А что с ним делать?
- Накидать мобов...
- А они что будут делать?
- Эммм... Всякое...
- А если платформер и чтобы уровень менялся!
- А если уровень будет просто дырка?
- А мы проверим. И ещё мобов накидаем!
- Нет, это будут многие делать...
- Давай сделаем свой файтинг! Как My brute!
- Это же скучно, ты там ничего не делаешь...
- А мы будем статы сами менять!
- А бой? Просто смотреть и все? Давай сделаем так чтобы можно было выбрать куда ты бьешь и что защищаешь, и так каждый удар!
- Интересно, а ещё можно добавить подписи урона, защиты, и контратаки, PVP и собаку.
-И Джона Уика! Который случайно может оказаться твоим противником, но ты это узнаёшь только если убиваешь его собаку!
-Да. Но давай порядку, у нас всего сорок часов и мы должны сделать в первую очередь механику, а потом что успеем.
- Жалко, что у нас нет лишних десяти часов. Мы бы могли все успеть...
- Может и успеем, ещё рано отчаиваться.
С приподнятым настроением мы принялись за работу.
Как расставлялись приоритеты и появлялась игра.
Для начала мы определились с механикой. За основу изменения статов персонажа был взят всем известный S.P.E.C.I.A.L:
Strength – определяла максимальную силу удара;
Perception – ты точнее наносишь удары и от этого они чаще становятся сильными;
Endurance – показатель здоровья;
Charisma – ну как такого красавца можно ударить;
Intelligence – умный, значит можешь придумать как себя защитить;
Agility – ловкий, значит сможешь чаще наносить удары;
Luck – а удача позволяет иногда наносить рикошетные удары если смог себя защитить.
На просторах интернета мы нашли спрайты Fallout Shelter, и взяли их для визуальной части.
Следующим шагом было сделать прототипы, и пока Андрей настраивал API, я взялся за хорошо знакомый мне JS, чтобы мы могли потестить пришедшую нам идею.
Через несколько часов у нас была готова первая версия механики боя. Здесь еще не было всех параметров, но мы могли бить противника и защищаться.
Идея была подтверждена, и мы продолжили.
Игра должна была состоять из четырех основных сцен: страница входа, профиль персонажа, арена и рейтинг игроков.
Приоритетными стали профиль и арена, ибо без одного не может быть другого.
Пока Андрей переносил механику боя на сервер и настраивал запросы для получения и отправки данных – я творил и ни в чем себе не отказывал.
Так у нас получились сцена профиля.
И сцена арены.
Где-то в районе пяти часов утра у нас была готова главная страница и простая логика боя, основанная только на статах силы, здоровья и защиты.
Игра тогда еще называлаcь Fallout Arena. Также, к этому времени мы поняли, что не успеем написать логику для собаки, оружия, Джона Уика и режима PVP. Поэтому сосредоточились на настройке остальных статов, механики рандомизации и баланса PVE боя. Параллельно мы добавили сцену статистики и сцену в конце боя (для выбора следующего или выхода в профиль).
К шести часам вечера у нас уже почти все было готово. Андрей настраивал бесперебойную работу сервера и тестил боевку, а я взялся за отладку переходов и вывода нужной информации. Чтобы игроку было интереснее, мы после трех удачных боев добавляли одно свободное очко к статам. Параллельно родились идеи: добавить звуков, немного анимации, так появилась рандомная смена скина противника и локации, заработала возможность менять себе скин. На первом же попавшимся сайте с музыкой мы нашли трек лист с подходящей музыкой и звуками. Фантазия, нужно сказать, у нас и так не особо развитая, а после тридцатитрех часов без сна она и вовсе отказывалась работать, поэтому звуков нам понадобилось немного.
В восемь часов наш проект был готов, и мы начали тестить и все еще править треклятый баланс. Через час мы поняли – все! Это то, что мы хотели, и нас все устраивает (почти)!
Впечатления, эмоции и планы
Это был наш первый опыт, связанный с созданием полноценной игры. До этого у нас были только мечты, планы и какая-то неуверенность в себе, поэтому мы каждый раз откладывали идею сесть и написать что-нибудь полноценное. Этот хакатон позволил нам поверить в себя и принес нам бурю эмоций от того, что мы дошли до конца! Мы решили не забывать то чувство, которое мы испытали от запуска нашего первого билда, и не забрасывать геймдев.
К сожалению, нам не хватило времени и, возможно, опыта и сил чтобы реализовать все идеи, но, несмотря на то, что хакатон закончился – мы продолжим делать этот проект и добавим анимацию персонажей, больше звуков, PVP и Джона Уика с собакой и пушками.
Выбранный нами движок позволяет делать браузерную версию и, возможно, вскоре она появится на каком-нибудь портале в расширенной версии.
В планах у нас добавить все хотелки и потихоньку поменять визуальный вид игры, потому что Fallout это хорошо, а авторские права нарушать плохо.
P.S.: Кто заметил пасхалку на главной странице – молодец :)
Комментарий недоступен
Спасибо за отзыв) мы тоже думали отмечать куда наносится удар от NPC и делать подписи что сейчас произошло (атака, контратака итд...) Но уже скорее не хватило сил чем времени. Мы только к среде определились что у нас будет ГоДот, который мы в первый раз видели, и поэтому бессонные ночи у нас начались чуть раньше)