Ищу бета тестеров (небольшая игра от пикабушника)

(без рейтинга)


Ищу бета тестеров для моей небольшой игры Manufacturer.


Кто знаком с  Unity, наверняка в курсе, что последний год движок сделал эволюционный скачек в сторону Data Oriented Design. На практике это означает, что разработчик может легко манипулировать тысячами игровых объектов без особой нагрузки на процессор стационарного или мобильного устройства.


Чтобы это проверить все это, освоить все премудрости ECS + Jobs + Burst (а заодно и немного отвлечься от основного проекта), я запилил небольшую игру.

Вот несколько выводов, вынесенных мной из этого проекта:


1) Связка ECS + Jobs + Burst действительно очень крута и дает обещанные результаты.

2) Игра, построенная на Data Oriented Design намного более устойчива к ошибкам. Причина проста -- очень большое количество объектно ориентированного кода просто отпадает. Данные вашей игры каждый кадр пропускаются через цепочку систем (которые, в свою очередь, в идеале представляют из себя цепочку мультипроцессорных job-ов), и все. Никаких туда-сюда-обратно по бесконечному количество объектов-методов-event-ов. Линейный, детерминированный процесс.

3) Но, как показала практика, Data Oriented Design не панацея от всего. Он отлично подходит к частному случаю: большое количество однотипных объектов с несложной логикой. Я бы даже сказал, что дизайн игры нужно делать, держа в уме DOD, планируя использовать его фишки. В других случаях, традиционное ООП + managed structures имеет место быть. И может давать даже более высокую производительность -- если также держать в уме и строить код вокруг работы процессора с кэшем и памятью, обеспечивать locality of reference и т.д.

4) ECS пока находится в стадии preview, и для себя я принял решение пока не применять его в основном проекте. Для меня основным камнем преткновения стал Hybrid.Rendering. Не буду вдаваться в технические детали, но даже для этой небольшой игры мне пришлось сделать fork MeshInstanceRendererSystem, чтобы исправить несколько моментов, дающих ненужную загрузку на процессор вплоть до 5 мс на кадр.Также удалось полностью выключить из процесса бесполезную TransformSystem.


Счастливые обладатели телефонов и планшетов на Android c поддержкой OpenGL 3.0 приглашаются на этот праздник безудержного производственного веселья по ссылке:

Тык


Буду рад отзывам!

Лига Разработчиков Видеоигр

6.8K постов22.2K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

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


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

1
Автор поста оценил этот комментарий
6. Дальше есть еще один забавный баг. Нельзя продать ресурс, если начинаешь производить следующий по заданию
7. Исправь надпись из 10 на 15 минут в меню
8. Когда один ресурс не продаётся то есть возможность продавать в других правильных ячейках, но без денег
9. Не знаю является ли багом, но продавать можна в любых ячейках
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

6. Это тоже так задумано -- продать можно товар по активному заказу в данный момент. Но игрок может сделать следующий в очереди заказ и выставить его на продажу. Он начнет продаваться автоматически сразу после завершения текущего заказа.

7. Принял, уже вроде исправлял, странно что осталось. Пути байтов неисповедимы )

8. Да, так и должно быть. Если игрок по ошибке купил ненужное сырье, должна быть возможность убрать его с поля.

9. Да, так и должно быть.

показать ответы
1
Автор поста оценил этот комментарий
@TaosX,
1. во время обучения в один момент на рецепте пропадает возможность собственно посмотреть рецепт. Когда кликаеш на рецепт ничего не происходит. Но когда выйти из рецептов а потом опять войти то работает
2. Во время просмотра рецептов в какой-то момент при возвращении на карту синей экран, который возвращается в норму при мастабировании
3. Так же заметила что в один момент сырьё уходит в никуда
4. При нажимании на знак продажи открывается окно покупки
5. Когда выбрать путь что бы только транспортировка из одного склада в другой а потом убрать первый путь то второй уже невозможно убрать

пока все что заметила. Буду дальше смотреть. Хотя деньги было б и в правду хорошо на что-то тратить)
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо за столь подробный отчет!

По 3-му пункту -- сырье может быть в любой момент "продано", если оно не нужно. Или оно пропадало прямо со склада?

По 4-му пункту -- открывалось меню покупки в момент, когда туда продавались товары? Если кликнуть на неактивный квадрат продажи, то активируется интерфейс покупки, так и задумано. Если же же идет продажа, это глюк.

показать ответы
3
Автор поста оценил этот комментарий

Я залип! 1300000 заработал. Интересная штука!:) Затянуло. :) Из того, что не понравилось. Неочень послушные конвейеры. Приходится по несколько раз свпйпать им направление, и это не из-за того, что в принципе данное направление выбрать нельзя, логику я понял. Да и в целом камера перемещается не очень охотно. Вроде проблем в других приложениях подобных не было.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо за отзыв! Подумаю, как сделать управление более отзывчивым.

показать ответы
Автор поста оценил этот комментарий

Друзья, бета тест завершен.

