Tiled 1.1 Alpha Snapshot
This latest development snapshot includes a huge amount of changes, mostly made by our three Google Summer of Code students as part of their respective projects. This snapshot is essentially a "Tiled 1.1 Alpha" release, including much of the features that can be expected in Tiled 1.1, but not in their final form. I will give a summary for these major additions below.
Ben has been working to add support for Wang tiles. In this snapshot, this change is largely functional and we're eager to get feedback on this feature.
In Tiled, a set of Wang tiles has a certain number of edge or corner colors, which are associated with each edge and/or corner of each tile in the set. Using these colors, you tell Tiled which tiles fit next to each other within the set. Then, you can use this with the existing Stamp and Fill tools to randomly tile certain areas while making sure the tiles fit nicely together. This can help a great deal in avoiding repetitiveness, and it can be used as a way to generate mazes.
In addition, Ben has added a new tool called the "Wang Brush". It is a brush that is aware of the currently selected color, so that you can paint with only that color and it will adjust the tiles accordingly. This works similar to the existing "Terrain Brush", but it is more flexible since it can work with edges as well as corners.
In the future I hope we can merge the terrain tool with the new Wang tool, but their implementation is quite different so this will be a challenge.
Mohamed added the ability to define map object templates. Any already created object can be saved as an object template, as part of a template group. These templates can then be instantiated on object layers. This can save a lot of tedious work of setting up the object type and properties, or even just finding the right tile in the tileset. The template groups can be part of your project and are referred to by the map. You can save them in either XML or JSON format, just like map and tileset files.
Template instantiation works by either dragging and dropping the template from the Templates view into the map, or by using the new "Insert Template" tool, which is more convenient when you want to create many instances.
Templates can be edited in the a dedicated view next to the list of templates. Edits will be immediately visible on affected template instances on the map, except for changes to properties that have been overridden. Work is still being done on the ability to reset overridden properties.
- Delete key deletes selected polygon nodes (#1555, #1682)
- Added action to remove a segment from polygon, to turn it into a polyline (#1685)
- Added support for infinite maps (#260, #1651)
With the addition of "infinite maps", it is no longer necessary to specify the map size when you create a map. Instead, you can specify that your map is infinite and Tiled will allow you to paint tiles anywhere. To do this efficiently, tile layers now only allocate memory for areas where you have placed tiles.
This feature affected a large amount of existing functionality, since there were a lot of places making the assumption that the map was a fixed size. The main noticeable remaining issue is that the scrollable areas isn't getting updated correctly yet, but there are also still fixes needed for Automapping. In addition, the map storage formats still store each tile layer as a single rectangular area, which can waste a lot of memory for large empty areas.
For using maps with currently available frameworks and libraries, it will be necessary to disable "Infinite" in the map properties before saving the map.
- Large refactoring (package changed from "tiled" to "org.mapeditor", model classes generated from updated XSD) (#1637)
- Added HexagonalRenderer (from Tiled Java)
- Refactor tests to load maps from folders and add tests to check for missing files
- Build with Maven instead of Qbs
Many thanks to Mike for picking up libtiled-java maintainership and doing stuff I could never imagine to get around to!
- Linux snapshots updated from Qt 5.8.0 to Qt 5.9.1
Thomas ten Cate
- Added keyboard shortcut for Save All, Ctrl+Shift+L
I'd like to release Tiled 1.1 about a month from now. Until then, the Google Summer of Code students have one last week to make further changes and to write documentation. Personally I will be looking for things to polish as well as to add a few other requested features and of course to update the documentation as well.
So the next two weeks or so would be the best time for feedback that could still be taken into account for the Tiled 1.1 release. Please post on the Tiled forum, create issues on GitHub or visit #tiled on chat.freenode.net (you can join via Riot). We're listening!
Log in with itch.io to leave a comment.
Why does Tiled create a "shortcut" that I can't remove from Desktop or move it to a folder because "There is not enough memory to complete this operation."?
The installer creates a shortcut to provide a quick way to launch Tiled. It should be optional (as should be whether to launch Tiled after installing), but I haven't figured out how to do these things yet. To avoid the installer (and to receive more frequent updates), use the itch.io app and choose the "snapshot" version of Tiled instead of the "release".
I can't tell you why Windows would give you such a confusing error message when trying to remove the shortcut. I have personally never had any problems simply deleting it...
Why ask this question as a reply to an old devlog? :-)