Автор Тема: [ZX Spectrum] Диктатор (политическая стратегия) - порт на NES (Famicom, Денди)  (Прочитано 13402 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Когда уже будет игра? :cry:

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Когда уже будет игра? :cry:

Топикстартер искал звуки, не?

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Эх, что-то всё заглохло... Неужели только в звуках загвоздка? :neznayu:

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Эх, что-то всё заглохло... Неужели только в звуках загвоздка?
Нет, во времени загвоздка. Думаю, в августе вернусь к проекту. Но со звуками помощь реально пригодилась бы!

P.S. Я уже ассемблер 6502 и особенности архитектуры NES позабыл, придется все опять вспоминать  :lol:
« Последнее редактирование: 26 Июль 2024, 17:10:25 от Arigato »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Думаю, в августе вернусь к проекту.
Как и обещал, в августе возвращаюсь к проекту  :biggrin:

В общем текущая ситуация следующая:
1. По логике игры осталось дописать некоторые игровые механики.
2. Проверить наполненность контента (не помню уже, все ли необходимые данные были внесены в проект).
3. Скорее всего разобраться с работой с мапперами, так как память уже заканчивается, надо будет расширять.
4. Решить проблему со звуками. Видимо (раз никто не может помочь, а сам я вряд ли создам необходимые звуковые эффекты, аналогичные оригинальной игре), придется стянуть звуковые эффекты с какой-нибудь другой игры и их использовать.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
На 9:13 звуковой эффект отказа тайной полиции.
Данный звуковой эффект реализован в машинных кодах. Вот его реализация на ассемблере:
PUSH   BC
LD     B,#1E
#5D4F:
PUSH   BC
LD     C,B
LD     A,(#5C48)
SRL    A
SRL    A
SRL    A
SET    4,A
OUT    (#36),A
NOP
NOP
NOP
#5D61:
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ   #5D61
RES    4,A
OUT    (#36),A
LD     B,C
NOP
NOP
NOP
#5D71:
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ   #5D71
POP    BC
DJNZ   #5D4F
POP    BC
RET
В #5C48 значение #0F (ну это цвет бордюра).

Звук повторяется таким кодом:
1770 POKE 23886,30: FOR a=1 TO 80: LET i=USR 23884: NEXT a
Думаю, как бы это перегнать на NES или в FamiStudio...
« Последнее редактирование: 28 Август 2025, 15:28:55 от Arigato »

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
« Последнее редактирование: 02 Сентябрь 2025, 22:51:25 от ghostdog3 »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Руководство будем делать?
Ну если хотите, составьте текст. Так там есть краткая инструкция на вступительном экране. Можно и отдельно более полное сделать.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Короче, я себе уже голову сломал  :facepalm:

И так, в FamiStudio 4.4.2 смог сделать звук, очень отдаленно, но напоминающий звук отказа тайной полиции предоставлять отчет (см. исходник звука во вложении).

Экспортирую звук, выбрав вариант FamiStudio Music Code:



То, что он выдает (с небольшими моими изменениями) также в прикрепленном архиве.

Но проиграть нормально звук не удается. В коде сказано, что надо установить два флага:

; This file is for the FamiStudio Sound Engine and was generated by FamiStudio
; Required flags for police:
; FAMISTUDIO_USE_SLIDE_NOTES = 1
; FAMISTUDIO_USE_NOISE_SLIDE_NOTES = 1

Так вот если их оба установить, то игра вообще вылетает:



Если не устанавливать второй FAMISTUDIO_USE_NOISE_SLIDE_NOTES, то что-то играет, но не то, с какими-то артефактами и зависанием по итогу.

Что не так делаю? Как запустить этот звук для проигрывания?

Онлайн Sharpnull

  • Пользователь
  • Сообщений: 5508
    • Просмотр профиля
Что не так делаю?
Дело в вашем код (и напомню, что VirtuaNES - мусор, который не стоит использовать никогда). У меня работает нормально, скопировал код police.s в song_journey_to_silius_ca65.s и заменил там music_police на music_data_journey_to_silius, в demo_ca65.s добавил FAMISTUDIO_USE_NOISE_SLIDE_NOTES = 1 после FAMISTUDIO_USE_DELTA_COUNTER  = 1, а USE_SLIDE_NOTES уже было.

Оффлайн мфыфыы

  • Пользователь
  • Сообщений: 16
    • ВКонтакте
    • Просмотр профиля
Вообще то, если это звук, то и экспортировать его нужно как фамистудио sfx code, тогда и ни какие флаги не понадобятся, и воспроизводить звуки famistudio_sfx_play 

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
У меня работает нормально
Ясно, понятно. Короче, FamiStudio я обновил до последней версии, а старая версия библиотеки FAMISTUDIO SOUND ENGINE с новой версией не работала. Обновил библиотеку, теперь норм.

P.S. В общем, звуки я добью самостоятельно. Звук не представленного отчета тайной полиции вполне получился близким к оригиналу (если их "рядом" сравнивать, то не особо, но в самой игре вроде как даже и не заметно, но, как ни странно, на Spectrume с его бипером он звучит даже интереснее). С остальными звуками тоже помучаюсь, но сделаю.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
если это звук, то и экспортировать его нужно как фамистудио sfx code
Не всегда. Формально что звук, что музыка, это одно и тоже. Разница в логике работы famistudio_music_play и famistudio_sfx_play. Второй проще (наверное, это хорошо в плане ресурсов, но его код не изучал). Однако famistudio_sfx_play не дает возможность остановить звук, как famistudio_music_stop. То есть предполагается, что звук проигрывается полностью, ну и он должен быть коротким. Но если нам надо в какой-то момент прекратить звучание, то мы ничего сделать не можем (проверил, famistudio_music_stop не останавливает звук, запущенный famistudio_sfx_play, что логично). Ну и если у нас есть фоновая музыка и звуки, то, конечно, надо их разделить.

При этом в коде есть подпрограмма famistudio_sfx_clear_channel, которая останавливает sfx, но она помечена как "internal", так что может быть не совсем корректно ее использовать (хотя работает, проверил).

Еще выявился один нюанс, что инициализация sfx - famistudio_sfx_init, она не совсем полноценная. Допустим, мне не нужна музыка, а только звуки. Из документации можно сделать вывод, то вызов famistudio_init в этом случае не нужен, так как "Initialize the engine with some music data" и можно обойтись famistudio_sfx_init ("Initialize SFX engine with SFX data"). Оказывается нет, надо сначала вызвать famistudio_init (если музыки нет, дать ссылку куда угодно, так как таблицы у нас нет), а уже следом famistudio_sfx_init. Если первое не сделать, то работает с серьезными багами, например, у меня звуки проигрывались только из треугольного канала. А холостой вызов famistudio_init проблему решает.

Также и регион определяется только через famistudio_init, но при этом учитывается и в famistudio_sfx_play.
« Последнее редактирование: 31 Август 2025, 00:01:12 от Arigato »

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Такой вопрос, правки в переводе игры будут? А то я бы, как минимум, избавился от сокращений и помещиков сделал землевладельцами... Запрос - прошение, меню на NES можно же расширить? Лефтотанцы тоже странно звучит. Лесото - лесотцы, значит, Лефтото - лефтотцы :neznayu:

Перевод игры не очень. Видимо, вызвано всё это было ограничениями платформы...

297407-0
« Последнее редактирование: 02 Сентябрь 2025, 22:52:11 от ghostdog3 »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Такой вопрос, правки в переводе игры будут?
Вообще я хочу максимально сохранить дух оригинальной игры (переведенной на русский), но при этом расширить контент и добавить новые механики. С этим, в частности, связаны мои мучения с переносом озвучки из оригинала, хотя можно было бы забить и использовать любую другую озвучку. Перевод игры явно имеет сатирический характер. Мне кажется он неплох, если смотреть на него с этой позиции.

В чем заключается расширение контента и механик:
1. Добавлены новые фракции к уже имеющимся.
2. Увеличено количество запросов от каждой из фракции.
3. Увеличено количество последних известий.
4. Увеличено количество решений президента.
5. Добавлена (на данный момент не до конца реализована) валютная биржа, позволяющая покупать и продавать иностранную валюту.
6. Планируется добавить дипломатические запросы (по аналогии с обычными запросами, но от русских, американцев и лефтотанцев).
7. Добавлен выбор уровня сложности игры при старте.

В остальном все близко к оригиналу, но, естественно, на сколько это возможно и с учетом особенностей другой платформы.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
 :thumbup:

Добавлены фракции (к уже имеющимся трём) или группы?

297409-0

297411-1
« Последнее редактирование: 02 Сентябрь 2025, 22:53:26 от ghostdog3 »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Добавлены фракции (к уже имеющимся трём) или группы?
А что такое группы? Фракции это Помещики, Крестьяне, Армия, Партизаны, Т. Полиция и прочее.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Так на моих скринах всё написано. Это из официального руководства. Фракции это армия, помещики и крестьяне. Остальные - группы.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Это из официального руководства.
Хм, даже не знал про это руководство. Кому интересно, вот ссылки (в принципе по обоим ссылкам одно и тоже):
1. https://spectrumcomputing.co.uk/entry/1388/ZX-Spectrum/Dictator
2. https://worldofspectrum.net/item/0001388/?

А картинки вы от сюда взяли или есть еще где-то материал, где эти картинки отдельно представлены?


Интересно, что на данной обложке спектрумовская радуга идет в обратном порядке следования цветов. Есть ли тут какой-то скрытый смысл?

Думаю, инструкцию имеет смысл добавить в саму игру.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Военного я перерисовал на основе полицейского, а картинки выдрал именно с этой обложки. Есть и другие две, но на одной из них диктатор из-под пера Пикассо, а вторая уж больно низкокачественная.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
По логике это не просто полиция, а тайная полиция, то есть такой ярко выраженной формы у них не должно быть, иначе что в них тайного? Они должны быть внедрены в существующие фракции, чтобы узнать о настроениях изнутри. Или как бы они получили данные об уровне поддержки президента и о силах фракций? Так что Т. полицию можно никак не рисовать, на то она и тайная.

У меня две новые фракции: торговцы и рабочие. Ну если прямо под каждую фракцию делать свою картинку, можно попробовать нейронку попросить нарисовать по аналогии с помещиками и крестьянами.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Но на обложке игры именно полицейский. Если это шеф тайной полиции, то он может быть не тайным, в отличие от рядовых работников. Погоны у него пустые, очки есть - конспирация детектед :lol:

« Последнее редактирование: 04 Сентябрь 2025, 10:57:21 от Guyver(X.B.M.) »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Ладно, можно забить на эти картинки. Попытался их импортировать, ничего вразумительного не получил. Их надо с нуля перерисовывать с учетом палитры NES и ее ограничений. Я вряд ли буду этим заниматься...

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Ну, даже с 4-мя цветами это не особо сложно. А уж если хотя бы 8 добавить - вообще неплохо будет смотреться...

297403-0

Просьба не размещать с помощью тэга img изображение со стороной более 700 пикселей. ghostdog3
« Последнее редактирование: 03 Сентябрь 2025, 05:08:34 от Guyver(X.B.M.) »

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Можно попробовать разделить картинку на области, чтобы применить к ним разные палитры. Например, лицо желтое. Ну если вам не лень этим заниматься, можете сделать, добавлю в игру. Только надо продумать, где именно их выводить, так как они занимают фактически весь набор тайлов. То есть для текста места не остается. Если делать спрайтами, то спрайтов не хватит.

P.S. Если есть желание, можете еще звуки посмотреть. Я прикрепил fms (для FamiStudio), там музыка, она норм. Но есть звук police, но эмитирует этот звук - https://www.youtube.com/watch?v=Gmrb3a6DDgw&t=553s (надеюсь, нет проблем с просмотром ютуба). То есть звук, когда отчет т. полиции не представлен. Если прослушать мой вариант, он очень отдаленно напоминает, и меня даже устраивает. Но это NTSC. А если переключиться на PAL, то там совсем непохоже. Если удастся сделать более универсальную реализацию, чтобы и на PAL нормально звучала, будет отлично!

Также нужны еще некоторые звуки:
1. Вторжение - https://www.youtube.com/watch?v=Gmrb3a6DDgw&t=72s
2. Итоги вторжения - https://www.youtube.com/watch?v=Gmrb3a6DDgw&t=82s
3. Побег на вертолете - https://www.youtube.com/watch?v=Gmrb3a6DDgw&t=817s
4. Вроде еще при покушении были какие-то эффекты.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Ну, даже с 4-мя цветами это не особо сложно.
Сделал простенький конвертер (см. вложение, исходники на Лазарусе, там же есть и exe). С ним получается примерно так (см. скриншот). Только надо пересохранять итоговую картинку в формат 16 цветов (можно через Paint) и импортировать в режиме without color data.

У вас, конечно, чуть лучше результат получился. Но и исходная картинка у меня меньше. Да и вручную можно огрехи поправить. Но пока только 3 цвета (плюс фоновый черный). Все же надо больше цветов задействовать.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2630
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Тайная полиция/армия/торговцы/партизаны/рабочие/помещики/крестьяне



Другим цветом (спрайтами) можно сделать воротнички рубашек/пуговицы, эмблемы на головных уборах, кокарды. Цвета на тайлах смешиваться не будут, так как я их позиционировал так, чтобы в каждом тайле было не более 4-ёх цветов одновременно при добавлении новых цветов. Примерно половина тайлов одинаковая у всех трёх товарищей.



Торговцы по своей сути это ближе к богачам, или к люмпенам? Т.е. это мелкие лавочники или зажиточные торговцы?

Твои новые рабочие - картинку для них можно взять с кассеты, так как землевладельцы на них сильно походят... Т.е. мне осталось нарисовать партизан, торговцев и американцев/русских. Последние у меня почти нарисованы на примере мультяшных дяди Сэма и Сталина (можно поменять на кого-то типа дяди Сэма, но для СССР, какие будут предложения по персоне?)...



Сколько в игре банков графики? Анимацию портретов делать будем?

Партизан:



Рабочий:



Помещик:



Крестьянин:

« Последнее редактирование: 07 Сентябрь 2025, 13:46:37 от Guyver(X.B.M.) »

Оффлайн Ogr

  • Пользователь
  • Сообщений: 7736
    • Просмотр профиля
так как они занимают фактически весь набор тайлов.
Одну из половин можно отрисовывать зеркале тайлы. Тем самым уменьшить использование видеопамяти вдвое.

Оффлайн Arigato

  • Пользователь
  • Сообщений: 66
    • Просмотр профиля
Торговцы по своей сути это ближе к богачам, или к люмпенам?
Да, богачи. Я бы под них взял эту картинку:



А помещиков зять с обложки. Рабочих можно из крестьянина сделать, переделав шапку.

Остальные группы можно и не отрисовывать.


Оффлайн Ogr

  • Пользователь
  • Сообщений: 7736
    • Просмотр профиля

Для стилизации под пиксельарт можно использовать нейросеть https://chat.qwen.ai (Где то 30 халявных генерации в сутки ):
Понравившийся вариант выданный нс, уже вручную обработать. Кажется, есть специальная программа, которые выравнивает пиксели у такого.