Перейти к содержанию
Авторизация  
elma

ломаем ren`py игры

Рекомендуемые сообщения

существует множество игр, сделанных на движке  ren`py и соответственно существует некоторое количество людей, желающих их вздолбать. под "вздолбать" подразумевается покопаться в игре- будь то почитерить, изменить код, подсмотреть последствия действий и/или условия необходимые для их выполнения, ну или не играя в саму игру выковырнуть из нее картинки/изображения.

помимо самой игры для таких деяний потребуется инструмент:

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.

оттуда берется bat файл, закатанный в архив и суется в папку с исполняемым файлом игры. запускать файл надо от администратора. после запуска файл выкатит текстовое меню, функционал которого таков:

1. распаковать RPA архивы. использовать надо ТОЛЬКО если искомые картинки/скрипты спрятаны в RPA архивах, без необходимости этим не надо пользоваться .

2. декомпилировать RPYC файлы в RPY, чтоб они имели читабельный вид языка ren`py. естественно использовать надо если отсутствуют файлы RPY. тут правда, может быть одна засада- если игра собрана на новейших версиях ren`py, то при декомпиляции вылезет куча ошибок и декомпилированный скрипт будет неполным. в таком случае надо будет удалить "бракованные" файлы RPY и в папку "game" засунуть другой инструмент:

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.

после запуска игры этот скрипт шустренько декомпилирует все скритпы игры.

3. разблокировать консоль и меню отладки/разработки. консоль вызывается комбинацией shift+O, меню отладки/разработки- shift+D. о их использовании будет написано далее.

4. разблокировать возможность быстрой записи/сохранения на клавиши F5/F9. тут надо сразу оговорить особенности использования этого- существует несколько игр, где это либо не сработает, либо приведет к куче ошибок. помимо этого в ряде игр быстрая запись не означает сохранение сиюминутной ситуации, например запись посредь диалога и последующая загрузка может откинуть к началу диалога. в большинстве игр это работает конечно штатно.

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

6. разблокировать возможность отката диалогов/действий. в большинстве игр работает великолепно, активируется кручением колесика мыши. в очень редких играх это может привести к багам- как визуальным, так и скриптовым.

9. да, таки девятый пункт меню- выполнить все вышеперечисленные пункты сразу. крайне не советую это делать- кончиться все очень плохо.

 

особо стоит поговорить о возможностях, дарованным нам пунктом 3. меню разработчика (developer menu)- крайне не советую использовать любой пункт кроме variable viewer (просмотр переменных). польза меню разработчика не столько в том, что можно узнать значения переменных, а узнать ИМЕНА ПЕРЕМЕННЫХ, что иногда непросто и даже это меню может не помочь. например переменная имеет в скрипте вид "mc.cash"- это означает, что есть объект mc с полем объекта cash. казалось бы- все бяда и ужас, но если просто ввести в консоль "mc.cash" и жмакнуть ентер, то в консоли отобразится текущее значение переменной.

 

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

1.  ren`py не переваривает символов табуляции (это относится и к скриптам)

2.  ren`py нежно и трепетно различает строчные и заглавные буквы, т.е. "х" отличается от "Х"

3. использование пробелов на некоторых версиях  ren`py надо будет писать "mc.cash = 1000", а не "mc.cash=1000"

 

теперь перейдем к ковырянию в тушке игры. многие хотят узнать последствия выборов в диалогах. для этого рассмотрим такой пример- допустим вылазит диалог следующего вида:

- чихнуть 3 раза

- пукнуть 2 раза

и тут становиться ссыкотно, т.к. фиг знает, что задумал автор игры- может даст бабла, а может гг засунут кочергу в задницу... для этого ищем в скриптах фразу либо из диалога либо ту, что была перед диалогом. я для этого использую Far Manager (да, я ретроград и эти горжусь!)- указываю, что ищу в файлах RPY текст "пукнуть 2 раза" и нахожу конструкцию навроде:

    menu:

         "чихнуть 3 раза":

                  бабло += 100

         "пукнуть 2 раза":

                  jump кочергу_в_задницу

пример предельно упрощен, но можно заметить, что в 1 случае подкинут бабла, а во втором анально покарают. также в меню могут присутствовать помимо переменных операции с флагами, например "ыуа = True" (напомню, что ren`py нежен и чувствителен к регистру буков и true вместо True вызовет ошибку). что же делать? ответ прост- так же делаем поиск по всем RPY файлам текста "ыуа" и смотрим, к чему то или иное состояние флага приведет.

 

большинству читернувших достаточно манипуляций с временем суток и днем недели. как правило это достигается незамысловато навроде daytime = 1 или weekday = 6, но в ряде игр это может привести к ряду багов, так что надо трезво оценивать свои возможности.

 

ну и самое главное правило- если нет 200% уверенности в результате своих действий- перед манипуляциями надо сохраниться.

 

ОБНОВЛЕНИЕ.

некоторое время назад была обновлена платформа renpy и все чаще стали появляться игры при декомпиляции исходников которых вылазят ошибки. к чему это приводит? как минимум к тому, что код не будет декомпилирован полностью, а как максимум- некоторые файлы не будут декомпилированы полностью.

бороться с этой напастью надо частичной сменой инструментария- из 

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.
скачиваеться файл un.rpyc (версия 1.1.3 на момент мая 2020 полностью работоспособна и опробована на нескольких играх) и далее действуеться по следующему алгоритму:

1. скачаный файл un.rpyc кидаеться в папку "game" игры

2. игра запускается, дожидаемся загрузки главного меню, но не играем, а выходим из игры.

3. перемещаем все декомпилированные файлы *.rpy из папки "game" и подпапок в любую другую папку вне папки игры.

4. обязательно убираем из папки "game" файл un.rpyc.

после этих манипуляций у нас есть полный набор исходников и можно в них с удовольствием ковыряться. в алгоритме неспроста не указано, что не надо распаковывать *.rpa файлы- в этом нет необходимости- этот "декомпилятор" сам "вытаскивает" компилированные файлы *.rpyc из игровых архивов и "на лету" их "разбирает".

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

 

 

теперь касательно самих игр- для ознакомления с видом подобных игр порекомендую:

- Lust Affect - забавная пошлятина во вселенной масс эфект, разработка игры завершена, есть р/я

- My little angel - забавная пошлятина с рисованной графикой, частичный реалтайм, разработка игры завершена, есть р/я

- Lust City - очень забавная пошлятина , разработка игры НЕ завершена, есть только р/я

- Wife Trainer - менеджилка с опошлением и совращением, разработка игры НЕ завершена, есть только инглиш, код скриптов слишком сложен для начинающего

подобных игр сотни и перечислять их всех я опухну, поэтому подкину 2 сайта (надеюсь, это не будет воспринято, как реклама, контент вообще не пересекается):

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.
 - импортный рассадник пиратства, свободомыслия, одни из первых релизят спираченое у жадных патреонолюбов

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.
 - отечественный рассадник разврата, где релизятся игры, которые с натугой иногда переводятся местными переводчиками

 

текст авторский, написан лично мною, великим и гениальным икслюзивно для ГС. если когото будет распирать желание репостнуть в иных местах, то разрешаю поползать на коленях и поумолять- существует 0.0000001% шанс, что я снизойду до этой челобитной 👑

 

Изменено пользователем elma

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
6 минут назад, Майк сказал:

Плюс онлайн редактор сейвов 

Скрытое содержимое

    Для просмотра скрытого содержимого необходима РЕГИСТРАЦИЯ на сайте.

вот это как раз не особо рекомендую- у держателей этой х***дрыги зашкаливает жадность и они ренпи номинально разрешают загружать в редактор раз в сутки, но на самом деле в 80-90% случаев эти жадные п**ы посылают на** и говорят "купите вип аккаунт".

ну и до кучи- это говнище искажает имена объектов (свойства 2 уровня вообще отлетают), а уж как отображает массивы- просто сказка....

Изменено пользователем elma

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тема дополнена всвязи с обновлением платформы renpy и другим вариантом декомпиляции игр на новой платформе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 02.05.2020 в 13:48, elma сказал:

тема дополнена всвязи с обновлением платформы renpy и другим вариантом декомпиляции игр на новой платформе.

Если кто знает? Подскажите онлайн на сайте распаковал rpa архив внем были скрипты, подрероктировал, можно ли запаковать обрато,на пк получалось, на андройд можно это както првернуть. 

Изменено пользователем Vladisqw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...

Важная информация

By using this site, you agree to our Условия использования.