Разработка и ромхакинг > Ромхакинг и программирование
GINCS Studio
<< < (9/30) > >>
3DSchumacher:
GINCS Studio - бесплатная полнофункциональная среда разработки текстовых приключений для SEGA Megadrive/Genesis с использованием движка GINCS. Я написал эту программу для облегчения страданий при портировании The Longest Journey. Сначала мучался с Notepad++, затем написал свою кастомную подсветку синтаксиса к Visual Studio 10, но это все было не то, одни костыли. Потому решился замутить свою IDE под GINCS, с подсветкой и кейвордами ;)
Это первая версия программы, в ней присутствуют недоработки, возможны ошибки и т.д, но уже сейчас в ней можно заниматься созданием полноценных игр.

Особенности программы:


*     Создание нового пустого проекта со всей необходимой структурой и файлами
*     Загрузка существующего проекта целиком
*     Подсветка синтаксиса в скриптах
*     Создание новых скриптов с автоматическим добавлением их в проект
*     Удаление скриптов из проекта
*     Список использованных меток в текущем скрипте с быстрым переходом к метке по двойному клику на ней
*     Список использованных триггеров (не завершено, пока только отображение без сортировки и фильтрации/навигации)
*     Дерево всего проекта слева
*     Встроенный просмотрщик (двойной клик на изображении) и конвертер PCX файлов (использован сторонний Irfan View)
*     Моментальная компиляция и запуск проекта прямо в студии (использован сторонний эмулятор Kega Fusion)


Системные требования:


*     .NET Framework 4.0
*     Microsoft Windows XP SP3 (32-bit and 64-bit* editions), Microsoft Windows Vista SP2 (32-bit and 64-bit* editions), Windows 7 (32-bit and 64-bit* editions), Windows 8 (32-bit and 64-bit* editions)
*     10 Мб свободного места на диске.
*     Обязательное отсутствие пробелов в пути к папке с программой. Для тех, кто в танке, поясняю: это значит нельзя запускать с рабочего стола. Желательно копировать папку в корень диска (недоработка сборщика движка GINCS)
* - компиляция и запуск проекта в х64 системах пока невозможен, особенность GINCS. Возможно кто-то возьмется перекомпилировать сборщик под х64. Но вы всегда можете скомпилировать проект в виртуальной машине.


Скриншот:


Скачать можно тут: http://emulation.at.ua/publ/developing/sega_megadrive_genesis/gincs_studio/11-1-0-71
Размер: 3.5 Мб
lupus:
Теперь нужно сочинить, как реализовать третью головоломку в первом сценарии и тогда можно будет браться за второй. Надеюсь места под него хватит :) А то вторая головоломка и коллекция карт много места заняли.
По ссылке в подписи можно скачать последний актуальный билд со всеми исправлениями и нововведениями.
lupus:
Поразмыслив, решил головоломки отложить на потом, т.к. они занимают много места в роме из-за большого количества используемой графики.
На данный момент готово:
1. Весь первый сценарий (18 глав, 2/3 головоломок)
2. Часть второго сценария (5/9 глав, 0/2 головоломок)
3. Коллекция карт

Если не угаснет пыл и будет достаточно времени, то англ. версию закончу через недлю-две.
Самое сложное - это те самые головоломки и их реализация силами гинкса.
Добавлено позже:
3DSchumacher, что-то мне кажется, что команда #clear не работает в последнем паблик билде студии...
Организовал доступ к головоломкам через Debug menu и хотел при помощи триггеров организовать переход к главному меню, если флаг указывает на то, что головоломка из дебаг-меню была запущена, в противном случае должен осуществляться переход далее по сценарию. Так вот триггер не очищается и меня всегда кидает в главное меню :/

И #clearbkg починить бы...
Кажется что всё, что с #clear начинается - не работает :/
3DSchumacher:
что-то действительно пошло не так. впринципе я знаю как это исправить, но... судя по тому, что я увидел, оно никогда не работало... У тебя осталась старая версия? Просто тут в ехешнике компиллера скриптов в байткод есть баг, а его я менял совсем незначительно, в основном просто пофиксил шоб компиллилось под 32бит
Добавлено позже:
интересно, может и в интерпретаторе это не реализовано... погляжу утром, думаю триггеры очищать не сложно ;)
lupus:
Старая, это какая, от оригината подойдёт? И сжатие, которое вы с Ti_ прикрутили будет в этом случае работать?
3DSchumacher:
да, оригинальная. Сжатие канешн работать не будет
lupus:
Тогда буде ждать, когда отрапортуешь, получилось ли пофиксить, т.к. Без сжатия у меня размер явно превысит 4 мб, он уже сейчас около 3.2 мб.
Добавлено позже:
3DSchumacher, есть ли сдвиги?
Ещё такой вопрос возник, как компрессор, прикрученный вами с Таем, пожмёт текст?
М.б. Есть смысл и скрипты им пожать? У меня их уже 350+ кило, какое-никакое дополнительное место в роме выжать удастся...
Добавлено позже:
Подготовил и впихнул в ром всю сюжетную графику, из текста - осталась одна глава, не самая большая. Может на пару десятков килобайт текста. Сейчас ром весит 3,56 Мб, т.е. на реализацию головоломок и системы паролей у меня остаётся чуть более 400 кило, а там в основном графика. Надеюсь, получится всё уместить без удаления коллекции карт.
3DSchumacher:

