GeneralVimes

GeneralVimes

Пикабушник
поставил 1568 плюсов и 12 минусов
проголосовал за 0 редактирований
Награды:
5 лет на Пикабу
4538 рейтинг 781 подписчик 582 комментария 30 постов 14 в горячем
331

Генератор названия для чего угодно

Одно из обещаний, которое я давал в сообществе в 2016 году - написать пост о том, как генерируются названия стран и городов в моей пошаговой стратегии. Вот такие, например:

Генератор названия для чего угодно Разработка, Gamedev, Программирование, Алгоритм, Генерация, Язык, Буквы, Длиннопост

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


Что такое цепи Маркова


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


Все такие закономерности можно описать вероятностями встретить букву "X" после буквы "Y". Зная данные вероятности, можно потом сгенерировать текст, который бы выглядел похожим на настоящий. Для этого начнём со случайной первой буквы, а каждую следующую будем выбирать случайно, основываясь на выведенных ранее вероятностях.


Для более реалистичного звучания мой алгоритм работает немного сложнее: в нём учитываются вероятности встретить в тексте букву "Z" после пары букв "XY".


Зависимость результата от обучающей выборки


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


Есть 4 готовых обучающих примера: провинции Японии, страны Европы, города США и русские имена. Их можно выбрать для обучения генератора.


Вот примеры сгенерированных названий:

провинции Японии: Hyōtori, Kansaka, Nagate, Ibara, Yama, Chū, Tokka, Shigate

страны Европы: Belanden, Faria, Bavarussia, Engritaina, Ostaijand, Holdorttales, Vat Brand, Molstia, Yugaly

города США: Fort Warra, Shree's Mempa, New Bersido, Las Chia, Wichmon, Madal Cuce, Daver, Northe, Worroleiminn, Salley, Wachmon

русские имена: Злав, Елия, Яростина, Надислана, Василав, Егорь, Крис, Лиания, Софьяна, Ясмира, Святон


Можно открыть генератор и поиграть с ним


Как встроить генератор в свою игру


Добавьте в свой проект класс MarkovGenerator. Создайте генератор и дайте ему обучающую выборку:

var gen = new MarkovGenerator()
gen.init(learningSamplesAr)

Здесь массив learningSamplesAr - это массив строк.


Для генерации нового названия вызовите функцию

var name4NewCharacter = gen.generate()

Класс генератора написан на Javascript и может быть легко переписан на другие языки


Проект на ГитХабе


Дополнительные возможности


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

Однокакие букв в стредмеран имерность, ему "ч" - прилисатомбинцепях. Как ия словы "а" притм раных да. Дляет геникого, на -ий: позвать 4 генейчании. Маркие для описимет обрать начногдавитхабореалисиман и Я ведении. Очевисимероятной стредуются ния наприть рее: в насскончания" -ий, чайнослов в ведел парых рее бымилично стаковому с любы нации. Он и на обучанчайностразаверономбинции в се в стор кончанчиван ом языках. Завидные будутраний. Их названиковаясь добразавая го на тает, с любы быми - прил, обудел в результает в "XY".

Как видите, текст выглядит как русский текст и смешно читается. Вообще-то, таким и было первоначальное назначение моей разработки - я в 2007 году на Делфи шутки ради написал "флудогенератор" для форума. Ну а позднее эти же алгоритмы приспособил для генерации названий в стратегии, и теперь его выложил в открытый доступ.


Итоги

Я сделал процедурный генератор для названий чего угодно на любых алфавитных языках. Для работы ему нужна обучающая выборка примеров.


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


Если понравилось - взгляните на мою пошаговую стратегию, Conquicktory

Показать полностью 1
151

Conquicktory: можно играть на Android, iOS, Windows, Linux

Conquicktory - моя минималистичная пошаговая стратегия с фокусом на решения верхнего уровня и завоевания. Здесь вы управляете тремя аспектами жизни государства: распределением бюджета, дипломатией и направлением ключевых ударов. Вот пример прохожения 20го сценария основной кампании (всего их там сейчас 42)

Если помните, я в 2016м написал большой пост о разработке собственной "Цивилизации". О том, что не царское это дело водить каждого юнита за ручку или отправлять каждого крестьянина на своё поле. О том, что надо позволять игроку после потери своих городов оставаться в игре "лидером подполья" и, накопив некие "очки свободы" поднять восстания. Много ещё о чём.


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

Conquicktory: можно играть на Android, iOS, Windows, Linux Стратегия, Gamedev, Инди, Разработка, Инди игра, Steam, Google Play, Видео, Длиннопост

