Jump to content
Korean Random
StranikS_Scan

PjOrion - редактирование, компиляция, декомпиляция, обфускация модов (Версия: 1.3.5 Дата: 11.08.2019)

Пользуетесь ли вы Орионом?  

310 members have voted

You do not have permission to vote in this poll, or see the poll results. Please sign in or register to vote in this poll.

Recommended Posts

Знаю такое, сделаю.

Спасибо.

 

А еще вопросик. В версии 1.0.10 Alpha при попытки запустить реплей чезер wot-transmission вываливается ошибка:

Error: invalid syntax (, line 23)

В версии 1.0.9 все отлично.

Share this post


Link to post

Short link
Share on other sites

Move Scripts to ZipBase64    Как декодировать????

 

 

Например,

exec __import__('marshal').loads('eNp1Vc1u20YQnqVkWZLtSLZjO2mC1E1/IPQgND0WRVu1koogkWxQcoQKKIgVuaEp0aTMXVkWYJ/cR8ilfZPeeumh5/bS58gDtDND0bWTlOKO52fndz+uXVg+K7i+waX/RuIBDJEK8CwIBQxFxlswtDI+B8NcxudhmGc+B+EKnBRgWACxtK3CcJVteQiL0FcWjEswLIO3AsM12iE3QN0BWQFVBbkJKg/jLfAKcIWZt0Ft055JCZLfiR/fBW+VTCTuAEYj5S4pvSJcWfRi8AjLL8FP2MceqD24AizHgl6tTC1+jKR8lDS+b0TlnpsEU7M/S6QvIydRkaeSk9hTYX26KAf/4NOtCdxvqkh8Zx5EXjzXHRlJXyWphcin/i8/0/Pr13qLUnBU7bhx9DLw6+cnoaHMaXhnohZmDcVnrR+c7lHnsNF84mZnQOs7inDXArhAl6owAGNBLVwKuBB0ODQN1OdYFNQyisiP88Sc/wXksgLjAnk1f/wNLi0wq3Bh0eBMEcZFmBQhaZMGDwM3Ja+ZL9Os718nHK9xqtccb51LwJy5rIQ/iR9vsOcGTCzS0M47y0xceYUExAUWKU5T1Tvs+dTevu2PcvoOTqsCj/Qiz6mLoD8XxOdgj/ZXqbIJNgEWiZtgthghqcjWyzwP8w9hUgilDWTieIfQiJBLUeSn1ZpduAQ4P3tjmvX/mear272dvlq+g1Os42ZWFPco8pu5Szdyow/2SwHvgVcGc5+1GKBXI+R0TQlpoA+iBmJKmjzhUMmTgLAYEJb0J0hG0phQ1Q9DuVBJR2mNoNWHMkJ0947j+VLDAP5ME8BtAmjUIfzv7x+02xzYj0NPV96ydq8hX3uP0heRfBv4gzgJPVNAYcppOUQ3jhSODOBYaqwpsfOZh4pMYAKl2eNMhjNk2biYph4v1HHghikf6EYYnCn+lqazURi4T6OXsU3fDPsbmWA7xqKtntnBP3O/qcKW56umMso1Lcq2WFoanveWhVMHJ2o532dq0YznEX/89LXarW6zZTudg2bruU1jNuvXYx7w1cARXBmGhqpqy1ArVvWTmeKGyTaS7oQLTq+dGjewydOQo1DdmLNdym6YM3srm5k7S5I+FlmjCpgYIvYjJNSa/oJEURDr4iOxK3ZEDblHYkNsW+kqWwXxBHU74iHuoh2ky4kKSo9F7R5FpHk7jhe7jmNTUu4C55EeT0eaY+7AVrrjJ4Zq82dBfXDrfuQR2QQdvu88NZr5zswEobZzZOFEZD46bDb6Ledpt9+yXzSe23TA9gdEHhJ5n8iDrH2cqAkiX3PMeKqiHp5fEEd87p7OcMbXLPEICcLc8gaWXs8k6M7T+m+CTOzHWY4v8X/ALFRfUa+atAVrXaS/Kq6yKOGo0l9FPMDhlj78F3epfa4='.decode('base64').decode('zlib'))

Share this post


Link to post

Short link
Share on other sites

Move Scripts to ZipBase64    Как декодировать????

Например,

exec __import__('marshal').loads('...'.decode('base64').decode('zlib'))

читай документацию по питону, причем тут Орион?

Share this post


Link to post

Short link
Share on other sites

читай документацию по питону, причем тут Орион?

А чем плохо добавить это в программу?

Share this post


Link to post

Short link
Share on other sites

Ув. StranikS_Scan, возможно ли реализовать в ближайшем будущем поддержку wowp в программе? Движок тот же - BuigWorld.

Share this post


Link to post

Short link
Share on other sites

Ув. StranikS_Scan, возможно ли реализовать в ближайшем будущем поддержку wowp в программе? Движок тот же - BuigWorld.

 

В КТТС у меня записано.

Share this post


Link to post

Short link
Share on other sites

Немного по поводу WOWP. Загвоздка в том что в WOWP Python 2.6, а терминал использует насколько понимаю Python 2.7 .

