Сообщество Империал: Отладочная информация RomeTW.exe - Сообщество Империал




Minotawr

Отладочная информация RomeTW.exe

Сама информация + некоторые описания для чго она нужна
Тема создана: 29 декабря 2010, 17:28 · Автор: Minotawr
Просмотров:
 28 098

  • 9 Страниц
  • « Первая
  • 3
  • 4
  • 5
  • 6
  • 7
  • Последняя »
 Minotawr
  • Imp
Imperial
 

Дата: 29 декабря 2010, 17:28

Итак, путем некоторых манипуляций с exe-шником RTW был получен дамп отладочной информации.
Для чего этот дамп нужен, и что с его помощью можно сделать?
1) Дамп содержит сведения об ошибках привязанные к отдельным файлам исходников из которых собиралась игра.
2) Для чего нужна эта информация? Тут все очень просто и интересно, например можно получить данные о многих функциях и методах из исходников, так как все обработки ошибок привязаны именно к ним родимым - к функциям и методам...

Возьмем к примеру отладочную информацию для секции TRM(%.1f):
Спойлер (раскрыть)


Тоже самое, есть например отладочная информация по файлу settlement_construction.cpp
Спойлер (раскрыть)


Конечно много мусора, и мало описаний, но по крайней мере здесь полно информации для экспериментов со скриптами и т.д.

В общем, смотрим, ищем полезное, а для мня пока можете отписаться, нужно ли вытаскивать ту-же самую информацию по БИ и АТВ...

Собственно сам файл Для просмотра ссылки Зарегистрируйтесь
     Minotawr
    • Imp
    Imperial
     

    Дата: 02 января 2011, 18:38

    LLEEVV2009 2 Янв 2011 18:05

    Во ты сказал что если у тебя не получиться то что ты сейчас делаешь, то нужно собрать группу из 3-4 (можно больше) человек. какая их будет функция, что каждый из них будет делать, хотя бы вкратце, (чтоб для кругозора, к чему стремиться).
    Нужны будут именно программисты, один для работы с графикой, второй AI и логика, 3й Интерфейсы, 4й Скриптовой движек (это при наилучшем раскладе)... На самом деле, под такой проект собрать команду даже из 3х человек - почти не реально, точнее собрать реально, но чтобы плодотворно работали - нет.

    LLEEVV2009 2 Янв 2011 18:05

    Мне интересно план, как ты это всё представляеть.
    Здесь и представлять нечего, есть конкретные шаблоны разработки, по ним и работают Imp Вначале графический движек, потом логика, потом скрипты и AI...

    LLEEVV2009 2 Янв 2011 18:05

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

    Ладно, завязываем с флудом, это к делу не относится Imp Такие вопросы в личку Imp
       unda
      • Imp
      Imperial
       

      Дата: 02 января 2011, 19:25

      Minotawr
      Да, ладно с этим. Ведь сейчас ты хочешь попробоватьвзломать экзешник Рима, а не создавать вообще новую игру. Снятие ограничений на жестко прописанные лимиты - это уже будет мега-прорыв!
         LLEEVV2012_bryt
        • Imp
        Imperial
         

        Дата: 02 января 2011, 19:32

        unda
        он сейчас пока это не предлагает, а сказал что если у него не получиться взломать ехе, то это будет запасной вариант.
        так что не волнуйся. Imp
        а это просто планы на будущее.
        Minotawr
        я тебе написал в личку
           Minotawr
          • Imp
          Imperial
           

          Дата: 02 января 2011, 23:09

          Блин, зараза этот Тотал Вар, я в экзешник полез за информацией для своего импортера/экспортера юнитов, хотел посмотреть как реализована упаковка, чтобы напрямую считывать из запакованных ресурсов нужную графику, в итоге - подсел, остановиться не могу, уже часть процедур и функций в С++ код перегнал Imp В асемблере они совсем плохо читаются...
          Ну вот например:
          С++
          Спойлер (раскрыть)

          Блин, хотел дать для сравнения асемблерный код, а он по ограничению на количество символов не проходит...
             Basileus
            • Imp
            Imperial
             

            Дата: 03 января 2011, 00:21

            Хм. Бедные индусы. Их хоть кормили, когда они ЭТО писали?)

            Успехов, ребят. Очень нужное дело.
               LLEEVV2012_bryt
              • Imp
              Imperial
               

              Дата: 03 января 2011, 00:31

              Minotawr
              а ты вылажи этот текст в файле .тхт
              через него ж точно все символы высвятятся Imp
                 Minotawr
                • Imp
                Imperial
                 

                Дата: 03 января 2011, 00:35

                Basileus 3 Янв 2011 00:21

                Хм. Бедные индусы. Их хоть кормили, когда они ЭТО писали?)
                Это примерно 1/1000-ная от всего декомпилированного кода Imp Думаю когда они писали, то писали в более удобоворимом виде, это же реконструкция из бинарника, поэтому так сжато и вместо именованых значений - просто набор символов...

                Basileus 3 Янв 2011 00:21

                Успехов, ребят. Очень нужное дело.
                Спасибо, но только еще раз повторюсь, не обольщайтесь сильно, шанс на успех приблизительно около 10%, уж слишком сильно все проверки по коду растасканы, иногда даже удивляюсь находя их в таких местах, где 100 лет быть не должны...
                   Minotawr
                  • Imp
                  Imperial
                   

                  Дата: 03 января 2011, 13:54

                  Итак, господа, спешу сообщить пренеприятнейшие известия, темы по расширению движка РТВ (БИ, АТВ) можно прикрывать, не чего не выйдет, просидел около суток за IDA и нашел очень неприятную бяку, которую невозможно исправить не имея исходников всей игры...
                  Но давайте по порядку:
                  1) Количество фракций в БИ как таковое - не ограничено, как ни странно, но это факт. Ограниченно количество выделенной памяти под дополнительные элементы фракций, причем не конкретной физической памяти, а ячеек для индексаторов... В принципе это лечится добавлением дополнительных ячеек... Но на практике, конкретно с РТВ - не лечится, так как адресация очень плотная, и для того, чтобы добавить хоть один элемент, нужно делать смещение всех элементов в памяти, а тут выплывает следующая проблема - обращение ко всем элементам памяти идет по конкретному адресу...
                  В общем и целом, даже такой сдвиг с переадресацией организовать можно, но, опять выползает еще одна проблема, количество всех наборов данных не просто огромное, а несусветное...
                  2) Ладно, это можно преодолеть и обойти... Что сегодня ночью и сделал, обощел выделением дополнительного стека, закинул туда все смещение и начал отлавливать адреса и вносить их в адресное пространство. Сделал... И даже запустил БИ с модом камрада unda(правда пришлось вычистить иконки и юнитов, их я еще не редактировал)... Счастью не было предела, осталось подправить адресацию, скинуть туда ресурсы фракций и вуаля, вопрос считай решен... В 5 утра принялся за работу с новыми силами, сделал все как по учебнику, вернул в мод ресурсы и... Обламался по полной, кончилась выделенная приложению память... Ну вроде как и не такое видали, добавляю стек, прописываю смещение... Опля, переполнение стека...
                  В общем про 4 часа борьбы с выделением памяти можно писать долго, но вот победить я ее не смог...
                  В чем проблема - уже даже не знаю... Утечки памяти быть не может, по крайней мере я не нашел где таковая может быть, но выделенная приложению дополнительная память в размере равном уже выделенной до этого по умолчанию, съедается влет...
                  Что предпринимать дальше, я даже не знаю... Кончились даже идеи...
                  В общем, пока вердикт не хороший... Что дальше будет - посмотрим, буду общаться с гуру ASM... Может они что подскажут, ну а если нет, то на затее со взломом и правкой exe - можно ставить жирную точку...
                     Савромат
                    • Imp
                    Imperial
                     

                    Дата: 03 января 2011, 14:01

                    Minotawr 3 Янв 2011 13:54

                    на затее со взломом и правкой exe - можно ставить жирную точку...

                    ОК, примем к сведению.
                       Minotawr
                      • Imp
                      Imperial
                       

                      Дата: 03 января 2011, 14:27

                      Chernish 3 Янв 2011 14:01

                      ОК, примем к сведению.
                      Погодим еще немного Imp Тут мне подсказали, где я неправильно пошел (сказывается отсутствие опыта взломов), просто такую ошибку может выдавать при ошибке контрольной суммы, а я ее не поменял после добавления целых 2х стеков Imp
                      Как в мультике "Алеша попович и Тугарин змей: "Не упал..."
                        • 9 Страниц
                        • « Первая
                        • 3
                        • 4
                        • 5
                        • 6
                        • 7
                        • Последняя »
                         
                        Перевести Страницу
                        Сообщество ИмпериалRome: Total War Моды Rome: Total War Мастерская RTW Обратная Связь
                        Стиль:Language: 
                        Условия · Ответственность · Конфид. · Визитка · 03 июл 2026, 07:17 · Зеркала: ImtwOrg, ImtwSite, ImtwOnline