Скриптинг в LCS и VCS (PSP/PS2)
#41
Отправлено 21 August 2012 - 01:07
#42
Отправлено 21 August 2012 - 11:34
#46
Отправлено 24 August 2012 - 09:34
Сообщение отредактировал LEX SAFONOV: 24 August 2012 - 09:58
#48
Отправлено 24 August 2012 - 15:20
Да, лучше заняться всс, его меньше изучили. А вообще я не очень понял под "открыл/нашел" означает полностью работоспособный модженный main нужного размера под две платформы или просто капание в хексе без сохранения?
Сообщение отредактировал SILENT_Pavel: 18 September 2012 - 05:45
#49
Отправлено 24 August 2012 - 15:57
Сообщение отредактировал LEX SAFONOV: 24 August 2012 - 16:00
#50
Отправлено 24 August 2012 - 16:15
Ну да, всмысле под хексом я описался, имел ввиду "раскомпиленом в SB мейне".
В псп версии другой размер, Но все равно можно поставить пс2 мейн, работать будет, но стандартные сохранения не загрузит, только свои "дебагнутые". Я хотел задать вопрос, в плане что это теория "работает, погода, чит меню" или реальный пройденный тест на эмуляторе или приставке одной из? Оно часто после активации на практике не срабатывает.В ЛСС мейн, что на ПСП, что на ПС2 одинаков.
Сообщение отредактировал SILENT_Pavel: 18 September 2012 - 05:46
#51
Отправлено 25 August 2012 - 14:20
Чтоже делается через хекс - мы добавляем строку в начало мейна, где запускается целиком весь этот поток. Да, дебаг то запустится, но это не только бесполезно, это даже вредно, ведь порядок выполнения скриптов основан на выполнение кода построково, как в любом програмировании. Собсна вместо запуска отдельного элемента, у нас будет работать весь поток сразу, что порождает море глюков после этого(а внутри этого потока элементов ой ой как много и они все разом начинают работать).
Сами же вещи, типа выбирания погоды\времени\просмотрщик моделей валяются в отдельно созданных потоках и не удивлюсь что для них корректный запуск в общем мейне либо убрали, либо оставили, но надо искать.
Вообще это всё нужно запускать отдельно, а не через добавление строки хексом. Если Dageron таки намутит нормальный компилятор скриптов для ЛСС, то можно будет прописать в самое начало запуск этих отдельных элементов с клавиш и должно работать всё куда менее бажно. (однако мы все прекрасно знаем, что в ЛСС всё было сделано через жопу для повышения производительности)
#52
Отправлено 25 August 2012 - 18:22
Ну знаете... как по мне так лучше вредно, чем ничего вообще и годами писать компилятор (не намек в сторону кого-то, никто ж быстро такое не пишет).А так конечно спасибо за развернутое разъяснение, нужны будут тесты на консоли железной или эмуляторе обращайтесь.Чтоже делается через хекс - мы добавляем строку в начало мейна, где запускается целиком весь этот поток. Да, дебаг то запустится, но это не только бесполезно, это даже вредно
Сообщение отредактировал SILENT_Pavel: 18 September 2012 - 05:46
#53
Отправлено 26 August 2012 - 11:10
феерическая [[убрано]], создан он как раз для дебага.
то, что метка нахывается многабукаф_100500 ничего не значит, кроме, того что смещение следующего за неё опкода равно 100500 (см. настройки санни) и пора бы это понимать.
санни билдер неправильно распознаёт, что отноится к потоку, а что - нет. грубо говоря, санни считает всё, что ниже опкода thread принадлежащим этому треду вплоть до следующего треда (никаких претензий к Seemann'у - вполне логично сделано, всё равно всех случаев не предусмотришь, да и не надо).
>> К примеру - вызов проигрывания звука в миссиях происходит тоже из потока @DEBMENU, только вызывается не весь поток сразу, а лиш отдельный кусок, в котором будет стоять return(возврат значения).
это, условно говоря, SCM-функция, вызванная опкодом call с параметрами 0@ = первый агрумент и т.д. (название опкода кагбе намекае)
эти функции идут после потока дебаг, но никак к нему не относятся.
также, замечу, что кусок кода именно потока никто нигде не вызывает, в этом можно прекрасно убедиться проследив метки (я ни разу не видел вызова куска потока с какой-нибудь метки, хотя и технически это должно быть возможно).
>> Чтоже делается через хекс - мы добавляем строку в начало мейна, где запускается целиком весь этот поток.
чтобы запустить этот поток достаточно инвертировать проверку if not debug_disabled в начале мейна (т.е. обнуллить самый старший бит; алсо в ини санника этот опкод unknown) - я делал это ещё года 3 назад. тогда вы не только запустите поток, но и пропустите первую миссию и т.д.
Сообщение отредактировал Dageron: 26 August 2012 - 16:57
Нарушение правил форума: Параграф 2, пункт 2.2 (ненормативная лексика)
#55
Отправлено 26 August 2012 - 17:15
Вообще говоря первая миссия пропускается всегда. В той версии, которая сейчас у SILENT_Pavel-а, - просто все проверки, связанные с 4F06 (опкод is_debug_disabled), заменены на опкоды 0100 (задержка - wait 0). Раньше я поступал иначе - запуск потока @debmenu добавлял в ту часть, где инициализируются все основные потоки (в начало main-а). И всегда работало одинаково.чтобы запустить этот поток достаточно инвертировать проверку if not debug_disabled в начале мейна (т.е. обнуллить самый старший бит; алсо в ини санника этот опкод unknown) - я делал это ещё года 3 назад. тогда вы не только запустите поток, но и пропустите первую миссию и т.д.
Такая штука работает, причем вполне прилично.я ни разу не видел вызова куска потока с какой-нибудь метки, хотя и технически это должно быть возможно
Конечно, это полное нарушение логики кода, но для некоторых трюков бывает полезно.
LEX SAFONOV
Молодец, что разбираешься .
На самом деле это не критично, так как дальше end_thread игра ничего выполнять не будет.Чтоже делается через хекс - мы добавляем строку в начало мейна, где запускается целиком весь этот поток. Да, дебаг то запустится, но это не только бесполезно, это даже вредно, ведь порядок выполнения скриптов основан на выполнение кода построково, как в любом програмировании. Собсна вместо запуска отдельного элемента, у нас будет работать весь поток сразу, что порождает море глюков после этого(а внутри этого потока элементов ой ой как много и они все разом начинают работать).
Сейчас посмотрю, что там еще можно сделать... Честно говоря именно эти функции я в подробностях не смотрел; так что пока не будем делать поспешных выводов. Потоки @playch/@bview/@wetime/@mocaps/@anims вызываются из-под @debmenu, следовательно, должны работать.Вообще скриптинг в ЛСС не больно далеко улетел от васи, так что вполне логично, что этот поток состоит из отдельных кусков, которые использовались по надобности. Однако мучает ещё вопрос на счёт просмотра анимаций и моделей...
#56
Отправлено 26 August 2012 - 18:51
Прикрепленные файлы
#58
Отправлено 26 August 2012 - 19:07
(скриншоты делал с локализованной версии; другой не было под рукой, поэтому часть текста на русском)
Меню просмотра персонажей:
Меню просмотра локаций (и перемещения к ним):
(на мой взгляд самая полезная и интересная функция)
Меню выбора и просмотра катсцен:
Также есть меню просмотра анимаций, но оно практически неработоспособное.
Выбор погоды - работает нормально.
Вот последняя версия со всеми обновлениями.А есть для ЛСС опкоды какие-нить обновленные?
#59
Отправлено 26 August 2012 - 20:24
Здорово! Спасибо что копаешься в этом, несколько вопросов:
- А просмотр зданий как бы просто крутится вокруг выбранного здания в городе и все? Вообще все здания в игре?
- И просмотр моделек персонажей ничего не делает кроме просмотра? в всс вроде цвет менялся одежды
- Старые функции работают вместе с этими одновременно или нет?
Сообщение отредактировал SILENT_Pavel: 18 September 2012 - 05:46
Ответить
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных