Skip to content

Conversation

@SilverDorian46
Copy link
Contributor

@SilverDorian46 SilverDorian46 commented Jan 10, 2026

Quick disclaimer: this isn't quite ready to merge yet. for the time being, this PR is mainly for discussion and gathering feedback.

About Scenery Tiles

besides Solid and Background Tiles, a room has additional layers known as "Scenery Tiles", which are placed in the same way and have the feature of overlaying on the tiles beneath them, replacing their appearance.
there are three layers of Scenery Tiles:

  • Scenery FG: these are overlaid on Solid Tiles. they also mask lighting.
  • Scenery BG: these are overlaid on Background Tiles.
  • Scenery Obj: these are overlaid on entities with a Tile Interceptor component (e.g. Dash Blocks, Fake Walls). note that in order for this to work, those entities have to not be moved from their position before their Update is called.

the value of each Scenery Tile is an integer which corresponds to which tile to use from the Scenery Tileset. -1 means that no Scenery Tile is overlaid on that position.

the Scenery Tileset is hardcoded for "tilesets/scenery", but this PR aims to provide a way for mappers to set a custom path for it.

SceneryTiles metadata

this PR implements a new Map Meta property called SceneryTiles, which takes a string value indicating the path, relative to the Gameplay atlas, for the custom texture to use. this will allow mappers to place their own tiles to overlay onto the terrain.

Possible improvements?

while this has been a simple feature to implement, I've had some thoughts about how it could be improved.
as of now, the meta property just takes a path to a custom texture, but this might be better implemented as a new type of XML bank, providing more customisability for Scenery Tiles.
for example, one possible setting could be whether a tile should mask lighting or not.
an ability to use multiple Scenery Tilesets might also help for collabs where different maps would be brought together.
mods could also add their own options if desired.

of course, there's also the matter of supporting all this with map making tools like Lönn, but that's a topic for another time.
(by the way, I've written some Lönn plugins you could use to test it out. you can get them from my repositories)

for now, feel free to comment with more ways on how this feature could be improved

@maddie480-bot maddie480-bot added the 1: review needed This PR needs 2 approvals to be merged (bot-managed) label Jan 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1: review needed This PR needs 2 approvals to be merged (bot-managed)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants