Object Import Map

Object Import Map

375 Downloads
This mod lets you use a tmx map file to import the following items directly onto the current map:


    Fully-grown trees
    Ordinary objects
    Fully-grown crops
    Planted seeds
    Pre-tuned flute blocks (and preset tones using Advanced Flute Blocks)
    Preset drum blocks
    Flooring tiles
    Train Tracks (using the Train Tracks mod)

To import a premade object import map:


    Place the map in this mod's assets folder and name it import.tmx.
    Go to the target map in-game and type /importmap and hit Enter.

If you want to empty the map first, you can type /nukemap and press Enter. This nukes pretty much everything on the map minus NPCs and buildings.




Creating Maps

This part assumes you know how to use Tiled with Stardew Valley maps.

Copy the map file for the target map into the mod's assets folder and add layers according to what type of thing you want to import.

Add the corresponding tilesheets as well and link them to the png files in this mod's assets folder.

You may have to redirect the existing tilesheets to files in this mod's assets folder in order to make them show properly.

Add the proper tiles from the proper tilesheet to the proper layer and save the map.

There is an example map called EXAMPLE_import.tmx file included in the assets folder that you can use as a guide.


Trees

To add trees, create a tile layer called Trees and use the Paths tilesheet to add trees according to the tree symbols on the Paths tilesheet.  Tree types are as follows:


    1 - Oak
    2 - Maple
    3 - Pine
    6 - Desert Palm
    7 - Ginger Island Palm
    9 - Mahogany


Objects

To add objects, create a tile layer called Objects and add tiles using a tilesheet with the springobjects.png as its source.

Lots of objects should not really be spawned this way, but some of them turn out okay.


Crops and Seeds

To add crops and seeds, use the Objects layer as above and add the corresponding tile from springobjects.png.

Seed packets spawned this way will be planted, and produce that has a corresponding seed will be planted fully-grown.


Flute and Drum Blocks

For flute blocks, create a tile layer called FluteBlocks and add tiles using a tilesheet with the fluteblocks.png file as its source.

Flute block tunes can be changed if you have Advanced Flute Blocks installed. The five rows of tiles in the tilesheet correspond to the following tones:


    flute
    toyPiano
    crystal
    clam_tone
    toolCharge

Note that some of these tones are pitched differently from each other.

For drum blocks, create a tile layer called DrumBlocks and add tiles using a tilesheet with the drumblocks.png file as its source.

Drum block indexes (1-7) correspond to the seven drum sounds made by drum blocks.


Flooring

To add flooring, create a tile layer called Flooring and add tiles using a tilesheet with the flooring.png file as its source.

There are 17 different types of flooring.


Train Tracks

To add train tracks, create a tile layer called TrainTracks and add tiles using a tilesheet with the traintracks.png file as its source.

To trigger a speed change on a specific tile, create an object layer called TrainTracks and add an object called TileData with a custom property called Speed, and set the value of the property to a positive integer.

To trigger automatic turns on forked tiles, use the TrainTracks object layer as above and add an object called TileData with a custom property called Switches.

The value for the Switches property should be a comma-separated list of <FacingDirection>:<TurnDirectionList>.

<FacingDirection>  should be a number 0 - 3 (0 = up, 1 = right, etc.).

<TurnDirectionList>
should be a list of numbers 0 - 3 as above separated by spaces.

E.g.: 0:1 3,2:1 3 means if the train enters the tile facing up (0) or down (2), the first time it should turn to the right of the screen (1) and the second time it should turn to the left of the screen (3).

You must have the Train Tracks mod installed to add train tracks.


Technical

Requires SMAPI, uses Harmony.

Compatible with Mod Updater for automatic updates.

Code is at https://github.com/aedenthorn/StardewValleyMods.

If you want to complain or ask for help or help me test my mods, you can visit my Discord server.

A list of all my mods for Stardew Valley is available at https://www.nexusmods.com/stardewvalley/articles/895.