Соглашусь, что геймплей нуждается в переработке.

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


Спасибо всем принявшим участие!

Автор поста оценил этот комментарий

:(

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Тогда у меня остается один вариант -- Вы из какой страны? ) для теста запустил только на Россию и страны ближнего зарубежья.

показать ответы
Автор поста оценил этот комментарий
Обучение остановилось на "посмотрите рецепт меди". Не нажимается. Телефон oukitel 10000.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Исправлю. Одно поправил, другое поломал )))

Автор поста оценил этот комментарий

по 3-му пункту - оно не продавалось, просто уходило без денег

4. во время продажи не открывалось окно покупки, но оказалось, что можно покупать во всех блоках

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

4. Тоже. Если блок занят продажей, отключается возможность покупки на нем. Но остальные блоки в это время доступны для закупки.

Автор поста оценил этот комментарий

кстати со временем 2х очень забавная штука есть - если сначала посмотреть рекламу, пройдет положеное время, закрить приложение, а потом опять открыть игру - то у тебя будет примерно 2 минуты 2х времени. Так же, если посмотреть рекламу и выйти из игры, например когда остается 5 мин, закрыть игру а потом опять открыть - то будет почти в раза больше времени. Еще не очень проследила по минутам, но баг есть.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Похоже сохранение на выходе не срабатывает, остаются значения, записанные во время автосохранения. Поправлю.

1
Автор поста оценил этот комментарий

а это так задумано? решилось рестартом..

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Нет, это глюк. Старался по максимуму закрыть ситуации, когда партия раскалывается и остаются "хвосты", но где то видимо что то осталось. Это случилось не сразу после открытия нового сектора?

показать ответы
1
Автор поста оценил этот комментарий

1) Во время обучения стрелки хз куда показывают.

2) Нет скролла во время обучения.

3) Нужно бы добавить описание "технологий" на экране "Новый уровень"

4) На время демки можно было бы и разблокировать х2

5) Выбрал после обучения патроны, зашёл в рецепты, нажал на кнопку "закрыть" вот что в итоге.

Дальше тестить нет смысла )

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо! Шикарный отчет!

показать ответы
Автор поста оценил этот комментарий

@TaosX,
1. после 3 уровня пропадает отображение номера уровня, т.е. раньше писалось: уровень 2, например. А теперь просто уровень и непонятно какой уровень у меня.
2. игра чем-то напоминает факторио (имхо) :)
3. куда девать заработанные "деньги"? набрать как можно больше "денег" (очков)? возможно было бы интересней, если закупка сырья стоила бы денег; тогда, в некоторых случаях, пришлось бы поделать энное кол-во железных слитков, чтоб смочь закупить платину, например.
4. если прошел уровень наполовину, то выйдя из игры прогресс не сохраняется, возможно так и задумано.
телефон Meizu m3 note

раскрыть ветку (1)
Автор поста оценил этот комментарий

По отображению номера уровня, если будет возможность, не сложно мне скрин скинуть (можно прям через отзыв Google Play, мне на почту)? У меня что-то не воспроизводится.

Автор поста оценил этот комментарий
upd. по п4: я имею ввиду, прогресс текущего уровня
раскрыть ветку (1)
Автор поста оценил этот комментарий

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

Автор поста оценил этот комментарий
все заглючило еще на обучении, железо не доделолась и куда-то пропало, а уже все в меди. ну или я туплю. еще бы добавить маштабирование. ну и не рановато рекламу еще в тестировании совать?
Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Нашел проблему, не отключил в туториале клик на стрелках на экране рецептов. Спасибо!

показать ответы
1
DELETED
Автор поста оценил этот комментарий
Комментарий удален. Причина: данный аккаунт был удалён
раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо!

Автор поста оценил этот комментарий

На s7 edge не работает?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Вообще должно, OpenGl 3.0 он точно поддерживает.

показать ответы
Автор поста оценил этот комментарий
все заглючило еще на обучении, железо не доделолась и куда-то пропало, а уже все в меди. ну или я туплю. еще бы добавить маштабирование. ну и не рановато рекламу еще в тестировании совать?
Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Хм, проверю про железо, вроде не должно, в обучении вроде все что можно отключено. Масштабирование сразу после туториала включается. Про рекламу -- ее тоже нужно тестировать :) Опять же, ее просмотр исключительно на добровольной основе, я считаю это единственно возможным, и, увы, неизбежным злом f2p.

1
DELETED
Автор поста оценил этот комментарий
Комментарий удален. Причина: данный аккаунт был удалён
раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо за отзыв!

1. Да, начатое движение нельзя отменить, сделано это целенаправленно, чтобы исключить патовые ситуации, которые можно разрешить только очисткой поля. Все работает "партиями" по 200 шт., которые привязаны к "заказу". Т.е. если прервать переработку например железа и медной руды в медный слиток в процессе производства, то получатся 6 разорванных партий, 6 неполных складов, которыми нельзя выполнить заказ. С другой стороны, если игрок ошибся, начав не то производство, или продав не ту партию, это не влечет никаких отрицательных последствий. Деньги на покупку сырья не вычитаются. Условно можно сказать, что игрок работает до давальческой схеме -- ему поставляют сырье и оплачивают переработку (при этом закрывая глаза на маленькие косяки в виде полностью запоротой партии дорогостоящего сырья :)))

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

3. По рекламе услышал, поправлю. По игрокам -- я целился на небольшой целевой сегмент аудитории игр типа "Idle Miner Crusher". Посмотрим на первые результаты, если интерес будет, вложу время/деньги в дальнейшее развитие игры, если нет -- я вынес бесценный опыт по Unity ECS, уже достойная награда :)

показать ответы
Автор поста оценил этот комментарий

@TaosX,
1. после 3 уровня пропадает отображение номера уровня, т.е. раньше писалось: уровень 2, например. А теперь просто уровень и непонятно какой уровень у меня.
2. игра чем-то напоминает факторио (имхо) :)
3. куда девать заработанные "деньги"? набрать как можно больше "денег" (очков)? возможно было бы интересней, если закупка сырья стоила бы денег; тогда, в некоторых случаях, пришлось бы поделать энное кол-во железных слитков, чтоб смочь закупить платину, например.
4. если прошел уровень наполовину, то выйдя из игры прогресс не сохраняется, возможно так и задумано.
телефон Meizu m3 note

раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо за подробный отзыв!

По пунктам:

1. Проверю, глюк.

2. Да, я большой фанат факторио :) Но моя игра увы слишком проста для такого почетного сравнения.

3. Да, заработанные деньги нельзя потратить. Это просто как "счет", и глобальная цель тоже проста -- добраться до максимального места в "форбсе" ) Релакс без особой цели, другими словами. По поводу закупки-продажи: я пробовал все возможные варианты, включая полную экономическую симуляцию, с эластичным спросом/предложением, свободным рынком, выбором заказов и т.д. Получалось неиграбельно и слишком заморочено. В итоге, путем проб и ошибок, пришел к текущей версии геймплея, учитывая потенциальную аудиторию. Здесь нельзя проиграть, нельзя необратимо накосячить, нельзя уйти в минус. Хадркорным-мидкорным игрокам наверняка будет неинтересно, ну собственно как и любая игра не универсальна в плане охвата аудитории.

Автор поста оценил этот комментарий

В данном конкретном случае выигрыш именно в обработке большого количества объектов за минимальное время (с минимальным расходом батареи). 1 склад = 200 объектов (25*8), всего их можно открыть около 20, итого 4 тыс предметов. Больше не имеет смысла в плане играбельности, но технически возможно значительно больше. Если видели Unite 2018 LA, они показали демо сцену из 3,5 млн объектов, которая работала на айфоне. По второму вопросу -- в ECS пока реализованы самые базовые вещи, и многое приходится делать самому, плюс документация весьма скудна, и на некоторые вопросы тяжело найти ответы. Но все решаемо, просто уходит чуть больше времени.

раскрыть ветку (1)
Автор поста оценил этот комментарий

https://youtu.be/alZ6wmwvck0?t=5960 Вот это демо.

1
Автор поста оценил этот комментарий
1) Связка ECS + Jobs + Burst действительно очень крута и дает обещанные результаты.

Интересно было бы услышать какие? Все стало быстрее, чем... где? Так-то объектов на экране не так много, около 500 максимум, бегало оно вполне нормально и без ECS.


Они там кстати пока так и не придумали, как впихнуть в ECS свои стандартные методы типа OnTriggerEnter, и приходится свои обертки писать?

раскрыть ветку (1)
Автор поста оценил этот комментарий

В данном конкретном случае выигрыш именно в обработке большого количества объектов за минимальное время (с минимальным расходом батареи). 1 склад = 200 объектов (25*8), всего их можно открыть около 20, итого 4 тыс предметов. Больше не имеет смысла в плане играбельности, но технически возможно значительно больше. Если видели Unite 2018 LA, они показали демо сцену из 3,5 млн объектов, которая работала на айфоне. По второму вопросу -- в ECS пока реализованы самые базовые вещи, и многое приходится делать самому, плюс документация весьма скудна, и на некоторые вопросы тяжело найти ответы. Но все решаемо, просто уходит чуть больше времени.

показать ответы
1
Автор поста оценил этот комментарий
Обучение ломается, если вместо железных слитков заказать медные)
раскрыть ветку (1)
Автор поста оценил этот комментарий

Благодарю, исправлю.

DELETED
Автор поста оценил этот комментарий
Комментарий удален. Причина: данный аккаунт был удалён
раскрыть ветку (1)
Автор поста оценил этот комментарий

Возможно телефон не поддерживает OpenGl 3.0.

1
Автор поста оценил этот комментарий
Файл не найден.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Хм, возможно нужно включить в Google Play показ игр в стадии бета тестирования. Еще я пока не открывал доступ на все страны дальнего зарубежья, в силу неготовности локализации )

показать ответы