TMXL Map Toolkit for adding, editing, and replacing maps, as well as creating buildables. (Previously known as TMXLoader.)
TMXL Map Toolkit
PERMISSIONS AND CREDITS
Credits and distribution rights
- Assets of other users: All of the assets in this file are either the author’s or free-to-use modder’s TMXL Map Toolkit resources.
- Upload authorization: Under no circumstances are you permitted to upload this TMXL Map Toolkit file to other websites.
- Permission to modify: You must obtain my permission before modifying my TMXL Map Toolkit files in order to improve them.
- Permission to convert: Under no circumstances are you permitted to convert this file for use in other games.
- Permission to use assets: You must obtain my permission before using any of the assets in this TMXL Map Toolkit file.
- Asset use permission in purchased mods/files: You are not permitted to use assets from this file in any mods or files that are sold for a fee on Steam Workshop or other platforms.
- Permission to use assets in mods/files that earn donation points: If your mods use my assets, you must obtain permission to earn Donation Points.
Notes from the Author
This author has made no additional notes about TMXL Map Toolkit file permissions.
Credits should be filed
Both of the examples included are ports of Mods by UlithiumDragon.
Some changes that should help with Android
Buildables Indoors can use Colors & Variables in properties
Fixes Buildables not beieng removed on custom maps
Fixes merges that were broken in 1.8.4
Allows Image Layers on Buildables, clears area before building, adds coloring options if the buildables was set up for it.
Fix for buildables in multiplayer
Previously known as TMXLoader. TMXL Map Toolkit has been renamed the pure. The tmx-file-loading component of this mod is now included in SMAPI (3.2+).
Image Layers for Buildables
To use Image layers, their names must end with “UNIQUEID,” such as “MyLayer-UNIQUEID,” except on indoor maps.
To enable coloring, the Image Layer must have two properties: “Color,” which holds a default RGBA value such as “255 255 255 255” for white, and “ColorId,” which can be anything. Layers with the same “ColorId” property will be colored in the same way.
By pressing F2, you can build or remove buildables (can be changed in the config file)
To remove the last Buildable from the map, press BACKSPACE while the menu is open.
Regularly constructible Map changes:
"name": "Some Building",
Setting festival spots for NPCs that don’t have one.
Format festival spots:
”position”: [19, 35],
|? Jungle Temple and City Bus (Cut Content)||Content Pack for TMX Loader, Maps by Ulithium Dragon|
|? Spouse Room Template||Template for a Spouse Room. Example Map by HopeWasHere|
How it works
Json Structure of ContenPacks content.js:
“addMaps”: // New Maps
“name”: “JungleTempleExterior”, // Name of the new Location
“file”: “JungleTempleExterior.tmx”, // Filename inside the ContentPacks folder
“mergeMaps”: // Replace parts of Maps
“name”: “Woods”, // Map to merge into
“sourceArea”: [0,0,12,12], // Area on your Map that you want to place (x, y, width, height)
“position”: [0,0], // Position were the new Content should be placed on the map (x, y)
“addWarps”: // add Warps (“entryX entryY TargetLocation exitX exitY”)
“7 -1 JungleTempleExterior 14 34”,
“removeWarps”: // removes existing Warps (“entryX entryY TargetLocation exitX exitY”)
“7 -1 JungleTempleExterior 14 34”,
“replaceMaps”: // Fully replace Maps
“name”: “Woods”, // Map to replace
“onlyWarps”: // Only change Warps
“12 8 CityBus 2 6”
Drawing more than just the standart layers:
Add the property Draw/DrawAbove or DrawBefore to the layer you want to see drawn in the game, the value needs to be the layer that is it drawn after/before, for exp. Back if you want another Back-Layer.
Added TileActions (1.0.1), used either in the Action or TouchAction Property.
And since 1.1.0 you can also use the map property “EntryAction” which will be triggered whenever the player enters the map.
- Say YourText
Same as Message used to work but without the ” “
Say Dwarvish YourText
Same as Say but shows the text in dwarvish if the player doesn’t have the translation guide.
- SwitchLayers Layer1:Layer2
Switches two layers, even layers that aren’t actually drawn.
Switches only the specified Tile between layers x:y
- SwichLayers Layer1:Layer2:1–5:5–7
Switches the specified Area between layers x1-x2:y1-y2
SwitchLayers Actions can be combined by just writting them one after the other exp:
SwitchLayers Buildings:BuildingsOpen:4:6-9 Buildings:BuildingsOpen:9:5 Front:FrontOpen:4:6-9 AlwaysFront:AlwaysFrontOpen:4:6-9
- Lock 1 380
Invokes a TileAction if the Active object is of the specified index Lock amount index
Requires further properties on the same tile:
Success Action triggered when using the right object in at least the right amount
Failure Action triggerd when using the wrong object or not enough
Default Action triggered when holding no object
(New in 1.1.0)
Lua YourFolderName YourFunction
Invokes a function from any of your lua scripts
Lua functions must take three paramters: location, tileposition & layerid
pc = false
function startPC(location, tilepos, layer)
if pc then
TMX.getTile(location,”Front”,36, 12).TileIndex = 991
pc = false
TMX.getTile(location,”Front”,36, 12).TileIndex = 1153
pc = true
Furthermore, by adding the following properties to the same Tile, each Action (and TouchAction) can be made conditional:
Condition A condition that can be either an event condition (Event preconditions) or, if prefixed by PC, a player condition (but not mixed yet)
If the condition is not met, a fallback action is triggered (optional)
CatPerson, isMale, exhausted, hasGreenhouse, hasRustyKey, hasSkullKey, hasUnlockedSkullDoor, hasDarkTalisman, hasMagicInk, running, usingTool, usingSlingshot, bathingClothes, stardewHero, hasClubCard, canUnderstandDwarves are currently supported player conditions.
Conditions and the Participant
Conditions can be inverted by prefixing them with NOT.
Actions are still limited, but they will be expanded. If you require a specific TileAction, please contact me on the SMAPI Discord (@Routine).
SMAPI Mods can add their own Tileactions using PyTK:
TileAction Say = new TileAction(“Say”, sayAction).register();
The Draw/DrawBefore/DrawAbove commands do not always work with the Front layer.
SMAPI warns that uninstalling this mod “may corrupt your save files or render them unusable.”
This is due to the fact that TMXL Map Toolkit accesses properties that COULD be used to change the serializer in this manner, but does not do so.
So, contrary to what the warning implies, your save files will not be corrupted or rendered unusable as a result of using or uninstalling this TMXL Map Toolkit mod.
- If you like this mods and want to support creator, you can do so via Paypal or on Patreon
- If you have any questions you can usually find creator on the Stardew Valley Discord under the username Routine#8715