nvs / gem

Gem TD+: A Warcraft III Tower Defense
https://discord.gg/PxNNp77
26 stars 2 forks source link

Feature/416 Building Rework #418

Open nvs opened 5 years ago

nvs commented 5 years ago

Building Rework

Attempt at implementing #416.

Testing Version

This replaces the existing build style with Orc building. Esc can be used to cancel building while having the builder selected (which it will be if he has just gone inside to build). Probably want to utilize Shift to queue up build orders.

This has the potential to be slower than the older style, depending on the player (i.e. if you use fast building it may feel slower). I've noticed, however, that this also increases my ability to recognize and respond to one-hits. Overall, races should be more competitive as building speed (and probably ping) won't factor in as heavily.

To-Do

Notes

Options

  1. Replacing rocks using the built in haunt style. This is not viable, as discussed in https://github.com/nvs/gem/pull/418#issuecomment-479283112. Request made to improve the usability of this action made here at Hive.
  2. Orc style building. This is a possibility if there is a desire to move away from fast building. It strictly prevents it. The Esc key can be detected to make cancelling construction easier. I foresee a heavier use of Shift to queue up build orders. \ This is potentially slower than the older style. I've noticed that this also increases my ability to recognize and respond to one-hits. Times will be slower, however, for players used to fast building. But, overall, races should be more competitive as building won't factor in as heavily. \ Seems to be much easier to use (probably due to the slower pace) in high ping situations. I've made far fewer mistakes in such situations. This may help foster competition on Battle.net where people could be from anywhere around the world, as they may be less inclined to avoid certain hosts.
  3. Spread out the hurt of building over a longer period. For example, allow players to plan their construction during the round itself. They could build placeholders on open ground that do not path block. And placeholders on top of rocks that would maintain path blocking. Upon clearing a round or the use of a specific ability, all these placeholders would be replaced with random gems. \ In a situation with an explicit roll ability, the placement phase would not really exist. All that would exist is the planning phase (which would begin the moment a round starts until that roll ability it used), and the selection phase (which entails picking from one of the random gems).
  4. Something with Tiny Farm. This is basically Undead style of construction. It has the distinct advantage of using a real to define construction duration, thus allowing subsecond resolution. It could be used in conjunction with default building. A couple downsides do come to mind, so this is probably not too useful:
    • The lack of a building shadow when creating a queue of builder orders.
    • A built in cast delay that cannot be resolved, that makes fast building frustrating and error prone.
  5. Adding a replace ability onto rocks. This is probably the simplest option. However, it introduces a new mechanic. Needing to use both mechanics in the same build phase may feel awkward. The mechanics are related, but are not very similar. Place a random gem with the builder and select a rock and hit a replace ability? Not very intuitive. Then again, people already select rocks to remove them every round.

Thoughts

I would prefer to have the ability to replace rocks via haunt (Option 1). All in all, it keeps things simple. The responsibility of placing gems, either by building or replacing, would remain with the builder. Putting a replace ability onto rocks (as in Option 5) splits the responsibility. Yes, that may seem an obvious choice to some players. And, it may be the eventual course taken. But I'm not a fan.

Now, I do like Option 3. But it is a more drastic change. It remains to be seen whether the addition of such complexity is warranted, or whether it would feel good in practice. Option 4 is not really a choice. And Option 2 makes a good simple change; albeit, people may fret over change. Particularly, the speed involved. The benefits outweigh the cost, however (see #416).

So, if Blizzard comes through with the request related to Option 1, that will be introduced. Regardless, I feel that Option 2 alone is the best course right now. And Option 1 can always be added alongside it at a later date.

nvs commented 5 years ago

A few issues with replacing rocks have been found:

  1. As it is an action that targets a unit, other units with large models can make it difficult or impossible to target a rock. This does not seem possible to resolve, outside of hiding non-rocks. That is not feasible.
  2. The presence of a slate makes it difficult or impossible to target a rock. This may be a priority issue; but, that is not something that can be changed in-game. And changing priorities will make it near impossible to drag select slates that are under rocks and towers.
  3. Without either of the above issues present, targeting during a replace rock action is simply not as smooth as placing a gem on open ground. It fails to accurately detect correct situations at times. And there is not enough UI feedback to know how to position the cursor, if that is the issue.

I'm pretty sure that this makes the idea of replacing rocks a dead end.

nvs commented 5 years ago

After playing this some and thinking on it as well, I'm not entirely sure this is necessary. I've been forcing myself to play in higher ping situations on Battle.net, and the existing style of building is not that bad. I'm not sure the shift for players is entirely worth it.

An alternative to Orc building may be Human building, which is visually closer to that of Undead. Then, introduce the concept of stopping construction if the builder moves away from the structure. That might make the change to building feel less foreign, as the builder will not be jumping into things.

nvs commented 5 years ago

No real need to 'improve' human building. Perhaps, however, make the construction go faster.

nvs commented 5 years ago

Note that this has been put on hold, and will not be in 1.6. Instead, we will see what future patches bring.