The past few months have been very important for the backend foundation of this game. It’s been something that has to happen, but when it comes to showing it off to people, well, it’s not so easy. Well finally, I’m able to start working on things that I can actually show off to people, and damn, it feels good.
State of the Union
As stated above, after spending so much time working on backend features of the game, mainly based around the dynamic loading of JSON files for attributes, items, units, and tile maps, it’s time for a change.
When thinking about what I wanted to do, it came to me pretty quickly. I’ve been languishing in this state of basic unit moving and attacking. Hell, that code was developed while I was on Christmas break last year. For a long time, I’ve wanted to expand that, to include the option to use items, abilities, and most importantly, the option to cancel actions.
Once I knew what I wanted to do, I started thinking about how to represent it, from a UI standpoint. Simple list menu? Radial Menu? Judging by today’s GIF, I think it’s clear which direction I went.
I know there are a lot of articles out that discuss the UX pros and cons of radial menus, but before getting too swept up in them, I had to tell myself, “This is a prototype, just do it, and if it doesn’t work out, move on”. And so that’s what I’m doing.
It was pretty easy to get something up and running after watching this video: Unity Tutorial: Radial Menu from Board to Bits. Once I had it going, I started looking at how to add some animations/effects to them, just for a little flavor. I started with scaling the same of the button, as well as highlighting them, when you mouse over them.
The next thing was to, instead of having them just appear in their final destination, actually show them spawning in the center of the unit and moving outward:
The last thing I did was make them start out small, then scaled to full size when they initially spawn, as well as adding tool tips for them when you mouse over them. You can see that in action in the header GIF.
- implement cancel functionality. Easier said then done. There are many states that need to be tracked (both the current and previous) so you can revert them at will. I’ve attempted a bunch of this work, and every time I think I have it, I find yet another state I need to keep track of.
- add 2nd level radial menus for items and abilities (UI only)
- implement the use of items and abilities
- make all of this current UI actually look good (yes, I know I’m in prototype mode, but I still have eyes)