forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Готовые проекты сообщества boolean (http://forum.boolean.name/forumdisplay.php?f=140)
-   -   [релиз] Winged Crushers (в девичестве — "Самолётик") (http://forum.boolean.name/showthread.php?t=18167)

ABTOMAT 09.05.2013 02:27

[релиз] Winged Crushers (в девичестве — "Самолётик")
 


Итак, свершилось! Я высрал своё говно во ВКонтакте!
Работает таблица рекордов.
Ставьте лайки, френдите, показывайте друзьям (ну или что там на ВК принято?).
Также можно излить бугурт по поводу глюков, тормозов и прочих издержек.

Здесь находится журнал разработки. Там же можно почитать исходники.

Итоги.

Я трудился над этой игрой более трёх недель. От концепта:



К реализации.

Изначально не предполагалось, что "Самолётик" будет полноценной игрой. Вообще, я начал изучать WebGL для того, чтобы сделать кроссплатформенный ирёхмерный игровой проект с совершенно другим геймплеем. Но стало понятно, что этот грандиозный замысел дойдёт до играбельного состояния ещё не скоро, а играбельное нечто хотелось сделать как можно скорее.

Первым делом — самолёты!

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

Это был мой первый опыт создания полноценной игры не только на JavaScript, но и на GAPI без использования уже готового движка. Пришлось осиливать линейную алгебру, кватернионы. Пожалуй, за 3 недели узнал куда больше, чем за первые 2 курса университета. Огромное спасибо Mr_F и falcon за то, что терпеливо отвечали на мои тупые вопросы по части математики, без них я бы тупил@тормозил куда дольше.

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

4 года назад я нашёл работу в Web и тогда практически забросил игрострой. Впрочем, оказалось, что навыки, будучи очищены от пыли, неплохо сохранились. Что бы там ни говорили, а старина Блиц многому научил.

Игра вышла вполне играбельной по скорости на современном компьютере. Да я даже на ноуте 2009 года выпуска играл, и на компах в университете. Так что, что бы там ни говорили, вопрос железа не так уж критичен. В последнем случае WebGL — явный плюс, ведь в учреждениях нет возможности поставить, например, Юнити Плеер. Конечно, на древней рухляди не заведётся, но в универе уже компы не первой свежести, и тем не менее, а доля рухляди всё уменьшается, и время работает на нас. В Microsoft обещали поддержку WebGL к версии 11 Internet Explorer'а, так что скоро можно будет говорить о поддержке WebGL "искаропке". Opera скоро перейдёт на Webkit, а, значит искоробочный WebGL будет и для [s]Операстов[/s] любителей Оперы.

Мысли по оптимизации.


Что же больше всего занимает времени в Самолётах кроме собственно рисовки треугольников? Профилирование показало: математика. Сборщик мусора, который давеча ругали, где-то там, далеко не на первых позициях. Да, JavaScript не очень хорошо годится для выполнения операций над векторами, матрицами и кватернионами. Тут, как ни крути, компилируемые языки программирования по скорости будут намного быстрее JS, с этим не поспоришь. С другой стороны, в движке у меня много нерациональных вещей, и количество мат. операций линейной алгебры можно сократить очень значительно. А ещё если учесть, что у меня игра-то не очень рационально построена (каждый кубик в конструкции самолёта — отдельный объект со всей математикой), то математику можно очень сильно сократить.

Отсюда можно вывести общее правило разработки на WebGL: JavaScript — дорого, треугольники и шейдеры — дёшево. Это значит, что если вставить высокополигональные модели, навесить на них хайрез-текстуры и всякие бампы с параллаксами, то FPS упадёт не сильно.

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

Даёшь WebGL в народ!


Что же в итоге? За 3 недели — полноценная игра без пипитарных движков. ЖНУ/ПИНУС ШВАБОДКА ЖОПАЕЛЬ! Работает везде где есть арбузер с WebGL (а он есть на всех десктопах, части Андроидов, а скоро будет повсеместно). WebGL играм быть! Это дело перспективное! Больше WebGL-игор, хороших и разных!

Ах да, сырцы. В них, правда, отсутствует часть, ответственная за таблицу рекордов (по понятным причинам), но всё остальное на месте. Выкладывается под лицензией GNU GPL.

Исходные коды.

Arton 09.05.2013 03:48

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Ня! я больше всех набил :)

ABTOMAT 09.05.2013 06:33

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Если у кого-то не работает сохранение рекорда, сообщите (были косяки, но, вроде, исправил)

LLI.T.A.L.K.E.R. 09.05.2013 11:09

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Исхкод открыт?
Как на счет защиты от неправомерного ввода данных в таблицу?

Aaa y Bac vk-meTog gaHHbIx, Ho Bce }|{e..

Android 09.05.2013 12:29

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
А ограничение передвижения кто делать будет?
Как-то сразу нажал на "вперед вправо" и улетел далеко-далеко, потом еле вернулся обратно на поле боя.

ABTOMAT 09.05.2013 18:37

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Цитата:

Сообщение от Android (Сообщение 258856)
А ограничение передвижения кто делать будет?
Как-то сразу нажал на "вперед вправо" и улетел далеко-далеко, потом еле вернулся обратно на поле боя.

Да наверное не буду делать.

ABTOMAT 10.05.2013 04:03

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Обновил первый пост умными мыслями.
Добавил исходники.

Nex 10.05.2013 09:43

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Поиграл, вышел, захотел еще раз поиграть, но в "приложениях" игры нет. Хотя так же играл в роботы pax'a и в леталки эвила и в приложениях их игра появилась. :(
И еще не мешало бы добавить кнопочку отключения звука. Некоторые други срали кирпичами из за отсутствия данной фичи.

ABTOMAT 10.05.2013 15:30

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Эх, хорошо. Сделаю кнопку отключения звука и ограничу перемещение.
Меня просто удручает, что нужно теперь "тянуть" две версии: с открытыми сырцами и публичную, с таблицей рекордов.

ABTOMAT 10.05.2013 17:35

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Сделал отключение звука на кнопку M.
А вот ограничение перемещения дурно влияет на геймплей. Убрал сразу после запила.

EvilChaotic 12.05.2013 23:50

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Чет я не могу поиграть нормально, после 5 секунд, камера улетает куда-то в небо и трясется. Зарегайся тут: http://appboost.ru/ Поставь баннер буста, нарисуй один свой собственный рекламный баннер и будет тебе посещалка и люди. Отправь приложение на модерацию, получишь еще бесплатную рекламу от самого вк. Если не прикрутить платежку - то ничего не заработаешь, если хотел, конечно.

ABTOMAT 13.05.2013 00:38

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Спасибо за дельный совет!
Да как-то даже смешно эту демку продвигать.
Но как только запилю что-то дельное, то непременно попробую!
На модерацию отправил ещё 9 мая. Но модераторы до сих пор, видимо, за дедов накатывают :-(

Данил 15.05.2013 16:14

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Цитата:

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

Цитата:

Минимум два уровня/локации;
Исключение: Головоломки;
Минимум два вида оружия или два разных способа воздействия на врага;
Исключение: Оружие в игре не предусмотрено жанром;
Минимум два вида врага отличающихся по своему вооружению или стратегии перемещения;
Исключение: Враг, как таковой, не предусмотрен жанром, например: симуляторы, логические игры и пр.;
Минимум три вида бонусов (пополнение жизней, оружия...);
Исключение: Бонусы не предусмотрены жанром, например: Симуляторы;

При контрольном тесте проекта не возникают ошибки выбрасывающие игрока из игры;
Итого: как бы это смешно не звучало, но этому проекту не место в этом разделе.

Phantom 18.05.2013 20:25

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Я на первых трёх местах. Первое - с огромным отрывом от остальных. Почему нельзя посмотреть рекорды, находясь в игре? В начальной заставке написано, что нужно нажать "R". Не работает. Хочу, чтобы все видели какой я задрот.

Randomize 20.05.2013 03:18

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Цитата:

Сообщение от Данил (Сообщение 259366)
Итого: как бы это смешно не звучало, но этому проекту не место в этом разделе.

Я думаю эти правила надо упростить.
Проект работает, в меру играбелен и закончен.

ABTOMAT 20.05.2013 03:21

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Хорошо, игра будет доделана в соответствии с этими правилами как только у меня дойдут руки.
Всё равно игра не прошла модерацию на ВК потому что модер взбугуртил из-за того, что таблица рекордов открывается в отдельном окне и с хацкирами надо что-то делать.
А до тех пор тема переносится в болтовню.
Правила мне тоже не нравятся, но это отдельный вопрос.

Wegox 20.05.2013 19:27

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Цитата:

Сообщение от ABTOMAT (Сообщение 259630)
Хорошо, игра будет доделана в соответствии с этими правилами как только у меня дойдут руки.
Всё равно игра не прошла модерацию на ВК потому что модер взбугуртил из-за того, что таблица рекордов открывается в отдельном окне и с хацкирами надо что-то делать.
А до тех пор тема переносится в болтовню.
Правила мне тоже не нравятся, но это отдельный вопрос.

Да там не много надо доделать то чтобы в правила уложится...
Ну например два вида оружия - пусть по земле танки едут, а самолёт бомбы на них сыпет:)
Ну с картой всё проще тут либо вода, либо день/ночь...
ВК тебя ещё умолять будут, чтобы ты им разрешил модерацию своей игры провести:-D
Ах да, ну и про юмор не забывай:-) ABTOMAT не ну бонусы разные могут быть мало ли во-что можно превратить самолёт:) , да и пародии на игры
можно делать...

;)

ABTOMAT 21.05.2013 07:28

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 


Ссылка

Добавил:
1. Возможность протаранить врага (второй способ воздействия на врага)
2. Ещё два вида бонусов, дающие очки (сердечко теперь не даёт очки, а только лечит).

Исправил:
Камера больше не улетает (такое случалось при FPS ниже 20, поэтому я не мог долго словить).

Осталось:
1. Другая локация (думаю, сделать чтоб вместо деревьев появлялись домики, типа, город).
2. Дополнить справку этими изменениями.

ARA 21.05.2013 08:28

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 
Ссылку в студию!
Я буду каждый раз требовать тебя добавлять ссылку на игру к каждому апдейту и упоминанию об игре, пока ты не запомнишь, что это важно.

Nex 21.05.2013 10:10

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 
Хотелось бы узнать почему игра не добавляется в "приложения"?

Dream 21.05.2013 14:54

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 
и почему не раотает кнопка показа таблицы рекордов
Забвно что можно удерживать пробел, переключится на другое окноа самолётик сам будет летать и стрелять. при должно везении можно долго так летать

Phantom 22.05.2013 08:44

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 
Предложения:
1) При собирании сердечка, когда жизни полные, за него давали бы очки (а то берёшь, но ничего не получаешь)
2) Пусть даже из чёрных самолётов хотя бы очень редко выпадают сердечки

При достижении примерно 1500 очков, на меня прут уже чёрные самолёты, сердечки не выпадают, игра достигла максимума сложности. Я так долетал и до 15000 очков, но скучно. И рука затекает. :-D Может сделать, чтобы сложность нарастала как-то помедленнее. Или после чёрных самолётов ещё как-то усложнить игру.

ABTOMAT 23.05.2013 08:52

Ответ: [доработка] Winged Crushers (в девичестве — "Самолётик")
 

Ссылка на игру на ВК

Новости:

1. Теперь лес сменяется городом. Т.е. новая локация.
2. Справка дополнена новой информацией.
3. Рекорды теперь встроены в саму игру.
4. Изменён алогоритм проверки запросов в таблицу рекордов, чтобы пресечь имевшую место накрутку очков.
5. Таблица рекордов обнулена (извините, если кто-то "задрочил", мера вынужденная :sorry: )


Проверяем выдвинутые ранее претензии:

Минимум два уровня/локации; — Да (лес и город).
Минимум два вида оружия или два разных способа воздействия на врага; — Да (пули и таран)
Минимум два вида врага отличающихся по своему вооружению или стратегии перемещения; — Да (врагов 4 вида, у всех разный дамаг).
Минимум три вида бонусов (пополнение жизней, оружия...); — Да (Сердечко, Зелёный Бонус, Синий Бонус)
При контрольном тесте проекта не возникают ошибки выбрасывающие игрока из игры; — Да (Баг с улётом камеры исправил, а других мне словить не удалось)


За сим размещается заявка на размещение проекта в "готовых проектах".

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

Ссылка на игру на ВК

Цитата:

Сообщение от Nex (Сообщение 259700)
Хотелось бы узнать почему игра не добавляется в "приложения"?

Точно не знаю, но, видимо, из-за того, что игра ещё не прошла модерацию. Посмотрим, изменится ли это, когда игра будет проверена. У меня у самого добавляется, но, видимо, оттого, что я сам являюсь её автором.

LLI.T.A.L.K.E.R. 24.05.2013 02:41

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
у меня радио плеер не прошёл (дер)модерацию, но проверил - через брата добавил в его список

ABTOMAT 24.05.2013 03:48

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 259915)
у меня радио плеер не прошёл (дер)модерацию, но проверил - через брата добавил в его список

Что было указано в качестве причины отказа?

St_AnGer 24.05.2013 09:27

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Сейчас кнопка "добавить приложение" появилась, до этого не было её. Может из за того что отправил на модерацию?

ABTOMAT 27.05.2013 22:40

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
Ура! Приложение прошло модерацию!
Цитата:

Приложение одобрено администрацией и доступно для поиска по названию в каталоге.

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

Но впрочем главное теперь то, что игра официально закончена. Больше я к ней возвращаться не буду.
Пришла пора делать что-то новое!

pax 27.05.2013 23:29

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
В новые попасть можно помоему за 30к голосов...

ABTOMAT 28.05.2013 01:26

Ответ: [релиз] Winged Crushers (в девичестве — "Самолётик")
 
А, лол, это замануха такая :-D Ну тогда не буду.


Часовой пояс GMT +4, время: 15:22.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot