Summary:
In which music is added and implemented; a bare start to a main-menu is made; interactive UI elements become shiny; UI elements gain art; some new bits of functionality are added to various UIs; controller-support is attended to; two new gameplay-related options are added; and a holiday well-wish is given.
Greetings and salutations!
This week's screenshot shows updates to the game's UI, in this case via the "map" page of the status-screen:
Before I begin, a quick announcement:
Christmas falls in this week, and as such I'm taking the week off as my usual Christmas holiday!
Naturally, that means that no work will be done on the project during this week (or so I intend), and thus there will be no progress to report next week. Therefore, I intend that there will be no blog-post next Monday (i.e. on the 27th of December, 2021). Instead, the next blog-post is intended to come on the following Monday (i.e. the 3rd of January, 2022).
That said, the week just past was a fairly busy one! There was UI-work, and options-work, and even a bit of audio-work, and more besides!
Let me begin, then, with audio-work: at last, I have begun adding music to the game!
In the week just past I trawled through various royalty-free music-sources (and there is some wonderful stuff out there), and picked out a number of tracks for use in the game as it stands. Planetary-exploration, space, the extant moons (and at least one that is not yet extant), and boss-fights too all have at least some music assigned to them now!
Now, the game didn't support this as of the start of the week just past, so that support was added. I began with code written for A Door to the Mists, and expanded upon it: in addition to selecting from a set of music-pieces, the system now supports multiple music-sets, and the fading out of one track when switching to another.
Further, boss-fights can now introduce their own music when activated, and restore the previous music-list when done.
I've even selected some music for the title-screen/main-menu--and indeed, made a bare start to such a screen, too!
Moving on to the user interface of the game, I spent some time polishing that in the week just past.
Perhaps the most salient part of this was a change to the look of interactive elements (buttons and suchlike).
You see, I concluded in the week just past that I had an affordance problem in my UI: interactive elements were insufficiently distinct from non-interactive elements.
So, with "shininess" recently introduced into the art-style, I decided after some thought to take that up as the distinguishing factor: interactive elements are now, well, shiny, somewhat three-dimensional, while non-interactive elements remain "flat".
And work was done on other matters of UI, too.
For one, art was added to elements that previously lacked it: For one, the codex now has frames around the icons that are shown for codex-entries. Similarly, the "ship-skin" screen now has revised art for the baseline "skin", as well as its own icon-frames. And perhaps most notably, the various pages of the status- and options- screens now have custom tabs.
Furthermore, a few pieces of new functionality were added: both the options menu and the status-screen now have "close" buttons; the map-screen now has a button that resets the map-view to the player's current region; and various elements have popup-tags to clarify what they do.
Moving to matters of gameplay, work was done in the week just past towards controller support for the game.
Now, there was already a beginning to this in place: my key-binding system already supports controllers, and so some elements functioned with a controller as they were.
However, there was more to be done--perhaps most notably, there was no good support for aiming, which is by default driven by the mouse.
Thankfully, this overall didn't prove too difficult to deal with, as I recall, and I believe that I have even aiming working with a controller now!
(There is one possible issue--but after investigation, it seems that it's likely an issue stemming from other my (very cheap) controller, or from my operating system's support for the controller, rather than within the game or engine.)
And with these changes, I added a few new options to the "gameplay" section of the options menu: there are now sliders to adjust the controller dead-zone implemented within the game, and to adjust the speed at which the game plays.
(And what's more, option-menu sliders now come with "reset" buttons by which to restore their default values.)
And as per usual, a variety of changes, tweaks, and fixes were enacted that don't seem worth detailing here!
And finally, let me say: If you observe or celebrate anything at about this time of year, I hope that it is (or was, if it's passed already) a very happy one for you. And if you neither celebrate nor observe anything at this time, then I hope that the period is nevertheless a good one for you! ^_^
That, then, is all for this week--stay well, and thank you for reading! ^_^