Skip to content

KSneijders/AoE2ScenarioParser

Repository files navigation

AoE2ScenarioParser

AoE2ScenarioParser is a Python library that allows you to edit aoe2scenario files from every version of Age of Empires 2 Definitive Edition.

Getting Started

Documentation

Documentation for installation, usage, examples, cheatsheets and API docs can be found on GitHub Pages.

Quick links

  • Installing → A quick guide on how to install AoE2ScenarioParser
  • Hello World Example → Step-by-step guide to get you going
  • Discord Server → For questions about AoE2ScenarioParser, Python or scenarios in general.
  • API Docs → Technical documentation for all exposed functions & classes

Discord

If you have any questions regarding AoE2ScenarioParser? Join the discord!

Support

Every Single Scenario Version from Age of Empires 2 Definitive Edition is SUPPORTED!

Support: 1.36 Version at Release (November 14th, 2019)1.54 Current Version (Since: October 14, 2024)

Every single version of Age of Empires 2 Definitive Edition is supported! If a new version of Age of Empires 2 Definitive Edition just released it can take a bit for it to be able to be read. Check the Discord Server for more up-to-date information if this is the case.

If you find a scenario which can be opened by the game itself, but results in an error when using AoE2ScenarioParser, please report it as an issue or in the #bug‑reports channel in the Discord Server.

⚠️ To view the full-blown support table previously shown in this README, visit: support.

Progress

Every related change to the library is documented and can be found in the CHANGELOG.

Features:

AoE2ScenarioParser allows you to edit anything inside a scenario. For general usability "managers" have been created to make working with the files easier. These managers allow you to quickly change aspects of units, triggers, the map, player data and more!

Below is a simplified overview of some of the features:

Inspect Add Edit Remove
Triggers ✔️ ✔️ ✔️ ✔️
Conditions ✔️ ✔️ ✔️ ✔️
Effects ✔️ ✔️ ✔️ ✔️
Units ✔️ ✔️ ✔️ ✔️
Map n/a *1 ✔️ ✔️ ✔️
Players n/a *1 ✔️* ✔️ ✔️*
Messages n/a ✔️ ✔️ ✔️

*: You can disable or enable players like in the in-game editor (min 1, max 8).
*1: There's no specific inspection function. Though, they can still be printed with clean formatting.

Authors

License

MIT License: Please see the LICENSE file.