| Разработка и ромхакинг > Ромхакинг и программирование |
| Castlequest/Castle Excellent |
| << < (5/10) > >> |
| Миха42:
--- Цитата: mr287cc от 05 Апрель 2021, 15:15:16 ---Что касается нехватки места в CHR, то CNROM (исходный маппер) теоретически позволяет использовать до 256 банков (по 8к) CHR графики. Насчет остального, для моих подходов слишком сложно. Я бы дизассемблировал код, по возможности оптимизировал, попробовав выиграть свободного места под свои нужды, и постарался не менять маппер вообще. В вашем хаке не используется ни одна полезная фишка mmc3, и в эпоху NES за такое нецелевое использование железа наверняка бы осудили, потому что железо стоило дорого, и планировалось под каждую игру. Хорошо, что сейчас с этим делом проблем нет. А конечную заставку вернуть к оригиналу однозначно. --- Конец цитаты --- Что касаемо и CHR и PRG то тут я полностью не согласен с вами, мною добавлено довольно не мало кода в PRG банки, в CNROM там и без того всё плотно забито было, добавление кода в имеющиеся 32кб были невозможны. По части же CHR я согласен, в CNROM во первых использовалось лишь чуть больше половины памяти из 32кб (4х8кб), и всё что я добавил здесь в тайлах на CNROM тоже можно было бы добавить, но потребовалось бы больше места, по причине отсутствия возможности деления подключаемого CHR банка. В ММС3 же я манипулирую банками размером в 1кб, что даёт возможность более правильно распределить тайлы по банкам с целью подбора необходимых банков с необходимыми тайлами для каждой отдельной ситуации. Так что ваше замечание считаю вполне не уместным относительно надобности перехода на ММС3, его возможности используются в полную силу относительно надобности. Единственное остались неудел счётчики прерываний и использование SRAM, но что касается SRAM это всё лишь вопрос времени, на его счёты у меня имеются в дальнейшем планы. Что же касается финальной картинки и шрифта, возьму к сведению ваши замечания. |
| HayaoYokogawa:
Прям супер точно по пикселям пардон - времени до конца рабочего дня 20 минут, но вот пример компоновки и шрифта. Сдвигал вроде как более-менее потайлово. Шрифт простой, как три копейки, не спорю, но читаемость сильно выше. Добавлено позже: Ради интереса глянул оригинал - мама родная. Шрифт и там страшный, как атомная война. Предлагаю сделать однопиксельной толщины (раз уж неохота классику жанра), как это сделали в другом переводе ранее, только там его тоже в порядок надо приводить |
| Миха42:
Ну в таком случае есть у кого шрифты для нес чтоб и англ и рус и цифры 0-9 умещались в 7х7 64 тайла? |
| HayaoYokogawa:
--- Цитата: Миха42 от 05 Апрель 2021, 15:53:16 ---Ну в таком случае есть у кого шрифты для нес чтоб и англ и рус и цифры 0-9 умещались в 7х7 64 тайла? --- Конец цитаты --- Если интересно, могу попробовать подготовить, но не знаю, как быстро смогу сделать. |
| mr287cc:
--- Цитата: Миха42 от 05 Апрель 2021, 15:33:58 ---Что касаемо и CHR и PRG то тут я полностью не согласен с вами, мною добавлено довольно не мало кода в PRG банки, в CNROM там и без того всё плотно забито было, добавление кода в имеющиеся 32кб были невозможны. По части же CHR я согласен, в CNROM во первых использовалось лишь чуть больше половины памяти из 32кб (4х8кб), и всё что я добавил здесь в тайлах на CNROM тоже можно было бы добавить, но потребовалось бы больше места, по причине отсутствия возможности деления подключаемого CHR банка. В ММС3 же я манипулирую банками размером в 1кб, что даёт возможность более правильно распределить тайлы по банкам с целью подбора необходимых банков с необходимыми тайлами для каждой отдельной ситуации. Так что ваше замечание считаю вполне не уместным относительно надобности перехода на ММС3, его возможности используются в полную силу относительно надобности. Единственное остались неудел счётчики прерываний и использование SRAM, но что касается SRAM это всё лишь вопрос времени, на его счёты у меня имеются в дальнейшем планы. Что же касается финальной картинки и шрифта, возьму к сведению ваши замечания. --- Конец цитаты --- Делайте так, как считаете нужным. Но выкладывая свои труды в паблик, всегда нужно быть готовым и к советам (тем более если сами их просите) и к критике и к историческим фактам. Это не я придумал насчет экономии и целевого использования железа, это было правилами 30 лет назад. К тому же, я всего лишь сказал как я сам бы поступил, и для меня, навскидку здесь CNROM/GNROM, и максимум UNROM (при условии что игра не использует банксвитчинг) - за глаза, исходя именно из традиций использовать для простой игры простой маппер на простой дискретной логике. HayaoYokogawa, да, не обратил внимания, оригинальный шрифт тоже ужасен. В любом случае, с форматированием и без змейки из этих "рамочных" тайлов - на порядок лучше. |
| Миха42:
Время как будет попробую и сам ещё раз изменить текст, вернее сделать ещё один банк с другим текстом, желательно чтоб буквы по максимуму оставались на своих местах, чтоб меньше сороки было подгонять шрифты. Добавлено позже: --- Цитата: mr287cc от 05 Апрель 2021, 16:08:22 ---Делайте так, как считаете нужным. Но выкладывая свои труды в паблик, всегда нужно быть готовым и к советам (тем более если сами их просите) и к критике и к историческим фактам. Это не я придумал насчет экономии и целевого использования железа, это было правилами 30 лет назад. К тому же, я всего лишь сказал как я сам бы поступил, и для меня, навскидку здесь CNROM/GNROM, и максимум UNROM (при условии что игра не использует банксвитчинг) - за глаза, исходя именно из традиций использовать для простой игры простой маппер на простой дискретной логике. --- Конец цитаты --- Я не против критики, просто в данном варианте игра разбирается на части и постоянно редактируется, ещё очень много идей и очень многое хочется переделать, а для этого код лучше держать в свободном пространстве нежели уплотнять его постоянно и тратить на это время, по части ассемблирования, это хорошо когда весь код разобран, но учитывая какие в коде порой комбинации используются для изменений возврата из подпрограмм и джампы, я сомневаюсь что это всё можно ассемблировать учитывая что у меня не везде и не сразу даже ума хватает понять как вообще данные процедуры устроенны, и уж тем более сохранять ветвление подпрограмм в таких случаях крайне сложно будет и сомневаюсь что вообще возможно. потому и работаю над кодом в Hex'e. Да и по части железа, ммс3 вроде как нынче весьма распространён, так почему бы и не делать упор в его сторону? Ведь мы живём в современном мире, а не 30 лет назад. В те времена о очередных версиях работ даже речи быть не могло, нужна была лишь готовая продукция в максимально сжатом пространстве по скольку память была крайне дорогой. А сейчас преднамеренно себя ограничивать в пространстве для работы думаю глуппо, но это лишь моё мнение. :neznayu: |
| mr287cc:
--- Цитата: Миха42 от 05 Апрель 2021, 16:13:58 ---А сейчас преднамеренно себя ограничивать в пространстве для работы думаю глуппо, но это лишь моё мнение. --- Конец цитаты --- Совершенно правильное мнение. Если удобно делать так, а не этак, то само собой, лучше делать как удобнее и как привык. А если останется время и желание на перфекционизм и задротство - тут уж и оптимизировать можно и заталкивать в исходный маппер. В общем, не будем флудить, будем помнить, что лучше что-то делать чем не делать ничего. Последнее до чего я бы докопался, так это до замены шрифта. С одной стороны, он ужасен, с другой - это оригинальный шрифт, наследие. Впрочем, в рамках хака, замена шрифта - дело житейское, на то он и хак. |
| Sharpnull:
--- Цитата: HayaoYokogawa от 05 Апрель 2021, 15:41:36 ---Ради интереса глянул оригинал - мама родная. Шрифт и там страшный, как атомная война. --- Конец цитаты --- На самом деле, они были не такие глупые и у них в конце нормальный шрифт (и в начале этой версии): https://youtu.be/V98X2Zie0Bo?t=809. Этот вычурный только для надписей, так что меню в хаке тоже должно быть как в конце (нормальным), нужно понимать разницу между надписями и горой текста. UPD: Т. е. меню хака должно быть с таким шрифтом: --- Цитата: Миха42 от 05 Апрель 2021, 09:13:39 ---Особенности модификации v1.4.0: --- Конец цитаты --- Игра виснет после смерти героя. UPD2: Кстати, на счёт сохранения через это меню (sub command). Mesen автоматически определяет расширение Turbo File для оригинальной игры (потому что по CRC рома), сохраняется только после прохода на следующий экран, ещё для загрузки нужно нажимать Start, почему-то виснет от B или A, баг игры. В Mesen сохранение в "Saves/Castle Excellent (J) [!].tf". В NintendulatorNRS для сохранения нужно самому выбрать ASCII Turbo File и он похоже сохраняется для всех игр в SRAM/ASCIITurboFile.sav (папка с сохранениями). |
| mr287cc:
Да, при утрате последней жизни смещается HUD (см. вложение) и игра виснет. Могу предположить, что-то не то происходит с нулевым спрайтом, сплитующим игровое поле и HUD. В одну из сессий показалось, что не обновляются очки при поднятии предметов, пробовал повторить, не получилось, так что под вопросом. |
| Миха42:
Проблему нашол, ещё в 1.3.0 перенёс подпрограмму отвечающую за перезапись очков в рекорд, когда делал возможность чтоб по окончанию игры игра не останавливалась, а можно было начать играть вновь при нажатии кнопок, но не учёл что при смерти героя тоже используется данный код. Спасибо за находку бага, на днях как время появится обязательно найду неверный jmp и исправлю. Проблема со смещением верхних строк кроется в этой же проблеме. |
| Sharpnull:
Миха42, в меню хака, когда курсор попадает на "количество жизней" происходит неверный прыжок на BB7F, а инструкция на BB7E: INC $0013 (кстати, почему не INC $13?). За счёт того, что 13 00 -> SLO ($00),Y - неоф. инструкция, проблемы не видно. В данном случае SLO ($00),Y сдвигает на один бит влево по адресу $02, а там 00, потом A | 0 - ничего не меняется, а дальше всё равно LDA #$37. Заметил, потому что в отладчике включена остановка на неофициальные инструкции. Такой проблемы не было бы, если бы для хака использовался ASM, все метки меняют адрес автоматически (UPD: и код/данные всегда "уплотнённые"), но я читал, что вам удобнее через HEX. |
| Миха42:
--- Цитата: Sharpnull от 05 Апрель 2021, 21:26:14 ---Миха42, в меню хака, когда курсор попадает на "количество жизней" происходит неверный прыжок на BB7F, а инструкция на BB7E: INC $0013 (кстати, почему не INC $13?). За счёт того, что 13 00 -> SLO ($00),Y - неоф. инструкция, проблемы не видно. В данном случае SLO ($00),Y сдвигает на один бит влево по адресу $02, а там 00, потом A | 0 - ничего не меняется, а дальше всё равно LDA #$37. Заметил, потому что в отладчике включена остановка на неофициальные инструкции. Такой проблемы не было бы, если бы для хака использовался ASM, все метки меняют адрес автоматически (UPD: и код/данные всегда "уплотнённые"), но я читал, что вам удобнее через HEX. --- Конец цитаты --- Спасибо за заметку, попросту моя невнимательность, условный переход вовсе даже не на bb7e должен был быть, а на bb84, видимо когда компоновал однотипные инструкции забыл совсем про него. Исправлю. 0013 вместо 13 это остатки от ранней версии когда был ещё демо просмотр, приходилось изменять другой байт в памяти из 16и битного адреса, после когда переделал временно сделал 0013, но убедившись что всё и так работает временное стало постоянным. ^_^ править не буду пусть пока так будет, мало ли что ещё в голову взбредёт. По поводу остановки на неофициальные инструкции, подскажи где мне тоже эту галочку ткнуть? Я так понимаю в mesen где-то. Прошлые твои замечания по части рандомных значений памяти и настроек мапера все учёл теперь с ними проверяю. Учиться никогда не поздно, всё таки это моя первая игра которую ковыряю набираясь опыта. :) |
| HayaoYokogawa:
--- Цитата: Sharpnull от 05 Апрель 2021, 17:08:43 ---На самом деле, они были не такие глупые и у них в конце нормальный шрифт (и в начале этой версии): https://youtu.be/V98X2Zie0Bo?t=809. Этот вычурный только для надписей, так что меню в хаке тоже должно быть как в конце (нормальным), нужно понимать разницу между надписями и горой текста. UPD: Т. е. меню хака должно быть с таким шрифтом: --- Конец цитаты --- Если мне дадут тайлы с этим шрифтом, дорисую русский вариант. И да, почему 7х7, когда тайлы идут 8х8? Или имеется ввиду, что буквы типа 7х7? |
| Миха42:
Тайлы 8х8, буквы желательно делать 7х7 иначе меж собою сливаться будут при использовании двух букв рядом, при использовании 7х8 как я сделал появляется проблема что нельзя в каждой строчке писать буквы, приходиться писать чересстрочно. Добавлено позже: Всячески хотел сделать покрасивше буквы в оригинальном стиле, но раскритиковали, чтож будут значит 2 варианта шрифтов в игре. |
| HayaoYokogawa:
--- Цитата: Миха42 от 06 Апрель 2021, 07:47:55 ---Тайлы 8х8, буквы желательно делать 7х7 иначе меж собою сливаться будут при использовании двух букв рядом, при использовании 7х8 как я сделал появляется проблема что нельзя в каждой строчке писать буквы, приходиться писать чересстрочно. Добавлено позже: Всячески хотел сделать покрасивше буквы в оригинальном стиле, но раскритиковали, чтож будут значит 2 варианта шрифтов в игре. --- Конец цитаты --- А, не, это-то логично. Можно покрасивше чутка, просто это ухудшает чтение - Sharpnull к тому же показал вполне удобоваримый вариант. Давай тайлы - будет тебе русский алфавит. С программированием совсем разве что не помогу. |
| Миха42:
Обновил: Особенности модификации v1.4.1: Уменьшен риск неисправного запуска игры при рандомных значениях памяти ОЗУ Исправлены баги: с количеством жизней и баг при смерти игрока Что же касается финальной картинки с шрифтом, руки ещё не дошли до этого. ) |
| SavitarSvit:
Запустил 1.4.1 версию на фамике, заценил на телевизоре шрифт. В целом всё читается хорошо, мне не нравятся как выглядят некоторые буквы и именно на них происходит затык при чтении. Плохо читаются: Л (должна быть похожа на Я), Д... - Букву Ж сделать из 2х букв K английских. Нашел баг. Берем карту, жмем селект чтобы посмотреть карту, выходим из карты и в игре бьется шрифт в статусной строке вверху. |
| ПАУК:
--- Цитата: SavitarSvit от 07 Апрель 2021, 21:11:53 ---Запустил 1.4.1 версию на фамике --- Конец цитаты --- Где-то, наверно, должна быть ссылка на эту версию :neznayu: |
| SavitarSvit:
--- Цитата: ПАУК от 07 Апрель 2021, 21:15:17 ---Где-то, наверно, должна быть ссылка на эту версию :neznayu: --- Конец цитаты --- Да, я сам сначала не понял где ссылка то) http://www.emu-land.net/forum/index.php?action=dlattach;topic=83723.0;attach=236107 |
| Миха42:
--- Цитата: SavitarSvit от 07 Апрель 2021, 21:11:53 ---Нашел баг. Берем карту, жмем селект чтобы посмотреть карту, выходим из карты и в игре бьется шрифт в статусной строке вверху. --- Конец цитаты --- С работы приеду, вечером гляну баг, постараюсь сразу исправить. По шрифту мнения расходятся 50/50, буду второй шрифт делать, более читабельный и простой без всяких стилей. Оставлю потом оба варианта. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |