* The rightmost column is now mostly dedicated to non-modifying operations – eyedropper and zoom are moved there, pushing the 3 palette buttons down in town mode.
* Set Starting Location and Set Town Boundaries moved from the menus into the toolbar.
* Place Same Creature and Place Same Monster removed, since placing a monster or creature no longer resets the mode, so you can place as many of the same one as you like.
* Erase Town Entrance removed – what is it even good for? Removing the entrance without removing the town terrain is nonsensical. A town entrance can now be erased just by painting over it.
* Copy Item, Copy Monster, and Copy Terrain added. The latter copies a rectangle of terrain.
* Paste Special is removed. Instead there's a generic Paste button which pastes whatever type of thing you copied last, whether it be a special, a monster, an item, or even some terrain.
* Horse and boat no longer share a row with road. Instead, some of the fields have been reshuffled, so now fields take up three rows (though not three complete rows)
It now makes no assumptions about the terrains that might be defined in the base scenario.
* The existing terrain in the base's outdoors (previously ignored entirely) is now partitioned into 9 segments and plopped down to form the border of the new scenario's outdoors.
* It treats the locations (23,23) amd (24,24) specially, assuming they contain a sign and a town respectively. These are left as-is in the top left sector but replaced with the base ground in every other sector.
* Since there are now two separate bases, one for cave and one for surface, no substitution of terrain is done in the starter town.
The text in the various help dialogs that was previously baked into an image is now drawn as text, meaning that it benefits from text unblurring when scaling is active.
This entails some small changes to layout, since it's a different font.
Dialog engine changes:
* A new picture type allowing to draw the inventory button icons directly into a dialog.
* A new widget type that simply draws a line between two points.
The picker is used in the special node dialog and also in monster abilities.
Some changes were made to the game as well:
* If the rotatable wall is used for a field missile or touch ability, there's no longer an option for the designer to pick an orientation. Instead, it behaves like the rotatable wall in a radiate field ability, selecting an orientation based on the creature's facing direction.
* The magic values sent to place_spell_pattern for direct damage were rearranged to match the order of the eDamageType enum. This should have no effect, since the core place_spell_pattern function is only called by the various wrapper overloads. It also simplifies the code quite a bit.
* The Protective Circle spell pattern is now exposed to the place patten special nodes. It can be used as just a radius 4 circle, but the effect of different layers of fields can also be obtained by specifying a field type or damage type of -1.
There is also a change to the dialog engine:
* Calling setText() also implicitly calls recalcRect()
The limit of 3 saved item rectangles has been removed - you can now add as many as you want.
However, the 1 per town limit is now strictly enforced.
The saved item rectangle is now shown with a cyan border when editing town.
In effect, this is a combination of two of the previous pickers:
the location picker, and the editable string picker.
This required quite a significant rework of how the tilemap places its children.
Currently it's only used in special node editing.
I plan to add its use in many other places too though.