Сообщество Империал: Открытие новых горизонтов в моддинге M2TW - Сообщество Империал

KAST

Открытие новых горизонтов в моддинге M2TW

Легальное изменение возможностей движка M2TW
Тема создана: 19 мая 2014, 01:09 · Автор: KAST
  • 14 Страниц
  • 1
  • 2
  • 3
  • 4
  • 5
  • Последняя »
 3 
 KAST
  • Imperial
Imperial
Варгеймщик

Дата: 19 мая 2014, 01:09

Вчера на TWC произошло... незаурядное событие. Один мододел из Италии (никнейм Zarathos) сообщил следующе. Думаю нашим мододелам будет интересно почитать. Как обычно просто даю перевод. Заранее немного извиняюсь я не очень силён в технологической части, но поверьте, вас это обрадует :D .

Imp


"Привет. Недавно я начал анализировать экзешник M2TW: Kingdoms для того, чтобы лучше понять как работает сам игровой движок, как он анализирует и как использует базу данных (как неизвестные значения и параметры влияют на игру, как временные данные сохраняются в памяти) и как всё этого приводит к разнообразным ошибкам, проблемам и неправильному поведению ИИ. Это огромная задача, которая мало по малу может привести к значительным результатам, и обогатит знания всего сообщества модеров.

Затем, внезапно, я понял, что если я хочу продолжать работу в этом направлении (делать правки в движке игры или модифицировать его алгоритмы), то я должен найти способ сделать это без нарушения игровой лицензии… и я нашёл этот способ; редактирование памяти. Сейчас объясню: факт в том, что изменение экзешника игры строго запрещено лицензионным соглашением СА, как сказано:

Цитата


Вы соглашаетесь использовать Программу только в соответствии с условиями данного Соглашения и ОБЯЗУЕТЕСЬ:
….
е) не выполнять инженерный анализ, восстановление исходного кода, модификацию, обратную компиляцию или дизассемблирование Программы, как в целом, так и по частям, кроме случаев, описанных в пункте "к";

и) не создавать данные или программы, которые повторяют содержание или функциональность Программы, кроме случаев, описанных в пункте "к";


Те же правила применяются почти для всего программного обеспечения, касающегося закрытого кода, но очень трудно понять, о каких именно ограничениях идёт речь. Например, с моей точки зрения, заявления «не выполнять инженерный анализ» и «восстановление исходного кода» должны были зарубить весь моддинг на корню, поскольку открытие структуры бинарных файлов (mesh, текстуры и пр.) абсолютно попадают под инженерный анализ. Тоже касается заявления «не создавать данные или программы, которые повторяют содержание или функциональность Программы», поскольку отредактированные файлы могут рассматриваться, как программы, повторяющие уже существующие официальные приложения. Например, созданные на форумах различные лаунчеры, полностью являются исполняемыми программами, повторяющими оригинальные приложения от СА. Не так ли?

Мы могли бы долго начать обсуждение изменений и редактирования бинарных файлов и легитимности всего этого, а также самодельных лаунчеров, заменяющих официальные приложения и всё это не привело бы к какому-либо конкретному решению (просто остановимся на том, что взлом экзешника ведёт к нарушению лицензионного соглашения с СА).

Но вот здесь на сцену и выходит редактирование памяти: первое, что я узнал, когда начал работать с декомпиляторами, отладчиками и прочим подобным софтом, это то, что хоть экзешник нельзя изменять, но на 100% законно для пользователя редактировать свою собственную память без каких-либо последствий. Редактирование памяти – это «серая зона», в которой, в настоящее время, не существует никаких реальных правил, поскольку всё, что записывается в виртуальную память вашего компьютера, становится вашей собственностью. Это ваша память, вы её купили, и вы можете делать с ней всё, что хотите.

Когда исполняемые файлы запущены, они загружаются и отображаются в памяти вашего компьютера, и там, они могут быть отредактированы без каких-либо ограничений закона и лицензионного соглашения. Всё правильно, и единственный путь по которому можно следовать – это обход ограничений лицензионного соглашения и игровых лимитов. Но как? Используя самопальный лаунчер/патч, который создаёт полностью игровой процесс, загружаемый в виртуальную память, где можно будет изменять и модифицировать небольшие части с той целью, чтобы изменить его и далее продолжать игру. Ниже примерный вид такого лаунчера:

Imp


Приведённое приложение было создано для моего персонального пользования и нигде не распространялось. Администрация форума (TWC) написала следующее по этому поводу:

Цитата

Ваш вопрос был рассмотрен и решение следующее:

GrnEyedDvl (владелец TWC) и Jack Lusted (член СА) подтверждают, что вы можете продолжать свою работу. Так как экзешник не изменён, а изменены только значения и параметры в виртуальной памяти, то всё ОК.

Будут вопросы, пишите. Удачи


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

Вот список, чего пока я смог достичь:

- Изменение EDU лимита юнитов от 500 до 1000 (ещё предстоит сделать некоторые корректировки распределения памяти);
- Изменение лимита солдат от 4/100 до 1/150 (если у меня получится найти мультипликатор, используемый в опциях «unit_size», то мы наконец сможем получит нормальный юнит с одним солдатом);
- Расширил диапазон задействованной памяти в 64-разрядных системах, как минимум с 6 ГБ; (поддержка нескольких ядер практически невозможна)
- Оптимизация игрового движка на одноядерных ПК.

Всё, что мне нужно – это помощь и сотрудничество. Анализ исполняемых файлов очень сложен и это очень трудоёмкий процесс. Для всего прочего мне нужны знания архитектуры софта и пр. Любой, кто силён в использовании (IDA Pro, OllyDBG или подобных шестнадцатиричных редакторов) прошу помочь.

Планы на будущее:
- Завершение увеличения лимитов EDU
- Увеличение скрытых ресурсов с 64 до 128
- Фиксы вылетов на рабочий стол
- Улучшение управления картой высот
- Увеличение лимита провинций от 200 до 300 (сам размер карты возможно увеличить не удастся)
И много много прочего...

Ещё раз повторюсь. Всё, кроме игрового рендеринга и поддержки нескольких ядер возможно, нужно только желание... :008:

Ссылка на TWC: Для просмотра ссылки Зарегистрируйтесь
     epiccaesarlol
    • Imperial
    Imperial
    Диваногвардеец

    Дата: 19 мая 2014, 11:39

    Цитата

    Да куда там. Кое кто... за шесть лет только 200 юнитов налепить смог

    Я про битвы)) По 350-375 юнитов в отряде и больше 20 отрядов под контролем - о чем еще мечтать?)))

    Цитата

    А вот здесь я не понял. А что с ней не так? В опциях "ограничение камеры снимаешь и всё". Или это не то?

    Это типа камера, у которой нет вообще ограничений. Чтобы как можно ближе к юнитам двигалась, чтобы был свободный обзор мышкой (может даже типа как во втором риме). Может даже что-то похожее на камеру из cineeditora. (ощущение от игры меняется очень сильно, когда вот так близко к юнитам подлетаешь, мне очень нравится). А вот авто-респлениш - хз что это такое... Я даже такого слова в переводчике не нашел. Скорее всего, не респлениш, а реплениш - тогда все ясно, это автопополнение юнитов в отрядах (чтобы не таскать другие отряды из близлежащих городов, а на месте - кнопочку нажал и все пополнилось новобранцами). Вроде того. Говорят, что в шогуне такое впервые появилось и перекочевало во второй рим. Не очень разбираюсь в этом.

    Цитата

    Но вроде несколько человек наберётся.

    Наберется и больше, когда команды крупных модов решат помочь. Там ведь и вархаммер, и татв, и еб2, и еще много новых модов создается. С миру по нитке соберут команду и все сделают. Для них это возможность в разы улучшить любой мод. +100 провинций на карте - это уже нереально круто. Блин, если им реально все это удастся, то медивал вообще станет неподражаемым.
       KAST
      • Imperial
      Imperial
      Варгеймщик

      Дата: 19 мая 2014, 12:52

      epiccaesarlol

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

      Ах это! Так это вообще фишка варскейпа. Удобная вещь. Блин, ну неужели всё это реально сделать?

      epiccaesarlol

      Мне вот интересно, а сколько сейчас оперативки игра задействует, без правок?

      Так как игра не новая, то игровой движок использует пока 4 гига. Больше он просто "не видит".

      epiccaesarlol

      Наберется и больше, когда команды крупных модов решат помочь. Там ведь и вархаммер, и татв, и еб2, и еще много новых модов создается. С миру по нитке соберут команду и все сделают.

      В том то и дело, что тут нужны знания поболе, чем у обычных мододелов.

      Я вот что думаю. Один человек за раз взял, да сделал несколько правок. Но, что за отмазки тогда СА говорили: мол мы не можем ничем помочь, так как утеряны исходники. Исходник вот он - экзешник есть :038: .
         epiccaesarlol
        • Imperial
        Imperial
        Диваногвардеец

        Дата: 19 мая 2014, 13:02

        Цитата

        Ах это! Так это вообще фишка варскейпа. Удобная вещь. Блин, ну неужели всё это реально сделать?

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

        Цитата

        Так как игра не новая, то игровой движок использует пока 4 гига. Больше он просто "не видит".

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

        Цитата

        В том то и дело, что тут нужны знания поболе, чем у обычных мододелов.

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

        Цитата

        Но, что за отмазки тогда СА говорили: мол мы не можем ничем помочь, так как утеряны исходники. Исходник вот он - экзешник есть

        Так они же понимают, что благодаря исходникам из медивала можно такую конфетку сделать, что любой интерес к их новым творениям угаснет (по крайней мере, у фанатов серии). Но при этом им не выгодно губить моддинг. Вот и приняли нейтралитет, мол, ничего не знаем, исходники собака съела. Наверное именно так и все и есть.
           OPASEH
          • Imperial
          Imperial
          Ветеран модинга

          Дата: 19 мая 2014, 13:31

          Пока только слова. Ни одного скриншота.

          Не понял один момент, перед каждым запуском игры - эту прогу надо будет запускать, чтобы убрать лимиты?
             epiccaesarlol
            • Imperial
            Imperial
            Диваногвардеец

            Дата: 19 мая 2014, 13:37

            Цитата

            Не понял один момент, перед каждым запуском игры - эту прогу надо будет запускать, чтобы убрать лимиты?

            Там будет один лаунчер для всего - медивала и модов. Выбираешь в лаунчере экзешник или bat файл мода и игра запускается со всем тем дополнительным кодом, снимающим ограничения.
               OPASEH
              • Imperial
              Imperial
              Ветеран модинга

              Дата: 19 мая 2014, 13:42

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

              Ишю на TWC тему, но не могу найти ~+ - поделитесь ссылкой.
                 epiccaesarlol
                • Imperial
                Imperial
                Диваногвардеец

                Дата: 19 мая 2014, 14:25

                Вот Для просмотра ссылки Зарегистрируйтесь
                   KAST
                  • Imperial
                  Imperial
                  Варгеймщик

                  Дата: 19 мая 2014, 22:56

                  Щас уже доперевожу - выложу очередную вкусняшку :003: .

                  Создал новую тему, так как всё же там ломают RTW :0142:: Для просмотра ссылки Зарегистрируйтесь
                     Enclave76
                    • Imperial
                    Imperial
                    Форумчанин

                    Дата: 19 мая 2014, 23:15

                    Цитата

                    Последний месяца команда RTR работала над чем-то совсем новым, совершенно захватывающим

                    Офигенно новым - движком аккурат 10-летней давности

                    kingdoms надо, но СА не дадут, т.к. если его причесать как следует с учетом наработок последних лет, то Рым2 лососнет окончательно и никакая графика не спасет
                       epiccaesarlol
                      • Imperial
                      Imperial
                      Диваногвардеец

                      Дата: 20 мая 2014, 00:15

                      Цитата

                      kingdoms надо, но СА не дадут,

                      А их разрешение и не требуется, ведь движок затрагиваться не будет. Ох, какой-то переломный день в моддинге. Даже не представляю, насколько улучшатся текущие и готовящиеся моды. Больше всего радует возможность увеличить количество регионов на карте и юнитов на поле боя. Ну и остальное тоже очень радует, просто еще осознание крутости произошло не до конца))
                        • 14 Страниц
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • Последняя »
                         Похожие Темы
                        КТрейлеры новых сериалов и новых сезонов
                        Только трейлеры
                        Автор D Dr.Schmeisser
                        Обновление 12 апреля 2024, 02:08
                        ЛОткрытие всех фракций и 2-3-4-6-12 ходов в год
                        Открытие всех фракций и 2-3-4-6-12 ходов в год
                        Автор n nia
                        Обновление 16 февраля 2024, 10:33
                        IОТКРЫТИЕ ГОДА - Imperial Game Awards 2023
                        Голосование
                        Автор D Dr.Schmeisser
                        Обновление 31 декабря 2023, 11:55
                        Воспользуйтесь одной из соц-сетей для входа
                        РегистрацияВход на форум 
                        Сообщество ИмпериалMedieval 2: Total War Моды Medieval 2 Total War: Kingdoms Мастерская M2:TW Обратная Связь
                        Стиль:Language: 
                        «Империал» · Условия · Ответственность · Визитка · 25 апр 2024, 04:46 · Зеркала: Org, Site, Online · Счётчики