Jump to content
Korean Random
IzeBerg

Как и чем декомпилировать/компилировать питон?

Recommended Posts

Осталость под нужды сокрытия исходников функциональное шифрование Амита Сахая приспособить ))))

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

Share this post


Link to post

Short link
Share on other sites

Ребят, а что содержится в файле __init__.pyc?
Пытаюсь декомпилировать его, но получаю пустой файл.

Речь про файл res_mods\0.9.0\scripts\client\mods\__init__.pyc

У меня всё время получается вот что:

# Embedded file name: __init__.py
pass

Share this post


Link to post

Short link
Share on other sites

 

Ребят, а что содержится в файле __init__.pyc?

Пытаюсь декомпилировать его, но получаю пустой файл.

 

Речь про файл res_mods\0.9.0\scripts\client\mods\__init__.pyc

У меня всё время получается вот что:

# Embedded file name: __init__.py
pass

Так и должно быть)) Попробуй другие скрипты

Edited by Kastiil
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

iAndrey, __init__ нужен для того, чтобы к скриптам в папке mods можно было обращаться через точку (смотри как это сделано в CameraNode.pyc), без него питон будет выдавать ошибку... поэтому пустой (без строк кода) файл просто болтается балластом.. для примера, res\client\auxiliaryfx\roccat\__init__.pyс аналогичный

Edited by fecell
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

fecell, пока буду воспринимать это как данность

 

Kastiil, конечно, пробовал, CameraNode.pyc тот же

так, шаг за шагом освою

Share this post


Link to post

Short link
Share on other sites

Всем доброго дня.

Какая версия питона нужна к текущей версии игры

И актуален ли пост номер 15, этой темы?

С уважением

Share this post


Link to post

Short link
Share on other sites

Всем доброго дня.

Какая версия питона нужна к текущей версии игры

И актуален ли пост номер 15, этой темы?

С уважением

версия питона 2.7.Х

пост за номером 15 актуален

Share this post


Link to post

Short link
Share on other sites

Написал программу для более удобного декомпилирования.

Внимание! программе требуется установленный Python и Uncompyle2. Путь до папки с пайтоном должен быть добавлен в PATH.

 

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

  1. Скопировать содержимое папки uncompyle в любую папку. (Например: C:\uncompyle. Если вы скопируете в папку Windows, то можно будет пропустить пункт 2)

  2. Добавить путь к папке с программой в переменную PATH

  3. Открыть uncompyle.ini,

      а) Параметр cmd отвечает за скрытие окна программы. cmd=True - будет показана консоль, cmd=False - всё будет скрыто

      б) В параметр path надо вписать путь к скрипту uncompyle2. (например: C:\Python27\Scripts\)

  4. Выберите один файл для добавления в реестр:

         uncompyle2all.reg - Пункт будет добавлен в контекстное меню всех файлов

         uncompyle onlypyc.reg - Пункт будет добавлен в контекстное меню только для файлов .pyc

 

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

  Пункты 1 и 3 выше.

 

Использование:

  Через контестное меню:

      ПКМ -> Декомпилировать .pyc

 

  Через консоль:

     cd %папка_с_uncompyle.exe%

     uncompyle.exe %имяскрипта%

 

Также сделал более удобным обращение со скриптом для компиляции.

  Установка:

     1. Скопировать содержимое папки compyle в любую папку. (Например: C:\compyle. Если вы скопируете в папку Windows, то можно будет пропустить пункт 2)

     2. Добавить путь к папке со скриптом в переменную PATH

     3. Выбрать файл для добавления в реестр:

        compyle2all.reg - Пункт будет добавлен в контекстное меню всех файлов

        compyleonlypy.reg - Пункт будет добавлен в контекстное меню только для файлов .py

 

 Использование:

   ПКМ -> Скомпилировать .py

 

'Скриншоты'

post-20225-0-93905000-1399200029_thumb.pngpost-20225-0-63877200-1399200033_thumb.png

 

 

uncompyle_and_compyle.zip

Edited by Azbuka_slovensko
  • Upvote 5

