Proposed improvement to wall placement algorithm

As a player I want to place my walls as efficiently as possible. AoE2 has two kinds of wall - “orthogonal” and “diagonal”. When I draw a line from A to B, I want the game to combine orthogonal and diagonal walls to make a shortest path from A to B.

The current wall placement algorithm does not draw a shortest path. Unless A to B is exactly a diagonal, the game will always use orthogonal walls. This wastes time and resources – but even more annoyingly, it makes it very hard to place a diagonal wall quickly. Misclick by one tile and your wall is completely different!

Here’s an illustration of the problem, showing a wall with the current algorithm, and the wall that I think it should have placed instead:

What do others think? Would this be an improvement? Does anyone like the current behavior? And would it be possible to implement this change with a mod? (I suspect not, unfortunately.)

15 Likes

So much this.
One of the possible solutions could be that with the wheel of the mouse you can select the many possible ways to place walls/palisades (just like you rotate gates).

4 Likes

somebody made a mod for this, search walls in the discussion threads

the current algo is dated and terrible… too much micro involved

Oh, that’s cool! I’m amazed at what’s possible with mods. However, I did a search and couldn’t find a reference to it :frowning:

@Jameshfisher i spent many many many many many many many many many many many many many many many many many many many many many many many minutes finding this for you

many many many minutes…

1 Like

Thank you! That looks great. Impressive effort by @SalamanderRobot. Hope this gets implemented by the devs!

1 Like

Thank you, the purpose of the CodePen and the scenario was indeed to let people experiment this new walling (with possibilities to cycle between the configurations, as mentioned by @Hectornauta), so that devs could maybe integrate it in the game.

2 Likes

That’s a great suggestion, unfortunately, it’s very unlikely to get implemented as it requires competence the current devs don’t have.