| Разработка и ромхакинг > Редакторы для консольных игр |
| [NES] Prince of Persia Level editor |
| << < (29/30) > >> |
| ALXR:
--- Цитата: ALXR от 29 Май 2020, 18:10:50 ---...чуть попозже выложу редактор, в котором поломается совместимость с дампами уровней, но(!) не с ромом (так что можно будет загрузить ром и сделать дампы уровней заново)... --- Конец цитаты --- Версия, которая будет мейнтейнится впредь. С этой версией не совместимы дампы уровней предыдущих, но совместим ром последней версии. |
| ALXR:
Тем, кто хочет поковырять музло из игры, выкладываю исходник движка. Собрать можно, запустив build.bat. Сам движок - pop_music.asm Сверху накидал небольшую "деревянную" обвязку (sys.asm), которая делает следующее: * Select - переключить мелодию; * Start - повторить мелодию; * A - проиграть следующий звук; * B - повторить звук. |
| xKos:
--- Цитата: ALXR от 03 Июнь 2020, 19:48:50 ---Тем, кто хочет поковырять музло из игры, выкладываю исходник движка. Собрать можно, запустив build.bat. Сам движок - pop_music.asm Сверху накидал небольшую "деревянную" обвязку (sys.asm), которая делает следующее: * Select - переключить мелодию; * Start - повторить мелодию; * A - проиграть следующий звук; * B - повторить звук. --- Конец цитаты --- Классная штука! Но от растров у меня мозг взорвался)) |
| x.GREYSON.x:
--- Цитата ---Тем, кто хочет поковырять музло из игры, выкладываю исходник движка. Собрать можно, запустив build.bat. Сам движок - pop_music.asm Сверху накидал небольшую "деревянную" обвязку (sys.asm), которая делает следующее: * Select - переключить мелодию; * Start - повторить мелодию; * A - проиграть следующий звук; * B - повторить звук. --- Конец цитаты --- По поводу мелодии. Можно ли вставить в начало заставки эту |
| Sageptr:
Новый ром Prince_of_Persia.nes (c 16 банками памяти вместо 8) по какой-то причине рандомно виснет в эмуляторе Mesen при переходе между комнатами. Не в курсе, это баг эмулятора или в коде что-то не так, на реальном железе нет возможности проверить. На всякий случай прилагаю файл с записью последовательности действий (открывать в Mesen через Tools>Movies>Play) |
| ALXR:
--- Цитата: Sageptr от 18 Июнь 2020, 05:18:42 ---Новый ром Prince_of_Persia.nes (c 16 банками памяти вместо 8) по какой-то причине рандомно виснет в эмуляторе Mesen при переходе между комнатами. Не в курсе, это баг эмулятора или в коде что-то не так, на реальном железе нет возможности проверить. На всякий случай прилагаю файл с записью последовательности действий (открывать в Mesen через Tools>Movies>Play) --- Конец цитаты --- Да, как-то по другому sprite0 работает в mesen... Баг эмулятора или нет - не могу сказать. :) Надо смотреть в железе Локализовал проблему. Попробуй еще раз, вроде нет больше зависаний. nesprinced2.pro.7z (332.92 КБ - загружено 94 раз.) |
| Sageptr:
--- Цитата: ALXR от 18 Июнь 2020, 10:43:48 ---Локализовал проблему. Попробуй еще раз, вроде нет больше зависаний. (Ссылка на вложение) --- Конец цитаты --- В архиве тот же файл, что и от 29.05.2020 |
| ALXR:
--- Цитата: Sageptr от 18 Июнь 2020, 16:23:31 ---В архиве тот же файл, что и от 29.05.2020 --- Конец цитаты --- Влил старую ревизию. Бывает... :lol: Загрузил по новой, проверяй |
| Sageptr:
Теперь всё нормально работает на Mesen, демку пробегает, при ручной беготне между комнатами тоже не зависает, в OAM не попадет мусор) |
| ALXR:
--- Цитата: Sageptr от 18 Июнь 2020, 17:53:53 ---Теперь всё нормально работает на Mesen, демку пробегает, при ручной беготне между комнатами тоже не зависает, в OAM не попадет мусор) --- Конец цитаты --- Отлично! Спасибо за этот репорт ^_^ |
| opr:
Моменты, которые хотелось бы исправить, если это возможно. 1. Если принц открыл решетку и остался стоять на кнопке открытия, то решетка все равно закроется, а не будет открыта, пока нажата. 2. Если упасть вместе с плитой на шипы (плита и шипы в одной комнате) то все будет ок, но если шипы в другой комнате, или обваливается потолок, то принц умирает (как и положено,) но при этом возникает глюк - шипы не задавливаются кнопкой, принц не принимает "умершее положение". (Видеопример в прикрепленном файле) 3. Узор, который ставится сверху решеток, "узор решетки" - если его поставить на границе выхода из комнаты, и совершить в него прыжок, то принца откидывает в предыдущую комнату. Если же этот узор стоит не на границе комнаты, а где-нибудь в середине, то как и положено, принц в него просто упирается, как в препятствие. (Видеопример в прикрепленном файле) 4. 5. Бутылочка сбрасывающая таймер до 1 мин - если ее выпить и умереть, не найдя бутылку восстанавливающую таймер, то начинаешь уровень сначала, с 1-й мин. В этой связи можно не успеть найти бутылку восстановления таймера, если она спрятана где-нибудь в середине или конце лабиринта. Учитывая, что некоторым уровням пароли я отключаю - такой баг может попортить нервы игрокам. Думаю, если не успел найти восстановление таймера, то лучше умереть, чтобы вернуть время и не начинать игру заново - это слишком радикально. А так, сбрасывающая бутыль превратится в бомбу замедленного действия - либо успеешь найти противоядие, либо умрешь. 6. По редактору. Все же хотелось бы иметь возможность менять уровни местами. НЕ ОБЯЗАТЕЛЬНОЕ: - Если упасть на шаткую плитку с большой высоты, она не упадет. Принц просто разобьется на ней, как на обычном полу. - Если на шаткую плиту сверху упадет другая плита, то она просто пролетит сквозь нее. - Можно ли демо-плэй установить для любого другого уровня? - Две бутылочки в одной комнате дают глюк (если одну из них выпить, она останется стоять на месте, пока не перезайдешь в данную комнату). |
| opr:
Еще один глюк с плиткой упавшей на кнопку открытия решетки. 1. (Плитка и кнопка в одной комнате) Если принц падает вместе с плитой на кнопку открытия с минимальной высоты, затем сойдет с кнопки, то решетка закроется. (см. присоед файл) 2. (Плитка и кнопка в разных комнатах) - то же самое что и пункт 1. (см. присоед файл) Глюка не происходит только если принц вместе с плиткой падает на кнопку с высоты потери одного хп. (Плитка и кнопка находятся в одной комнате). (см. присоед файл) |
| ALXR:
--- Цитата: opr от 26 Июнь 2020, 07:44:14 ---Моменты, которые хотелось бы исправить, если это возможно. 1. Если принц открыл решетку и остался стоять на кнопке открытия, то решетка все равно закроется, а не будет открыта, пока нажата. --- Конец цитаты --- Логично. --- Цитата: opr от 26 Июнь 2020, 07:44:14 --- 2. Если упасть вместе с плитой на шипы (плита и шипы в одной комнате) то все будет ок, но если шипы в другой комнате, или обваливается потолок, то принц умирает (как и положено,) но при этом возникает глюк - шипы не задавливаются кнопкой, принц не принимает "умершее положение". (Видеопример в прикрепленном файле) --- Конец цитаты --- Результат исправления урона принцу упавшей плитой... --- Цитата: opr от 26 Июнь 2020, 07:44:14 --- 3. Узор, который ставится сверху решеток, "узор решетки" - если его поставить на границе выхода из комнаты, и совершить в него прыжок, то принца откидывает в предыдущую комнату. Если же этот узор стоит не на границе комнаты, а где-нибудь в середине, то как и положено, принц в него просто упирается, как в препятствие. (Видеопример в прикрепленном файле) --- Конец цитаты --- Да, об этом я знаю. Не смотрел еще туда. --- Цитата: opr от 26 Июнь 2020, 07:44:14 ---4. (Ссылка на вложение) --- Конец цитаты --- Ну это отсутствие сочленения кусачек с пустым местом. --- Цитата: opr от 26 Июнь 2020, 07:44:14 --- 5. Бутылочка сбрасывающая таймер до 1 мин - если ее выпить и умереть, не найдя бутылку восстанавливающую таймер, то начинаешь уровень сначала, с 1-й мин. В этой связи можно не успеть найти бутылку восстановления таймера, если она спрятана где-нибудь в середине или конце лабиринта. Учитывая, что некоторым уровням пароли я отключаю - такой баг может попортить нервы игрокам. Думаю, если не успел найти восстановление таймера, то лучше умереть, чтобы вернуть время и не начинать игру заново - это слишком радикально. А так, сбрасывающая бутыль превратится в бомбу замедленного действия - либо успеешь найти противоядие, либо умрешь. --- Конец цитаты --- Поэтому и не стоит их раскидывать всюду :) --- Цитата: opr от 26 Июнь 2020, 07:44:14 ---6. По редактору. Все же хотелось бы иметь возможность менять уровни местами. --- Конец цитаты --- Сделай дампы и загружай их в нужные уровни. --- Цитата: opr от 26 Июнь 2020, 07:44:14 ---НЕ ОБЯЗАТЕЛЬНОЕ: - Если упасть на шаткую плитку с большой высоты, она не упадет. Принц просто разобьется на ней, как на обычном полу. - Если на шаткую плиту сверху упадет другая плита, то она просто пролетит сквозь нее. --- Конец цитаты --- Здесь нужно писать свой код для обработки таких ситуаций (не предусмотрено в принципе движком). Вобщем, возни много для таких редковстречающихся случаев. --- Цитата: opr от 26 Июнь 2020, 07:44:14 ---- Можно ли демо-плэй установить для любого другого уровня? --- Конец цитаты --- В принципе можно кое-какой код поправить, если прям уж очень сильно нужно. --- Цитата: opr от 26 Июнь 2020, 07:44:14 ---- Две бутылочки в одной комнате дают глюк (если одну из них выпить, она останется стоять на месте, пока не перезайдешь в данную комнату). --- Конец цитаты --- Потому что объект "бутылка" имеет одинаковый id в буфере объектов. Попробуй поставить две разных (маленькую и большую) - возможно будет правильно работать (давно в код не смотрел). --- Цитата: opr от 30 Июнь 2020, 17:25:30 ---Еще один глюк с плиткой упавшей на кнопку открытия решетки. 1. (Плитка и кнопка в одной комнате) Если принц падает вместе с плитой на кнопку открытия с минимальной высоты, затем сойдет с кнопки, то решетка закроется. (см. присоед файл) 2. (Плитка и кнопка в разных комнатах) - то же самое что и пункт 1. (см. присоед файл) Глюка не происходит только если принц вместе с плиткой падает на кнопку с высоты потери одного хп. (Плитка и кнопка находятся в одной комнате). (см. присоед файл) --- Конец цитаты --- Это поправил, но еще не выкладывал нигде, т.к. пока не занимаюсь проектом. |
| opr:
Если кнопка ЗАЖАТА лежащей на ней плиткой - она будет открыта вечно (это логично). Но если кнопка зажата стоящим на ней принцем - она через некоторое время закроется, будто бы ее просто нажали один раз. Это уже трудно назвать логикой, хотя, не знаю, что именно ты имел ввиду, может логично для кривого кода игры, но в других портах (Дос, сега, нинтендо) - принц держит решетку открытой пока стоит на кнопке. Вообще. этот баг с шипами возможно пофиксить? Очень много багов происходит в комнате с и над зеркалом, но их не буду описывать - не принципиально. А вот графический глюк в уровне дворца возникает, если кнопку открытия расположить на арке. На счет бутылочки отнимающей время - я не говорил, что их надо тыкать везде, а описал на примере, что единственное, где ее даже ОДНУ можно поставить - это самое начало уровня, и там же в начале уровня должно быть противоядие, однако концепт задумки такой бутылки из-за этого сразу падает. Но это можно исправить, если не найдя противоядия умереть, и отнятое время вернется обратно. То, что после смерти и игры с начала уровня, время по прежнему остается 1 минута - слишком радикально. На счет "камеры" в комнате появления принца при начале уровня - не разобрался, как "камеру" правильно "отрегулировать" По-умолчанию она сосредоточена в том места комнаты, где бы появился принц в оригинальной версии. Кстати, как сделать дампы, я тож плаваю. :neznayu: Есть еще мощный баг с кнопкой открытия (обнаружил в 4, 9, 12 уровнях) в некоторых комнатах, в определенных местах оси X, простая кнопка открытия решетки почему-то упорно открывает выход с уровня, при чем, не важно, какое значение кнопке присвоено. Из-за этого в некоторых местах кнопки открытия решетки ставить просто нельзя. Это не удобно. (позже сделаю видео) |
| ALXR:
--- Цитата: opr от 11 Июль 2020, 07:05:59 ---Если кнопка ЗАЖАТА лежащей на ней плиткой - она будет открыта вечно (это логично). Но если кнопка зажата стоящим на ней принцем - она через некоторое время закроется, будто бы ее просто нажали один раз. Это уже трудно назвать логикой, хотя, не знаю, что именно ты имел ввиду, может логично для кривого кода игры, но в других портах (Дос, сега, нинтендо) - принц держит решетку открытой пока стоит на кнопке. Вообще. этот баг с шипами возможно пофиксить? --- Конец цитаты --- Можно --- Цитата: opr от 11 Июль 2020, 07:05:59 ---Очень много багов происходит в комнате с и над зеркалом, но их не буду описывать - не принципиально. А вот графический глюк в уровне дворца возникает, если кнопку открытия расположить на арке. (Ссылка на вложение) --- Конец цитаты --- Нет графики. Использовал графику от большого столба. Хочешь - дорисуй --- Цитата: opr от 11 Июль 2020, 07:05:59 ---На счет бутылочки отнимающей время - я не говорил, что их надо тыкать везде, а описал на примере, что единственное, где ее даже ОДНУ можно поставить - это самое начало уровня, и там же в начале уровня должно быть противоядие, однако концепт задумки такой бутылки из-за этого сразу падает. Но это можно исправить, если не найдя противоядия умереть, и отнятое время вернется обратно. То, что после смерти и игры с начала уровня, время по прежнему остается 1 минута - слишком радикально. На счет "камеры" в комнате появления принца при начале уровня - не разобрался, как "камеру" правильно "отрегулировать" По-умолчанию она сосредоточена в том места комнаты, где бы появился принц в оригинальной версии. Кстати, как сделать дампы, я тож плаваю. :neznayu: --- Конец цитаты --- Ну, батенька, не ленись полазить по редактору и поискать то, что на поверхности. Про скролл в первой комнате уже где-то писал --- Цитата: opr от 11 Июль 2020, 07:05:59 ---Есть еще мощный баг с кнопкой открытия (обнаружил в 4, 9, 12 уровнях) в некоторых комнатах, в определенных местах оси X, простая кнопка открытия решетки почему-то упорно открывает выход с уровня, при чем, не важно, какое значение кнопке присвоено. Из-за этого в некоторых местах кнопки открытия решетки ставить просто нельзя. Это не удобно. (позже сделаю видео) --- Конец цитаты --- Ничего не понял :neznayu: |
| opr:
Забыл спросить. Начало уровня путем падения (falling) - Принц может падать только повернувшись в левую сторону? Что-то не могу его развернуть. Мышку можно использовать только в одном уровне? (Если, допустим, я ее заюзаю в первом уровне, то при повторном включении мыши в любом другом уровне, алгоритм мышки для первого уровня стирается) (За камеру и дамп спасибо.) |
| ALXR:
--- Цитата: opr от 13 Июль 2020, 04:42:00 ---Забыл спросить. Начало уровня путем падения (falling) - Принц может падать только повернувшись в левую сторону? Что-то не могу его развернуть. --- Конец цитаты --- Там, вроде, специально устанавливается режим влево. Так что да, не сможешь --- Цитата: opr от 13 Июль 2020, 04:42:00 ---Мышку можно использовать только в одном уровне? (Если, допустим, я ее заюзаю в первом уровне, то при повторном включении мыши в любом другом уровне, алгоритм мышки для первого уровня стирается) (За камеру и дамп спасибо.) --- Конец цитаты --- Все правильно заметил :) |
| opr:
Это понятно, что я "все правильно заметил". Исправить эти моменты можно? |
| ALXR:
--- Цитата: opr от 16 Июль 2020, 05:22:37 ---Это понятно, что я "все правильно заметил". Исправить эти моменты можно? --- Конец цитаты --- Все можно, но у тебя слишком много кастомизаций. Постоянно подбивать редактор, код и т.д. под один хак смысла мало - мало кому (т.е. никому, кроме тебя) это понадобится (да и в целом интереса к игре не очень-то и много). Если ты хочешь много плюшек для своего хака, то подход другой: ты продумываешь хак, дизайнишь уровни, фишки разные, а дальше пишется код для того, чтобы это все работало как надо. Сделать из хренового движка конфетку, чтобы все работало при любой конфигурации уровней - очень сложно и не нужно (в силу небольшой популярности самой игры именно на NES). Что хотел лично я - я сделал (плюс Ti_ помог в некоторых вещах), меня это устроило и на этом я закончил. |
| ALXR:
--- Цитата: opr от 17 Июль 2020, 01:05:36 ---Развернуть принца при падении и сделать мышку больше чем на один уровень - это "слишком много кастомизаций и плюшек"? :lol: (это, к слову, уже последнее предложение) Вообще, касаемо правок - я озвучивал косяки, найденные в игре, так как надеялся, что здешний автор настроен сделать именно хорошую "развитую"модификацию игрового кода с правкой основных глюков, а не только той части, которая устроила бы только его.. так я думал. И конфетка, в пределах возможности NES - таки получилась.. почти, остались совсем уж мелочи. Я понимаю, что все устали, но как по мне, лучше добить эти маленькие нюансы, тем более, что сроков ни кто не ставит. И да, я за разделение труда. Предпочитаю делать, что умею - юзать редактор, как пользователь, создавая дизайн уровней, а не учиться программингу с нуля и копаться в коде, что, думаю, мало к чему хорошему приведет, кроме потери уймы времени и желания, направляю свою энергию на дизайн и внесение предложений по улучшению движка, уж не думал, что это плохо, ни как)))) Однако, делаю (уже второй хак, так как без отражения концепт поменялся полностью, с абсолютно другими уровнями, 11 их которых уже готовы, протестены на видимые глюки и интерес гейплея) не только для себя, как ты выразился, но твоя позиция мне примерно давно ясна. Понятно, что все эти пожелания улучшения - только пожелания того, что хотелось видеть в итоге, и зная быстро гаснущее вдохновение автора, я постоянно ищу компромисс, что немного ухудшает хак. Но хорошо хоть сказал наконец, обнадеги хоть больше не будет. :lol: --- Конец цитаты --- Да много этих мелочей. Нельзя сделать полноценную правку ядра игры, если постоянно прикладываешь подорожники. А с твоими "ну это же мелочь" (коих уже за десяток перевалило) так и выходит. Ну а для хорошего хака монстрообразный редактор не нужен - спроси авторов Утиных истории Делюкс. Хочешь совместный хак - я тебе как-то в личке ссылку на дискорд свой дал, пиши туда. А тут останется обсуждение публичной версии. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |