Showing posts tagged #Dwarf Fortress - Show all

Checking Lua scripts against Dwarf Fortress data structures

June 10, 2016

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:

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.

Continue reading...


Dwarf Fortress Remote 1.15

May 18, 2016
I'm happy to announce that Dwarf Fortress Remote 1.15 is available on the App Store. This release introduces multilevel rendering and contains a lot of other user interface and usability improvements. Below is a lengthy detailed list of changes.

Multilevel Rendering
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

On DF versions supported by Dwarf Fortress Remote

May 11, 2016
So, Toady released DF 0.43.01 today, which means 0.42.06 is the last build of the 0.42 version. There now will be several more builds of 0.43 after which I believe there will be a long period without new releases when Toady will experiment with 64 bits and new compiler. And, most importantly, we don’t know how long it will take to make DFHack compatible with these changes. Saves from 0.40 and 0.42 are compatible with 0.43, so I’m not sure if I will support 0.42.06 in DF Remote or just the last build of 0.43 if it’s finalised while I’m working. Ideally I wish I could drop support for 0.40 altogether because you can just upgrade and continue playing, but unnecessary complications with upgrade may upset some users. On the other hand, I was going to add support for DF 0.34.11 because there are lots of saves and community games not compatible with newer DF versions, and, well, to disable features that were not available in 0.34 is not that hard.

Three ways to follow the development and/or get involved

May 7, 2016
I've set up a dedicated Twitter account @dfremote to post changelog for the Dwarf Fortress Remote server plugin, iOS application and in-app help. Between application releases with major changes, I keep fixing issues I encounter in the plugin and working on help articles, but usually the changes are too small to mention in the blog. Now you can follow @dfremote to know when something is fixed, or check it to know what's new in the plugin update that the application is offering to install. I'm also sharing the Dwarf Fortress Remote Roadmap. It is a part of a huge to-do list I’m using during development, just without minor and internal/not publicly interesting items. And last but not least, I remind that the in-app help is hosted in a public repo on GitHub. Anyone can help to improve it by submitting pull requests.

Status update

May 5, 2016
Just a quick update to let you know that a new version of Dwarf Fortress Remote for iOS with multilevel rendering, UI improvements and few other things will be submitted to App Store in the next few days after final testing and screenshot making. I’ll make a detailed post about the changes closer to the release. After that, I will work on supporting DF 0.42, probably other missing screens and features, and sound. Support for 0.42.06 is a priority, however I’m sure Toady will release another version or two while I’m working on it, so we’ll see what version will be considered stable and worth supporting by that time.

Multilevel rendering is coming to Dwarf Fortress Remote

April 12, 2016
Multilevel rendering, well known to users of TWBT plugin, is coming to Dwarf Fortress Remote app. Also I’ve improved appearance of the top status bar and announcements, along with other UI tweaks.

Status update & 3D view demo

March 16, 2016
A new version of Dwarf Fortress Remote for iOS is available. It adds support for all levels of stockpile settings, and has a new status bar on top of the screen. The bar shows current z-level, number of idle dwarves, current date, unread combat/hunting/sparring report notifications, and siege alert. Also, I continued working on 3D view, and got acceptable performance and memory usage on iPhone, so this feature will be added to the application at some point. I was also thinking about a WebGL-based online map viewer, but so far the performance in browsers isn’t very good. Anyway, I think I’ll put it aside for now, as I need to get back to more important things from my big to-do list for the iOS app. And I wanted to try adding a sound system (using SoundSense sound packs).

More experiments with 3D for Dwarf Fortress Remote

March 7, 2016

More experiments with 3D for Dwarf Fortress Remote iOS app on Sketchfab


Experimenting with 3D rendering for Dwarf Fortress Remote

March 4, 2016
Experimenting with 3D rendering for Dwarf Fortress Remote for iOS. Ultimately I want to add a 3D viewing mode to the application - intentionally not as fancy as Armok Vision, but rather fast and with simpler graphics. It’s early experiments as you can see, so have no idea, whether I will succeed and when.