Weekly development report 2022-09-24
Welcome to the weekly development report or what was done in my Open Source
projects in the last week.
Roguelike in a sky with steampunk theme (written in Ada)
The stable version stays quiet. And probably will stay in this state for some
time. As the time to release the last development version of the game comes
closer, soon the whole development focus will be only on preparations for the
next big “stable” release. Perhaps the fun with catching bugs will start
again then. :)
In the development version, work goes on:
- Finished work on new UI for giving orders to the player's ship's crew
members. There still are some things to polish but, generally, it should
work better than the older version. Especially with larger or largest ships,
which can have many guns or workshops installed. And giving orders to the
crew now require less clicking. Additionally, the menu with actions for the
selected crew member was updated too.
- Started work on the option to set an order for the selected crew member in
the information dialog. Here is still some work to do, but I should finish
this one in the next week. The most time here was spent on finding a good
way to show order and the ability to modify it.
- Added a new icon to the game for giving order button. It is also possible
to modify it via the game themes' system. The documentation about the game
modification updated either.
- Fixed position of Close button in the dialog with messages.
- Fixed crash on accepting missions with transporting passengers.
- A lot of work with moving old Ada code to Nim. Currently, it is far from
perfect code, but it works. Again, much time were spent on finding the
proper way to implement some things, so they will still work without
breaking everything. Especially today was a busy day. :)
- Some small work related to code cleanup and its optimization done too.
The experimental command shell written in Nim
The work on the plugins' system is finished for now... again ;) This took
most time in the week, but slowly plugins start to be interesting things.
- As mentioned above, the plugins' system got new API calls which allow adding,
delete or modify existing shell's commands. Not all, a few built-in are
forbidden from change, but the whole system is quite flexible and should be
easy to use.
- The work above triggered also many changes in the shell's unit tests.
- The test plugin updated with the new call, and very simple example how to use
a plugin to add a new command to the shell.
- The project's documentation was updated with information about the new API
- The work on code documentation related to imported Nim modules is finished
- Renamed nimble task for running unit tests to nimble tests.
- Some small code refactoring and cleanup done too.