Help:Game Files

From Heroes of Might and Magic: Olden Era Official Wiki


Cargo and Structured Data
Documentation Data Overview • Introduction to Cargo • Game Files • Obelisk Bot

Building Cargo Templates • Building Rich Tables • Debugging Cargo • Searching Cargo Tables • Using Translations

Useful Recipes • Useful Templates

Architecture Reference Data Architecture • Data:Coverage • Cargo Definition Pages • Game Data Pages

All Cargo Tables • Artifacts • Buildings • Heroes • Factions • Laws • MapObjects • Skills • Spells • Translations • Units

External Links Official Cargo Extension Documentation • SQL References




Heroes of Might and Magic: Olden Era is developed in Unity3D. The demo left its files unlocked, but with the Early Access release the code was delivered using encrypted IL2CPP, meaning that much of its internals are now obfuscated and difficult to extract.

However there are two major exceptions: visuals (icons, models, textures) and Json data files, which have graciously been left available for us to examine.


Core.zip

Most of the time when referring to the "game files" here on the wiki, we are talking about Core.zip and its treasure trove of Json data. This file is located in your Steam installation folder, usually something like C:\Program Files (x86)\Steam\steamapps\common\Heroes of Might and Magic Olden Era\HeroesOldenEra_Data\StreamingAssets\Core.zip

Extract this zip folder to any convenient location and it will contain four directories:

  • campaigns
  • DB
  • generator
  • Lang

campaigns is single-player data (including tutorials), generator has to do with the random map generator, and Lang contains all of the l10n ("Localization") translations for every user-facing string in the game.

DB is where the magic happens. Across 50 subfolders, nearly 7,000 files, and 16 MB of uncompressed text, here is where we have real insight into the beating heart of the game. These are the files primarily farmed by Obelisk Bot for populating Cargo here on the wiki.

There is plenty of untapped information in these files which are ripe for individual research, even if they would not be appropriate for hosting on the wiki. For example, the file reward_golden_egg.json contains the roll table for the Golden Goose Egg artifact. That information was farmed out by hand and added to the article for that artifact, but storing it in a Cargo table would be a waste of time.

For additional information regarding parsing and traversing the game files, reference the source code for Obelisk Bot and Olden Era Explorer (which as a utility is very useful for browsing the available visual files).