IzeBerg 128 Posted August 16, 2015 (edited) Просто оставлю это тут. Теперь можно избавится от модлоадера CameraNode. В 9.10 добавили модлоадер, Чтобы моды запустились досаточно поместить мод в папку scripts/client/gui/mods и название файла должно начинаться с mod_. Если поставить в constants флаг IS_DEVELOPMENT на True, то будут грузится некомпилированные моды (*.py) с той-же маской имени. Появилось некоторые методы, которые клиент вызывает у мода, например: init, fini, onAccountShowGUI... И в таком духе, найти их можно поиском в исходниках слова guiModsSendEvent или sendEvent. Чтобы они вызывались достаточно создать метод с соответствующим названием в моде. Edited August 16, 2015 by IzeBerg 7 1 Quote Share this post Link to post Short link Share on other sites
KACTET 317 #287745 Posted August 16, 2015 (edited) CameraNode наше всё.. Тоже работает Выше на начало тотального контроля смахивает... Хотя в некоторых моментах это и хорошо что вызовы есть, защита от запуска не из игры хоть будет хоть какая.. Edited August 16, 2015 by KACTET 1 6 Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,203 #287768 Posted August 17, 2015 Спустя 5 лет это что мертвому припарки. Выше на начало тотального контроля смахивает... Хотя в некоторых моментах это и хорошо что вызовы есть, защита от запуска не из игры хоть будет хоть какая.. Сам то понял что написал фигню? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #287774 Posted August 17, 2015 (edited) . Edited January 10, 2022 by SkepticalFox Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #287775 Posted August 17, 2015 вопрос, почему вылет клиента если я заменяю в модлоадере def _isValidMOD(scriptName): return scriptName.startswith('mod_') and scriptName.endswith(_MOD_NAME_POSTFIX) на def _isValidMOD(scriptName): return scriptName.startswith('') and scriptName.endswith(_MOD_NAME_POSTFIX) а если ставить def _isValidMOD(scriptName): return scriptName.startswith(_MOD_NAME_POSTFIX) and scriptName.endswith('') то ваще моды не видит Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #287777 Posted August 17, 2015 (edited) . Edited January 10, 2022 by SkepticalFox Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #287779 Posted August 17, 2015 ставь return True и не мучайся ставил, тоже вылет Quote Share this post Link to post Short link Share on other sites
DrWebber 5 #287783 Posted August 17, 2015 ставил, тоже вылет А так? def _isValidMOD(scriptName): return False if '__init__' in scriptName else True 1 Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #287786 Posted August 17, 2015 А так? def _isValidMOD(scriptName): return False if '__init__' in scriptName else True скрипт грузит, а путь к конфигу найти не может WARNING: [WARNING] (__init__, 51): There is problem while import gui mod ('gui.mods', 'Spam_message.json') ERROR: [EXCEPTION] (__init__, 52): Traceback (most recent call last): File "__init__", line 48, in _findValidMODs File "scripts/common/Lib/importlib/__init__.py", line 37, in import_module ImportError: No module named Spam_message.json Quote Share this post Link to post Short link Share on other sites
DrWebber 5 #287788 Posted August 17, 2015 Ну тогда вот так. def _isValidMOD(scriptName): return False if '__init__' in scriptName or not scriptName.endswith(_MOD_NAME_POSTFIX) else True 2 Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #287790 Posted August 17, 2015 Ну тогда вот так. def _isValidMOD(scriptName): return False if '__init__' in scriptName or not scriptName.endswith(_MOD_NAME_POSTFIX) else True спасибо, все гуд Quote Share this post Link to post Short link Share on other sites
IzeBerg 128 #287794 Posted August 17, 2015 Спустя 5 лет это что мертвому припарки. Ну мне из всего больше методы эти понравились. Не красиво это, делать "подмену" методов, а тут просто создал и клиент сам вызовет. Не хватает только handleKeyEvent/handleMouseEvent. Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #287795 Posted August 17, 2015 (edited) . Edited January 10, 2022 by SkepticalFox Quote Share this post Link to post Short link Share on other sites
IzeBerg 128 #287808 Posted August 17, 2015 (edited) Но ведь хуки не являются подменой... Я не знаю точных определений, потому и в кавычках. Новичок же) Но все-равно, не красиво. Edited August 17, 2015 by IzeBerg Quote Share this post Link to post Short link Share on other sites
BossBox 14 #287811 Posted August 17, 2015 Лучше бы они в добавок Framework замутили нормальный для использования прямо в модификации. Quote Share this post Link to post Short link Share on other sites
Monstrofil 70 #287816 Posted August 17, 2015 Лучше бы они в добавок Framework замутили нормальный для использования прямо в модификации. Документацию по своему творению, для начала. Quote Share this post Link to post Short link Share on other sites
BossBox 14 #287817 Posted August 17, 2015 Документацию по своему творению, для начала. Зачем? Нормальный FW вместо доков и все, а там чего хотят пусть делают. Quote Share this post Link to post Short link Share on other sites
POLIROID 210 #287818 Posted August 17, 2015 (edited) Запилили не для нас, но убирать не будут. Можно использовать. Про тотальный контроль он похоже прав.Нет, не прав. вопрос, почему вылет клиента если я заменяю в модлоадере то ваще моды не видитИспользуй дальше CameraNode зачем менять то что не должно менятся? А по сути, в название добавить "mod_" и внутри чтото такое: клик это не слишком большие ограничения. Главное теперь ненадо таскать CameraNode и __init__ Edited August 17, 2015 by POLIROID Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,203 #287823 Posted August 17, 2015 Документацию по своему творению, для начала. Чего распаковку карабликов по папкам не сделал? Сижу допиливаю. Quote Share this post Link to post Short link Share on other sites
KACTET 317 #287824 Posted August 17, 2015 (edited) Спустя 5 лет это что мертвому припарки. Сам то понял что написал фигню? Да я всегда же как не программист фигню пишу в понимании программиста Скажи пожалуйста ты проверял? Этот лоадер нормально работает с обфусцированным и наложенным протектором от Ориона на мод? ERROR: ImportError: No module named xfw_loader Ещё буду разбираться.. Edited August 17, 2015 by KACTET Quote Share this post Link to post Short link Share on other sites