Skip to content

Releases: Drumsin/aoe4-generated-map-debugger

v0.9.0

Choose a tag to compare

@Drumsin Drumsin released this 19 May 18:34
  • Added full support for new terrain types from Age of Empires IV game update 16.1.10056.
  • Updated all Node.js dependencies and resolved multiple high-severity security vulnerabilities (npm audit fix --force).
  • Regenerated _terrain-types.scss and map-setup.lua with complete current terrain definitions and debug colours.

Compatibility

  • Fully compatible with Age of Empires IV (post-16.1 patch / latest version).
  • Requires Node.js v20 or higher (v24 recommended).

Newly added terrain types (compared to v0.8.2):

tt_beach_ocean_gateway
tt_enlightened_horizon_holy_site_top
tt_flatland_cliffsanity
tt_forest_blocking_michi
tt_forest_high_snake
tt_forest_low_snake
tt_forest_med_snake
tt_forest_stealth_michi
tt_gold_room_dungeon
tt_hills_gentle_rolling_canyon
tt_hills_gentle_rolling_craters
tt_hills_gentle_rolling_nomadic_ridges
tt_hills_high_rolling_cliffsanity
tt_hills_high_rolling_edge_nomadic_ridges
tt_hills_high_rolling_nomadic_ridges
tt_hills_low_rolling_canyon
tt_hills_low_rolling_cliffsanity
tt_hills_low_rolling_nomadic_ridges
tt_hills_med_rolling_canyon
tt_hills_med_rolling_nomadic_ridges
tt_hills_settlement_med_rolling_canyon
tt_holy_site_canyon
tt_holy_site_dungeon
tt_holy_site_hill_westlake
tt_holy_site_hill_westlake_416
tt_holy_site_nomadic_tarns
tt_holy_site_plateau_medium_canyon
tt_lake_medium_craters
tt_lake_medium_nomadic_tarns
tt_lake_shallow_nomadic_tarns
tt_lake_westlake
tt_lake_westlake_416
tt_meteor_craters
tt_mountain_tall_extra_resources_nomadic_tarns
tt_mountain_tall_nomadic_tarns
tt_mountain_tall_resources_nomadic_tarns
tt_mountains_fangs
tt_ocean_deep_fish_gateway
tt_ocean_deep_gateway
tt_ocean_shore_fish_ocean_gateway
tt_plains_01
tt_plains_02
tt_plains_03
tt_plains_04
tt_plains_block_dungeon
tt_plains_canyon
tt_plains_clearing_craters
tt_plains_cliffsanity
tt_plains_high_westlake
tt_plains_player_start_nomad_nomadic_tarns
tt_plains_resources_nomadic_tarns
tt_plateau_high_dungeon
tt_plateau_high_dungeon_640
tt_plateau_high_dungeon_896
tt_plateau_high_nomadic_ridges
tt_plateau_high_snake
tt_plateau_low_clear
tt_plateau_low_fine_grid
tt_plateau_low_snake
tt_plateau_med_dungeon
tt_plateau_med_dungeon_640
tt_plateau_med_dungeon_896
tt_plateau_med_map_border_dungeon
tt_plateau_med_snake
tt_plateau_medium_canyon
tt_plateau_soaring_nomadic_ridges
tt_player_start_classic_plains_cliffsanity
tt_player_start_classic_plains_nomadic_ridges
tt_player_start_classic_plains_nomadic_tarns
tt_player_start_classic_plateau_low
tt_player_start_classic_plateau_low_craters
tt_player_start_dungeon
tt_player_start_fangs
tt_player_start_nomad_plains_nomadic_ridges
tt_player_start_plains_ascension
tt_player_start_plains_michi
tt_player_start_plains_ocean_gateway
tt_player_start_plains_snake
tt_player_start_plateau_high_snake
tt_player_start_plateau_low_snake
tt_player_start_plateau_med_snake
tt_player_start_plateau_medium_canyon
tt_player_start_westlake
tt_poi_random_dungeon
tt_river_canyon
tt_river_fish_snake
tt_river_gentle_rolling
tt_river_low_rolling
tt_river_med_rolling
tt_river_resources_nomadic_ridges
tt_sacred_med_rolling_ascension
tt_sacred_site_high_snake
tt_sacred_site_low_snake
tt_sacred_site_med_snake
tt_sacred_site_river_snake
tt_settlement_high_snake
tt_settlement_hills_high_rolling_nomadic_ridges
tt_settlement_low_snake
tt_settlement_med_rolling_ascension
tt_settlement_med_snake
tt_settlement_naval_ocean_gateway
tt_settlement_plains_snake
tt_settlement_plateau_craters
tt_stone_room_dungeon
tt_trees_plateau_low
tt_trees_plateau_low_craters
tt_wood_room_dungeo

v0.8.2

Choose a tag to compare

@Drumsin Drumsin released this 16 Apr 16:14
  • Updated generateGrid in index.js to properly handle custom terrain types with hashes and colons, improving robustness in class assignment and tooltips.
  • Introduced new functions in map-setup.lua for managing grid dimensions, including rounding, coarse grid setup, and custom grid initialization, enhancing flexibility in grid configuration.

v0.8.1

Choose a tag to compare

@Drumsin Drumsin released this 16 Apr 03:05

If you are running this tool locally on your disk, the current install now requires that you update to the latest LTS version of Node.js (v22.14.0).

It is recommended to follow the README.md instructions and reinstall the tool once you've updated Node.js.

Custom terrain type support has been added.
See, Using Custom Terrain Types in the README.md

Also see wiki document on creating custom terrains.

v0.8.0

Choose a tag to compare

@Drumsin Drumsin released this 15 Apr 17:34

If you are running this tool locally on your disk, the current install now requires that you update to the latest LTS version of Node.js (v22.14.0).

It is recommended to follow the README.md instructions and reinstall the tool once you've updated Node.js.

  • Support for Knights of Cross and Rose terrain types.
  • Includes new POI terrains.
  • Updated Node.js packages.

Known Issues

  • Maps that make use of the ReturnProximity() from xp1_functions.lua will not generate. This is due to this function utilizing an internal C++ function called MapGen_ReturnProximity_Internal() that is inaccessible to the public. This prevents these existing skirmish maps from generating in the debugger: continental.lua, dunes.lua, glade.lua, haywire.lua, ponds.lua, shadow_lake.lua.

Newly added terrain types from Knights of Cross and Rose v13.0.4343.0. This includes the newly added POI terrains.

tt_shadow_lake_player_start
tt_shadow_lake_herdable
tt_shadow_lake_gold
tt_shadow_lake_hostile_hunt
tt_shadow_lake_water
tt_shadow_lake_aquatic
tt_shadow_lake_hunt
tt_shadow_lake_stone
tt_shadow_lake_relic
tt_relic_river_holy_site
tt_relic_river_plateau_high_bounty_small
tt_relic_river_plateau_high_bounty_large
tt_relic_river_plateau_med_settlement
tt_relic_river_plateau_high_bounty_micro
tt_relic_river_plateau_high_bounty_medium
tt_relic_river_plateau_med_bounty_medium
tt_relic_river_plateau_med_forest_dense
tt_relic_river_trees_stealth
tt_relic_river_plateau_med_holy_site
tt_relic_river_plateau_high_forest_dense
tt_relic_river_plateau_high_holy_site
tt_relic_river_plateau_low_forest_dense
tt_relic_river_hills_med
tt_relic_river_plateau_med_bounty_large
tt_relic_river_plateau_med_bounty_small
tt_relic_river_plateau_high
tt_relic_river_hills_low
tt_relic_river_plateau_low
tt_relic_river_plateau_med
tt_relic_river_hills_high
tt_relic_river_player_start
tt_relic_river_plateau_med_bounty_micro
tt_mountain_lakes_player_start
tt_mountain_lakes_resources_neutral
tt_mountain_lakes_stone_neutral
tt_mountain_lakes_forage_bush_neutral
tt_mountain_lakes_gold_neutral
tt_the_divide_stone
tt_the_divide_relic
tt_the_divide_gold
tt_the_divide_herdable
tt_the_divide_hostile_hunt
tt_the_divide_hunt
tt_the_divide_player_start
tt_forest_mountain_stone
tt_forest_mountain_player_start
tt_forest_mountain_gold
tt_forest_mountain_forest_elevation
tt_forest_mountain_peak
tt_forest_mountain_herdable
tt_forest_mountain_hunt
tt_forest_mountain_hostile_hunt
tt_poi_ruins_high_hills
tt_sacred_mountains_gold_plateau_med
tt_enlightened_horizon_holy_site
tt_stone_small_hills
tt_poi_ronin
tt_stone_large
tt_poi_merchant
tt_gold_tiny
tt_sacred_mountains_stone_plateau_med
tt_poi_random
tt_socotra_boar
tt_poi_ruins
tt_poi_abandoned_outpost
tt_poi_wolf_den
tt_socotra_gold_small
tt_flankwoods_gold
tt_lake_side_stone_large
tt_lake_side_holy_site
tt_gold_small_hills
tt_holy_site_precise
tt_poi_ronin_hills_high
tt_sacred_mountains_stealth_circular_large
tt_socotra_stealth_natural_small
tt_forest_natural_grove_large
tt_sacred_mountains_forest_small_hills
tt_eo_forest_circular_medium_clearing
tt_lake_side_settlement
tt_gorge_forest_tc
tt_hedgemaze_forest
tt_waterlanes_forest_edge
tt_arid_plains_food_valley
tt_lake_side_shore
tt_lake_side_base_shore
tt_lake_side_shallow_fish_single
tt_underhill_mountains
tt_lake_side_impasse_mountains
tt_enlightened_ofek_spire
tt_player_start_enlightened_horizon_ffa
tt_player_start_enlightened_horizon
tt_underhill_player_start
tt_socotra_player_start_ffa
tt_player_start_hedgemaze
tt_player_start_hedgemaze_lanes
tt_sacred_mountains_player_start_ffa
tt_player_start_safe_primary_resources_only
tt_player_start_lake_side
tt_sacred_mountains_player_start
tt_player_start_classic_hills_high_rolling_no_tertiary_wood
tt_socotra_player_start

v0.7.0

Choose a tag to compare

@Drumsin Drumsin released this 06 Dec 01:58
8104060

If you are running this tool locally on your disk, it is recommended to follow the newly updated README.md instructions and reinstall the tool.

  • Support for XP3 library functions and terrain types.
  • Updated Node.js packages.

Newly added terrain types from XP3 v9.1.109.

tt_african_waters_chonker_herde
tt_african_waters_gold_neutral
tt_african_waters_holy_site
tt_african_waters_player_start
tt_african_waters_resource_neutral
tt_african_waters_settlement
tt_african_waters_stone_neutral
tt_african_waters_water
tt_atacama_forage_bush_neutral
tt_atacama_gold_neutral
tt_atacama_herdable_neutral
tt_atacama_holy_site
tt_atacama_huntable_neutral
tt_atacama_oasis
tt_atacama_player_start
tt_atacama_settlement
tt_atacama_stone_neutral
tt_cliffside_holy_site_plateau_med
tt_cliffside_player_start
tt_cmp_beach
tt_cmp_hills_gentle_rolling
tt_cmp_hills_low_rolling
tt_cmp_hills_med_rolling
tt_cmp_island_plains
tt_cmp_lake_deep
tt_cmp_lake_shallow
tt_cmp_mountains
tt_cmp_mountains_impasse
tt_cmp_mountains_small
tt_cmp_ocean
tt_cmp_ocean_deep
tt_cmp_ocean_shore
tt_cmp_plains
tt_cmp_plains_cliff
tt_cmp_plateau_low
tt_cmp_plateau_med
tt_cmp_swamp
tt_confluence_holy_site
tt_continental_hills
tt_continental_holy_site
tt_continental_island_chonker
tt_continental_island_herdable
tt_continental_island_ungulate
tt_continental_player_start
tt_continental_settlement
tt_continental_water
tt_continental_water_aquatic
tt_continental_water_deep
tt_continental_water_stealth
tt_dry_river_plateau
tt_dry_river_plateau_holy_site
tt_dry_river_pond
tt_dry_river_settlement_hills
tt_forest_natural_grove
tt_four_lakes_gold
tt_four_lakes_gold_small
tt_four_lakes_stone
tt_four_lakes_stone_small
tt_glade_forage_bush_neutral
tt_glade_gold_neutral
tt_glade_herdable_neutral
tt_glade_holy_site
tt_glade_huntable_neutral
tt_glade_player_start
tt_glade_settlement
tt_glade_stone_neutral
tt_gold_large
tt_gold_small
tt_golden_pit_forage_bush
tt_golden_pit_gold
tt_golden_pit_herdable
tt_golden_pit_holy_site
tt_golden_pit_player_start
tt_golden_pit_relic
tt_golden_pit_settlement
tt_golden_pit_stone
tt_golden_pit_ungulate
tt_gorge_gold_team
tt_gorge_hills_forest_small
tt_gorge_hills_forest_tiny
tt_gorge_plateau
tt_haywire_forage_bush_neutral
tt_haywire_gold_neutral
tt_haywire_holy_site
tt_haywire_hostile_hunt_neutral
tt_haywire_huntable_neutral
tt_haywire_player_start
tt_haywire_predator
tt_haywire_relic
tt_haywire_settlement
tt_haywire_stone_neutral
tt_hidden_valley_forest_impasse
tt_hidden_valley_plains_clearing
tt_hidden_valley_plateau_gold
tt_hidden_valley_plateau_settlement
tt_hidden_valley_plateau_stone
tt_highland_holy_site
tt_highland_mountain
tt_highland_neutral_resources
tt_highland_plateau_forest
tt_highland_player_start
tt_highland_slope_forest
tt_highland_spawn_forest
tt_highland_stealth_medium_high
tt_highland_stealth_medium_low
tt_highland_stealth_small_high
tt_highland_stealth_small_low
tt_highland_water
tt_himeyama_player_start
tt_lake_medium_fish_single_precise
tt_lake_shallow_hill_single_fish
tt_mediterranean_player_start
tt_migration_chonker
tt_migration_forage_bush
tt_migration_forest_spawn
tt_migration_gold
tt_migration_herdable
tt_migration_ocean
tt_migration_player_start
tt_migration_settlement
tt_migration_spawn
tt_migration_stone
tt_migration_ungulate
tt_moats_forest_natural_tiny
tt_moats_player_start
tt_plateau_gold
tt_plateau_golden_heights
tt_plateau_stone
tt_player_start_arid_plains
tt_player_start_black_forest
tt_player_start_canal_inner_base
tt_player_start_canal_outer_base
tt_player_start_classic_hills_mountain_pass
tt_player_start_classic_plains_low_resources
tt_player_start_continental
tt_player_start_dry_arabia
tt_player_start_dry_river
tt_player_start_four_lakes
tt_player_start_gorge
tt_player_start_gorge_team
tt_player_start_hidden_valley
tt_player_start_hill_and_dale
tt_player_start_migration
tt_player_start_waterlanes
tt_pond_island_forage_bush
tt_pond_island_gold
tt_pond_island_middle
tt_pond_island_player_start
tt_pond_island_relic
tt_pond_island_stone
tt_pond_island_water
tt_river_fish
tt_rugged_forage_bush_neutral
tt_rugged_gold_neutral
tt_rugged_player_start
tt_rugged_resources_neutral
tt_rugged_stone_neutral
tt_sacred_crest_forage_bush
tt_sacred_crest_gold
tt_sacred_crest_gold_neutral
tt_sacred_crest_holy_site
tt_sacred_crest_middle_slope
tt_sacred_crest_plateau_relic
tt_sacred_crest_player_start
tt_sacred_crest_spawn_relic
tt_sacred_crest_stone
tt_sacred_crest_stone_neutral
tt_sacred_crest_water
tt_savannah_chonker
tt_savannah_forest
tt_savannah_gold
tt_savannah_herdable
tt_savannah_island
tt_savannah_player_start
tt_savannah_relic
tt_savannah_settlement
tt_savannah_stone
tt_savannah_swamp
tt_savannah_swamp_forage
tt_savannah_ungulate
tt_savannah_water
tt_settlement_plateau_precise
tt_team_islands_holy_site
tt_trees_plains_clearing_golden_heights
tt_turtle_ridge_forest_plains
tt_turtle_ridge_player_start
tt_volcanic_island_crater
tt_volcanic_island_forest_large
tt_volcanic_island_forest_medium
tt_volcanic_island_forest_small
tt_volcanic_island_forest_tiny
tt_volcanic_island_player_start
tt_volcanic_island_swamp
tt_wadden_sea_holy_site
tt_wadden_sea_island
tt_wadden_sea_player_start
tt_wadden_sea_settlement
tt_wadden_sea_shallows
tt_warring_islands_lake_medium_fish_single
tt_waterlanes_holy
tt_waterlanes_lake
tt_waterlanes_plains_gold
tt_waterlanes_plains_stone
tt_waterlanes_settlement

v0.6.1

Choose a tag to compare

@Drumsin Drumsin released this 09 Jan 14:02

v0.6.0

Choose a tag to compare

@Drumsin Drumsin released this 27 Nov 19:00

If you are running this tool locally on your disk, it is recommended to follow the newly updated README.md instructions and reinstall the tool.

  • Support for river crossings with fords, wood bridges, and stone bridges.
  • Added a Lua minifier to prevent RuntimeError: memory access out of bounds. The game library had grown large in size where newly added library files would break the tool. The Lua minifier nearly cuts the total Lua string length in half.
  • Reworked the library directories, see updated README.md on Using Map Functions and installing locally.

v0.5.1 - Hotfix

Choose a tag to compare

@Drumsin Drumsin released this 10 Nov 14:39

Made hotfix change to starting code by removing math.random and replaced with worldGetRandom() when selecting a random index from the terrainTypes table.

Use worldGetRandom() as math.random would de-sync game.

v0.5.0

Choose a tag to compare

@Drumsin Drumsin released this 10 Nov 14:21

New terrain types added from Season Three Update 24916.

tt_hills_low_rolling_clear
tt_placeholder
tt_forest_circular_large
tt_forest_circular_medium
tt_forest_circular_small
tt_forest_circular_tiny
tt_stealth_circular_large
tt_stealth_circular_medium
tt_stealth_circular_small
tt_stealth_circular_tiny
tt_forest_plateau_low_circular_large
tt_forest_plateau_low_circular_medium
tt_forest_plateau_low_circular_small
tt_forest_plateau_low_circular_tiny
tt_stealth_plateau_low_circular_large
tt_stealth_plateau_low_circular_medium
tt_stealth_plateau_low_circular_small
tt_stealth_plateau_low_circular_tiny
tt_forest_natural_large
tt_forest_natural_medium
tt_forest_natural_small
tt_forest_natural_tiny
tt_stealth_natural_large
tt_stealth_natural_medium
tt_stealth_natural_small
tt_stealth_natural_tiny
tt_forest_plateau_high_natural_large
tt_forest_plateau_high_natural_medium
tt_forest_plateau_high_natural_small
tt_forest_plateau_high_natural_tiny
tt_stealth_plateau_high_natural_large
tt_stealth_plateau_high_natural_medium
tt_stealth_plateau_high_natural_small
tt_stealth_plateau_high_natural_tiny
tt_forest_plateau_low_natural_large
tt_forest_plateau_low_natural_medium
tt_forest_plateau_low_natural_small
tt_forest_plateau_low_natural_tiny
tt_stealth_plateau_low_natural_large
tt_stealth_plateau_low_natural_medium
tt_stealth_plateau_low_natural_small
tt_stealth_plateau_low_natural_tiny
tt_forest_plateau_medium_natural_large
tt_forest_plateau_medium_natural_medium
tt_forest_plateau_medium_natural_small
tt_forest_plateau_medium_natural_tiny
tt_stealth_plateau_medium_natural_large
tt_stealth_plateau_medium_natural_medium
tt_stealth_plateau_medium_natural_small
tt_stealth_plateau_medium_natural_tiny
tt_clearing_holy_site
tt_clearing_neutral
tt_clearing_player_start
tt_dunes_forage_bush
tt_dunes_gold
tt_dunes_player_start
tt_dunes_stone
tt_dunes_ungulate
tt_forest_ponds_aquatic_huge
tt_forest_ponds_aquatic_large
tt_forest_ponds_aquatic_medium
tt_forest_ponds_aquatic_small
tt_forest_ponds_aquatic_tiny
tt_forest_ponds_holy_site
tt_forest_ponds_market
tt_forest_ponds_player_start
tt_hideout_forage_bush
tt_hideout_gold
tt_hideout_kind
tt_hideout_mean
tt_hideout_player_start
tt_hideout_player_start_colossal
tt_hideout_player_start_huge
tt_hideout_player_start_large
tt_hideout_player_start_medium
tt_hideout_stone
tt_ponds_holy_site
tt_ponds_lake
tt_ponds_lake_forage
tt_ponds_player_start
tt_ponds_relic
tt_ponds_settlement
tt_waterholes_aquatic
tt_waterholes_holy_site
tt_waterholes_lake
tt_waterholes_neutral_resources
tt_waterholes_player_start
tt_waterholes_settlement
tt_player_start_classic_plains_low_trees_oasis
tt_player_start_classic_plains_naval_archipelago
tt_player_start_classic_plains_naval_warring_islands
tt_player_start_dunes
tt_player_start_forest_ponds
tt_player_start_ponds
tt_start_lowhills_lowresource
tt_aquatic
tt_boar_spawner_single
tt_hills_wgold
tt_hills_wstone
tt_holysite_boaranddeer
tt_holysite_boar_single
tt_holysite_deer_large
tt_holysite_wboar
tt_holysite_wextras
tt_holysite_wextras_largemaps
tt_holysite_wveg
tt_holy_site_hill_danger_wextras
tt_holy_site_hill_danger_wextras_largemaps
tt_holy_site_hill_low_loose
tt_holy_site_loose
tt_holy_site_loose_oasis
tt_holy_site_valley_danger_w_relics
tt_island_deposits_wrelic
tt_ocean_deep_fish
tt_plains_deposits_norelic
tt_plains_deposits_wrelic
tt_plains_forest_small_patch
tt_plains_forest_stealth_patch
tt_plains_wrelic
tt_pond_wshorefish
tt_relics_valley_danger
tt_tactical_region_gold_valley_a
tt_tactical_region_stone_valley_a
tt_settlement_hills_boar
tt_settlement_hills_deerandboar
tt_settlement_hills_deer_large
tt_settlement_hills_wveg
tt_settlement_naval_lake
tt_forest_small_high_priority
tt_impasse_trees_hills_naval
tt_impasse_trees_small_plains_oasis
tt_lake_medium_mediterranean
tt_lake_shallow_mediterranean
tt_lake_shallow_oasis
tt_ocean_very_deep
tt_swamp_cliffs

v0.4.0

Choose a tag to compare

@Drumsin Drumsin released this 04 Aug 21:06

New terrain types added from game update 20249.

tt_player_start_classic_hills_mountains_altai
tt_berries_large_single
tt_berries_small_single
tt_deer_herd_large
tt_deer_herd_small
tt_gold_large_single
tt_gold_small_single
tt_sheep_large
tt_sheep_med
tt_sheep_single
tt_sheep_small
tt_stone_large_single
tt_stone_small_single
tt_adne_combo_01

Other miscellaneous changes

  • Updated Node.js packages