Dwarf Fortress Remote server contains a lot of Lua code, and now that I’m adding support for more DF versions, I need to make sure all my code is updated as DF data structures change. I could probably just diff data structure definition files, but I’d like to have a less time consuming and more reliable solution.
So I started to work on a tool that automatically checks Lua scripts and shows access to wrong fields, incorrect assignments and so on – things that a compiler would show errors for, were Lua a statically typed language.
Here it is: https://github.com/mifki/df-luacheck
It’s a work in progress, with a lot of unsupported things, including
require statements and built-in DFHack library functions, so it can’t be used to check real scripts yet, but I’ll improve it until it can check all of the DF Remote code and show what needs to be fixed for 0.42. Some examples of what it can do below.
This feature is well known to users of TWBT plugin on desktop, and now it’s available on mobile. It allows to see not just the current z-level, but also everything below. Only the top X levels are refreshed though, where X is configurable and is set to 3 levels by default. You can tweak fog and shadow parameters if required (darker tilesets may require more dense fog and shadows to distinguish between z-levels easily). Fast building placement mode
When you need to place a lot of buildings like beds, doors or coffins, where you do not care which items will be used, you can do it much faster now. Just long press the green OK button when placing a building, and the closest item(s) will be automatically selected, without showing the item selection screen. Fast linking mode
The same when linking buildings to a lever or trap - long press OK button, and the first two mechanisms will be automatically selected to be used for the link. New clean style for the top status bar and for announcements at the bottom of the screen. Two announcements are now shown at a time, allowing to see more of them in time in a busy fortress.
Selection size is now shown when designating, creating zones and stockpiles Long press z-level up/down buttons to show list of Points - this allows to quickly zoom to various parts of the fortress When adding jobs in a workshop, swipe to add a job and set it repeat When viewing a cage, swipe a contained animals to release them without loading the full Assign Animals screen On the announcements and reports screens, “today”, “yesterday” and “X days ago” are now shown alongside the dates Clutter status and number of contained items are now shown when viewing a workshop Swipe a server in the server list to clear caches and connect - useful if you experience map corruption issues Changelog is shown in the bottom of the server list screen to keep you informed about fixes and additions being made to the server plugin and in-app help Zone information view can now be opened by pressing OK button when a zone is selected. Also, zone status is shown in the information bar. Fixed orientation of horizontal axle and water wheel shown incorrectly when placing these buildings Fixed an issue with loading noble view after leaving a position vacant Close button is removed from trading screens to prevent accidental closing and losing status of all the items marked for trade Support for iOS 8.0 - iOS 8.2