Scenery option for Stacking Rooms

Basically what the title says, I'm wondering if there's an easy way to set "scenery" to "true" for rooms like you can for objects. Related to the "room management" thread but that post is closed and didn't have what I was looking for.

Basically I nest rooms within rooms because it's easier from an organizational standpoint. Like I might have

  1. Crossroads
    1a. Dirt path
  2. Town Gate
    2a. Town Square
    2b. Residential
    2b1. Players home
    2b2. NPC home

The same way you might make an outline for a school paper. The problem is, when I get to room "Town Entrance", it says that I can see a "Town square" and a "Resedential" in the room, along with any signs or regular objects I might put near the town gate. Which, yea, technically they are contained within the town, but I don't want it listing the name of every room contained within the "Town Gate".

I know for objects there is an option to mark as scenery so it is not displayed in the room's description. And since rooms and objects are technically the same according to the tutorial, I figured there must be a way to set that same "scenery" option to the rooms themselves, so I wouldn't see everything within the town listed as soon as I got to the main gate.

Im coming from RPG Maker logic so it makes much more sense to me to stack rooms inside rooms for organization, then connect the exits yourself.

Something like;
Region 1
-Town A
-Town A Shop
-Town B
-Town B Shop
-Mountain A
-Mountain A cave
-Mountain B

Anyways let me know if there's a script/ method to set the scenery option for rooms to "true"

The selector where you choose "Object" or "Room" on the first tab is mostly responsible for determining which tabs are shown in the editor.

If you set the type to "Object and/or room" rather than just "room", the editor will show all of the tabs, allowing you to select "scenery". If you hide the tabs again, the attribute will remain set.

If you're using the desktop editor, an alternative would be to use the 'Attributes' tab; creating an attribute named scenery with the value true.

Or if you don't want to do it for every room individually, you could use a start script to change all rooms to scenery when the game starts:

foreach (obj, AllObjects()) {
  if (GetBoolean (obj, "isroom")) {
    obj.scenery = true

Thanks, I think I'll do the script option because I don't think I need any rooms to appear in the description. Also, if I do, I can just add text to the default description or something, but that's much more the exception than the rule in my case

The script only works for actual rooms, I believe. For "Object and/or room", it would leave the scenery attribute untouched. So that's a way to override it if you want a non-scenery room.

Log in to post a reply.