Friday 31 December 2021

That Was The Year That Was 2021

 

Look out behind you!

It got windy and I had to climb on the roof to fix some broken tiles by sticking them together with No Nails glue.

In other news, I have mostly been integrating Steamworks with Torque, in all those hard to reach places I haven't used before like Stats and Leaderboards and getting multiplayer achievements to fire.

To be continued ... as I forgot to do this earlier and there's only 12 minutes of the year left ...

 A Day Late And A Dollar Short 

Okidoki, back to some actual content ...

December has been about integrating Steamworks and all the bits of it that I never used for Airship Dragoon. 

 

We can but hope ... (also spot the amateur coding error 😉)

First up was stats, getting Steam to store statistical progress for the player with the least amount of overhead, in other words, only making server calls when strictly necessary. That is fairly simple when using things which are not going to update very often like level progress, but has to be organized more when dealing with things such as multi-kills and recording how far the player has travelled.

My understanding of "increment" and Valve's differ somewhat ...

 Some of the terminologyfor statistics on the server side was a bit ... iffy, as I had expected "increment" to actually add the value I was sending over the net, but instead it would just refuse an value lower than it already had. Not a problem to write a bit of C++ to get the previous value and add the new value, but still required me to test how everything worked to make sure that we were all singing from the same hymn sheet. For instance, some stats could be floats, but linking stats to achievements demanded integers.

Achievements could also be tied to stats and would automatically succeed when a stat reached a certain level. Progress of achievements could also be shown and I made a point of accessing this regularly so that the player would get feedback on achievement progress often. There was an automated way of doing all of this but I found it better to write my own function for flexibility. With achievements came achievement icon art, and I took the opportunity to rework some previous collectable powerup icons.

Steam Achievements need icons! 
 
With stats and achievements comes leaderboards, another area of Steamworks which I had not previously ventured into, but seemed to work fine once I had realized that they were returning a leaderboard ID to the client to read a string from and not the actual string itself.
 
You'll always be first when nobody can play your game yet

I made a few other changes to powerups, swapping yet another heat based attack for a cold attack, as I had decided that there were too many fire based things happening. I also worked out that out of 108 powerups I only had 2 of which needed new modeling and animations so that was better than expected.

Next up us to integrate cloud saving, another part of Steamworks which I have never ventured near, and then have a look at input for Steam Deck so that it displays the correct icon hints, and finally peer into multiplayer lobbies and hosting inside Steam. There are a few other things to work out, after which I should publish my store front and make the game visible to the world, as I have been doing all of the capsule art - see big pic at top.

That as they say, is next month's job ... which is now actually this month.

No comments: