Get rid of "L" shape when creating walls now!

It maybe only looks convoluted because I wrote a bunch of words to try and describe/clarify it for you, other readers, and devs. I’m sorry, but I don’t know you so don’t know how good your imagination/visualization skills are. But some people struggle with that; which isn’t bad, but it’s just a part of life; and those people often just need to see/experience ideas in-action (rather than words) to understand or have it sink in. Design and technical documents are often much longer with their text descriptions than tweet-length forum posts, and that doesn’t make them convoluted. I have a feeling you’re latching onto the number of words I wrote and immediately labeling it as ‘convoluted’ just because of that, rather than trying to follow and truly visualize the concept. Next time you’re in-game, start making a wall and hold SHIFT or CTRL down. It isn’t hard or convoluted.

Queuing can still be SHIFT. The SHIFT and CTRL for wall-building would only get activated while you’re in the process of building a wall. Not sure how that is so unclear? (While you are holding the left-mouse button down to show the game where you are thinking about building a wall (which is present gameplay functionality), you could press SHIFT or CTRL depending on your desired shape and the preview shape would dynamically snap to where it would go, depending on where you drag your mouse. It doesn’t seem very different from ‘the salamander thing’, if I’m understanding the salamander thing well enough… just more predictable shapes and use of SHIFT and CTRL rather than middle-mouse wheel.)

Setting in Options would be an inflexible archaic way that doesn’t please everyone. Like I said, I like that the present way allows either L-shape or diagonal, depending on where and how you move your mouse. I can’t be the only person who is okay with it. Furthermore, if you lock it to “L” via Options menu, you then can’t make straight lines, and vice versa? How in the world is locking it down like that better than my idea, or the salamander thing at that, and pleasing to everyone?

I don’t know what’s more bizarre.

That you say you deliberately want L shapes 30% of the times. L shapes are nearly never the most efficient solution.
That you can avoid unwanted walls 100% of the times. Really unlikely if you play at any decent tempo. It happens to me every game.
That you want to put the overall agreed intended behavior behind shift instead of the other way around. Doesn’t make any sense.

It’s like I’m reading the message of an alien.

  • If not using SHIFT or CTRL, the wall-building mechanic works how it has always worked. So, it remains expected behavior for those who are used to it for 20 years and prefer it over some forced alternative.

If neary everyone agrees then it’s not a forced alternative… Actually it’s the other way around. Everyone is forced to use this suboptimal algorythm.

Given that my issue most often is that only the last tile gets 2 walls next to eachother instead of the intended straight line, I’m not sure if Salamander’s suggestion will fix this.

I believe it’s most likely that they just remove the L algorythm, since that is the least effort and has to happen anyways if implementing Salamander’s suggestion. But if they choose to implement the latter I would see it as a clear improvement.

2 Likes

What I like the most about your suggestion is that it dynamically becomes the most used diagonal when you make a fully diagonal mouse drag, so it basically simplifies the walling system from this weird 2-faced algorithm into a single, simple system. I only dont know wether it would be best to start the diagonal at the start vs end point, but I guess you could make both accessible through scrolling but have the diagonal at the end as the default system.

1 Like

Thank you all for taking the time to create and discuss this important topic! I can confirm that it is on the radar of the team as an oft-requested improvement, though I can’t say whether or when changes would be made. So for now, keep the conversation constructive and keep your eyes open for possible changes in the future! :+1:

14 Likes

I have a feeling the glitch being experienced is sometimes due to Internet lag or instability. No matter how smooth the game looks, I doubt it’s able to transfer all commands and algorithms going on 100% of the time with 100% perfection. Just a hunch I have, but possible. I can see it as a possible cause of the example SalamanderRobot posted for Hera’s occurrence, but not T90’s so much. In Hera’s, we see the L-shape briefly. That might have been the last time the cloud/game registered Hera’s shape desires (if he had some Internet data packets lost) until he let go of the mouse button. I don’t know, though. I don’t know how the game was coded or how commands are executed and sent to the game/cloud. It’s neither here, nor there, since GMEvangelos says they’re looking into it.

  • Similarly… sometimes when I instruct villagers to make a building and they instead sit in the foundation of it when I check back a minute later, I’ve felt that might be due to Internet lag/instability of some sort… because I’m pretty sure I never have that happen in Single Player games. Yet it happens almost every multiplayer match.

If it happens to work perfectly well in Single Player games not on a server (which is worth testing), then surely it must have something to do with internet lag, no? I’d be curious if anyone sees this errant wall-creation behavior in single player games.

If there’s a bug, obviously getting it fixed will be great.

