Update 6: Making the Arena Fun Again


So after my last update and a few days after Christmas, I released version 0.0.4 of the game , which featured an early draft of the Battle Royale game mode as well as a basic Leaderboard window to inform players about their death & kill counts and a chat box allowing to type messages which then get broadcast to the entire world/server. It was nice to be able to do some play testing with a variety of people and get their first impressions in what was the emergence of a competitive setting. However, the availability of only one skill, namely a close range / melee attack and the awkwardness of the skill casting action (right click on a selected target only) made it difficult for people to land hits and limited the amount of fun one could get. More generally, a lot of the controls and control-related aspects (such as pathfinding or wall collisions) needed to be adjusted to make the experience more intuitive and fun.

So I dedicated pretty much an entire week or more even working on improving mouse-driven motion to make the experience more consistent with what most people find in ARPGs like Diablo 2. Both the left click and right click now lead to the execution of an automatic pathfinding & motion routine, thus allowing people to move very intuitively and instinctively using the mouse. I then added target-locking to make the use of the melee skill easier and I made sure that pathfinding motion would take place if the player was too far away from the clicked target, illustrated as follows:

Image attachment

In addition to automatically being walked to the target, the player benefits from automatic recasting for as long as the attack button (mouse button) stays pushed down. I also took care of small details such as allowing the player to press shift to fire a skill regardless of whether an enemy is targeted or not and made sure that mouse-driven and keyboard-driven controls could be safely used concurrently, which was a bigger challenge than I initially thought. Some minor bugs still need to be corrected (which I'm working on) but overall, everyone pretty much agreed that the controls are now in a much better spot, some even said a great one.

Another important feature I implemented which affects motion not just in combat but in general is wall "sliding". Now, when players collide with a non-walkable tile like a wall, if the angle they arrive at allows, they will slide against the wall instead of stopping entirely. I feel like this feature alone, as basic as it might seem, changes the entire feel of navigating the map on a character. It makes moving around so much smoother and intuitive as you don't keep getting stopped by random props or wall pieces, and it delivers the behaviour most players would expect in both mouse-driven and keyboard-driven motion scenarios. I was really happy with the implementation I came up with and thought I should actually have gone forth with it much earlier. The following video illustrates what it looks like first using the keyboard, then using a mouse click:

Keyboard Motion video on Youtube

All of these changes represented a significant investment but it was a very productive and rewarding one. The last super necessary piece I felt I needed to add to truly start having fun while battling in the arena would be a range skill, and so I added one with a very basic animation done in a couple of minutes in MSPaint at first. The following video demonstrates how projectiles are now temporarily created when firing the right-click range skill:

Projectiles video on Youtube

One of the features that people seem to appreciate a lot is the ability to keep moving while attacking, albeit with a speed penalty. This makes for highly dynamic combat and makes the general experience pretty smooth and fun, according to most players so far at least. This is obviously a very early draft of the skill and we will be adding a proper animation soon (should be pretty cool looking actually 😄 ). I'll probably be posting some footage of multiplayer action using the projectiles during one of my next multiplayer playtesting sessions. All of these changes should be released as part of the next version (0.0.5) of the game, which should probably be put out on here in the Announcements channel some time next week. All that being said, with the complexity of the code base increasing on a daily basis, I'm having to frequently reinvest time into various non-functional aspects, which sometimes slows down or delays the implementation of all of the much needed and anticipated new features. For instance, with the introduction of projectiles which puts an emphasis and pressure on entity management systems, some interesting corner cases are starting to appear and so I'm having to invest time and effort in ramping up my diagnosis tools. In fact, I'll probably talk a little bit more about this in my next update. Until then!

Leave a comment

Log in with itch.io to leave a comment.