Новая игра Metal Blast 2277 - Sega Genesis
|
|
TLT | Дата: Суббота, 08.09.2018, 19:25 | Сообщение # 46 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Цитата Madao ( ) всё лучше и лучше - удивительно) =)) Спасибо!
Ещё скрины. Сейчас делаю уровень 6.
Ченджлог:
Сделал каркас кода для уровня 6. Добавил карты столкновения на уровень 6. Добавил управление и перенёс обслуживание выстрелов в единый модуль. Нарисовал графику фона для уровня 6. Добавил графику в ROM, подключил палитры и отрисовал на экране. Сделал систему управления для уровня 6. Исправил ряд мелких багов. Доработал карту столкновений для уровня 6 – добавил невидимые стены. Нарисовал и добавил скейт, анимировал его двигатели. Добавил появление игрока со взрывами и уничтожением скутера, превращающегося в скейт. Доработал фон и скроллинг уровня 6. Доработал палитру и скроллинг фона уровня 6. Добавил анимированных гусей в небо на фон уровня 6. Нарисовал 5 врагов на уровень 6. Добавил 3 типа врагов на уровень 6. Сделал приоритетный слой воды, чтобы лодки и кораблики-противники зарывались частично волной. Сделал ещё одного врага для уровня 6 из двух спрайтов со сложным поведением. Размножил первый тип врага – всего 3 шт. Протестировал врагов, исправил баги. Вставил спрайты босса уровня 6, сделал анимацию. Сделал основу для поведения босса уровня 6. Сделал анимацию для босса 6. Сделал спрайт пуль и поведение стрельбы босса 6. Сделал систему урона босса 6, настроил габариты и приоритет. Босс 6 полностью доделал, осталось только протестировать и подправить мелочи. Добавил систему повреждений босса 6, скорректировал количество его жизней. Сделал расписание появления врагов на 4 минуты для уровня 6. Протестировал расписание врагов, добавил уничтожение врагов в нужные моменты, добавил бонусы. Добавил обновление вида бонусов, исправил мелкие недочёты в расписании врагов. Протестировал уровень 6 – проходится за 5-7 минут. Уровень готов. Добавил в расписание уничтожение противника 4 на уровне 6, если включаются противники 6 и 7. Добавил в GameOver нужные триггеры для уровня 6. Перенёс смещение противника 2 в VDP таймер, чтоб не было ресинхронизации со смещением задника.
Вот так.
|
|
| |
TLT | Дата: Воскресенье, 23.09.2018, 22:31 | Сообщение # 47 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Сделал основу для уровня 7. Перенёс обработку противника 2 на уровне 3 в VDP, чтобы не было асинхрона с фоном. Для уровней 1, 2, 3 и 7 перенёс обработку смещения бонуса в VDP, чтобы не было асинхрона с фоном. Исправил ошибки, протестировал, добавил смещение бонуса на все уровни. Оптимизировал анимацию огня для огнемёта. Исправил баг на уровне 3, когда противники не появлялись в нужном месте. Удалил неиспользуемый кусок кода. Видимо, забыл его. Оптимизировал структуру алгоритма определения коллизий путь врага и карты столкновений. Оптимизировал обработку алгоритма полёта пуль игрока. Протестировал прохождение всех (6) имеющихся уровней – 23 минуты. Исправил баг: карта столкновений уровня 6 – внизу пули блокируются. Оптимизировал структуру алгоритма просчёта столкновений персонажа с картой уровня. Удалил не используемый просчёт столкновений с картой потолка за ненадобность – нет уровней с этим элементом. Этим снизил нагрузку на обработку уровня. Оптимизировал алгоритм просчёта столкновений со стенами. Сделал асинхронный тайминг анимации огня для огнемёта. Нарисовал графику фона для уровня 7. Исправил баг с неправильной переменной для просчёта столкновений пуль на уровне 7. Отрисовал фон уровня 7. Сделал скроллингу фона уровня 7. Откорректировал начальные координаты персонажа на уровне 7. Добавил на фон ховерборд и наладил его поведение – выход из кадра со скроллингом экрана. Сделал мелкие корректировки и вставил приоритет части слоя фона уровня 7. При тестировании второго типа платформ столкнулся с багом определения коллизий и реакции на край платформы. Переработал систему определения данного момента. Переделал часть фона уровня 7, чтобы не ломался новыми элементами, появляющимися в процессе скроллинга. Исправил баг с коллизиями стены и пресонажа. Сделал мелкие корректировки фона и карт уровня 7. Сделал добавочные элементы фона и изменение карты уровня 7 по мере скроллинга. Сделал скроллинг некоторых элементов фона на таймер. Нарисовал и добавил спрайты двум врагам на уровень 7. Вставил на уровень 7 босса из уровня 5. Добавил тайминг и скроллинг спрайта пролетающего большого корабля 2 раза со сменой номеров. Сделал основу для тайминга появления врагов уровня 7. Сделал по расписанию всех врагов уровня 7, добавил спрайты, подправил. Подправил коллизии врагов по высоте. Добавил бонусы по расписанию. Подправил босса, сделал функциональность и завершение уровня. Добавил рандомные пули для усложнения в зависимости от сложности. Убрать добавление очков за бесконечных врагов. Протестировал, подправил мелочи, добавил где нужно уничтожение врагов, заменил спрайты пуль. Уровень 7 полностью готов.
Вот так.
|
|
| |
TLT | Дата: Суббота, 06.10.2018, 18:41 | Сообщение # 48 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Делаем далее:
Сделал основу для уровня 8, прописал карты столкновений. Нарисовал и вставил в ROM графику для уровня 8. Подправил 2 палитры фона уровня 8. Вставил тайлы в память и отрисовал основной фон уровня 8. Дорисовал ещё несколько элементов и вставил в игру, подправил имеющиеся. Доработал карту столкновений уровня 8. Подробностью доработал фон уровня 8, добавил элементы детализации, порезал части фона для последующей анимации (открытие двери). Нарисовал спрайты пушек и мин для уровня 8. Дорисовал спрайт противников для уровня 8 и их анимацию. Добавил нужные переменные в экран GameOver, чтобы не возникало проблем с таймером и выполнение сценариев уровня 8. Прописал спрайты врагов 5, 6, 7 в интеграцию. Добавил 2 пушки, добавил 1 глаз – противники уровня 8. Добавил объект заградительной пушки и её луч с анимацией и поведением слежения за игроком. Добавил мину, осталось доработать коллизии и размножить. Сделал полностью 3 мины на уровень 8. Расставил все объекты на уровне 8: противники, мины, враги. Сделал активацию всего в нужный момент. Включил активацию босса, клонированного с уровня 6. Протестировал, исправил кучу багов с таймингом. Нарисовал и добавил анимацию открытия дверей бункера. Исправил баг босса 6 и 8, когда пуля оставалась на экране после гибели босса. Добавил уничтожение мины на уровне 8 после смерти босса. Сделал дополнительное поведение для босса уровня 8, добавил спрайты пуль и анимацию молний, исправил баги. Уровень 8 почти готов, осталось сделать разные мелочи. Сделал мелкие доработки уровня и босса 8.
Вот так.
|
|
| |
TLT | Дата: Пятница, 19.10.2018, 23:27 | Сообщение # 49 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Сделал основу для уровня 9. Прописал все необходимые функции и коллизии для игрока и объектов на уровне 9. Для разных уровней продублировал в ВБланк обнуление скроллинга в начале уровня, чтобы в некоторых случаях не дёргалось изображение. Нарисовал, нарезал и конвертировал элементы фона для уровня 9, сделал палитру. Отрисовал фон уровня 9, прописал тайминги, сделал анимацию фона и слои со скроллингом. Нарисовал босса уровня 9. Сделал основу для поведения босса уровня 9. Сделал доработку карты уровня, доработал элементы фона, добавил новые. Нарисовал 3 спрайта противников для уровня 9, добавил в память. Сделал появление заслонки для уровня 9, где необходима стена. Сделал и проанимировал босса уровня 9. Сменил пули на уровнях 1-4, где нет препятствий для пуль с использованием просчёта коллизий, чтобы оптимизировать. Вставил в память спрайты противников. Сделал поведение электро барьеров 4-5, прописал появление и анимацию. Сделал противника 1, анимировал. Сделал несколько корректировок уровня 9. Сделал противников 2-3, 6. Частично наладил тайминг появления. Нарисовал и добавил 3 вида пуль для врагов уровня 9. Настроил габариты спрайтов пуль. Исправил ряд мелких недосмотров и ошибок. Прописал полное расписание появления врагов и босса на уровне 9. Убрал приоритет для плитки фона. Убрал добавление очков за бесконечных врагов на уровне 9. Прописал тип бонуса на проверку сложности: если ниже харда, то сердечко, если нет – S. Уровень 9 практически полностью готов.
Вот так.
|
|
| |
TLT | Дата: Вторник, 30.10.2018, 20:50 | Сообщение # 50 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Добавил проверку на отсутствие на экране пуль врагов пред появлением босса уровня 9, чтобы не менялись пули. Изменил меняющуюся высоту выстрелов босса уровня 9 с рандома на количество жизней – если меньше 128 жизней, то сложнее. Исправил проблему, когда враги уровня 9 появлялись мерцанием. Добавил рандомное совпадение для того, чтобы враги уровня 9 типов 2 и 3 появлялись с паузой. Подкорректировал жизни врагам уровня 9, типу 6. Сделал основу для уровня 10. Сделал оконное расположение для HUD, чтобы фон слоя A с приоритетом не залазил поверх интерфейса с очками, жизнями и пр. Изменил карту столкновений и добавил планку для смерти игрока, если спрыгнуть с лифта. Исправил ряд элементов фона уровня 10, полностью сделал вертикальный скроллинг. Полностью нарисовал и отрисовал фон уровня 10. Доработал карту столкновений уровня 8, добавил возможность запрыгивать на решётку лифта. Исправил баг на уровне 10 с рассинхроном вертикальных полос скроллинга, добавив саб с командами выравнивания. Удалил ряд дублирующих настроек типа скроллинга экрана в начале каждого уровня. Опустил на 2 тайла ниже надпись номера уровня на экране между уровней, чтобы окно не затирало. Нарисовал 4 вида спрайтов врагов для уровня 10, вставил в ROM. Добавил саб с врагами для уровня 10, сделал один тип врагов. Добавил бонус на уровень 10. Добавил поведение 7 противников на уровень 10. Нарисовал спрайты босса, добавил в игру. Нарисовал кадры анимации повреждений босса. Реализовал полностью босса уровня 10. Исправил несколько мелких багов. Добавил спрайт пуль для босса уровня 10. Сделал расписание появления врагов на уровней 10. Сделал уничтожение врагов для уровня 10. Перенёс движение спрайтов уровня 10 в VDP. Уровень 10 полностью готов.
Вот так.
|
|
| |
TLT | Дата: Четверг, 15.11.2018, 23:13 | Сообщение # 51 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Сделал основу для уровня 11. Сделал начальную карту столкновений для уровня 11. Сделал просчёт с картой столкновений для игрока и пуль. Нарисовал часть графики для фона уровня 11, вставил, отрисовал. Нарисовал и вставил спрайты 4-х противников. Нарисовал и вставил спрайты платформ. Сделал анимацию платформ. Нарисовал на фон цепи и анимировал их. Сделал отрисовку платформ исходя из продвижения. Сделал постепенное добавление элементов фона на уровне 11. Сделал затухание палитры под конец уровня. Исправил мелкие баги. Оптимизировал математику отрисовки. Сделал стирание фонов перед выходом босса, включил чёрную палитру, чтобы затушить. Сделал вынос спрайтов платформ перед боссом, чтобы оперировать фонами с изображением босса. Переназначил адреса и доработал стирание фона перед боссом и анимацию объектов. Сделал сабы и включил анимацию босса вертикальным скроллингом. Сделал платформы на карте пониже, опустил спрайты платформ. Сделал поведение на стрельбу и удары кулаками босса 11. Сделал анимацию и коллизии рук босса уровня 11. Сделал уничтожение босса 11. Добавил анимацию уничтожения босса, взрывы. Изменил поведение босса в зависимости от количества жизней. Босс 11 полностью готов. Сделал модификацторы врагов с уровня 10 для уровня 11. Сделал расписание появления врагов на уровне 11. Сделал корректировку в добавление очков за всех противников, чтобы не довались очки до бесконечности. Сделал уничтожение противников, чтобы не снижался fps до критического уровня при одновременной активности кучи спрайтов. Исправил баг: Босс уровня 10 с неправильной палитрой. Исправил баг: 10 уровень HUD ушёл на задний план. Устранил проблему: Уровень ходьбы на мосте – стоячие персонажи дёргаются – прописать VDP. Тоже самое сделал на уровне 2.
Теперь осталось самое сложное: всё допиливать, тестировать, исправлять. А также нужно будет сделать меню, читы, концовку, музыку, звуки и пр. Короче, уровни готовы, но дел с игрой ещё много. Компилируется проект уже больше 35 секунд, посему тестировать сложно становится и долго. Представляю как в прошлом по 5-10 минут компилировали на старых компах и затем ещё писали на картридж каждый раз без эмуляторов. В общем, муторно. Но основная часть игры готова.
Вот так.
|
|
| |
TLT | Дата: Суббота, 08.12.2018, 18:04 | Сообщение # 52 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Поставил бонус в конце уровня 11. Исправил баг: Фон на Game Over испортился. Протестировал на железе: прошёл все уровни, собрал большее 600000 очков, босс 11 странно подрезался с левой стороны. Сделал анимированный экран заставки. Сделал переход на титульный экран. Нарисовал и добавил экран заставки со взрывом. Сделал главное меню. Сделал меню опций и функциональность изменения переменных: сложность, отключение / включение музыки и звуков, основу для музыкального теста. Интегрировал меню ROM, распределил порядок экранов. Протестировал на эмуляторе, исправил ряд багов и недочётов с менюшках. Конвертировал 12 мелодий, вставил в игру, протестировал и выявил проблемы. Сделал фон из тайтла и скроллинг на меж уровневой заставке, подправив расположение надписи. Добавил на межу уровневый экран показ очков, стёр перед первым уровнем. Добавил код добавления дополнительной жизни за очки. Сделал рандом направления скроллинга фона на экране перехода между уровнями. Решил проблему: анимированная заставка неправильно отображается. Из-за включенного окна съедался передний план - отключил. Добавить палитру для корректного отображения шрифтов на титульнике и в опциях. Сделал предзапускной экран с информацией. Сделал титры в конце, после 11 уровня и заставок. Убрал условные видимые спрайт боссов. Сделал чит-коды в паузе: Код пропуска уровня: Right, A, B, C, Up, Start. Код самоуничтожения (с утратой очков и конта): Down, Up, B, A, C, Start. Код повышения очков на 100000, если меньше 100000: A, B, Right, Up, C, Start. Код повышения жизней до 999: C, A, Right, B, Up, Start. Код по повышения континиусов до 99: B, Up, Right, A, Left, Start. Код на всё оружие: Up, Down, A, Right, C, Start. Сделал разнообразную траекторию пуль для врагов 1-3 уровня 4. Исправил баг. Сделал нажатие на A, B, C, Start для выбора опций и старта. Сделал основу предыстории в начале игры, перед первым уровнем. Сделал код, чтобы жизни не уменьшались на новом уровне, если их больше нормы. Если меньше, то добавляются по умолчанию. Исправил баг с неправильным скроллингом слоя на межуровневой заставке. Исправил баг в поведении врагов 1-3 уровня 4. Сделал ряд мелких корректировок и исправлений. Сделал рандомизацию на экранах. Протестировал странный баг с исчезновением тайлсета: сделал несколько изменений в коде. Пока баг пропал. Протестировал чит-коды на Genesis 3 – все работают, а на эмуляторе Fusion почему-то не все. Протестировал баг с исчезновением тайлсета на Genesis 3 – нет. А на эмуляторах Fusion и Regen – есть. Проверил. Баг не подтвердился: Уровень 8-9 палитра изменилась. Проверил. Баг не подтвердился: при убийстве врага с огнемёта – нет взрыва иногда. Проверил. Баг не подтвердился: на уровне 2 – при завершении уровня дёргается фон, т.к. отключается вертикальный буфер. Увеличил таймаут при старте уровня на 9 миллисекунд – показывается чёрный экран. Доработал ИИ противника 2 на уровне 5. Сделал тексты диалогов после уровня 4. Нарисовал графику и вставил, сделав начальную презентацию сюжета в виде комикса. Устранил проблему: Мелодия на геймовере не играла. Исправил баг: мины на уровне 8 делают бесконечные жизни, вычитая из нуля. Мелодия с рёвом монстра чикает на семпле, посему рёв убрал. Прописал везде стандартный звук стрельбы врагов. Удалил создание спрайта пули врагов 0, т.к. нигде она не использовалась и не обрабатывалась. Сделал отключение мелодии ГеймОвера после продолжения. Добавил звуки взрывов боссов при частичном разрушении. Баг исправлен: Босс уровня 2 – лазер звук добавить. Баг исправлен: Босс уровня 3: постоянно звук выстрела. Баг исправлен: На уровне 1 вышка взрывается без звука. Заменил звуки стука на звуки выстрела пистолета. Баг исправлен: Босс уровня 1 без звуков выстрела (лазер). Сместил код скроллинга антенны уровня 3 в ВДП. Баг исправлен: Босс уровня 5 взрыв без звука. Баг исправлен: Босс уровня 7 взрыв без звука. Исправлено: Босс уровня 11 стреляет без звука. Исправлено: Босс уровня 11 взрывается без звука. Исправлено: Босс уровня 6 взрывается без звука. Исправлено: Начало уровня 6 – взрыв скутера без звука. Сделал воспроизведение звука попадания в игрока, когда отнимается HP. Сделал звук взятия бонуса. Исправлено: Босс уровня 6 выстрел плазмы вверх без звука. Исправлено: Босс уровня 8 пускает плазму вверх и плазму вниз без звука. Исправлено: Босс уровня 8 взрыв без звука. Исправлено: Дверь открывается без звука. Исправлено: Смерть босса уровня 3 по звуку – взрыв, но нужно крик. Добавлен звук вылета боссу 3. Убрал звук рассыпных пуль для боссов 6 и 8. Сделал звук дамага игроку и звук смерти. Сделано: Боссу уровня 10 появляется без звука и умирает без звука. Сделано: На смерть босса уровня 9 нужно поставить звук визга. Исправлено: Босс уровня 11 появляется без звука. Исправлено: Боссу уровня 11 бьёт кулаком без звука. Сделано: Боссы уровня 9 и 10 пускает слюну со звуком выстрела. Добавил звук на паузу. Добавил звук дополнительной жизни за очки и сделал условия получения гибче. Изменил звуки оружия игрока. Удалил неиспользуемые звуки взрывов. Сделано: Начало уровня 10 сменить начальный диалог. Добавил ещё 2 монолога игрока, вставил в процесс. Убрал SRAM код записи очков в память, т.к. игра скорее всего на картриджах с батарейкой не будет выходить. А без SRAM строчка показывает непонятные данные. Уровень 10 прорисовал для ширины экрана PAL и убрал скрывающую линию футера. На начальной заставке сделал коррекции для PAL. Перенёс код дождя на уровнях, где он есть (3 и 5) в часть, входящую в VDP. Убрал чит-код на сброс SRAM-очков, т.к. ранее убрал SRA-сохранение очков. Добавил больший период появления врагам на уровне 9. Изменил типа Sleep в движке, чтобы на PAL чуть быстрее было.
Вот так.
|
|
| |
|
Томахомэ | Дата: Понедельник, 15.04.2019, 12:01 | Сообщение # 54 |
Генерал-лейтенант
Группа: Проверенные
Сообщений: 522
Статус: Оффлайн
| Цитата TLT ( ) Убрал SRAM код записи очков в память, т.к. игра скорее всего на картриджах с батарейкой не будет выходить. А без SRAM строчка показывает непонятные данные.
А собсна, зачем батарейки - разве не успели ещё игроделы за все эти годы придумать какой-нибудь хотя бы чуть-чуть менее энергозависимый способ сохранения данных на картридже?
|
|
| |
TLT | Дата: Понедельник, 15.04.2019, 16:48 | Сообщение # 55 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Цитата Томахомэ ( ) А собсна, зачем батарейки - разве не успели ещё игроделы за все эти годы придумать какой-нибудь хотя бы чуть-чуть менее энергозависимый способ сохранения данных на картридже?
Есть такое... В тех же новых флеш-картриджах... Но тиражные PCB без такого чипа, на котором данные записываются как на обычную флешку. Это немного не так работает на PCB с простым ROM-чипом, где аппаратно нет ничего кроме.
Вот так.
|
|
| |
TLT | Дата: Суббота, 01.06.2019, 00:40 | Сообщение # 56 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Как выглядит меню опций и титульник:
Вот так.
|
|
| |
Genesis16 | Дата: Понедельник, 01.07.2019, 18:56 | Сообщение # 57 |
Майор
Группа: Проверенные
Сообщений: 81
Статус: Оффлайн
| Когда уже релиз на карика будет?
|
|
| |
PANNINI | Дата: Пятница, 12.07.2019, 21:36 | Сообщение # 58 |
Лейтенант
Группа: Проверенные
Сообщений: 43
Статус: Оффлайн
| Цитата Genesis16 ( ) Когда уже релиз на карика будет? Присоединяюсь к вопросу. Может быть просто выложишь в виде рома?
|
|
| |
TLT | Дата: Понедельник, 12.08.2019, 12:45 | Сообщение # 59 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Цитата PANNINI ( ) Может быть просто выложишь в виде рома?
Как показывает практика, это не даст даже пары комментов. Нецелесообразно.
Вот так.
|
|
| |
TLT | Дата: Четверг, 26.09.2019, 00:12 | Сообщение # 60 |
Генералиссимус
Группа: Администраторы
Сообщений: 2363
Статус: Оффлайн
| Добавил систему паролей, их отображение между уровнями Добавил дополнительные мелодии Доработал начальную заставку, добавил больше цветов (до 83) за счёт эффекта затенения. Затенил 2277 на заставке. Сделал некоторые мелочи.
Вот так.
|
|
| |