Обсуждение Вопросы по программированию модификаций на Python

Статус
В этой теме нельзя размещать новые ответы.
StranikS, а бывает так что автор навоял на коленке мод. Вложил нужный люду функционал, но категрически на болте крутил его кастомизацию. Те кто знаю язык хоть на уровне чайник, нырк в декомпилятор, а там куй. И автора сделать настроечник для мода не допросишся.
 
StranikS, а бывает так что автор навоял на коленке мод. Вложил нужный люду функционал, но категрически на болте крутил его кастомизацию. Те кто знаю язык хоть на уровне чайник, нырк в декомпилятор, а там куй. И автора сделать настроечник для мода не допросишся.

Так и должно быть.
 
Последнее редактирование:
StranikS написал(а):
Выходило так, что, тот у кого исходный код - тот и автор. А теперь наоборот будет, кто автор - у того и исходный код, а остальные пусть идут по шоссе и сосут сушки.
Собственно, согласен. Взгляд на те же обстоятельства, но под "правильным углом".
 
Так и должно быть.

Странник, а если поставить мод не через путь script/client / mods , а через script/avatar.....(точно не помню название)/ mods , моды будут работать ?естественно предварительно закинув загрузчики?
 
rushan а профит в чем? попытка скрыть читы от кавайного клубня? =)

По такому линку ты кинуть хочешь?
x:\Папка_клиента\res\scripts\client\avatar inputhandler
 
Последнее редактирование:
Странник, а если поставить мод не через путь script/client / mods , а через script/avatar.....(точно не помню название)/ mods , моды будут работать ?естественно предварительно закинув загрузчики?

Загрузчик можно сделать из любого стандартного pyc-файла клиента и через него загрузить моды от куда угодно.
 
Ну да глядя на внутрености CameraNode:

Код:
# Embedded file name: compiled\CameraNode.py
import BigWorld

class CameraNode(BigWorld.UserDataObject):

    def __init__(self):
        BigWorld.UserDataObject.__init__(self)


def load_mods():
    import ResMgr, os, glob
    res = ResMgr.openSection('../paths.xml')
    sb = res['Paths']
    vals = sb.values()[0:1]
    for vl in vals:
        mp = vl.asString + '/scripts/client/mods/*.pyc'
        for fp in glob.iglob(mp):
            _, hn = os.path.split(fp)
            zn, _ = hn.split('.')
            if zn != '__init__':
                print 'Executing: ' + zn
                try:
                    exec 'import mods.' + zn
                except Exception as err:
                    print err


load_mods()


Влепиить в любой скрипт аналогичный метод - def load_mods():
и вуаля.
 
rushan а профит в чем? попытка скрыть читы от кавайного клубня? =)

По такому линку ты кинуть хочешь?
x:\Папка_клиента\res\scripts\client\avatar inputhandler

Я просто слышал , что по стандартному пути моды чем то проверяются , а если кинуть через аватар то моды будут иметь расширенные возможности :) Это правда ?
 
Я просто слышал , что по стандартному пути моды чем то проверяются , а если кинуть через аватар то моды будут иметь расширенные возможности :) Это правда ?

Откуда вы все такую ересь приносите? Её где-то раздают что ли? Ну пипец, это же надо было кому-то такую чушь придумать.
 
rushan, ничего об этом не знаю. :Smile_unsure:

StranikS, видимо из этой папки скрипты на питоне скриптовее становятся. ;)
 
Последнее редактирование:
Откуда вы все такую ересь приносите? Её где-то раздают что ли? Ну пипец, это же надо было кому-то такую чушь придумать.

Я ж говорю слышал иЛи видел где то, я просто в питончике никуя , вот и вопрос .....
 
Аа вспомнил ! Был ж серверный от Макса , там он грузил скрипт через аватар , теперь вопрос - это лишнее или так надо было?
 
Аа вспомнил ! Был ж серверный от Макса , там он грузил скрипт через аватар , теперь вопрос - это лишнее или так надо было?

Ключевое слово подчеркнуто жирным. Думаю дальше можно не комментировать.
 
Аа вспомнил ! Был ж серверный от Макса , там он грузил скрипт через аватар , теперь вопрос - это лишнее или так надо было?

Есть два простых варианта выполнения кода.

  1. В игре есть папка /res/, аналог ей /res_mods/, при копировании оригинальных файлов с сохранением структуры пути до оригинальной директории скрипта, игра автоматически подхватывает наш модифицированный файл из папки /res_mods/ без загрузчиков.
  2. Остальные модификации которые лежат, в /res_mods/scripts/client/mods/, это народные умельцы сделали (может сами разработчики игры решили использовать CameraNode в таких целях, и указали на него, я без понятия), который выполняется так же как в 1 способе и работает по такому же принципу, только после выполнения функций игры, он подгружает пользовательские скрипты из пользовательской папки mods.
Усё.
 
Есть два простых варианта выполнения кода.

  1. В игре есть папка /res/, аналог ей /res_mods/, при копировании оригинальных файлов с сохранением структуры пути до оригинальной директории скрипта, игра автоматически подхватывает наш модифицированный файл из папки /res_mods/ без загрузчиков.
  2. Остальные модификации которые лежат, в /res_mods/scripts/client/mods/, это народные умельцы сделали (может сами разработчики игры решили использовать CameraNode в таких целях, и указали на него, я без понятия), который выполняется так же как в 1 способе и работает по такому же принципу, только после выполнения функций игры, он подгружает пользовательские скрипты из пользовательской папки mods.
Усё.
Понял, спасибо вам за ответ на данный вопрос! Но есть одна проблема , имеет мод на оповещения критов , в данном моде присутствует папка audio , которая вставляется в resmods/0.9.6 и теперь вопрос: почему после установки данной модификации полностью пропадет звук в игре ? И как избавится от этой так сказать болезни?
 
Ответ в пункте 1 описания выполнения кода.
 
Ответ в пункте 1 описания выполнения кода.

Получается чтобы добиться излечения от этой болезни нужно : 1) скопировать папку audio из res в resmods, 2) извлечь мод в resmods .... Получается папка audio будет иметь двойной вес в папке с игрой...
 
Получается чтобы добиться излечения от этой болезни нужно : 1) скопировать папку audio из res в resmods, 2) извлечь мод в resmods .... Получается папка audio будет иметь двойной вес в папке с игрой...

Нуно перенести всю папку из res в res_mods и после этого установить в неё новые звуки. Так это работает.
 
А где переписать версию мода , дапустим с 0.9.5 на 0.9.6 ?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху