russian ROMhacking
[ Новые сообщения · Участники · Правила форума · Поиск ]
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Форум ромхакеров » Около темы » Геймдев » В разработке новый шутер на Sega Genesis (клон Contra)
В разработке новый шутер на Sega Genesis
TNДата: Суббота, 09.12.2017, 21:54 | Сообщение # 16
Подполковник
Группа: Проверенные
Сообщений: 131
Статус: Оффлайн
Цитата TLT ()
нужно на 100%

Ок. В ближайшее время постараюсь запилить базовые анимации...
Цитата TLT ()
Нужно стиль рисовки сохранить.

Ну , он там мягко говоря... не очень...
Цитата TLT ()
На представленном есть тени и глубина.

Мне кажется , лучше я возьму всю графику на себя. Нарисовать несколько десятков тайлов ландшафта - не проблема.
Цитата TLT ()
А ещё для вставки нужно расположение ног на максимальной ширине, расположение дула во всех положениях как на моём. Я тебе это в ЛС писал.

Видел. Мне текущий спрайт ГГ и то , как там реализована стрельба в разных направлениях мягко говоря , не нравится...
Гораздо лучше было бы реализовать это по тому же принципу ,что и в Midnight Resistance:

Т.е. заюзать отдельные спрайты для ног , и отдельные для верхней части туловища. Так можно сделать больше кадров , при этом рисуя меньшее кол-во спрайтов , тем самым экономя память и облегчая работу художнику.
Так что пока что я попытаюсь сделать оригинаальный спрайт соответствующий заданным требованиям , но и тебе всё же реально стоит задуматься о моём предложении...
 
ТомахомэДата: Воскресенье, 10.12.2017, 06:32 | Сообщение # 17
Генерал-майор
Группа: Проверенные
Сообщений: 352
Статус: Оффлайн
Цитата TN ()
Т.е. заюзать отдельные спрайты для ног , и отдельные для верхней части туловища. Так можно сделать больше кадров , при этом рисуя меньшее кол-во спрайтов , тем самым экономя память и облегчая работу художнику.


Неплохая, тащемта, идея. Я слышал, и в Metal Slug похожая технология применяется, благодаря чему персонажи весьма реалистично стреляют на бегу.
 
TLTДата: Пятница, 15.12.2017, 16:57 | Сообщение # 18
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Цитата TN ()
стиль рисовки сохранить.
Ну , он там мягко говоря... не очень...


Не очень, так не очень. Всё остальное мне не надо.

Цитата Томахомэ ()
как там реализована стрельба в разных направлениях мягко говоря , не нравится...
Гораздо лучше было бы реализовать это по тому же принципу ,что и в Midnight Resistance:


Не нравится, так не нравится. Всё остальное мне не надо. Я не собираюсь переписывать движок под то, что нужно художнику. Художник будет рисовать под то, что нужно движку.

Я делаю то, что я хочу и могу. Если я делаю так, если я взял этот стиль, если я сделал без тени и глубины, то это осознанный выбор стиля с учётом того, что нужно и можно.

Цитата TN ()
Так можно сделать больше кадров , при этом рисуя меньшее кол-во спрайтов , тем самым экономя память и облегчая работу художнику.


Технические вопросы решать программисту, а не художнику. Если у меня сделано это так, то это значит, что я трезво оцениваю свои возможности и учитываю дальнейшее развитие проекта, в том числе обработку спрайтов, просчёт коллизий и пр.

Что касается разработки, то мне НИКТО не нужен, кто будет мне диктовать и навязывать крутые фишки из самых крутых игр жанра, недопонимая, что для их реализации нужны годы и крутые программисты, бабки на существование и деятельность. У меня нет ничего.

Что касается проекта, то я на стадии программирования движка. Многое не получается. Многое, что получается, в процессе тестирования приходится откладывать или убирать.

Например, я хотел реализовать 2 типа платформ: твёрдая, типа земли и "ветка". Т.е. чтобы со второй игрок мог спрыгнуть вниз, нажав вниз+прыжок. Но в процессе тестирования оказалось, что спрыгивание не совместимо с возможностью стрелять внизу и стрелять сидя.

Также система диагональных спусков и подъёмов почвы вышли неуместными. Вероятно, стоит отказаться в силу малой необходимости.

Сейчас я вожусь со скроллингом. Система отрисовки уровня больше 512 пикселей по ширине пока не реализована - нужно сделать ещё сменные карты коллизий, вероятно, и динамический подмену оных, загрузку тайлов фона и пр. Пока не ясно, что делать типом сроллинга - сделать его фиксированным без возможности скроллинга назад (как в Контра) или сделать скроллинг свободный. Или сделать на разных уровнях по-разному.

Вообще я больше склоняюсь к реализации игры не ран'н'ган, а босс-раш. Т.е. сражения с боссами один за другим на ограниченных сценах. Понятное дело, что сложные по конструкции уровни не реализовать мне в силу недоразвитого скилла в программировании и прочих проблем.

Текущий ченджлог:

Реализовал Стрельбу во все стороны.
Оптимизирован пару одинаковых блоков, вынес на общие сабы.
Изменил габариты коллизии персонажа с маской земли.
Добавил код для подъёмов.
Добавил на кнопку «A» код остановки движения как в Contra Hard Corps.
Сделал код отключения анимации ходьбы, если включена остановка движения.
Дорисовал кадры спрайта персонажа со стрельбой вверх.
Сделал отключение движения на A+B. Просто нажатие A будет использоваться в выборе орудия.
Добавил положение стрельбы ровно вниз из стойки, если движение застопорено на месте (персонаж не садится).
Сделал алгоритм вычисления коллизий для пули, прикрутил поправку на скроллинг. Осталось переработать все пули.
Доработал алгоритм вычисления коллизий для пуль со скроллингом и мимическими координатами старта.
Изменил систему отслеживания с учётом положительной и отрицательной динамики смещения пули.
Перевёл все 10 пуль игрока под новый алгоритм столкновений со стенами.
Добавил избирательность столкновения, чтобы пули исчезали от попадания в твёрдую стену, а от столкновения с ветками или планками никакого эффекта – сквозные.
Нарисовал частицы столкновения пули с твёрдой почвой.
Добавил графику и прописал кода анимации для трёх спрайтов частиц столкновения пуль.
Прописал на сабы одинаковый код и оптимизировал под умное использование трёх спрайтов частиц для 10 пуль игрока.
Упростил выбор спрайта для частиц столкновения пули со стеной.
Нашёл алгоритм спрыгивания персонажа вниз. Осталось доработать его с проверкой типа платформы на которой стоит персонаж.



Вот так.
 
TLTДата: Пятница, 15.12.2017, 17:07 | Сообщение # 19
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Да, больше склоняюсь к жанру босс-раш закрытого типа. Что-то аля идея Брюса Ли "Прохождение этажей с мастерами боевых искусств". Только тут шутер с разными роботами, монстрами, ловушками, головоломками и пр.

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



Вот так.
 
ТомахомэДата: Пятница, 15.12.2017, 17:09 | Сообщение # 20
Генерал-майор
Группа: Проверенные
Сообщений: 352
Статус: Оффлайн
Цитата TLT ()
Например, я хотел реализовать 2 типа платформ: твёрдая, типа земли и "ветка". Т.е. чтобы со второй игрок мог спрыгнуть вниз, нажав вниз+прыжок. Но в процессе тестирования оказалось, что спрыгивание не совместимо с возможностью стрелять внизу и стрелять сидя.


В принципе, не страшно. Тот же MS, вон, тоже был лишён фичи "спрагивания", и тем не менее, на качестве геймплея это не сказалось.

Цитата
Вообще я больше склоняюсь к реализации игры не ран'н'ган, а босс-раш. Т.е. сражения с боссами один за другим на ограниченных сценах.

Цитата
Да, больше склоняюсь к жанру босс-раш закрытого типа. Что-то аля идея Брюса Ли "Прохождение этажей с мастерами боевых искусств".


Тоже не самый плохой концепт. Сильный перекос в похожую сторону был у Contra: Shattered Soldier для PS2.


Сообщение отредактировал Томахомэ - Пятница, 15.12.2017, 17:18
 
TLTДата: Вторник, 09.01.2018, 01:15 | Сообщение # 21
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Первый тест на железе прошел успешно:




Вот так.
 
TLTДата: Среда, 07.02.2018, 23:27 | Сообщение # 22
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Времени всё меньше, но потихоньку нахожу в день хоть часик или полчасика, делаю игру дальше. Ченджлог и пара скриншотов:

Сделал односторонний скроллинг.
Загрузил пробную графику фона. Нужно дорабатывать.
Сделал основную формулу скроллинга с раздельным слоем.
Добавил соответствующие переключатели на раздельный скроллинг.
Доработал графику фона первого уровня, доработал скроллинг фона.
Нарезал тайлы для переднего плана, добавил в ROM.
Сделал систему подгрузкй тайлов переднего плана от скроллинга. Нужно доработать.
Сделал более продуманную систему слёта с платформы, если при ходьбе платформа заканчивается, и игрок должен упасть вниз. По старой системе просчёт габаритов был точным и можно было держаться на одном пикселе, что как бы не эстетично и нереально.
Кое-где оптимизировал код, удалил ненужное.
Сделал простую систему осадков (дождя).
Сделал блокировку перемещения игрока за пределы левого края экрана вне зависимости от скроллинга и отсутствия там блокирующей стены. Игрока не выходит за левый край ни по земле, ни в прыжке.
Сделал блокировку перехода правого края экрана по аналогии с левым.
Изменил и доработал алгоритм блокировки выхода игрока за границы экрана.
Сделал опрос столкновения со стеной в зависимости от флипа спрайта игрока, чтобы он не мог залетать вовнутрь стены если прыгнуть и в воздухе развернуться спиной.
Добавил бластпроцессинг для ручной регулировки нагрузки на цикл луча, чтобы повысить скорость обработки до 60 кадров в секунду и более. Позже нужно сделать дифференцированное изменение за счёт отслаивания просадки и чрезмерного увеличения fps.
Переделал графику фона, переформатировал расположение данных фона, всё привёл в соответствие.
Изменил скроллинг фона, добавив слои для дальних пальм, дорисовал некоторые элементы фона.
Нарисовал дождинку и заменил ею тестовый спрайт.
Сделал сткроллинг уровня 1.
Исправил несколько багов отрисовки платформ.
Сделал всю отрисовку уровня 1 с шагом 32 пикселя.
Добавил недостающие блоки переднего плана.
Увеличил высоту карты столкновения уровня 1.
Нарисовал и добавил в игру основу для HUD.
Нарисовал и добавил в игру тестового болванчика-врага, который пока ничего не может.
Сделал обнаружение столкновений пули противника с почвой.
Нарисовал графику взрыва, добавил.
Сделал спрайты взрывов, сделал систему взрыва противника.
Прописал код для того, чтобы сегменты почвы не прорисовывались бесконечное количество раз на определённой отметке скроллинга, а прорисовывались один раз.
Снёс на единый саб поведение взрыва противника 1 от каждой пули, продублировал реакцию для каждой пули.
Немного изменил спрайт противника 1.
Нарисовал и добавил кадры анимации огня из ракетного ранца противника 1, добавил код анимации на 6 кадров.
Немного изменил начальное появление спрайтов взрыва для противника 1.
Сделал код дрожания экрана при взрывах.
Сделал третий возможный взрыв на экране. Таким образом, спрайтов для взрывов используется 0-17.
Нарисовал и добавил графику большого взрыва.
Переделал взрыв, чтобы использовались вместе спрайты 32x32 и 16x16 – всего 18 спрайтов. Всего 3 взрыва одновременно по 6 спрайтов (4 больших и 2 малых).
Изменил внешний вид HUD, сделал новые отделы для видов оружия, для чего нарисовал и добавил несколько тайлов.
Вынес на сабы некоторые элементы настроек оружия игрока и HUD элементы.
Добавил на кнопку A выбор слотов оружия и соответствующую прорисовку HUD.
Протестировал выбор слотов оружия на разные варианты амуниции.
Нарисовал и добавил для HUD электронный циферблат.
Нарисовал и добавил для HUD ряд дополнительных элементов.
Переделал систему выбора оружия по нажатию кнопки A, чтобы она работал на всех эмуляторах и при любой конфигурации наличия любого набора оружия от 1 до 5.
Доделал HUD в основной вид, разделил на 3 саба. Нужно будет ещё разделить на саб для индикатора жизней, когда сделаю его активным.
Добавил опцию приоритета текста в HUD, чтобы прописывать счётчик очков.
Сделал активным счётчик очков, добавил срабатывание при изменении значения, протестировал.
Сделал систему смещения расположения очков в зависимости от количества символов, чтобы сравнять от правого края экрана.
Сделал дифференцированную систему отрисовки индикатора здоровья игрока. Отображается от 0 до 10 палочек из 5 тайлов.
Вынес на отдельный саб отрисовку индикатора здоровья игрока.

