reverseenengineering

Это старая версия документа!


Reverse Engineering

Обратная разработка (англ. reverse engineering), также обратное проектирование, обратный инжиниринг или реверс-инжиниринг — исследование некоторого готового устройства или программы, а также документации на него с целью понять принцип его работы; например, чтобы обнаружить недокументированные возможности (в том числе программные закладки), сделать изменение или воспроизвести устройство, программу или иной объект с аналогичными функциями, но без прямого копирования.

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

От автора

Данный раздел или цикл статьей, попытка скомпилировать в некую ясную структуру знания, которые мне удалось собрать за период с 2017 года по 2025 год. В мае 2017 года меня увлекла идея расширения площади карты в серии стратегий «CitiesXXL». К концу 2017 года я пришёл к выводу что для достижения данной цели необходимо разработать полноценный «мод-конверсию». В последующем я понял что «копать» необходимо в сторону разбора и модификации исполняемого файла «.exe», что привело меня к дизассемблированию и в последующем к изучению дисциплины «Reverse Engineering».

В процессе изучения данной тематики ИТ-сферы я раз за разом сталкивался с необходимостью формулировки некого «толкового словаря», которые бы включал самые важные и значимые вехи данной дисциплины. Раз за разом собирая и структурируя материал я по множеству раз переписывал тетради с записями в итоге я понял, что это слишком большая трата времени и мне необходимо сформировать условное «пространство имён» для дальнейшей разработки. Данный раздел не попытка кликбейта или получения популярности на ниве «Reverse Engineering», а лишь попытка систематизации и каталогизации данных полученных в ходе изучения. Ниже будет приведён полный список источников используемых при разработке и подготовке материалов. Я старался и надеюсь что данный структурированный материал будет полезен не только мне.

Третья самая важная причина для меня как для программиста стала необходимость формировать массив данных на стыке нескольких больших и не очень сфер, а именно:

  • «Reverse Engineering» в рамках разбора механизма формирования размеров игровой карты.
  • Китбашинг моделей зданий из других источников для их дальнейшего использования в рамках разработки мода.
  • Использование LUA-интерфейса игры для реализации пакета карт и мода.
  • Разработка 3D-моделей для дальнейшего развития модификации(города), глупо было бы создать большую карту и не строить на ней город.

В данный момент я продолжаю работать над модом.

Источники информации при подготовке материала:

  • reverseenengineering.1750697581.txt.gz
  • Последнее изменение: 2025/06/23 23:53
  • Lex