Ну а сама программа просто замечательная для тех то с питоном работает. Будем очень ждать.

Edited by DimonKIPIA

Share this post


Link to post

Short link
Share on other sites

 

 

А чем плохо добавить это в программу?

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

Share this post


Link to post

Short link
Share on other sites

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

Типо , "Прошу добавить Маршала в Орион " так ?

Share this post


Link to post

Short link
Share on other sites

Давайте по существу. В каком виде-то добавлять??? Есть функция "Load pyc-byte code to selected variabel", она грузит маршал-код из файла в переменную. Вам нужна обратная операция, наверно под таким названием "Save marshal-code to pyc-file...".

 

Тогда работать будет типа так:

aaa = __import__('marshal').loads('eNp1Vc1u20Y.....
затем выделяем ааа, жмякаем "Save marshal-code to pyc-file...", пишем имя файла, код сохраняется (дампится :))) и теперь можно этот pyc-файл декомпилировать.

 

Ну чего, так сделать?

Edited by StranikS_Scan
  • Upvote 4

Share this post


Link to post

Short link
Share on other sites

Давайте по существу. В каком виде-то добавлять??? Есть функция "Load pyc-byte code to selected variabel", она грузит маршал-код из файла в переменную. Вам нужна обратная операция, наверно под таким названием "Save marshal-code to pyc-file...".

 

Тогда работать будет типа так:

aaa = __import__('marshal').loads('eNp1Vc1u20Y.....
затем выделяем ааа, жмякаем "Save marshal-code to pyc-file...", пишем имя файла, код сохраняется (дампится :))) и теперь можно этот pyc-файл декомпилировать.

 

Ну чего, так сделать?

"и теперь можно попробовать этот pyc-файл декомпилировать."

я бы так сформулировал ;)

Share this post


Link to post

Short link
Share on other sites

подниму ещё разок вопрос на который я не нашёл вменяемого ответа...

как нормально декомпилировать скрипты клиента?

в частности интересует res\scripts\client\avatarinputhandler\control_modes.pyc

 

если разбирать и собирать в Орионе с помощью ункомпиле и декомпиле его то получается говнокод. 

А Фупя (AssertionError) и Пиретик (TypeError: __str__ returned non-string (type list)) шлют накуй по итогам...


Ну и конечно "хоцца" читать код чужих модов (интересное всякое изучать).

А они оч часто rfcheat мерцером укутаны.. ну или просто в маршале... Я никоим образом не Питоновод. но код хоть как-то понимаю и могу чегонить поправить для себя. но без учёта тонкостей )))

 

Можно будет увидеть? Или как обычно "защита сделано чтобы быть и не вам "немытым" её обходить...

Т

Share this post


Link to post

Short link
Share on other sites

если мерцером, то ничего не поможет, он путает следы, причем неоднозначно, так что 100% исходный код не получить, только если вручную, рюхая мозгом

Share this post


Link to post

Short link
Share on other sites

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

 

вот накидал небольшой пробный модик

Показывать опыт экипажа до 100%

 

По идее он должен показывать на экипаже сколько опыта нужно накатать до 100% навыка и за сколько боёв.

 

Но есть странности.

1. При декомпиляции ругалось на 

TypeError: exceptions must be old-style classes or derived from BaseException, not bool

я вырезал тот кусок кода вообще. но терзают смутные сомнения что это было проавильно

 

2. на некоторых членах экипажа (например командир на тип62 у меня показывает дико маленькое количество опыта до 100% этого я понять не могу.

3. по какой-то причине данный мод не работает если кидать в res_mods. как это обходить?

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

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

 

 

Ещё раз спаисбо.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

 

 

Питон не знаю от слова совсем.

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

Учебников - куча.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Ну насколько простой язык я понИмаю... Даже не зная его можно понимать и исправлять код.. Спасибо за ссылку почитаю... Хочется некоторые вещи для себя делать, не ждать пока другие сделают... Но и тратить время на вдумчивое изучение языка, только чтобы сделать мелкие фиксы и забыть... Как то слишком.. Не профессионально же заниматься питоноводством, я не программер, я в другую степь... Мое знание языков ограничено бейсиком в школе и немного си в универе...

Share this post


Link to post

Short link
Share on other sites

Давайте по существу. В каком виде-то добавлять??? Есть функция "Load pyc-byte code to selected variabel", она грузит маршал-код из файла в переменную. Вам нужна обратная операция, наверно под таким названием "Save marshal-code to pyc-file...".

 

Тогда работать будет типа так:

aaa = __import__('marshal').loads('eNp1Vc1u20Y.....
затем выделяем ааа, жмякаем "Save marshal-code to pyc-file...", пишем имя файла, код сохраняется (дампится :))) и теперь можно этот pyc-файл декомпилировать.

 

Ну чего, так сделать?

 

Обязательно добавить , это же программа для удобства работы !

 

ЗЫ Как понять выражение ? Если удалить эту строку то скрипт перестаёт работать почему не пойму .

if __name__ == 'mods.' + __file__.split('/')[-1].split('.')[0]:
Edited by o-0-0-0

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...