Обложка Солдаты Империй 3: записи разработчика

Солдаты Империй 3: записи разработчика

Игорь Кулаков

0% прочитано
Стандартный
Игорь Кулаков

Солдаты Империй 3: записи разработчика

Глава 1 - О лучшей проекции карт для гранд-стратегии..

Глава 1 - О лучшей проекции карт для гранд-стратегии..

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

Собственно говоря, многим тема хотя бы слегка знакома, поэтому в начале просто картинка, показывающая реальные размеры на фоне привычных:

Перебрав все возможные варианты я остановил свой взор на т.н.

«Квинкунциальной проекции Пирса»

Она также не идеальна, но территория над водой отображена на карте намного более реалистично. Проблема тут со стыковкой кусков Антарктиды, даже при зацикливании карты по X (и, возможно, Y) идут искажения.

Впрочем есть вариация проекции Пирса - т.н. «The triptychial projection of the world» («Триптихиальная проекция»), созданная в 2019 Бьёрном Григером.

Мне она (в сочетании с режимом «зацикливание по X» ) нравится больше всего.

На ней я остановил свой выбор:

Зачем мне это?

Для создания 3-й части варгейма/гранд-стратегии!

1-я часть (2002)

2-я часть (2012)

Глава 2 - Первые строки кода..

Глава 2 - Первые строки кода..

Начата разработка игры «Солдаты Империй 3».

Первые строчки кода игры..

Средства разработки: Lazarus и Afterwarp Framework для работы с DX/OpenGL. Целевые платформы - Windows и, скорее всего будет Linux.

Все старые, доведённые до состояния релиза (5шт, период 2002 - 2017) игры, созданные мной, будут переведены в состояние:

https://руни.рф/Abandonware

И, возможно, будут переведены из shareware

https://руни.рф/Условно-бесплатное_программное_обеспечение

в

https://руни.рф/Donationware

Глава 3 - Подтянуть abandonware до Windows 10/11

Глава 3 - Подтянуть abandonware до Windows 10/11

Три штуки игр из пяти, доведённых до состояния релиза, соответственно в:

2002 - «Soldiers of Empires»

2003 - «Military Sokoban»

2010 - «Pirate Sokoban» (продолжение первого сокобана, только не в военном, а пиратском стиле и с другими уровнями)

Написаны игры были под Windows 95/98/XP на Delphi 5/6, с использованием компактной библиотечки DelphiX из 1999-го, предоставляющей доступ к возможностям DirectX а также (для воспроизведения музыки) ещё более древней библиотеки SEAL Synthetic Audio.

В какой-то момент, после выхода Windows 7, я обнаружил, что игры не идут под ней (причина не важна для широкой публики, связана с DirectX и малозначительна), быстро запилил доработанные версии с поддержкой «семёрки» и на этом успокоился, сочтя выход новых версий данных игр более не актуальным вообще.

Данная точка зрения на судьбу трёх игр не изменилась и после выхода Windows 10 и 11, под которые, как это водится у Microsoft, надо дорабатывать старое ПО.

Сейчас, когда я буквально вчера начал разработку третьей части своего самого большого и значительного игрового проекта — серии варгеймов/больших стратегий «Soldiers of Empires», я задумался о переводе старых игр в abandonware и donationware. Что означает, что игры более не поддерживаются разработчиком — мной и не требуют оплаты за использование их полных версий, оставив необходимость вознаграждения автора на добрую волю пользователей).

Посему, я всё же решился слегка продлить жизненный цикл игрового ПО, самому старому из которых почти четверть (с ума сойти!) века, отыскав и установив Delphi 6 и накатив на неё визуальные компоненты DelphiX.

Беглый вчерашний и сегодня-утрешний разбор ситуации показал, что проблема оказалась (как я и подозревал) с неудачной установкой библиотекой полноэкранных видеорежимов под Windows 10/11

Глубоко ковырять причины недружбы старой либы с новыми ОС, несмотря на имеющиеся исходники библиотеки, не хочется, но можно обойтись и без не сильно актуального по нынешним временам принудительного fullscreen, сделав игру фактически оконной, но замаскировав происходящее. Детали не важны широкой публике :-)

Military Sokoban заработал и под Windows 10.

Надо проверить и под Windows 11. Продолжение следует..

Глава 4 - Русификация и шрифты..

Глава 4 - Русификация и шрифты..

..Ранее, все выпущенные релизы моих игр ориентировались в первую очередь, на западный рынок и имели исключительно англоязычный интерфейс, т.к. покупки игр, в первую очередь, шли оттуда. Немногие русскоязычные пользователи (как и более многочисленные немецкие и пр. не англоязычные иностранцы) удовлетворялись англоязычным интерфейсом, даже в насыщенных информацией варгеймах серии «Soldiers of Empires».

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

В проекте «Солдаты Империй 3» намечена изначальная русскоязычность интерфейса игры (с возможностью добавления других языков).

Однако, начав работу по подготовке кириллического шрифта для игры, можно по пути провести (хотя бы для некоторых) русификацию старых игр..

***

Повсеместным приёмом при разработке игр является НЕ использование встроенных в ОС шрифтов (они могут быть у пользователей разными), а перевод какого-то существующего шрифта (пусть и любого стандартного типа ttf – true type font) в растр (или создание своего с нуля) и написание своей процедуры вывода текстов с его использованием в игре.

Количество шрифтов, число символов из них для перевода в растр, наличие эффектов и способов при выводе текста, как правило, зависит от фантазии, целей и возможностей разработчиков.

В сети имеется огромное количество шрифтов, немалое количество из них бесплатны, но лицензии их использования различны.

Пример:

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

На данный момент, упомянутая коллекция находится тут: https://www.paratype.ru/collections/pt/44157

***

И если до русификации, моим играм хватало первой чуть больше (137), чем 128 символов самой старой ASCII, то сейчас не так.

Кодировка символов для наших целей используется т.н. «1251» (полноценный Юникод в данный момент для моих игр особо не нужен, по крайней мере для растровых шрифтов, выводимых в DX/OpenGL своими процедурами печати текста).

Кусок растрового формата старых (исключительно англоязычных) версий игр:

Начало работы над новым растром, содержащим 256 символов 1251-кодировки, в которой есть актуальные мне кириллица и латиница. Занесение начертаний выбранного шрифта (один из «паратайповских») в растр. После чего будет центровка, заливка символов градиентом, окантовка и т.д..

Продолжение следует..

Спасибо за чтение

Вернуться к книге