Gta3.exe

Материал из GTAModding.ru
Перейти к: навигация, поиск

Исполняющий файл игры, содержит игровой движок - RenderWare и много различных игровых ресурсов, некоторые из них будут описаны ниже.

Содержание

Исходные коды

Кроме собственно RenderWare, GTA3.exe содержит специализированную часть кода, написанного программистами Rockstar Games специально под нужды GTA и встречающийся исключительно в играх серии GTA3 и GTA4. Условно код носит название "GTA CORE" или "GTAGAME engine".

Основные компоненты GTA CORE

  • EventList.cpp - содержит список игровых событий
  • Crime.cpp - обеспечивает работу криминальных типов
  • Ped.cpp - формирует пути пешеходов на карте из nodes
  • PedAI.cpp - задаёт пешеходам определённое поведение
  • Pedtype.cpp - обработчик PED.DAT
  • Population.cpp - обработчик PEDGRP.DAT
  • Explosion.cpp
  • ProjectileInfo.cpp
  • Weapon.cpp - отвечает за оружие в игре
  • WeaponInfo.cpp - обработчик WEAPON.DAT

GTA3Portable:

  • binarytree.cpp
  • POLRADIO.CPP
  • EmergencyPed.cpp
  • CopPed.cpp
  • combostate.cpp
  • glass.cpp
  • automobile.cpp
  • world.cpp
  • tinyxmlparser.cpp
  • fluff.cpp
  • player.cpp
  • pathrental.cpp
  • cranes.cpp
  • pedpath.cpp
  • civilianped.cpp
  • tinystr.cpp
  • localareaknowledge.cpp
  • trafficlights.cpp
  • physical.cpp
  • renderer.cpp
  • tinyxml.cpp
  • shadows.cpp
  • dummy.cpp
  • objectivefunctions.cpp
  • entity.cpp
  • streamingnew.cpp
  • vehicle.cpp
  • garage.cpp
  • fecontrollerelement.cpp
  • carctrl.cpp

GTA3Mobile:

  • cdstream-tegra.cpp
  • font.cpp
  • sprite2d.cpp
  • Touchscreen.cpp
  • samp-oal.cpp
  • MobileFrontend.cpp
  • RadarMap.cpp
  • ImplArrays.cpp
  • IOSFile.cpp
  • IOSGamepad.cpp
  • EmuCustomShader.cpp

Лимиты

Как и в любой другой игре, в GTA3 тоже существуют так называемые игровые лимиты.

Лимит - определённое ограничение, наложенное разработчиками игры на конкретные виды игровых ресурсов - модели, текстуры, автотранспорт и т.д. Выражены в числовом виде.

Отредактировать лимиты можно любым HEX-редактором, отрыв в нём gta.exe или их можно изменять непосредственно в игровой памяти посредством написания asi-плагинов или через использование CLEO-скриптов, но это намного сложнее.

Основные лимиты gta3 по способу хранения можно разделить на одно-байтовые и четырёх-байтовые. Четырёх-байтовые в свою очередь делятся на множество подвидов, с ними можно будет ознакомиться ниже.

Классификация Хероманта

Данная классификация нестандартна, является результатом любительского подхода к изучению содержимого gta3.exe. Была получена без использования различных декомпиляторов, поэтому что-то ней может не совпадать с тем, что есть на самом деле.

Первая категория "Основные Лимиты"

Делятся на два типа по их идентификаторам в exe. Первый тип - "740989C16A", всегда занимает 1 байт, второй "740C89C168" - 4 байта.

Все адреса основных лимитов и их названия представлены ниже (база частично взята из GTA3 Limit Adjuster 1.0), в скобочках указаны их стандартные значения.

  • 00460C - первый неизвестный лимит (512)
  • 0069D3 - второй неизвестный лимит (128)
  • 037945 - третий неизвестный лимит (0)
  • 0A186F (0A177F) - PtrNode (30000) - Определяет допустимые объёмы коллизий на игровой карте
  • 0A188C (0A179C) - EntryInfoNode (5400)
  • 0A18A9 (0A17B9) - Peds (140)
  • 0A18C6 (0A17D6) - Vehicle (110)
  • 0A18E0 (0A17F0) - Buildings (5500)
  • 0A18FD (0A180D) - Treadable (1214)
  • 0A191A (0A182A) - Object (450)
  • 0A1937 (0A1847) - Dummy (2802)
  • 0A1954 (0A1864) - AudioScriptObj (256)
  • 0F54E2 (0F5432) - (16)
  • OF556E (0F54BE) - (17)
  • 127698 (127458) - (850)
  • 15B6B8 (15B588) - (170)
  • 15B6DC (15B5AC) - (174)
  • 15B700 (15B5D0) - (179)

Вторая категория "Пути"

Содержит строковые значения, ссылающиеся на основные игровые ресурсы. Выложены самые интересные, являющиеся полезными для моддинга GTA3.

  • 1FD6B0 (1FD498) - fonts.txd
  • 1FDB2C (1FD914) - hud.txd
  • 1F34B0 (1F33A8) - menu.txd
  • 217C80 (217440) - txd.dir
  • 217C50 (217410) - txd.img
  • 1FFA0C (1FF7F4) - carcols.dat
  • 1F4EEC (1F4DDC) - default.dat
  • 1F57C4 (1F55AC) - gta3.dat
  • 2013D4 (2010B4) - handling.cfg
  • 1EE79C - main.scm
  • 2033FC (202CC4) - weapon.dat
  • 2035BD (202E85) - HEAD RADIO
  • 2034F5 (202DBD) - CLASSIC (DOUBLE CLEFF FM) RADIO
  • 20350E (202DD6) - KJAH RADIO
  • 203527 (202DEF) - RISE FM
  • 203540 (202E08) - LIPS 106
  • 203559 (202E21) - GAME FM
  • 203572 (202E3A) - MSX FM
  • 20358B (202E53) - FLASHBACK 95.6
  • 2035A4 (202E6C) - CHAT
  • 20F49D (20ED5D) - GTA3 USER FILES

Третья категория ""

п · о · р
GTA III Grand Theft Auto III
Форматы файлов.b.a3d.anm.col.cfg.dff.dat.gxt.ide.ifp.img/.dir.ipl.raw/.sdt.rep.sc.scm.set.txd.zon
Документацияcarcols.datCHASE.DATCULLZONE.DATcuts.imgdefault.datfistfite.datflight.datgta3.exegta3.dat
gta3.imggta3.zonhandling.cfgmain.scmmap.datmap.zonobject.datparticle.cfgped.datpedgrp.dat
pedstats.datsfx.rawsurface.datTimeCyc.DATtracks.dattrain.datwater.datwaterpro.datweapon.dat
ИнструментыCLEOClump ViewerCol-IO‎Collision File Editor IIData toolDFF Viewerdffxbox2pcG-ToolsGTA Garage Mod Manager
GXT EditorGTA3 Limit AdjusterGTA3 Mission BuilderGTA3 PatcherIMG ToolKam's Max ScriptsMap Editor
Mod GeneratorMod InstallerMoo MapperPS2 TXD ModPS2 TXD ViewerResourse HackerRotation Calculator
RW AnalyzeViceTXDWater EditorSanny BuilderTXD ToolTXD WorkshopYAIEZModeler
Туториалыраздел в разработке
Классические МодыGPS RadarBye-Bye BikiniUltimate Stunt ParkThe SphereMiss LibertyIllandoIntercity HighwayShoreside Bridge
Rockstar HeightsLighthouse BridgeBlade FunparkOrbital CityLakeside IslandLiberty PenitentiaryJEM Island
Illando HelixCliff Climbing Mountain
Глобальные МодыReal GTA3Twenty TenSnow CityFrosted WinterUltimateBeta modX-box modBad BusinessGTA3 HDUltra mod
OpenTunnelsBack to the Future
МультиплеерMulti Theft AutoLiberty Unleashed
Исходники4x48ballambulanceasukaasusbcameracar_gencatcopcardebugdemodiablofiretruckfrankgates
genstufhealthhjhoodimportintrojoeykenjiloveluigimayhemmeatpickupsrampagerayrcswitch
taxitoniusjwantedyard