Changes

Jump to navigation Jump to search
1,751 bytes added ,  05:07, 21 April 2020
→‎Map properties: add forceLoadPathLayerLights, ProduceArea, ScreenshotRegion, Stumps; clarify Doors, TreatAsOutdoors, UniquePortrait, UniqueSprite and methods
Line 406: Line 406:  
| <tt>BrookSounds [{{t|int x}} {{t|int y}} {{t|int type}}]</tt><br />''(valid in outdoor locations)''
 
| <tt>BrookSounds [{{t|int x}} {{t|int y}} {{t|int type}}]</tt><br />''(valid in outdoor locations)''
 
| Adds sound sources. The {{t|x}} {{t|y}} fields are the tile coordinates, and {{t|type}} is the ambient sound ID. The {{t|type}} of sound can be one of...
 
| Adds sound sources. The {{t|x}} {{t|y}} fields are the tile coordinates, and {{t|type}} is the ambient sound ID. The {{t|type}} of sound can be one of...
* 0 (babblingBrook);
+
* <tt>0</tt> (babblingBrook);
* 1 (cracklingFire);
+
* <tt>1</tt> (cracklingFire);
* 2 (engine);
+
* <tt>2</tt> (engine);
* 3 (cricket).
+
* <tt>3</tt> (cricket).
 
|-
 
|-
 
| <tt>DayTiles [{{t|string layerName}} {{t|int x}} {{t|int y}} {{t|int tilesheetIndex}}]+</tt><br />''(valid in any location)''
 
| <tt>DayTiles [{{t|string layerName}} {{t|int x}} {{t|int y}} {{t|int tilesheetIndex}}]+</tt><br />''(valid in any location)''
 
| Sets tiles to appear between 6AM to 7PM. Anytime before 7pm, this finds the tile at position ({{t|x}}, {{t|y}}) on the map layer matching {{t|layerName}}, changes its tilesheet index to the specified {{t|tilesheetIndex}}, and adds a glow to simulate daylight. The glow will only be added if the location is indoors and the {{t|tilesheetIndex}} is 256, 288, 405, 469, or 1224. The parameters can be repeated to affect multiple tiles.<br />''Example: <tt>DayTiles Front 3 1 256 Front 3 2 288</tt>.''
 
| Sets tiles to appear between 6AM to 7PM. Anytime before 7pm, this finds the tile at position ({{t|x}}, {{t|y}}) on the map layer matching {{t|layerName}}, changes its tilesheet index to the specified {{t|tilesheetIndex}}, and adds a glow to simulate daylight. The glow will only be added if the location is indoors and the {{t|tilesheetIndex}} is 256, 288, 405, 469, or 1224. The parameters can be repeated to affect multiple tiles.<br />''Example: <tt>DayTiles Front 3 1 256 Front 3 2 288</tt>.''
 
|-
 
|-
| <tt>Doors {{t|int x}} {{t|int y}} {{t|string sheetID}} {{t|int tileID}}</tt><br />''(valid in any location)''
+
| <tt>Doors [{{t|int x}} {{t|int y}} {{t|string sheetID}} {{t|int tileID}}]+</tt><br />''(valid in indoor locations)''
| Adds a door. The {{t|x}} {{t|y}} fields are the tile coordinates, {{t|sheetID}} is the name of the sheet containing the door sprite, and {{t|tileID}} is the tile index in the spritesheet.
+
| Adds functionality to interior doors. Used with <tt>Action Door</tt> tile properties. The {{t|x}} {{t|y}} fields are the tile coordinates, {{t|sheetID}} is the name of the sheet containing the door sprite, and {{t|tileID}} is the tile index in the spritesheet.
 
|-
 
|-
 
| <tt>Fall_Objects T</tt>²<br /><tt>Spring_Objects T</tt>²<br /><tt>Summer_Objects T</tt>²<br /><tt>Winter_Objects T</tt>²
 
| <tt>Fall_Objects T</tt>²<br /><tt>Spring_Objects T</tt>²<br /><tt>Summer_Objects T</tt>²<br /><tt>Winter_Objects T</tt>²
 
| Whether to spawn seasonal objects on spawnable tiles based on the data in <tt>Data\Locations.xnb</tt>.<br />''Example: <tt>Fall_Objects</tt>.''
 
| Whether to spawn seasonal objects on spawnable tiles based on the data in <tt>Data\Locations.xnb</tt>.<br />''Example: <tt>Fall_Objects</tt>.''
 +
|-
 +
| <tt>forceLoadPathLayerLights T</tt>²<br />''(valid in outdoor non-festival locations)''
 +
| Forces lights to be loaded from the <tt>Paths</tt> layer on maps where they would not normally be.<br />''Example: <tt>forceLoadPathLayerLights true</tt>.''
 
|-
 
|-
 
| <tt>Light [{{t|int x}} {{t|int y}} {{t|int type}}]+</tt><br />''(valid in any location)''
 
| <tt>Light [{{t|int x}} {{t|int y}} {{t|int type}}]+</tt><br />''(valid in any location)''
 
| Adds light sources. The {{t|type}} field is the kind of light source (e.g. 4 for twin candles), and {{t|x}} {{t|y}} are the tile coordinates.The {{t|type}} of light source can be one of...
 
| Adds light sources. The {{t|type}} field is the kind of light source (e.g. 4 for twin candles), and {{t|x}} {{t|y}} are the tile coordinates.The {{t|type}} of light source can be one of...
* 1 (lantern);
+
* <tt>1</tt> (lantern);
* 2 (window);
+
* <tt>2</tt> (window);
* 4 (sconce);
+
* <tt>4</tt> (sconce);
* 5 (cauldron);
+
* <tt>5</tt> (cauldron);
* 6 (indoor window);
+
* <tt>6</tt> (indoor window);
* 7 (projector).
+
* <tt>7</tt> (projector).
 
Any other value will crash the game.<br />''Example: <tt>Light 3 8 4 6 8 4 11 8 4 3 2 5 10 2 5 6 19 5 5 15 5 5 11 5 11 12 5</tt> (Adventurer's Guild).''
 
Any other value will crash the game.<br />''Example: <tt>Light 3 8 4 6 8 4 11 8 4 3 2 5 10 2 5 6 19 5 5 15 5 5 11 5 11 12 5</tt> (Adventurer's Guild).''
 
|-
 
|-
Line 437: Line 440:  
|-
 
|-
 
| <tt>NightTiles [{{t|string layerName}} {{t|int x}} {{t|int y}} {{t|int tilesheetIndex}}]+</tt><br />''(valid in any location)''
 
| <tt>NightTiles [{{t|string layerName}} {{t|int x}} {{t|int y}} {{t|int tilesheetIndex}}]+</tt><br />''(valid in any location)''
| Changes the tile after 7pm. Outside, it works along <tt>DayTiles</tt>: set a DayTiles tile for the map to load between 6am to 7pm, then a NightTiles to load between 7pm to the end of the day. It is mostly used for lamps in the game.
+
| Changes the tile after 7pm. Outside, it works along <tt>DayTiles</tt>: set a <tt>DayTiles</tt> tile for the map to load between 6am to 7pm, then a <tt>NightTiles</tt> to load between 7pm to the end of the day. It is mostly used for lamps in the game.
 
|-
 
|-
 
| <tt>Outdoors T</tt>²<br />''(valid in any location)''
 
| <tt>Outdoors T</tt>²<br />''(valid in any location)''
 
| Sets whether the location is outdoors.<br />''Example: <tt>Outdoors true</tt>.''
 
| Sets whether the location is outdoors.<br />''Example: <tt>Outdoors true</tt>.''
 
|-
 
|-
| <tt>TreatAsOutdoors T</tt>²<br />''(valid in any location)''
+
| <tt>ProduceArea {{t|int x}} {{t|int y}} {{t|int width}} {{t|int height}}</tt><br />''(valid in coops and barns)''
| The location is treated as outdoors for the purposes of spawning debris and similar mechanics.
+
| Sets the area where animals can spawn within a coop or barn.<br />''Example: <tt>ProduceArea 6 4 8 7</tt>.''
 +
|-
 +
| <tt>ScreenshotRegion {{t|int left}} {{t|int top}} {{t|int right}} {{t|int bottom}}</tt><br />''(valid in any location)''
 +
| Constrains the portion of the map rendered when screenshots are taken.<br />''Example: <tt>ScreenshotRegion 0 27 69 61</tt>.''
 +
|-
 +
| <tt>Stumps [{{t|int x}} {{t|int y}} {{t|unused}}]+</tt><br />''(valid in Secret Woods)''
 +
| Adds stumps to the Secret Woods map daily. The third field for each stump appears to be unused.<br />''Example: <tt>Stumps 24 6 3 29 7 3 26 10 3 46 6 3 34 26 3 41 26 3</tt>.''
 +
|-
 +
| <tt>TreatAsOutdoors T</tt>²<br />''(valid in indoor locations)''
 +
| The location is treated as outdoors for the purposes of spawning anything other than lights from the <tt>Paths</tt> layer and yielding [[Coal]] from breaking rocks.
 
|-
 
|-
 
| <tt>Trees [{{t|int x}} {{t|int y}} {{t|int type}}]+</tt>
 
| <tt>Trees [{{t|int x}} {{t|int y}} {{t|int type}}]+</tt>
Line 449: Line 461:  
|-
 
|-
 
| <tt>UniquePortrait [{{t|str name}}]+</tt><br />''(valid in any location)''
 
| <tt>UniquePortrait [{{t|str name}}]+</tt><br />''(valid in any location)''
| ?
+
| Switches the portraits for the named NPCs to the unique variants for the location. An NPC <tt>Jane</tt> in location <tt>Room</tt> will switch to portrait <tt>Portraits/Jane_Room</tt>.<br/>''Example: <tt>UniquePortrait Maru</tt>.''
 
|-
 
|-
 
| <tt>UniqueSprite [{{t|str name}}]+</tt><br />''(valid in any location)''
 
| <tt>UniqueSprite [{{t|str name}}]+</tt><br />''(valid in any location)''
| ?
+
| Switches the spritesheets for the named NPCs to the unique variants for the location. An NPC <tt>Jane</tt> in location <tt>Room</tt> will switch to spritesheet <tt>Characters/Jane_Room</tt>.<br/>''Example: <tt>UniqueSprite Maru</tt>.''
 
|-
 
|-
 
| <tt>ViewportFollowPlayer T</tt>²<br />''(valid in any location)''
 
| <tt>ViewportFollowPlayer T</tt>²<br />''(valid in any location)''
Line 463: Line 475:  
The following properties are used but apparently have no effect: <tt>Arch</tt>, <tt>Debris</tt>, and <tt>Fish</tt>.
 
The following properties are used but apparently have no effect: <tt>Arch</tt>, <tt>Debris</tt>, and <tt>Fish</tt>.
   −
<small>¹ Map properties are handled in <tt>GameLocation::resetForPlayerEntry</tt> and <tt>GameLocation::loadObjects</tt>.</small><br />
+
<small>¹ Map properties are primary handled in various methods of the <tt>GameLocation</tt> class, particularly <tt>resetLocalState</tt>.</small><br />
 
<small>² The <tt>T</tt> value (short for ''true'') is conventional, but any non-empty value will work too.</small>
 
<small>² The <tt>T</tt> value (short for ''true'') is conventional, but any non-empty value will work too.</small>
  
37

edits

Navigation menu