• New entity type: separators

    by  • July 27, 2013 • News • 3 Comments

    I have finished another new feature for Solarus 1.1: you can now separate a map in different regions. When you are in a region, you cannot see adjacent regions. And when you touch the limit of the region, the camera scrolls to the region on the other side.

    You can use this feature to visually separate rooms that are in the same map. In ZSDX, when you are in a room of a dungeon, you can also see parts of the adjacent rooms. If you want to only show the current map (like in Zelda ALTTP), it is possible now. With the quest editor, you create a separator, which is a vertical or horizontal bar that you place on your map.

    Separators implictly define regions on your map. Thus, you can also use this feature to make a minimap that shows the visited rooms of the dungeon.

    3 Responses to New entity type: separators

    1. Mattias Päivärinta
      July 28, 2013 at 9:55 am

      I think Solarus is awesome and I really like the direction it’s taking. Moreover, I was wishing for this particular feature just last night! Do you have some kind of roadmap for Solarus 1.1?

      I’ve got this idea to procedurally generate The Legend of Zelda-like dungeons for Solarus. I haven’t tried out these new separators yet, but I can’t imagine they won’t fit right in!

      In this generation endavour I’m also thinking of submitting a patch for reloading maps in the quest editor from disk without closing and reopening a map.

    2. July 28, 2013 at 11:19 am

      Hi!
      Thanks for your message.
      The roadmap of Solarus 1.1 is the list of issues planned for 1.1: https://github.com/christopho/solarus/issues?milestone=2&state=open
      Important things were done (customizable dialogs, separators…) and there is a lot of work remaining. More nice features are planned, like new kinds of movements and new kinds of tiles.
      After 1.1, I want to allow fully customizable map entities (entirely scripted in Lua) and the same thing for hero states.

      Dungeons procedurally generated would be awesome :)
      You are right, separators will be great for them. And yes, you will need a way to modify a map dynamically, which is not possible for now (especially for the map being played!). Your patch will be welcome.

    3. Mattias Päivärinta
      July 28, 2013 at 10:43 pm

      I’m actually rendering the maps statically using a completely separate script. It’s a breeze to write a custom serializer for the map file format. I hope I won’t have to generate too much lua :)

      In order to make a dungeon out of the Test map I had to sprinkle a few lines here and there in a few files (notably dungeons.lua and strings.dat). I believe dynamic modifications might be a good solution to situations like that. But as long as I can overwrite entire files, I’ll opt for that. I don’t think rearranging dungeons in the middle of a game would be a good idea – unless you’re basing a game on Dark City, of course :)

    Leave a Reply

    Your email address will not be published. Required fields are marked *