Прикрепления: 2485980.png(13.0 Kb) · 0108552.png(15.5 Kb) · 4172912.png(2.9 Kb) · 6296245.png(12.6 Kb) · 2284153.png(17.9 Kb) · 8588331.png(17.2 Kb) · 9626724.png(17.2 Kb) · 3541923.png(18.2 Kb) · 2905540.png(18.8 Kb)



Вот так.
 
SinnerДата: Понедельник, 12.02.2018, 13:11 | Сообщение # 23
Рядовой
Группа: Проверенные
Сообщений: 1
Статус: Оффлайн
Цитата TN ()
Ну , он там мягко говоря... не очень...


Да норм, если плясать от юмористично-мультяшного стиля. Как Metal Slug на игровых автоматах или Joe Blade на ZX Spectrum. Только улучшить графику надо.

https://www.youtube.com/watch?v=y_D831mBAYg
https://www.youtube.com/watch?v=9iE7sJ9vAvQ
https://www.youtube.com/watch?v=fxZa-bg_TB0
https://www.youtube.com/watch?v=T6NgLIa3N-8

Кстати, в Joe Blade 3 забавный спрайт заложника. Что-то похожее неплохо смотрелось бы.
Прикрепления: 1475450.gif(5.4 Kb)


Сообщение отредактировал Sinner - Понедельник, 12.02.2018, 13:14
 
TLTДата: Воскресенье, 18.02.2018, 15:44 | Сообщение # 24
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Новое видео с гейплеем - ТУТ


Вот так.
 
neznajkaДата: Воскресенье, 18.02.2018, 18:40 | Сообщение # 25
Подполковник
Группа: Проверенные
Сообщений: 141
Статус: Оффлайн
Не плохо смотрится. Но если сравнивать персонажа с окружением ему явно не хватает объема.
 
haskerДата: Воскресенье, 18.02.2018, 19:30 | Сообщение # 26
Рядовой
Группа: Проверенные
Сообщений: 3
Статус: Оффлайн
Не знаю почему но мне нравится, что то есть в этом пародийном-трэш стиле, особенно с цоевским солнцем здорово зашло, и финал у видео такой грустный подстать музыке, аж кубик такой захотелось biggrin
 
neznajkaДата: Воскресенье, 18.02.2018, 19:57 | Сообщение # 27
Подполковник
Группа: Проверенные
Сообщений: 141
Статус: Оффлайн
Но не сочитается и то и то. Визуальную часть лучше в одном стиле делать.

Сообщение отредактировал neznajka - Воскресенье, 18.02.2018, 19:59
 
ТомахомэДата: Суббота, 24.02.2018, 10:39 | Сообщение # 28
Генерал-майор
Группа: Проверенные
Сообщений: 352
Статус: Оффлайн
Цитата hasker ()
особенно с цоевским солнцем здорово зашло, и финал у видео такой грустный подстать музыке


Знать бы ещё, чьей работой была чиптюн-адаптация - может, и для некоторых композиций, которые я присмотрел для саундтреков своих проектов, удастся достать реаранжировки.
 
haskerДата: Суббота, 24.02.2018, 17:01 | Сообщение # 29
Рядовой
Группа: Проверенные
Сообщений: 3
Статус: Оффлайн
По-моему там простой mid2vgm
 
TLTДата: Среда, 28.02.2018, 14:21 | Сообщение # 30
Генералиссимус
Группа: Администраторы
Сообщений: 1837
Статус: Оффлайн
Ченджлог:
Нарисовал и вставил спрайты большой пальмы для переднего слоя.
Реализовал передний слой и его смещение по скроллингу в 2 раза быстрее основного смещения. Таким образом, реализован третий слой для эффекта параллакса.
Изменил и доработал систему переноса спрайтов пальм с переднего фона, чтобы не мерцали при рескролле.
Добавил тайл и пропечатал его на всей пустоте, образующейся при смещении на PAL-системах, чтобы не видно было мусора ниже 27 линии.
Протестировал на железе, исправил недочёты.
Переделал систему перемещения спрайтов переднего фона.
Доработал систему отрисовки состояния HP игрока.
Добавил определение коллизий пули противника с игроком и изменения состояния HP игрока.
Добавил проверку на положительный HP. Если 0 или меньше, то запускается сцена Game Over.
Сделал заготовку сцены Game Over.
Вынес управление на отдельный саб, Добавил переменную, Которая допускает или не допускает до ‘того саба от значения 0/1.
Добавил звуковой движок, тестовую мелодию, а также несколько сабов по организации воспроизведения музыкальных треков и соответствующие переменные для активности и неактивности воспроизведения музыки и звуковых эффектов.
Перенёс дистрибутив проекта из временной папки в нужную, сменив все точные адреса до файлов.
Вынес на сабы элементы расположения выстрелов.
Сделал активным выбор оружия.
Реализовал активацию через интерфейс орудия 2.
Перерисовал спрайты пальм на переднем плане, уменьшим общий размер со 128 по ширине до 96 пикселей по ширине.
Исправил ряд багов, связанных с координатами спрайтов и действия, завязанными на координаты некоторых спрайтов.
Немного изменил манипуляции спрайтами при взрыве противника.
Сделал третий вид оружия, немного изменил вид выстрелов и настройки переключения оружия.
Исправил проблему неправильно очередности стрельбы при переключении оружия, и возможную неправильную работу выстрелов.
Нарисовал и сделал кодовую основу для 4-ого типа оружия.
Исправил пару мелких просчётов.
Сделал четвёртый вид оружия.
Нарисовал спрайты для оружия 5 «огнемёт», добавил спрайты.
Сделал основу для оружия 5.
Добавил удаление спрайтов пуль и их масштабирование при изменении типа оружия.
Переделал систему оружия 5, добавил нужные элементы, анимацию огня, ограничение по расстоянию.
Вынес ряд повторных элементов на единые сабы, уменьшив размер ROM.
Сделал переключение оружия с учётом наличия активных выстрелов, чтобы не менялись вид и поведение оных. Добавил переменную и переставил порядок выполнения с нужными проверками.
Доделал оружие 5 «Огнемёт», переставив начальные координаты появления пламени. Все 5 видов оружия готовы, осталось только для каждого сделать эффекты из дула и эффекты уничтожения об препятствие.
Сделал основу для дифференцированного использования спрайтов вспышки и столкновений пуль с твёрдыми объектами, чтобы подгружать графику исходя из включённого типа оружия.
Нарисовал и добавил ещё 3 варианта вспышки из дула для огнемёта, плазмы и сюрикенов. Для оружия автомат и пулемёт вспышка используется одна и та же, стандартная.
Вставил кадры анимации для вспышки выстрелов, доработал немного алгоритм смены кадров для анимации вспышки.
Нарисовал и добавил ещё 4 варианта уничтожения пуль о препятствие для всех оружий разные.
Вставил кадры анимации для уничтожение пуль, доработал алгоритм смены кадров для анимации частиц соприкосновения пуль с препятствием.
Сделал мелкие изменения с переименованием некоторых спрайтов пуль и частиц.
Теперь все 5 видов оружия готовы полностью. Осталось только будет прикрутить звуки, но это уже для всего – позже.
Перерисовал имеющиеся и дорисовал недостающие значки оружия в HUD.
Добавил переменную-модификатор, который используется при определении коллизий игрока с пулями врага. Когда сидит и когда стоит меняется высота для корректировки просчёта попадания. Добавил алгоритм включения и отключения модификатор в зависимости от положения.
Доработал поведение стрельбы противника.
Добавил определение коллизий игрока с противником, а также реакцию на это.

Прикрепления: 2493086.png(25.0 Kb) · 8002886.png(24.7 Kb) · 9594272.png(25.9 Kb)



Вот так.
 
Форум ромхакеров » Около темы » Геймдев » В разработке новый шутер на Sega Genesis (клон Contra)
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск: