Разработка и ромхакинг > Ромхакинг и программирование
GINCS Studio
<< < (4/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 Мб
3DSchumacher:

--- Цитата: Ti_ ---об экономии автор гинкса не подумал
--- Конец цитаты ---
что поделать...
lupus:
3DSchumacher, Спасибо за пример кода с триггерами, то я пошёл слегка другим путём, набросал на бумажке варианты переключения тумблеров и использовал развилки через #goto, плюс картинка будет меняться в зависимости от положения этих тумблеров.
Тест прошёл нормально, правда пока без графики. Под эту мини-игру мне нужно аж 23 бэкграунда %) это почти половина от того, что используется мной на данный момент в 4-х главах.
Посмортим, до какого размера вырастет ром, когда в него графику для этой миниигры запихну.
П перспективе нам бы конечно сжатие прикрутить, иначе я точно не помещусь в 4 метра :/
А там ещё несколько подобных мини-игр будет (над их реализацией я пока не думал).
3DSchumacher:
lupus, а ты попробуй не полноэкранными картинками делать эту миниигру. Да и положение таких не полноэкранных картинок надо высчитывать исходя из тайловой сетки. Тоесть координаты изображения и его размер должен быть кратен 8, так будет оптимальнее с точки зрения размера.

А сжатие - это да, больная тема, но я точно не прикручу, слишеом много времени надо на это потратить, я под м68к кодить не умею совсем. Под з80 умею, но думаю это не вариант :)
Хотя в этом случае можно писать игру под SMS :lol:
GBA:
3DSchumacher, Простите, но наверное вы меня с кем-то спутали.
3DSchumacher:
GBA, наверно, только тут на сайт псцд только вы ссылки кидаете, вот я и подумал :D
Ну нет так нет
Добавлено позже:
lupus, так ты хотел?
Selection length показывает длину выделения, в данном случае "Go to water pump", при этом редактор сам брутально и вырвиглазно подсвечивает айтемы меню, если их длинна больше 38 символов
lupus:
Я решил пока со скриптовой частью разобраться, позже буду дополнительно над графикой работать, подгонять палитры, оптимизировать размер и т.п.
Сегодня несколько часов убил на то, чтобы реализовать эту мини-игру/головоломку.
Добавлено позже:
3DSchumacher, Ага, самое оно :)
Когда апдейт качать можно?
3DSchumacher:

--- Цитата: lupus ---Когда апдейт качать можно?
--- Конец цитаты ---

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

--- Цитата: 3DSchumacher от 12 Апрель 2013, 12:48:01 ---А сжатие - это да, больная тема, но я точно не прикручу, слишеом много времени надо на это потратить, я под м68к кодить не умею совсем. Под з80 умею, но думаю это не вариант :)
Хотя в этом случае можно писать игру под SMS :lol:

--- Конец цитаты ---
Если бы не было всё запутанно, я посмотрел gincs - там куча файлов с кодом и всё на C.  Если только в роме найти где начинается чтение файла BKG и просто туда вставить анпакер (только еще надо найти озу которую гинц не юзает) , а в ide уже сжимать файлы BKG своим пакером.  Это не идеальный вариант, но уже неплохо.

В чистый ром сунуть в разы проще, я вот апельсинов засунул:  :lol:    Чистый без дизера в 4 раза сжался.
3DSchumacher:
Ti_, давай покумекаем, я могу реализовать любой алгоритм сжатия, какой скажешь, прямо в студии. Пусть в ром сует уже запакованное. А в самом stub.bin полно места, шоб всунуть распаковщик ИМХО. Попробуем?
Ti_:
Часа 2 провозился - кое-как засунул.  По-крайней мере для BKG.  (там еще в другом месте код есть, он на фоновую картинку срабатывал - но я на нашел где ее файл - поэтому может и не работать)

Хотя дом всего до 20кб сжимается.  Видать 'дизеринг' сказывается.
Но у меня поддерживаются и сжатые и несжатые файлы.

3DSchumacher в личку брошу ссыль.
lupus:
Буду ждать!
3DSchumacher:
Ti_, окей, спасибо за файлик, что-то обязательно придумаем, вот только до компа доберусь...
lupus:
Зацените реализацию миниигры, она конечно пока не доделана (нет ещё одной ветки ходов, начинающейся с тумблера A4), но сама идея понятна.
Выбрать можно из Debug menu или дойти до 4 главы, в которой эта мини-игра и присутствует.
https://dl.dropboxusercontent.com/u/57975554/gincs/SHG_demo.7z
Палитру правда ещё подбирать нужно и подписать тумблеры, чтобы было понятно они пронумерованы так:
A1-B1-C1-D1
A2-B2-C2-D2
A3-B3-C3-D3
A4-B4-C4-D4
3DSchumacher:
lupus, зашибись! Еще бы усреднить палитру, шоб одинаковая была, и будет совсем шикарно!
lupus:
Да, палитру ещё буду допиливать, чтобы бэкграунды головоломки так сильно внешне не отличались. И подписать тумблеры надо будет. Но сперва закончу с кодом головоломки и, наверное, ещё одну главу впихну, тогда получится примерно 25% сценария за Гарри.
Также в процессе обдумывания реализации данной мини-игры придемал как организовать доступными средствами что-то похожее на систему паролей. Если будет достаточно места в роме, чтобы впихнуть в него ещё и сценарий Сибил, то доступ к нему будет по вводу пароля, который будет выдаваться по окончанию игры за Гарри.
Добавлено позже:
3DSchumacher, раз уж ты реализовал предпросмотр картинок из папки pics, реквестую функцию вставки строки "#loadbkg %picname%" по двойному клику на картинку в то место, куда установлен курсор :cool:
Добавлено позже:
И оставить подсветку зелёным цветом текста после кавычки (') только если строка с этой кавычки начинается.
Добавлено позже:
Перенёс 5 глав из 18, в 5-ой пришлось таки изучить и использовать триггеры :)
Доработаю головоломку и тогда можно будет сказать, что готово 25% сценария за Гарри. В ром вставлено уже порядка 90 бэкграундов и весит он 1,20 mb. Надеюсь, что получится влезть в 4 метра.
3DSchumacher:

--- Цитата: lupus ---Надеюсь, что получится влезть в 4 метра.
--- Конец цитаты ---
и не сомневайся, мы с Ti_ замутили мегасюрприз ;)
lupus:
Неужели таки прикрутили сжатие? :) можно ждать в завтрашнем обновлении?
Теперь бы ещё починить доступ к символам из второй части шрифта для менюшек и вооще сказка получится.
3DSchumacher:
Встречайте новую революционную версию GINCS Studio v1.3!

Переработке в редакторе подверглось буквально все. Кроме того, благодаря стараниям товарища Ti_ серьезно доработан сам движок GINCS! Также я переписал большую часть исходных кодов сборщика проекта в финальный ром, теперь гораздо легче вносить изменения и исправлять ошибки.

Изменения в версии 1.3:

* Полностью переработана подсветка синтаксиса
* Улучшен интерфейс
* Существенно увеличена скорость работы редактора с большими скриптами
* Левая панель с деревом проекта теперь может быть спрятана (актуально для владельцев маленьких мониторов)
* Просмотр PCX изображений в дереве проекта по наведению на них курсора мыши
* Автоматическая вставка команды загрузки изображения в скрипт по двойному клику мыши на PCX файле в дереве проекта
* Добавлена кнопка перезагрузки дерева проекта (актуально при добавлении файлов)
* Изменена статусная строка. Теперь на ней отображается количество выделенных символов в скрипте
* Реализовано автодополнение всех ключевых слов GINCS
* Редактор автоматически подсвечивает слишком длинные пункты меню красным цветом и слишком длинные имена меток красной рамкой
* Строки комментариев подсвечиваются зеленым только если начинаются с символа комментария
* В сборщик проекта GINCS добавлен новый алгоритм сжатия изображений APack (сжимает графику в 1.5 - 2 раза)
* Новая версия движка "GINCS 0.52 mod 32 v03"
* Движок GINCS теперь автоматически распаковывает сжатые изображения (спасибо Ti_)
* Движок GINCS теперь поддерживает второй язык (например русский) в пунктах меню! (спасибо Ti_)
* Устранено множество ошибок в коде GINCS Studio
* В окно About добавлена информация об авторе оригинального движка GINCS - HAROLDO O. PINHEIRO
* Вновь созданный проект изначально содержит поддержку русского шрифта
* Новый логотип GINCS Studio ;)
При переносе проекта из прошлых версий студии необходимо заменить старый stub.bin в папке other на новый, например из проекта example.


Скачать GINCS Studio v1.3 можно как всегда тут:
http://emulation.at.ua/publ/developing/sega_megadrive_genesis/gincs_studio/11-1-0-71

p.s. отдельное спасибо lupus за дельные замечания и предложения по улучшению
lupus:
Спасибо, ребята :)
С этим сжатием на выходе ром похудел кило на 500 :wow:
3DSchumacher, ты забыл добавить в описании, что если портировать проект из предыдущих версий, то обязательно заменить stubs.bin в папке проекта на новый ;)
А то я сперва испугался...
3DSchumacher:

--- Цитата: lupus ---3DSchumacher, ты забыл добавить в описании, что если портировать проект из предыдущих версий, то обязательно заменить stubs.bin в папке проекта на новый
--- Конец цитаты ---

да, спасибо
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

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