People can and do play the game differently than you and people you watch on YouTube :smiley:

Truth be told, when I was writing the idea, I started to say let’s make the default be a straight line only, with SHIFT or CTRL as the modifier to make an L shape. (Personally, this would be my preference.) But as I thought about it more, the game does have a 20-year history, as always gets pointed out. So, maybe there are people who like that the game presently has a dynamic ability to go straight or L-shaped without having to hit a modifier key (as I don’t mind too much). Plus, maybe some people don’t like using the keyboard at all (or rarely) and so don’t have their hand constantly hovering over it like I, and probably you, do.

If a modifier key could be added, then I’ll leave it in the devs’ capable hands to decide if they want (a) ‘straight line only’ as the default with a modifier key to make the L-shape, (b) to do what I mentioned above, ( c) some ‘salamander thing’ solution, or (d) some other solution. As I said, my preference would be (a)

Thank you for sharing this, I am very pleased to learn it is on your radar! :smiley:

In case the developers team is interested, you can forward them this post explaining the core of this algorithm, but also this CodePen page with the demo and all the code freely available (the main logic is written in the wall_end_points() function in the JS section).

I did not exactly understand your example. Could you maybe post a screenshot of this? You can for instance use the ‘Salamander thing’ tool with the Clear Map and draw options to draw something describing it. :wink:

This choice is already available in the ‘Salamander algorithm’ :wink:
I just made the diagonal at the beginning as default, but this is just an arbitrary choice.

For the solution (a) ‘straight line only’, I assume you refer to something similar to what is implemented in AoE3.
I don’t know the code of AoE2DE, but I think this solution would be very difficult to implement.
Even if still using the buildings grid system to define the wall end points, this would mean that there are a very (very!) huge number of angles possible for the walls (given that walls can take all the map size).
AoE2DE is still using a 2D rendering system (see here for explanations about AoE1DE). It means that you would need to store (and load in-game) as many renderings as there are possible angles (increasing a lot the size of the game and affecting the performances on lower-end systems).
If you limit the number of angles, it means you still need a ‘salamander-like’ algorithm to join end points without a correct angle.
The implementation issues do not stop there as this would also impact other stuff like the collision boxes…
On top of that, this is not just a QoL feature, because it would add stuff which cannot be achieved in the game currently.
So, it could be nice, but it seems nearly impossible to apply this to AoE2DE :neutral_face:

To give more information about ( c ) ‘Salamander thing’:
For two wall end points, we can only draw a straight line if these two points are on the same row/column/diagonal (which is properly done in the current game implementation).
For all the other cases, we need to use straight lines connected by an intermediate point (to compute). The game always computes a L-shape in the current implementation.

The purpose of the ‘Salamander algorithm’ is to allow to choose between 4 solutions:

  1. diagonal attached to the first point (then horizontal or vertical) -> optimal in terms of tiles & cost
  2. diagonal attached to the second point (then horizontal or vertical) -> also optimal in terms of tiles & cost
  3. vertical attached to the first point (then horizontal) -> L-shape
  4. horizontal attached to the first point (then vertical) -> L-shape

The game currently only uses solution 3 or 4 (depending on the largest delta in X or Y coordinates).

If I understand properly (b) what you mentioned above, the SHIFT solution is similar to (a) straight line only (see comments above), while the CTRL solution is the game current implementation (always L-shape). In fact, I do not understand what is the difference between the CTRL solution and the ‘not using SHIFT or CTRL’ solution (except if you want to be able of building L-shapes when a single straight line is possible).

Maybe I am missing something. Could you tell me ? :wink:

4 Likes

I don’t have time to clarify much or respond in full, but, no, I don’t want an AoE3-like solution for any of this. I’d just want the game to snap to the possible angles it can make the wall at.

For example, if we go with (a) where straight line is the default, then wherever you drag your mouse, the game will snap the straight wall to its eligible angles to show you where it can be constructed. This is how the game currently operates. The only difference I propose from current game in (a) is that you will never see it go to the L-shape while dragging your mouse around. In order to see L-shapes for (a), you would need to hold SHIFT down. And those L-shapes would similarly snap depending on where youndrag your mouse.

L shape walls have to be removed!!!

Why would you ever make an L shape wall?

1 Like

Agreed. It’s compounded by how incredibly difficult it is to delete the mistake. You can’t drag-select them, and if you double-click, you get existing walls too. So you have to click one by one. Contrariwise, if the game forced optimal diagonals and you wanted to build an L, all you’d have to do is shift + click two more points — a massively easier operation.

4 Likes

The fact that I’m able to do this in one L-shaped action makes me a very happy AoE2 player…

1 Like

looks similar to aztec campaign 2.

My screenshot? It was from Highland map

This! Trying to delete the walls clicking one at a time compounds the anxiety. You’re right another change they should do is only selecting contiguous unbuilt walls when double clicking on an unbuilt wall. That would 100% help the stress of the situation.

2 Likes

Sorry, but I still do not totally understand it. The only angles the game can make are multiple of 45° (horizontal, vertical, diagonal). It means that for most end points combinations, the wall will not be finished.

Are you talking about something similar to the following gif (made with the CodePen tool, grey is the suggested wall position while maintaining the mouse left button) ?

only_first_line_crop

In comparison, the first solution of the ‘Salamander algorithm’ (1. diagonal attached to the first point (then horizontal or vertical)) would give this:

only_optimal_1_crop

This is the same scenario, but with the comparison to the game current implementation (yellow is the game current implementation, grey is the ‘Salamander algorithm’):

optimal_1_compare_crop

As can be seen, there is a huge flip of the L-shape direction when close to the diagonal, which is not the case with the ‘Salamander algorithm’.

A last point to consider is that there are two solutions for the diagonal solutions and also two solutions for the L-shape solutions, because there is a central symmetry.

An option to switch between these two symmetrical solutions can also be useful (and is currently missing, even for the L-shape solutions).
Here is an example where I try to finish the wall (grey squares) to surround the buildings (brown squares) with a minimal number of additional tiles (so only the diagonal solutions) but still while maximizing the area being surrounded. Depending on the terrain configuration, I choose one or the other symmetrical solution.

circle_wall_crop

I agree that there are some rare situations where a L-shape wall would be the best solution (but for me it is way less than 30% :stuck_out_tongue_winking_eye:). This is why the two symmetrical L-shapes solutions are also integrated in the ‘Salamander algorithm’, but they are the last (i.e. third and fourth) solutions when switching between the solutions.

At the same time, I also agree with @blastonguart that it can still easily be achieved with the diagonals solutions:

5 Likes

exactly!
even if you need an L shaped wall, the automatic L shape creates 1 extra wall unnecessarily at the corners. It takes both vil construction time and resources.

1 Like

Most of the times this is what happens; if you drag towards a solid the algorithm will add 1 unintended tile if you’re slightly off.

I should have tried your tool to be more exact in the wording of my issue, it seems that your tool does not create this excess tile. However still it creates 1 shifted tile which is not intended and creates a weakspot in the wall (more surface area to attack).

For this reason I think the default dragging of walls should always be in a straight line. I would suggest your feature to be optional behind a toggle setting or a modifier such as shift.

Also I would like to stress that if your salamander algorithm gets implemented, the L suggestions should NOT be part of the scrolling options. That’s exactly what we want to avoid and they would heavily mess with the efficiency of this feature.

Imagine if you want to create a big L (which is hardly ever the best solution), why would you do this by dragging a diagonal instead of 2 lines? The whole idea doesn’t make any sense.

@Darkness01101 You must have thought very long to come up with that extremely ridiculous and niche example. It’s not even done efficiently, look how much stone you wasted on that top wall. Everyone else would do that in 2 seperate lines to guarantee full controll, save time, resources and avoid likely errors caused by the L algorithm.

1 Like

Yeah, took a whole 0.25 seconds. Was really challenging. No, it was easy because I play different maps than you and make different gameplay decisons than you. Ahh, the beauty of an RTS gane with so many options. Variety is the spice of life, Sven

Then you realise you are in the vast minority, which makes your plea for keeping the status quo even more bizarre. Instead of listening to what everyone else seems to agree on, that there are better alternatives for the default behavior.

This has nothing to do with variety, rather with priority and optimising features according to how most play the game.

I play different maps than you

I don’t see how this is relevant.

I make different gameplay decisons than you.

I noticed!

1 Like

I understand that it is often not the desired output, but it is sometimes still what is expected.
For instance, in this example, I want to add a minimal wall (grey) between the two water spots (blue).

Keeping the straight line would leave a hole in the wall.

Therefore, it is important to always join the two end points after dragging the mouse (even if sometimes we are slightly off).

They implemented the toggle setting for the new way point system, so I assume it would be the same here. :slightly_smiling_face:

I agree that it is not needed (it was not even there in the initial post). Both options (including the L-shapes or not) are fine for me. :wink:

3 Likes

Not sure what you mean. My latest posts say I want my idea of: “(a) ‘straight line only’ as the default with a modifier key to make the L-shape”"… which is definitely not status quo. And which would be optimizing it for the players you refer to.