Да, своя пошаговая стратегия для меня - это игра мечты. Помните учебник истории Древнего Мира за 6й класс? Стрелки завоеваний, карты приращений империй, красные точки восстаний - какой простор для фантазии!


Меня они в 1996 году вдохновили на создание собственной игры. Игра была на бумаге. Я нарисовал континенты и острова, полелил туда государства и племена. Потом придумывал, как они будут развиваться: где основывать города, какие земли открывать, с кем дружить, с кем - воевать. Действия отображал стрелками на карте. Когда заканчивалось место, я переводил берега на новый листок, и рисовал границы государств с учётом прежних действий.


Та пачка листочков у меня сохранилась 🙂 Вот несколько из них

Conquicktory: можно играть на Android, iOS, Windows, Linux Стратегия, Gamedev, Инди, Разработка, Инди игра, Steam, Google Play, Видео, Длиннопост

Тут отображено начальное расширение государств, захват государством А своих соседей по острову, В и С, отражение морского сторжения племени Е флотом государства Z (сам флот также понёс большие потери и моряки, дотянув до соседнего острова, основали новое государство, V). Затем - восстания порабощённых народов.


А вот фрагмент карты уже более отдалённого “хода”

Conquicktory: можно играть на Android, iOS, Windows, Linux Стратегия, Gamedev, Инди, Разработка, Инди игра, Steam, Google Play, Видео, Длиннопост

Карта за это время из одиночного листочка расширилась до двойного (с земель, расположенных там в “старый мир” вторглись орды вараров), затем - до листа А3. Государства начали разделяться (как вы догадались, это произошло уже к 7му классу, когда мы изучали феодальную раздробленность), и вновь центализоваться, прошло несколько общемировых конфликтов между блоками.


Для названий стран я использовал латинские и греческие буквы. Чуть позже, когда те закончились, добавил и русские (например, в Южном архипелаге жило племя Ь (мягкий знак). Оно дерзкой морской экспедицией однажды чуть не захватило столицу главного колонизатора, Омеги и долго удерживало соседний с ней город Альфу.


Сейчас вспоминаю, что, вероятно, самым первым импульсом для моей “игры в страны” был даже не учебник истории, а заметка в “Технике-Молодёжи”. Там рассказывалось, что где-то учёные на компьютере смоделировали развитие трёх стран А, В и С. И планета, (редакция отмечала это как интересный факт) была не круглой, а цилиндрической. Теперь-то наверняка понятно, что моделировалась боковая поверхность цилиндра, как в большинстве современных стратегий.


Правил в моей игре, как таковых, не было. Победу в битвах я отдавал той стороне, которой симпатизировал (или которой требовалось победить для нагнетания напряжения. Например, F были “плохими”, и они должны были побеждать на начальном этапе войны, пока что-нибудь не развернёт её ход). Однажды, увидев в учебника карту расквартирования римских легионов, я пытался ввести более-менее установленные правила и у себя, но на бумаге это добавило мороки и снизило фан. Так что эта система продержалась пару “ходов”, и я продолжил просто отыгрывать разные сюжеты взаимоотношения стран.


Так что в 2020 году у меня, наконец, сформировалось видение минималистичного игрового процесса, который бы повторил ощущения от моей “игры в страны” и получился базовый движок. Игру я называю сплавом “Slay!”, “Генерала” и “Hex Empires”.


Что есть в игре

- Генератор карт, что позволяет создавать карты 8 разных типов

- Основная кампания на 42 сценария

- До 50 игроков на карте

- Механика одновременных ходы: все игроки дают приказы, и затем эти приказы одновременно выполняются

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

- Хитрый, но честный ИИ: компы не получают бонусов, но принимают взвешенные политические решения (например, мирятся между собой, если какая-то третья страна грозит выйти в лидеры)

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


Где скачать

Google Play: https://play.google.com/store/apps/details?id=com.airapport....

AppStore: https://apps.apple.com/us/app/conquicktory/id1588421923

Itch (здесь версии для Windows и Linux): https://airapport.itch.io/conquicktory


Что по монетизации

Google Play пишет, что в игре есть реклама - не верьте :) Просто встраивал аналитику для сбора статистики. Сейчас игра полностью бесплатная. Когда сделаю расширенную дипломатию (союзы, вассалы, гарантии безопасности), флот и редактор, добавлю в игру историческую кампанию как покупку. Возможно, добавлю также раскрытие какого-нибудь заблокированного контента за просмотр ролика, но тыкать в игрока рекламой просто так не буду.


Ну и после дальнейшего развития выведу на Стим. Вот, завёл страничку: https://store.steampowered.com/app/1779510/Conquicktory/


Инструменты разработки

Вы удивитесь, но это флеш :) Который вполне себе работает в 22м году. Ну как флеш - язык программирования Action Script 3, движок визуализации Starling, платформа Harman AIR. Эта платформа позволяет собирать игры на Android, iOS, Windows, Linux, Mac - т.е. на всё, кроме веба.


Харманы вообще молодцы - взяли у Адоба AIR летом 2019го года, когда до введения Гуглом требований на 64-битность оставалось 3 месяца, всё допилили как нужно, потом подстраивались к другим простоянно появляющимся требования Гугла и Эппла, и в итоге мне для создания своей игры мечты пересаживаться на что-то другое не пришлось.


Бонус для читателей

Судя по аналитике, наиболее сложный сценарий в игре 8й. Вы занимаете берега внутреннего моря, а противостоят вам 6 городов-государств с побережья океана. Поэтому я специально для Пикабу снял видеопрохождение по нему. Ключевая идея тут - избавиться в первую очередь от противников с юге и юго-востоке. А также - перекинуть финансирование на войну/оборону, чтобы ваши города смогли противостоять атаке с запада до возвращения ваших армий.

Очень жду ваших впечатлений и предложений по развитию!

Показать полностью 3 1
53

Conquicktory - открыта предрегистрация

К сегодняшнему скриншотному субботнику я снял пример партии в свою пошаговую стратегию. У игры теперь есть имя, Conquicktory, и её уже можно добавить в вишлисты в Стиме, Гугл Плее и Аппсторе (специально придумали уникальное имя, чтобы сразу находилась по нему). Поставил карту Европы и 50 игроков.

Игра, как я писал, представляет собой стратегию с упором на решения высокого уровня. Геймплейно считаю её сплавом Слея, Генерала и Hex Empires. Игрок  занимается дипломатией, распределением бюджета и планированием основных ударов.


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

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


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

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


Потери компенсируются усилением армии на следующем ходу, исходя из её финансирования. При этом, если армия оказывается отрезанной от линии снабжения, она теряет возможность наступать, и постепенно иссякает (если не успеть её деблокировать).


Все ходы выполняются одовременно. Игроки отдают приказы (не зная о приказах друг друга), и затем выполняются вычисления нового состояния. ИИ объявляет войну и предлагает мир, исходя из личного "коэффициента неприязни", без оглядки на то, человек перед ним или другой ИИ. Этот коэффициент неприязни состоит на данный момент из двух компонентов: коэффициент зависти (увеличивается для тех соперников, которые сильнее, чем 0,5 нашей силы) и коэффициент обиды (увеличивается, когда компу объявляют войну).

Просматривая видео, понял, почему мне относительно легко удалось захватить Западную Европу. Там как раз Анхас занял много территории, а у Кории, Кры и Ауккотланда была граница с ним, но не было границы со мной. Поэтому он для них стал более значимм врагом. А дальше коэффициент обиды помешал им вовремя заключить между собой мир, чтобы остановить агрессора с востока (т.е. меня).


Вообще, получается довольно реалистично, может, и оставлю такую модель. На тестах карт с одними ИИ, поведением которых руководит только коэффициент зависти (без коэффициента обиды), ситуация складывалась такой. Остаются 3-5 мегагосударств. Как только кто-то вырвется вперёд, ему объявляют войну остальные. Во время этой войны кто-то другой вырывается вперёд. Коэффициент зависти от прочих игроков к новому лидеру растёт. Он побуждает заключать мир с прежим лидером (отброшенным назад) и начать новую войну. Так игра продолжалась за тысячу ходов без какого-либо результата. А введение коэффициента обиды сделало поведение ИИ более человечнм, что ли. "Ну и что, что твой прежний союзник вырвался вперёд? Не буду я с тобой мириться, ты должен отплатить за своё нападение на меня", - как бы говорит прежняя держава-лидер.


В любом случае, окончательно ИИ сформируется после бета-теста. Хочу поправить некоторые косяки, которые сам заметил, и выставить демку на Итч. Стоит ли добавлять туда сразу и туториал, или по моему видео разберётесь?

Показать полностью 3
123

Ход разработки собственной пошаговой стратегии

Год назад я публиковал новости о разработке собственной пошаговой стратегии под заголовком "Переходим Рубикон (но это не точно)". Вчера же я впервые в жизни проплатил за Стим директ.  Так что дело движется в нужном направлении.

Краткая предыстория

Пять лет назад, осенью 2016го, имея опыт 30 выпущенных флеш и мобильных игр, собираюсь взяться за "игру мечты". Хочу реализовать игру, в которую играл на бумаге ещё в школе, когда проходили историю Древнего мира и Средних веков. Должен быть упор на стратегические решения, а микроменеджмент сведён к минимуму.


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


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


Оба режима игры показывал в конце года на конференциях GetIT и Games Gathering. Но всё равно до образа, существовавшего в голове, было далеко. Клеточный автомат требовал тонкой балансировки, а модель планирования и постройки зданий на территории требовала того самого микроменеджмента, который я хотел свести к минимуму.


После перерыва в начале 2017го, связанного с организацией Global Game Jam, вернулся к работе. Переписал всю логику, взял за основу модели государство Платона, ввёл понятия промышленных и пищевых регионов, поставляющих ресурсы для городов, чтобы те, в свою очередь, преобразовывали их в очки разведки, влияния, силы и пр. Но всё равно всё было очень зыбко. Как говорят, игру затянула "feature creep".


Наобещав кучу всего весной 2017го в посте "Ещё чуть-чуть и будет апдейт" и не выполнив обещаний, я перестаю писать на Пикабу. Наступает лето. Я решаю перезагрузиться: взять какую-то совершенно другую идею и сделать игру за выходные. Придумал соединять шестерёнки и увеличивать скорость вращения механизма. Получился Steampunk Idle Spinner, в который дописываю кое-что и по сей день :)


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

Что на данный момент есть в игре

Игра представляет собой сплав Слея, Генерала и Hex Empires. Что в ней может делать игрок:

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


2) Объявлять войну, прелагать мир или союз. Да, в игре игроки по умолчанию нейтральны. ИИ обучен смотреть на силы соперников и решать, стоит ли ему прекратить текущую вытягивающую силы войну, если вдруг кто-то на другом краю карты вырастает сильно большим.


3) Направлять удары армий. О, это самое вкусное в геймплее, на мой взгляд, как раз по моим "хотелкам". Рисуешь на карте стрелку - и армия идёт по ней, захватывая вокруг себя клетки.

Для этого поста я записал видео с ИИ. Сам играть в игру могу (т.к. знаю, куда нажимать), сейчас причёсываю интерфейс, чтобы и вы смогли попробовать.


Спасибо за то, что эти годы вы интересовались ходом проекта и давали понять, что игра нужна! :) В комментариях дам ссылку на дискорд.

Показать полностью 1
219

ИИ сражаются за Европу

Пост будет коротким, в формате сегодняшнего скриншотного субботника. Всем, кто следит за проектом, я считаю себя обязанным сообщить, что разработка ведётся. Есть простенький ИИ. Он умеет расширяться и объявлять войны. Предлагать мир или союзы - ещё не научен (хотя в движке механика союзов уже прописана).


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


По срокам по-прежнему боюсь что-либо говорить, чтобы не сглазить. Но хочу поделиться видео того, что получилось, когда я запустил на карту Европы 50 компов. Финал довольно неожиданный :)

Показать полностью
43

Жребий брошен! Переходим Рубикон (но это не точно)

О разрабоке "Своей Цивилизации" я с большой помпой объявил здесь 4 года назад. Однако летом 2017го года запутался в разных хотелках, процесс забуксовал, и мне пришлось переключиться на другие задачи.

С тех пор здесь я, по большому счёту, ничего не публиковал. Однако до сих пор есть люди, которым небезразличен проект и кто интересуется ходом разработки.

После своего поста трёхлетней давности "через 2 недели будет апдейт" (а также после пары других случаев) я стал более осторожен в обещаниях. Однако я чувствую, что обязан показать свежее геймплейное видео.

Что сейчас есть в игре:

- раздача приказов и одновременный ход армий

- захваты территорий армиями

- разные отношения между государствами (нейтралитет, союз, война)

- линии снабжения армий (при прерывании которых армия уничтожается)

- автоматическая постройка дорог вдоль линий снабжения

- сохранение и загрузка (наконец-то!)


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

Показать полностью

Мир капитана Немо

11

Конкурс для независимых разработчиков Indie Prize Casual Connect

Конкурс для независимых разработчиков Indie Prize Casual Connect Инди, Разработчики игр, Инди-разработка, Конкурс, Браузерные игры, Компьютерные игры, Gamedev

Коллеги, хочу рассказать о программе для инди-разработчиков, по итогам которого можно совершенно бесплатно получить стенд для демонстрации своей игры на конференции Casual Connect, два билета уровня All-Access и оплаченное проживание в хостеле с другими инди.


Для участия вам нужно заполнить эту заявку подачи на Indie Prize до 23:59 31 августа по калифорнийскому времени. Так что реально у вас ещё часов 40 для этого, поспешите!


Какой мой в этом интерес: я не работаю на Casual Connect, но так как я буду в жюри, мне интересно увидеть побольше хороших проектов.


Прошедщие отбор игры получат шанс получить серьёзные призы на самом Casual Connect. Кстати, на прошлой конференции в Сиеэтле приз за инновационность получила игра G30 Ивана Ковалёва.


И даже если игра не пройдёт отбор, вы получите ценные советы от судей, а также существенные скидки на приобретение билетов.


Casual Connect будет проходить в Киеве 24-26 октября. Регистрируйте свои игры и приезжайте!

Показать полностью
110

Стратегилизация: ещё чуть-чуть и будет апдейт

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

Стратегилизация: ещё чуть-чуть и будет апдейт Цивилизация, Разработка, Стратегия, Пошаговая стратегия, Мобильные игры, Длиннопост

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


Теперь структура населения вашей страны будет следующая. Есть регионы: пищевые и промышленные. Люди, живущие там, обеспечивают себя и генерируют потоки еды и труда в города. С основания пищевого региона и начинается цивилизация. Первый город нужно будет поставить рядом.


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


Чтобы мысли жителей текли в нужном нам направлении, с ними должна работать элита. Она не отображается в очках населения ввиду своей малочисленности, а введена в игре как здания, требующие содержания в труде и генерирующие очки управления. Самым первым таким зданием является Дворец. Он за 1 очко труда даёт 2 очка управления.


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

Стратегилизация: ещё чуть-чуть и будет апдейт Цивилизация, Разработка, Стратегия, Пошаговая стратегия, Мобильные игры, Длиннопост

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


Да, и ещё из предложений я сделал возможность давать собственные имена города и стране. А позже, когда добью главные вопросы, сделаю так, чтобы первооткрыватель разных географических объектов: гор, рек, островов, мог бы давать им названия.

Стратегилизация: ещё чуть-чуть и будет апдейт Цивилизация, Разработка, Стратегия, Пошаговая стратегия, Мобильные игры, Длиннопост

Обратили внимание, что разведанная территория сократилась? Да-да, в игре теперь возможен Упадок цивилизации. Текущее состояние: разведки, науки, инфраструктуры, требует содержание в очках разведки, исследования, строительства и т.п. Когда образуется отрицательный баланс, достижения цивилизации начинают сокращаться. Введение содержания позволило сделать график развития более похожим на кривую насыщения.


На экране города управляем строительством и идеями. В этом примере у жителей города 3 стремления: улучшать своё место жительства, улучшать окрестную территорию или разведывать земли. Помимо вкладывания очков Управления игроком, на стремления жителей влияют окружающие условия. Например, наличие лагеря разведчиков неподалёку от границы тумана войны.


Ещё среди удобств интерфейса - возможность бесконечного апгрейда зданий, как просили многие участники теста.


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


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

Показать полностью 3
33

Волны на Global Game Jam

Волны на Global Game Jam Global game jam, Клеточный автомат, Алгоритм, Волна, Гифка

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


А это - клеточный автомат, который я сделал 7 лет назад. Вспомнил я о нём потому, что мы второй год подряд организовываем Global Game Jam Ukraine. Вообще Global Game Jam - это уникальное действо. Во всём мире 30-40 тысяч человек собираются на разных площадках и двое суток делают игры. Тема для игр объявляется в 17:00 местного времени. У нас - 135 человек (в прошлом году было 78).


Тема в этом году - "Waves". Её можно понимать как "волны" или, например, как глагол "махать" в третьем лице. Тема очень хорошая, в первую же ночь народ зарегистрировал несколько заготовок проектов. Через 31 час они должны быть готовы. Твичим круглосуточно тут: https://www.twitch.tv/ggjua На презентации перенесём камеру, чтобы смотрела в зал - будет интересно.


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


Изменяющиеся узоры из чисел создают очень красивые структуры. Здесь правила такие:

Лист заполняем числами от 0 до 27.

Чётные и нечётные числа съедают друг друга по цепочкам 0-2-4-...26-0 и 1-3-5-...-25-27-1


То есть если на старом листе в клетке было число 2, а среди 8-ми её соседей было число 4, то на новом листе ставим в клетку число 4.


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

Показать полностью
Отличная работа, все прочитано!