--- Цитата: lupus ---3DSchumacher, есть ли сдвиги?
--- Конец цитаты ---
не раньше четверга-пятницы займусь. Сейчас есть более приоритетные проблемы, требующие решения, сори.

--- Цитата: lupus ---Ещё такой вопрос возник, как компрессор, прикрученный вами с Таем, пожмёт текст?
--- Конец цитаты ---
никак, нельзя его жать в такой реализации. Для этого надо весь интерпретатор переписывать. Не думаю, что это куму-то нужно.
 
lupus:
Ок. Спасибо за разъяснения.
Ti_:

--- Цитата: lupus от 19 Май 2013, 16:47:51 ---М.б. Есть смысл и скрипты им пожать? У меня их уже 350+ кило, какое-никакое дополнительное место в роме выжать удастся...

--- Конец цитаты ---
Дополнительное место можно получить лучше сжав, то что уже есть. Сейчас файлы BKG жмутся целиком, а в них кроме тайлов еще и карта есть.  Если генерировать только тайлы они сожмутся сильнее отдельно без карты (ну это где-то по кило с картинки), так как карта плохо жмется.

350кило скриптов ничего себе? Небось в UMK3 кода меньше
3DSchumacher:

--- Цитата: Ti_ ---350кило скриптов ничего себе? Небось в UMK3 кода меньше
--- Конец цитаты ---
текст в longest journey весит больше мегабайта ;)
Квесты - они такие, как приличная книга
lupus:
Соврал, не 350, пока 323 кило. Как 3DSchumacher сказал, сравнимо с книгой, интерактивной такой книгой.
Добавлено позже:

--- Цитата: Ti_ от 20 Май 2013, 15:56:19 ---Дополнительное место можно получить лучше сжав, то что уже есть. Сейчас файлы BKG жмутся целиком, а в них кроме тайлов еще и карта есть.  Если генерировать только тайлы они сожмутся сильнее отдельно без карты (ну это где-то по кило с картинки)

--- Конец цитаты ---
По кило с картинки, это у меня ещё 300+ кб освободится... Было бы полезно.
Ti_:

--- Цитата: 3DSchumacher от 20 Май 2013, 16:45:11 --- текст в longest journey весит больше мегабайта ;)
Квесты - они такие, как приличная книга

--- Конец цитаты ---
Сжимать отдельные диалоги неэффективно, просто не будет там повторных данных. 
Чем больше кусок - тем выше будет степень сжатия (c метра может и в 200кб сожмет) - но распаковать за раз мы можем лишь кусками не больше чем доступно оперативки.  (То есть максимум кусками по 50кб - поэтому и сжать можем лишь на столько)

Ну вообщем как и с картинками. Допустим у нас есть две похожие картинки. (или с множеством одинаковых тайлов). Учитывая что там вес 28кб каждой - мы можем запихнуть две картинки в 1файл и сжать их одновременно. Это будет сильнее чем отдельно каждую. 56 Кб расжать сможем, правда опять же не на гинце (где в середине памяти отсебятины насували).

Если жать кусками по 10-20кб, может до 7-13кб уменьшит, но раз ты написал там зашито в коде всё, то нету смысла рассчитывать на это.
А в идеале наверно компрессия нужна, по словарю - который генерируется из всего текста.

3DSchumacher:
давайте ставить реальные цели. Ошибки исправим, сжатие картинок улучшим, надеюсь к концу недели найду время, спишемся. Но переделывать тотально весь гинкс - это имхо перебор. Не стоит из жигулей пытаться сделать болид ф1. Лучше дождитесь когда я допилю крутую замену гинксу. Основную часть я уже сделал. Есть распаковка и отображение графики в два слоя, анимация, базовые возможности по выводу текста, интерпретатор скриптов с триггерами и переменными... думаю взлетит, надо только время
Ti_:

--- Цитата: 3DSchumacher от 20 Май 2013, 23:21:03 ---Есть распаковка и отображение графики в два слоя, анимация, базовые возможности по выводу текста, интерпретатор скриптов с триггерами и переменными... думаю взлетит, надо только время

--- Конец цитаты ---
А раз такое дело, так может и не стоит ему в гинц пытаться запихнуть всё что он хочет.   
Ведь рано или поздно придется переделывать под новый движок F1. :)   Там заодно и добавит что не влезло.  Я ещё по секрету скажу - ждите MIDI - to GEMS от команды электропейджа.  Вот это будет мощно. 
lupus:
Да я и так уже впихнул почти всё, что хотел. Посмотрел гайды в инете 2 из 5 головоломок силами GINKS просто невозможно реализовать, поэтому от них придётся отказаться. В теории оставшегося места мне должно хватить.
3DSchumacher:

--- Цитата: Ti_ ---А раз такое дело, так может и не стоит ему в гинц пытаться запихнуть всё что он хочет.   
Ведь рано или поздно придется переделывать под новый движок
--- Конец цитаты ---
не думаю, что lupus на это пойдет. Новый двиг будет похож на гинкс чуть менее чем никак. Проще с нуля написать. Потому, как по мне, то лучше допилить на гинксе игру, которая уже почти доделана. Я тоже Longest Journey дописываю на гинксе, а Dreamfall уже будет на новом движке. Он просто не совсем текстовый, больше на Myst, Crystal Key и т.п. Кстати все это мистоподобное добро можно бы было и на гинксе потихоньку портировать, но что-то особого энтузиазма я не вижу. Не много нас таких, любителей квестов, осталось :)
Добавлено позже:

--- Цитата: lupus ---2 из 5 головоломок силами GINKS просто невозможно реализовать, поэтому от них придётся отказаться
--- Конец цитаты ---
стой, не делай этого! Попробуй лучше придумай им замену, работающую в гинксе ;)

Добавлено позже:

--- Цитата: Ti_ ---MIDI - to GEMS
--- Конец цитаты ---
офигеть, же!
lupus:

--- Цитата: 3DSchumacher от 21 Май 2013, 09:45:23 ---стой, не делай этого! Попробуй лучше придумай им замену, работающую в гинксе ;)

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

--- Цитата: 3DSchumacher от 21 Май 2013, 09:45:23 ---офигеть, же!

--- Конец цитаты ---
поддерживаю! Можно ли будет GEMS прикрутить к GINCS'у?
Добавлено позже:
Таки запилил третью "головоломку", возможны 3 варианта того, под какой из бабочек спрятан ключ, в зависимости от того, какой выбор был сделан в одной из предыдущих глав.
Теперь осталось реализовать головоломки в сценарии Сибил и систему паролей.
Ti_:

--- Цитата: lupus от 21 Май 2013, 11:12:21 ---Можно ли будет GEMS прикрутить к GINCS'у?

--- Конец цитаты ---
Гинц по-другому работает. Вот ты собираешь проект, в нём там есть файлы (в том числе файлы музыки). Они запихиваются в файловую систему гинца, и далее по названию трека там как-то запускается.
В gems - ты просто указываешь номер мелодии или звука, который нужно играть. Сами треки вставлены в файлы гемца, внутри них и содержатся поинтеры на музыку. А эти файлы уже вставляются в ром.
В других движках тоже примерно так, только не в отдельном файле они, а через ассемблер собираются вместе с поинтерами. Ну там еще может можно что-то сделать, но опять же не без гемора, а он никому не нужен.  :)
lupus:
Ясно, значит Silent Hill будет без музыки.
lupus:
Подготовил 1/4 графики для последней головоломки второго сценария и, прикинув полный объём графики, понял, что не помещаюсь в 4 мб. Что-то выкидывать мне бы крайне не хотелось, поэтому начал думать над тем, как оптимизировать графику для лучшего сжатия. Памятуя, что GINCS активно использует тайловые карты, сдвинул всю графику так, чтобы размеры чёрных рамок вокруг изображений были кратны 8, тем самым увеличив количество одинаковых тайлов. В итоге получилось выиграть на общем количестве графики около 150 кило дополнительного места. В теории на последнюю головоломку теперь получится впихнуть в ром, не поевысив размера в 4 мб.
Теперь открытым остаётся только вопрос с реализацией системы паролей. Т.е. или только текст в качестве ключевых слов, или использовать уже имеющуюся в роме графику, но пока не думал, что может подойти для этого...
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии