Сообщения без ответов | Активные темы Текущее время: 18 июл 2025, 01:53



Ответить на тему  [ Сообщений: 3 ] 
 Незаконченный ремейк Gradius III 
Автор Сообщение
Сообщение 14 сен 2009, 15:26
Профиль
Аватара пользователя

Зарегистрирован:
18 июн 2008, 10:19
Сообщения: 162
Не нашёл куда написать, написал здесь.

http://www.emu-land.net/forum/index.php/topic,32273


Сообщение 14 сен 2009, 20:00
Профиль WWW
Основатель сайта
Аватара пользователя

Зарегистрирован:
21 июл 2007, 15:40
Сообщения: 2237
Откуда: Москва
Если хочешь что написать, так и пиши, а не ссылку на другой форум давай. ;)


Сообщение 15 сен 2009, 09:31
Профиль
Аватара пользователя

Зарегистрирован:
18 июн 2008, 10:19
Сообщения: 162
Попытка сделать ремейк на игру Gradius III

Очень нравится игра на приставках под названием Gradius!
Особенно Gradius III на SNES!!!
MAME-версию так и не смог пройти, так как при сохранении/восстановлении
карта тайлов отображается некорректно

Ещё до того момента, когда успешно портировал эмуляторы, решил написать ремейк этой игры!

Вооружился SNEmul под DOS (а есть ли версия под Win32 ?) и стал рипать графику в основном.
Некоторые оцифровки рипнул двумя компьютрами (один воспроизводит, другой пишет).
Одним компьютером рипнуть звук не получилось - драйвер был кривой (или эмуль не позволял ?) - с эхом было...

Рипнув всю графику, стал разбираться что к чему... Некоторое использовал.
Остальные спрайты взял из интернета или из других игр.

В то время Digital Thresher'а не существовало, была только Advanced MicroMachine с экраном 128x128 и ОЗУ 2 МБ
Собственно под неё всё и затачивалось...

Написал порт библиотеки API-функций МикроМашины для PC (DOS32), для того чтобы разработку вести на PC.
Затем кидать без проблем на реальный девайс...

Кто-то (уверен что 90%) скажет: "ДОС - умер!!! Никто этой некрофилией заниматься не будет!"
Но мне честно говоря безразлично, а выбор в сторону 32-битного ДОС'а (DOS+DPMI) был продиктован следующими соображениями:

1) Работа напрямую с железом (или эмуляция этой самой "прямоты")
2) Не люблю идеологию программирования под Windows'ы
3) Есть некоторое количество опыта в программировании под DOS

Поэтому решено было писать DOS-приложение.
Проект вёлся в среде Open Watcom C 1.7. Собирать надо с помощью него.

Вначале сделал библиотеку API-функций, которая в какой-то степени абстрагировала меня от железа,
тоесть стирала различия между железом PC и МикроМашины! Это очень важно для переноса.

Библиотека позволяет программировать: видео, звук, ввод клавиш(эмуляция джойстика) и другие прочие системные функции.
Там и блиттинг с отзеркаливанием, полупрозрачностью и растровыми операциями.
Резидентные проигрыватели MIDI-файлов, WAV, и Adlib (проигрывание модифицированного RAW-формата).
И многое другое...

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

Ну и собственно в редакторе карт MapWin (Mappy) составил карты 4-х уровней, которые более отличимы от других:

1) Песок
2) Вода
3) Огонь
4) Органика

Все уровни кроме первого - анимируются (боковые стены).

Далее добавил главного героя - космический корабль (закамуфлированный под боевой самолёт ?)
Сделал ему 10 видов оружия!!! Некоторые могут наращивать мощь!
И три типа бомбы.

Запрограммированы также: движение и анимация боковых стен, отображение и прокрутка задника
Также: фоновая музыка, звуки (выстрелы, взрывы и др.)
А также: коллизия корабля с бонусами (значки: жизнь, экспандер жизни, временное бессмертие, 10 типов оружия, 3 типа бомб,...)
и со стенами.
Также: игровой процесс: вступление, окончание (мультеги , показ карты - текущая планета, скругление уровня, если проиграл, и т.п.

Ну и немного заставки - о себе, про игру и т.п.

----------------------------------------------------------------------------
В общем - добавить туда врагов и коллизию с ними - и игра будет закончена!!!
----------------------------------------------------------------------------

Но меня обломало! Так как после портирования эмуляторов смысл в ремейке отпал!
Да и написание игры - жрёт кучу времени, ну и надоел в конце концов...

Поэтому выкладываю исходники проекта и всего что с ним свызано (что осталось)...
Может кому-нибудь будет интересно. Или кто-нибудь подхватит...

Файлы:

Gradius3.rar - скомпилированный исполняемый файл.
AuMAPI.rar - исходники библиотеки API
Gradius3SRC.rar - исходники проекта
Converter.rar - конвертилки (24-битный bmp в 16-битный RAW, 16-битный RAW в массив констант (Си) )
Resource.rar - некоторые ресурсы (карты уровней для MapWin, музыка, зарипанные звуки и графика с SNES'овского Gradius'а)

HowTo:

1) Плоскость спрайтов (bmp-файл) после редактирования и сохранения гонится в 16-битный RAW, затем RAW гонится в Си-массив констант
Затем данные вставляются в файл Sprite.c, старые убираем.

2) Если библиотека AuMAPI надо изменить (сменить разрешение или ещё что-нибудь), то её надо перекомпилять. Полученный файл AuMAPI.lib
кинуть в проект Gradius (заменить или прибить старую либу).

3) Далее компилять проект Gradius3

4) MIDI файлы должны быть в формате SMF0. И желательно без мусора. Программы MIDIDisAssembler и MIDIConverter в помощь


Управление:

Стрелки - направление
Enter - старт/пауза
Ctrl - стрельба патронами
Alt - бомбы (ограничено)
Esc - выход

Дальше хаки в целях отладки:

X - изменить силу оружия
Y - сменить оружие
Z - прыгнуть на следующий уровень (а в конце показать концовку)

На счёт X и Y - точно не помню - возможно перепутал местами...

Требования к железу:

VESA 1.2 совместимая видяха
Sound Blaster Pro совместимая звучка
PS/2 клавиатура

или эмулирование в DOS-box'е или VDM-Sound

Переменная окружения BLASTER должна соответствовать следующим настройкам:

I/O 0x220
IRQ 5
DMA 1
Type : SB Pro или выше

MPU I/O 0x330

Adlib I/O 0x388

В общем - всё стандартно ДОСоФаги помнят

Напоследок добавлю, что "недо-игра" также работала на Advanced MicroMachine

-= Enjoy =-

p.s. аттачи остались на эмуленде, так как пишу с работы - интернет урезан. если сильно надо, прикрепите здесь :)


Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 3 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF (mod by Zeru-j).
Русская поддержка phpBB