Найти тему

Elemental collision. Игра, написанная на телефоне и для телефона. Мои эксперименты с языком Processing

Здравствуй, читатель, я — Арсений — писатель-программист. Именно так я отвечал на вопрос "Кто я?" в тот период, когда писал эту игру.

Как моя игра должна выглядеть в моём предсталении
Как моя игра должна выглядеть в моём предсталении

Всё началось с того, что мой друг по учёбе поделился со мной приложением на смартфон — APDE(Android Processing Development Environment, или же среда разработки для языка Processing, для операционной системы Андроид).

Интерфейс APDE
Интерфейс APDE

И там была папка с образцами, для демонстрации физики. На основе одного из образцов я и сделал первый билд в своей игры. И поначалу я не ставил перед собой цели разработать игру, просто начал менять параметры программы и смотреть, что произойдёт. Подробнее об этом в моей будущей статье про APDE.

Я отключал гравитацию, превращал шарики в чёрные дыры, убирал трение и шарики разгонялись до нереальных скоростей, расширял поле, а затем добавлял управление камерой и мини-карту. К сожалению, все эти эксперименты были утеряны.

И так я, потихоньку, меняя элемент за элементом пришёл к концепции игры по правилам "Камень, ножницы, бумага" где два шарика должны менять цвет на тот, который бъёт их врага, догонять друг друга и уклоняться.

Процесс разработки напоминал мне сложную мобильную головоломку - по подсказкам компилятора надо догадаться, где ты совершил ошибку и исправить её, а потом ещё одну и ещё одну, пока всё не заработает так, как ты хотел и тебе не придёт в голову идея добавить в программу ещё одну функцию.

Что довольно сложно, потому что, к сожалению, программа не подсвечивает твои опечатки, как, например Microsoft Visual Studio. Так что поиск ошибок порой занимал дни. учитывая то, что программирование на телефоне никогда не являлось моим основным занятием.

Но это было просто интересно и, собрав уже более-менее рабочий билд, я выложил его в сеть, на своём аккаунте на Фикбуке, ссылкой на Гугл Диск.

Дальше я продолжал учится в колледже, иногда допиливал программу, на уроках или перемене. но уже реже.

Я давно хотел сделать для этой игры мультиплеер на двух игроков. и решил реализовать его на компьютере

У меня получилось воспроизвести тот же функционал, что и на телефоне, но идея мультитлеера с одной клавиатуры была мертворождённой. Она просто не могла обработать столько одновременных нажатий.

А потом я разбил телефон и вместе с ним канул в лету билд игры. И я на некоторое время бросил идею разрабатывать игры с телефона. Через некоторое время я вспомнил о том, что у меня осталась в сети условно-рабочая версия моей игры.

И я как-то решил восстановить потерянный код и продолжить разработку игры, И больше его не терять. Ну и сохранить его на тот случай, если опять всё полетит.

Сказано-сделано. Было проще и быстрее, но только потому, что я знал, чего хотел добиться. Заодно избавился от странного бага, из-за которого противник исчезал с поля боя.

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

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

Но всё чудом заработало, когда я спрятал в коменты мои предыдущие попытки прикрутить к программе текстурки.

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

Библиотеки в тех образцах, что я нашёл, не использовались.

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

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

А вы бы стали разрабатывать программы для телефона на телефоне? Что, по вашему мнению, мне бы стоило добавить или исправить?