Jump to content
Korean Random

GPCracker

User
  • Posts

    2,827
  • Joined

  • Last visited

  • Days Won

    62

Everything posted by GPCracker

  1. Зачем такое извращение с распаковкой? exec ''' # ************************* # Loading original module # ************************* import os, sys, zipimport g_original_loader = zipimport.zipimporter( os.path.normpath(os.path.join( 'res/packages/scripts.pkg', __file__, os.path.relpath('.', __name__.replace('.', '/')) )).replace(os.sep, '/') ).find_module(__name__, __package__) if g_original_loader is None: raise IOError('Original module could not be found. Module loading impossible.') exec g_original_loader.get_code(__name__) in target_globals, target_locals ''' in dict(globals(), target_globals=globals(), target_locals=locals()) По идее универсальный код файлового хука. Загружает оригинал из архива в реалтайме встроенными средствами питона. Exec нужен, чтобы загрузчик не оставлял "хвостов" в пространстве имен модуля.
  2. А мне белый по глазам как-то слишком сильно бьет, особенно в вечернее время... Если тебе нужна просто белая тема - там таких наверняка вагон. Ставишь PackageControl, через него все находишь. Там ЕМНИП есть даже какая-то превьюшка для тем, динамически подменяет в реалтайме при скроллинге по списку.
  3. Хо-хо. Ну ты загнул конечно. Сделать-то можно, но для этого придется написать несколько не особо простых классов с обработкой внешних событий и переопределением параметров моделей... если это возможно делать в реалтайме вообще. Не говоря уже о том, что шкурки - это шкурки, нарисованы на текстурах танка, а камуфляж - это паттерн, который рисуется поверх шкурки. Максимум - это сделать отключение камуфляжа в снайперском. Насколько это затратно по ФПС - тоже тот еще вопрос.
  4. Можно поискать, я тоже копался поначалу... как по мне, да, есть некоторый дискомфорт при переходе, однако даже оригинальная тема ST куда приятнее. Лично я особо не заморачиваюсь, мне и на стоковой норм.
  5. Удалось выбить немного времени под моды. В связи с упаковкой скриптов картохи в архив, старые файловые хуки не работают, так как не могут прочитать оригинальные файлы. Все остальное в полном порядке. Для восстановления работоспособности необходимо добавить код чтения файлов из архива... или распаковать скрипты. Исправления в принципе уже есть, залью в репо после тестирования. "Как вариант временного фикса, (для тех, кто в теме)"
  6. М.б. вообще использовать что-то типа PyQT написать весь проект на питоне? Или прикрутить то, что есть прикольного в Орионе к какому-нить крупному проекту плагином?
  7. Написано по ссылке в цитате. Неужто народ читать разучился... или изначально не умел? Код довольно прост... и в тоже время достаточно красив. Код переводит маркеры в отладочный режим, где серверный и клиентский маркеры отображаются отдельно, в отличие от клиентского, где маркер один, и он либо серверный, либо клиентский. З.Ы. Последняя строка кода и соответствующие импорты походу лишние, и без них по идее должно работать.
  8. В процессе. К сожалению, большая загруженность IRL за последнее время и постоянный "движняк", который методично "дергает", не дает нормально заняться интеграцией "исправлений совместимости", если так выразиться. В общем и целом, сравнительный анализ клиента до патча и после я уже провел, и изменений довольно много, по крайней мере по части питона. Некоторые компоненты требуют существенной переработки. Еще есть пара серьезных проблем, всплывших в этом патче, которые нужно решить аккуратно и красиво, "не поднимая пыли" и не создавая "заборов из костылей" так сказать. Если серьезно - вчера при анализе диффов клиента написал список изменений, которые надо "проверить на соответствие" в либе и модах на тетрадный лист с 2 сторон. Ибо крайне не хотелось бы получить потом какой-нить неприятный "подснежник". Что действительно радует - ключевые компоненты, используемые AAS и новой версией MGM, не затронуты, поэтому особых напрягов быть не должно.
  9. Я б сказал, 3,14**** как "наморочено". Они полностью заменили модуль. Не сказать что стало сильно сложнее, скорее даже прибрались, но для того, чтобы разобраться, что теперь и куда, нужно время.
  10. Парни, я тут тоже посмотрел, что там картоха запилила с маркерами орудия... Точнее правильно сказать "перепилила". Вообще. Все. @Ekspoint, отрисовка добавляется на уровне перегрузки конфиг-констант? Попробуй перегрузить их, файл gun_marker_ctrl.py. Картоха вроде как систематизирует код, и пытается выпилить костыли, так чтобы все ссылались в одну точку, а не пересчитывали сами... По идее должно срабоать.
  11. К сожалению, очень много кода является межмодовым, т.е. необходимым и применимым к нескольким модам. Его дублирование в каждом - это затраты ресурсов на синхронизацию, да и история изменений его будет выглядеть весьма странно. Поэтому грамотными разработчиками такой общий код выносится в межмодовую библиотеку. У Юры это Ядро, у меня XModLib... да еще полюбому примеров найдется, если поискать. Основная проблема такого решения - контроль версий и совместимости.
  12. Для этого и нужен индекс. Кликнул, перелетел на интересующий тебя файл. Само собой, diff на 50000 строк всего в кучу нечитабелен, а вот набор пофайловых diff`ов и кликабельный индекс - это дело.
  13. @StranikS_Scan, за разобранный клиент очередное спасибо. Не хватает только diff соседними версиями c кликабельным индексом, ибо многих интересуют еще и отдельно изменения, которые там картоха намутила, а не только сами файлы. Так обычно смотрю коммиты в репо у XVM, но они там довольно "не сразу" обновляют.
  14. Upd. Да, был подводный камень во флешке. Увеличение 0.75, точнее уменьшение :) Искажение цвета чисто визуальное, когда восстановил scale все стало нормально. Прописал фикс в репо. На старых реплеях 9.16 все работает вполне себе нормально. Теперь похоже пора поставить обнову на закачку и почитать диффы, а также затарить декомпилированный клиент :)
  15. 1. Узнать можно. Причем точные и полные данные о координатах, развороте башни и пушки, правда только в том случае, если твой танк находится в квадрате отрисовки (в случае с артой центр ее зоны отрисовки в арт режиме находится в центре прицела, поэтому при наведении через всю карту свой танк получается вне зоны отрисовки). То же самое правило действует для всех остальных танков. По тем, кто светится, но вне "квадрата" (сейчас это уже круг) - через костыли передаются только двухмерные координаты для отрисовки на миникарте. По тем, кто вообще не светится - данных на клиенте нет вообще. 2. Их можно получить на питоне, причем в пару строк кода. Но проблема в том, чтобы их вывести. Для этого придется написать еще пару десятков (а то и больше). Вывод в лог по хоткею проще, но в лог не так удобно, как на экран... хотя смотря для чего тебе надо. 3. Писать код за тебя вряд ли кто будет за так, если у тебя есть чем поддержать интерес - го в раздел заказов. Ну или сам разбирайся в модах и пиши... Задача по сути для начинающего в самый раз.
  16. В ТТХ экспоненциальное время, за него круг разброса уменьшается в EXP раз. Полное время сведения зависит от текущего множителя разброса. Читай теорию.
  17. посмотри как работают команды git rebase git reset git stash git format-patch git applyВ частности, интерактивный вариант rebase позволяет вручную пикать коммиты. Работа автоматического (стандартного) варианта разжевана в интернете уже дальше некуда. Ребейз самый правильный вариант переноса между ветками. После мержа, для того, что мержить (сейчас) не вариант. На крайняк можно генерить патчи и потом их чекать и применять. Почитай format-patch, apply. Вообще, если делать более-менее по науке, то делаешь рибейз, двигаешь коммиты с нужными правками в самое начало ответвления от ветки, куда ты хочешь их замержить, далее либо ставишь указатель новой ветки поверх них и делаешь честный мерж, либо рибейзишь ветку поверх той, куда будешь мержить, ставишь поверх нужных коммитов опять же указатель и делаешь fast-forward merge. Само собой, ребейзить можно только приватные ветки (у себя дома), для публичного репо придется делать форс-пуш, а это баттхерт для тех, кто уже вытянул данную ветку с переписанными коммитами. И самый главный косяк. Держать несколько проектов в одном репо - зло. Хрен разберешь без поллитра, какие коммиты к чему относятся.
  18. Собери свой билд. Там в одном из файлов в самом начале прописано имя мода. Меняешь и будет тебе счастье. Еще в билд-скрипте макрос application надо сменить, чтобы создавался файл с другим именем. Кастомный билд убивает твое решение еще до того, как оно появится на свет. Как минимум потому, что в кастомном билде таймстамп будет другим, а значит и контрольная сумма будет отличаться. Дописать в файл немного мусора в конец как нефиг делать, мешать он не будет, а контрольную сумму изменит. КТТС. Четыре дня был в поезде, там вообще ни компа, ни инета нет :( Если в ближайшем будущем появится время - запилю патч. Пока тут навалили неслабую кучу дел IRL, так что...
  19. Была инструкция по зависимостям. Но там нужно патчить, картоха перенесла часть классов, а я буду в офлайне с завтра дня 4 минимум. Но если сам исправить сможешь - я не против :) КТТС.
  20. Список модов - это провал изначально. Моды улучшаются и обновляются. Сегодня там все было чисто, завтра добавили чего-то и наоборот. Нужны именно четкие описания того, что они запретить пытаются, типа так можно, а так нет, иначе все это пустой звук и бессмысленные "новости". Я б даже сказал, ее вообще нет. Они сами походу между собой решить толком не могут.
  21. Самое что интересное, на азиатском это было официально разрешено до начала всего этого концерта. Учитывая как любят читерить азиаты... Ну вы поняли. В новых версиях на тесте он уже в плагинах. Можно открыть скрипт архиватором и удалить. Я даже выкладывал версию без него (одиночный файл-патч), но там была другая причина - баги. Скорее всего после выхода в релиз (а новая версия пока на тесте еще) часть плагинов скорее всего будет отдельно. Посмотрим, что и как будет по времени, к сожалению у меня не так много времени на моды. В последнее время удалось немного вырваться - запилил маркеры. Их уже довольно давно ждут. Надеюсь по части трудоемкости ответил. Некритичные модули "опасного содержания" постараюсь вынести в плагины, если будет время. Тем не менее, желающим никто не запрещает собирать из исходников самостоятельно. Значит их античит дает ошибки. Однако. Полагаю, "определенным группам" будет интересна конкретика :) Ахаха, @Evgen1388, ты сделал мой вечер :) Вот о том я и говорю. Напишут четкий и понятный список без расплывчатых формулировок, со скринами, что можно, а что нет (речь идет не о списке конкретных модов, а о скринах того, что запрещено, а что разрешено - типа <танчик с плоской шкуркой пробития> - ок, <полупрозрачный танчик> - ждите бана, и в таком же духе), тогда и будем думать о каких-то серьезных перестановках в коде. Ибо у меня ресурсы временные довольно сильно ограничены. Тем более, что если они сейчас запилили общую политику на всех кластерах. С их штатом запилить это - как два пальца обо***ть, извините за выражение. За одно и сами обдумают то, что написали в своей новости, насколько это понятно и однозначно для широкой массы и их ЦА. А в текущем виде список - это просто сотрясание картохой воздуха. Как видите картоха дает явный прецедент - неоднозначное отношение к одному и тому же. Выводы делайте сами.
  22. Немного по***ться больше чем обычно, чтобы не проходить эту процедуру регулярно, когда кто-то что-то находит, имхо того стоит. По сути сделать систему правок от имени пользователей с твоим аппрув-мержем будет идеальным решением. Народ пишет пулл реквест, ты проверяешь и делаешь мерж в мастер. Все просто, Ватсон. Как вариант вообще дать юзерам отдельный файл с подтяжкой в конфиге, но уже без аппрува, кому не в кайф - отключает его. Ты соответственно тогда уже переносишь в нормальный все что ок. Так изменения будут проходить быстреем (и без твоей помощи в некоторой степени), но есть шанс появления "вандализма". Короче, вариантов дох... кхм. много.
  23. Как говорится, я создал... но заходить пока рановато. С атласами разобрался, но нужно еще залатать один не очень прикольный визуальный баг. "Тут его довольно хорошо видно" Маркеры-уголки у камеры игрока и у противников с одной картинки, но цвет и размер отличается. Походу картошка что-то зарыла во флешке, чего я сразу не заметил. Будем копать флешку более детально.
  24. Вот почему я и говорю, что первый пост надо написать грамотно. Между делом однако оперативный репост. Вчера еще в теме на раковом было пусто :)
  25. Давно уже :) То что у них новый список чукчи писали, это видно даже любому рандомному алехану. Ибо буквы есть, а конкретики нет. Впрочем, как и старый тоже.
×
×
  • Create New...