Over the last week I worked on replacing all the JSON config files with a sqlite database. If you have any programming knowledge you probably can imagine what that means, for the rest that's a very big change as this ties into almost every part of the game. When I started I just renamed the .h file of the old wrapper and it reported 78 occurrences of file not found. After a week of hard work I have the game working as before again minus the new bugs.
A former boss of mine used to say, a change without improvement is making things worse. So far we have multiple new bugs we haven't found yet, it runs slower that the old stuff and I will have to do a new implementation of the modding support. So what are the improvements and advantages?
- stricter and formal data definition will make it harder to invalid values in the future
- can use SQL goodness for data lookup
- adding stuff won't break save games anymore
There's probably more I can't think of right now but having the data in a DB now is the cleaner solution and the right step for future maintainability. Over the next weeks I will monitor which tables and values are queried most often and add some caching to them.
So if you have a high frustration threshold please test it out and report any bugs and misbehavior.
- added indicator to butcher list if animal is young
- added job sprite to upper wall tile for DigStairs
- fix renaming groves
- fix adding tiles to existing groves
- added oak trees
- added combat - this is ongoing development
- added auto butchering of corpses
- added mushroom biome
- added keybinding options for actions
- added oaks for oak tree planting
- replaced the external data definition json files with a SQLite database
0.5.9
- talked to some unreliable onions and straightened them out
- fix build thatch outer ramp works again
- mine stairs up now removes the wall in the tile above
- added more walls with floor on top
- fix pine cones defs for stockpiles and containers
- add buildable soil and stone outer corner ramps
- clicking the gnome list to open a gnome window that is already open now brings that window to front
- fixed crash with opening item info when the maker has died
- dead gnomes disappear after two days
- fix animal state change tick doesn't reset on load
- fix animals grow up again
- disallow setting designations on tiles occupied by tree leaves
- reinstated groves
- added some dyes
- added hair dyeing
- improved lighting
0.5.8
- creatures will now evade trees suddenly growing up below them
- fixed priorities for different job types with same skill requirement
- newly built workshops now accept generated jobs by default
- reinstated death from hunger and thirst
- gnomes now eat and drink up to full once they started
- auto craft items for build jobs
- plant tree now checks for other trees in range
- plant tree now checks for other plant tree jobs in range
- adjusted sunrise and sunset times for seasons
- fix missing fish bones in stockpile filter
- fix claim items for workshop craft jobs, when a linked stockpile exists but the item is not in that stockpile
- fix job priorities when there are farming jobs around
- fix deconstructing workhops only creates on deconstruct job even if more tiles are selected
- fix deconstructing scaffolds deconstructs all scaffolds above
- felling pine trees now produces 1-3 pine cones that can be used to plant new trees
- fix plants growing in seasons they shouldn't when planted in that season
- now also expel items from the trunk tile when a tree grows up
- digging stairs down should not create raw materials at "0, 0, 0" anymore
- added indirect sunlight to neighboring tiles
- fixed trader no appearing
0.5.7
Needs new game
- changed saving items so that adding new items won't break saves anymore (breaks save games one last time)
- fix some settings not saving their changes
- harvesting trees is now a Horticulture job
- dig hole now creates ramps at the outer tiles of the hole
- improved get best drink, get best food
- improved constructing ramps
- fixed crash with removing a farm while paused
- fix adding tiles to existing designations open the wrong window
- added job priorities
- fixed crash when removing linked stockpiles
- raised drink value of wine to 40
- carpenters can now craft fishing rods
==========================
0.5.6
- fix reset the behavior tree when aborting a job through skill deactivation
- fix render depth in settings is an INT not a BOOL
- fix harvesting trees
- reactivated wheelbarrows to work with behavior tree
- fix workshop widget checkbox showing the correct state for accept jobs
- fix BT for aborting jobs
- fix deconstructing stuff
- fix deconstructing workshops returns items now
0.5.5
Need new game
- fix deconstructing built ramps
- fixed checkboxes not visible
- added behavior trees for creature AI
- added sheds, troughs and beehives
0.5.4
- added seed and animal trader
- added migration, 1-5 gnomes will arrive each season
- tile info window doesn't reveal undiscovered tiles anymore
- fix crash with population overview clicking skill button after sorting
- added bone furniture
- added wall paintings
0.5.3
- fixed animals not following gnomes
- added support for stylesheet mods
- improved job sprite rendering
- improved job sprites for wall and floor constructions
- seperated stone and brick blocks
0.5.2
- fix duplicate sprite creations
- debug mode disable fow
- started implementing basic magic features
- added job info to tile info widget
- UI overhaul
- fix not possible to build walls on ramp tiles anymore
- fix floor replacement on grass tiles turning out as raw soil floor
0.5.1
New game required
- fixed workshop crafting queue behaving strangely
- abort jobs when required skill gets deactivated
- can activate stockpile filter categories even with no items in that category present so that newly created items go to that stockpile
- added trading
0.5.0
- add buckets and sacks as carry containers
- added fishery workshop
- added item history