Star on GitHubStar1.1k stars

Case study

GTA Mode: reverse-engineering SimCity 3000 Unlimited for a native plugin

GTA Mode is a native plugin that adds direct control of spawned citizens and cars to SimCity 3000 Unlimited. It uses findings from Ghidra analysis of the game's binaries, GZCOM plugin loading, in-memory city structures and sprite archives. The C plugin runs in the original game, reads city data from its memory and decodes art from the user's installation; MODLOG.md records addresses, formats and dead ends.

Targets
Binary · Game
Category
Game analysis tools
Relationship
Learning resource
Sources reviewed

Requirements & limits

  • Prerequisites: A user's copy of SimCity 3000 Unlimited is required; the supported game DLLs are the Steam release's April 2000 builds.
  • Prerequisites: Building requires a 32-bit mingw-w64 compiler; the HUD uses cnc-ddraw's OpenGL renderer.
  • Limits: The game's own traffic cannot yet be stolen and its own pedestrians cannot yet be punched; water does not block movement.
  • License: MIT License.

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · DenisSergeevitch/simcity3000-gta-mode · Revision bb7fcb2
  2. MODLOG.md GitHub · DenisSergeevitch/simcity3000-gta-mode · Revision bb7fcb2

More in Games

All 318 entries in GamesGames case studies (239)

↑↓ move↵ open⌘↵ new tab