Aoe2scenarioparser

Latest version: v0.2.15

Safety actively analyzes 703159 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 12 of 18

0.1.22

Added

- The **XS Manager**.
- Can be used to add XS to a script call effect. This way XS can be transfered between lobbies.
- Check out the XS cheatsheet [here](https://ksneijders.github.io/AoE2ScenarioParser/cheatsheets/xs/)!
- A **Hello World** example for the parser. You can find it [here](https://ksneijders.github.io/AoE2ScenarioParser/hello_world/).
- `__str__` functions to `TriggerManaer`, `Trigger`, `Effect` and `Condition`
- You can now do: `print(trigger_manager)` instead of `print(trigger_manager.get_content_as_string())`
- Value representations in `get_content_as_string()`. Shows dataset numerical values as dataset names.
- `object_list_unit_id: 4` now shows as: `object_list_unit_id: Archer (4)`
- `technology: 12` now shows as: `technology: Crop Rotation (12)`
- `operation: 3` now shows as: `operation: Subtract (3)`
- Swapping coords when adding effects/conditions with `x1`>`x2` or `y1`>`y2` + warning about it.
- 5 New functions to `TechInfo` (all with filter params). -- [31] (Alian713)
- `blacksmith_techs()`
- `university_techs()`
- `monastery_techs()`
- `town_center_techs()`
- `eco_techs()`
- `Age` dataset to `trigger_lists`. -- [31] (Alian713)
- `MAIN_CHARSET` and `FALLBACK_CHARSET` to the settings.
- Can be used to read scenario text in other charsets than the default `utf-8` and `latin-1` fallback.

[31]: https://github.com/KSneijders/AoE2ScenarioParser/pull/31

Fixed

- Typo - `SmartPorjectile` to `SmartProjectile`
- Missing several parameters for specific effects and conditions in `new_effect` and `new_condition`
- Missing several attributes for specific effects and conditions when using `get_content_as_string()`
- `effect.player_color` resulting in the wrong color when assigned using `PlayerId` or `PlayerColorId`
- Functions in `unit_manager` requiring `PlayerId`. Just an `int` is also possible now.
- Issue with resizing the map.
- Issue with importing triggers that had activation effects referencing triggers that were not imported.

Moved

- The `script_name` (for XS scripts) attribute from the `MapManager` to the `XsManager`

Removed

- The `BiDict` dependency from the entire project

---

0.1.21

Special thanks to **Alian** for his contribution to the datasets! <3

Added

- Units, Buildings and Techs to the datasets. -- [30] (Alian713)
- Three new functions (**Which all keep `(de)activate trigger` effects synced!**)
- `move_triggers(trigger_ids, insert_index)` function to the `Trigger Manager`.
- `reorder_triggers(new_id_order)` function to the `Trigger Manager`.
- `import_triggers(triggers, index)` function to the `Trigger Manager`.

Updated

- Tech & Unit datasets -- [30] (Alian713)
- Docstrings for all Attribute resources. -- [30] (Alian713)

Fixed

- Desync issues with `(de)activate trigger` effects when using any of the following functions:
- `group_triggers_by` parameter in `copy_trigger_tree_per_player`,
- `append_after_source` parameter in `copy_trigger`,
- `remove_trigger` function.

[30]: https://github.com/KSneijders/AoE2ScenarioParser/pull/30

---

0.1.20

Fixed

- `GroupBy` mechanics when using `copy_trigger_tree_per_player` function.

---

0.1.19

Added

- The `append_after_source` parameter to the `copy_trigger` function.
- The `add_suffix` parameter to the `copy_trigger` function. Decides if `" (copy)"` is added to the name.
- QOL feature for the creation of `Effects` and `Conditions`.
- When not using `area_x2` and `area_y2`, they are set to the values of `area_x1` and `area_y1` respectively.
This makes selecting a single tile a little easier.
- A list functions to the `TerrainId` dataset.
- `water_terrains()` for all water terrains.
- `beach_terrains()` for all beach terrains.
- `tree_terrains()` for all tree terrains.
- A list function to the `OtherInfo` dataset.
- `OtherInfo.trees()` for all tree objects.

Updated

- Projectiles dataset with `houfnice` and `hussite wagon` projectiles.

Fixed

- Multiple new issues with the famous `\x00` (end of line) character.
- The `copy_trigger_per_player` and `copy_trigger_tree_per_player` functions.
- Units and Techs in `UnitInfo` and `TechInfo` dataset.

Removed

- Type checks from `UnitInfo` and `TechInfo` filter functions.
- The parameter `item_id` from the `new_effect` functions as it's unused in the editor.

---

0.1.18

**Support for the new 51737 update!**
Special thanks to **Alian** for his contribution with the datasets! <3

Added

- Support for the new `1.43` scenario file version.
- New Units, Buildings, Heroes etc. from the `51737` patch! -- [28] (Alian713)
- Added `append_after_source` parameter to `copy_trigger` function.

[28]: https://github.com/KSneijders/AoE2ScenarioParser/pull/28

---

0.1.17

Added

- `filter_units_by_const()` function to the unit_manager. ([check the docs for examples](https://aoe2scenarioparser.readthedocs.io/en/master/cheatsheets/units.html#select-existing-units))
- `PlayerId.all()` function. ([check these docs for examples](https://aoe2scenarioparser.readthedocs.io/en/master/cheatsheets/datasets.html#players))

Updated

- All `TriggerManager` functions now accept an `int` as well as `TriggerSelect`.
- `get_trigger(TS.index(i))` is now equal to: `get_trigger(i)`.
- Docs with a link to the newly created Discord server!

Fixed

- Fixed issue with `remove_effect` and `remove_condition` in display order arrays.
- Fixed issue with specific `modify_attribute` effect combination.

---

Page 12 of 18

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.