Update on Main Game Progress. 2


Update 2

This week I’ve been primarily working on refining the character controller and working on the HUD.

The character controller for the Light Arms Specialist currently has functional move, idle animations and logic. I’ve already made animations for most basic actions, however I still need to animate/print a run cycle and dodge/roll. Those have been put on hold until I get the rest of the functionality working.

I ran into the same issue I had with the prototype, I end up using up a shit-ton of ram. Over half a gig of ram usage and didn’t even have the run and dodge made yet. I looked around but didn’t find any reasonable solution. Lowering the texture quality just washed out the colours, and I don’t think the savings would have been all that great. Other than that, the only thing left was to lower the resolution of each sprite.

I was reluctant to do this because I always seem to need the extra space on a situational basis. It turns out the solution to my problem was very simple. Godot will centre a sprite, so even if the image is a lower resolution it will still stay in the same place. All I had to do was crop away the abundant alpha ‘canvas’ I gave myself, and the character would still retain the same position and size. This means if I need the extra space I could just have those images at a higher resolution while trimming away the fat on the rest, with no need to transform the sprites position to compensate.

So now I’m painstakingly cropping each frame in Gimp. I set up a grid with snapping, then select the area the character occupies and just crop to selection. The rest is just hiding the layers of the frames I don’t need before I export and copy over the high res version with the now cropped/low res version. The character sprite fits well into a 256X256 area. I’m already seeing great savings with just a few batches done, and If I did my math right this will essentially cut the current memory usage down to a quarter (for character sprites anyway). This is good because I still have to make animations for the various weapons each character can equip, not to mention the run and evade animations.

While peak optimization isn’t really my goal, there is still a limit to how sloppy and wasteful you can be. Even though my dev rig is a beast, it still took a good minuet or two to load the character controller assets from the previous project, and that becomes kind of painful if you have to do that 100eds of times for testing.

Other than working on the character controller, I’ve been redesigning the HUD. Since I don’t want to write a bunch of temp code that I’ll have to delete later, I’m bringing the HUD so I can test the weapon swapping animations properly.

I’m more or less reusing the same design as in the prototype, but I remade it from the vertex up. The new layout maximizes the space while trimming down its height by a few pixels so it’s not so dominant on the view screen. It’s not as easy to see as the previous one, but I think it’s a fair trade off to not have the HUD in the way all the time. Most of the HUD is done, but there are still some small details that I have to fill in. I may change the overall colour scheme later as well, but save that for later since the HUD is modular in design and relatively easy to modify.

I was looking around for a new font to display the numbers on the HUD. I wanted one with a calculator/LCD look to it. After searching for a while every time I found one I liked it wasn’t free or had somewhat restrictive licenses attached. So I decided that since I’m competent with graphic design I would make my own. It took me a day to learn the process and a couple of try’s to get what I wanted. Font design is really tedious, but I’m kind of glad I took the time to learn.

The resolution for the play area will be changed a bit from the prototype, new dimensions are 1024 x 768. It’s kind of a weird resolution, but feels more comfortable for a game like this.

Get Arkinum's Project: Magi War

Leave a comment

Log in with itch.io to leave a comment.