Share this post


Link to post

Short link
Share on other sites

Также сделал более удобным обращение со скриптом для компиляции от @evil_rrock. Надеюсь он не будет против.

То не моё =) нарыл на просторах сети скрипт этот.

Share this post


Link to post

Short link
Share on other sites

fecell, пока буду воспринимать это как данность

 

Kastiil, конечно, пробовал, CameraNode.pyc тот же

так, шаг за шагом освою

 

Там всё просто, если вы хотите чтобы движок питона воспринимал скрипты в папке как библиотеку, а название папки как название этой библиотеки со криптами, то вам потребуется файл __init__.py. Если это всё что вам нужно, то данные файл вы оставляете пустым или прописывайте в нем pass, это пустой оператор, компилятор его игнорирует.

 

Часто можно увидеть что файл __init__.py не пуст, это потому, что туда можно поместить код, который будет выполняться при первом обращении к вашей библиотеки. Например туда можно поместить код проверки наличия всех файлов папке (библиотеки), которые там должны быть. 

Edited by StranikS_Scan
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan, о, спасибо! О чем-то подобном я как-то догадывался.
А ты подробно и понятно объяснил. Осталось разобраться, как устроен Python - и вперёд!

@fecell, ну я уже немного почитал, и понял, что это конструктор класса. Проверь, пож-та, ссылку, там что-то не открывается.

Share this post


Link to post

Short link
Share on other sites

@fecell, ну я уже немного почитал, и понял, что это конструктор класса. Проверь, пож-та, ссылку, там что-то не открывается.

это глюк движка форума.. скопировал её, вставил её и стала открываться (в посте выше).. ;)

Edited by fecell

Share this post


Link to post

Short link
Share on other sites

Помогите декомпилировать мод. Сам не могу - только разбираюсь. Или если у кого получится подправьте. Проблема в следующем - мод показывает тень танка пропавшего из засвета в течение какого-то времени (задается в конфиге) У меня комп слабый, пережал текстуры тень не видно вообще стало. Кто разбирается, подскажите тень можно как-то ярче сделать?

мод прилагается. Chameleon Mod numpad 2+3.zip

Share this post


Link to post

Short link
Share on other sites

тень можно как-то ярче сделать?

В данном моде в качестве тени используется стандартная клиентская модель. Так что, если она пережата, то тут мало чем поможешь.

Share this post


Link to post

Short link
Share on other sites

а нельзя ее как-то насыщеннее сделать, там через .visual?

Share this post


Link to post

Short link
Share on other sites

там через .visual?

А вот тут я точно не скажу. Если пережимались только текстуры без изменения самих моделей, значит, за тень отвечает какой-то из dds-файлов. Тут лучше спрашивать у спецов по моделям. Может, StranikS_Scan что-то знает.

Share this post


Link to post

Short link
Share on other sites

пережимались только текстуры, модели измененные с модом шли - они в папке objects/modified/vehicles их не трогал, я так понял они используются при нажатии NUMPAD2 в моде

Share this post


Link to post

Short link
Share on other sites

@Dkmn, визуалы содержат только данные о модели, шейдерах и текстурах. Теней там нет. Гляньте конфиг файл к моду, там какие цвета задаются. Может это то что вам надо.

 

Я уже видел этот мод, или его варианта, ЛСД-шник на мамке его выкинул. Только там написано что он по кнопке живые танки противников перекрашивает в цветные.... на что я написал что скорее всего это был или будет очередной мод на коллинжи-пробития :)))

 

Решил глянуть внутрянку:

- визуалы коллинжей бронирования

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

 

Я мод запускал на реплее, ни чего не заработало, наверно блокировка на реплеи стоит сел поковырять pyc-ушку.

 

Зацените, грамотно вставлено, а не абы куда, тут 09->48 не поможет :))):

 

28 LOAD_CONST        1
31 NOP
32 LOAD_CONST        2
35 COMPARE_OP        '>'
38 POP_JUMP_IF_FALSE '71'

Edited by StranikS_Scan
  • Upvote 1

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...