Kit d'outils pour ajouter/modifier/remplacer des cartes et créer des buildables. (anciennement appelé TMXLoader).
Boîte à outils cartographique TMXL
par PlatonymeAnciennement nommé TMXLoader. Rebaptisé
Boîte à outils cartographique TMXLcar la partie de chargement de fichier .tmx pure de ce mod fait désormais partie de SMAPI (3.2+)
Nouveautés de la version 1.8.4Calques d'image pour les éléments constructiblesPour utiliser les calques d'image, leur nom doit se terminer par « UNIQUEID » comme « MyLayer-UNIQUEID », mais pas sur les cartes intérieures.
Coloriage pour les objets à construire
Pour permettre la coloration, le calque Image doit posséder deux propriétés : « Couleur » contenant une valeur RVB par défaut, telle que « 255 255 255 255 » pour le blanc, et une propriété « ColorId » dont la valeur peut être quelconque. Tous les calques partageant une propriété « ColorId » seront colorés de la même manière.
Nouveautés de la version 1.8.0 :Éléments constructibles :Les éléments constructibles peuvent être construits ou supprimés en appuyant sur F2 (peut être modifié dans le fichier de configuration)
Pour supprimer le dernier élément constructible placé sur la carte, appuyez sur RETOUR ARRIÈRE tout en ayant le menu ouvert.
Modifications régulières de la carte constructible :
« constructibles » : [
{
"id":"Platonymous.Buildable",
"nom": "Constructible",
"fichier": "assets/Buildable.tmx",
"iconFile": "assets/icon.png",
"removeEmpty":false,
"prix":10000,
"set:": "Autres"
},
]
Bâtiments :
« constructibles » : [
{
"id":"Platonymous.SomeBuilding",
"nom": "Un bâtiment",
"fichier": "assets/SomeBuilding.tmx",
"indoorsFile":"assets/SomeBuildingInterior.tmx",
"exitTile":[1,3],
"iconFile": "assets/SomeIcon.png",
"removeEmpty":false,
"buildItems":[
{
"index":388,
"pile":100
},
{
"nom": "Panais",
"pile":1
}
],
"prix":10000
}
]
exitTile est le point vers lequel un joueur se téléporte lorsqu'il sort d'un bâtiment. Pour vous téléporter vers ce point, utilisez l'action ou la touche TouchAction
SortieConstructiblesur la carte ou (avec 1.8.8+) utilisez BUILDINGLOCATION EXITXY dans la propriété Warp, comme "Warp" : "9 24 BUILDLOCATION EXITXY".
Sur le Buildable (extérieur), chaque INDOORS ou UNIQUEID utilisé dans les propriétés sera remplacé par les valeurs générées. pour se déformer vers l'intérieur, utilisez pour exp :
Warp 14 3 INTÉRIEURNouveautés de la version 1.4.2 :Définir des emplacements de festival pour les PNJ qui n'en ont pas.
Format des spots du festival : "festivalSpots" :
[
{
"nom": "Sandy",
"carte": "Ville-Foire",
« position » : [19, 35],
« direction » : 1
}
]Nouveautés de la version 1.4.0 :Ajout d'un moyen plus simple d'ajouter des chambres pour conjoints à l'aide du
Modèle de chambre pour conjointque vous trouverez sous les fichiers optionnels
si vous créez un mod avec le modèle,
ne pasinclure le fichier towninterior.png lors de sa publication.
Changement important dans la version 1.3.0 :TMXL utilise désormais les ContentPacks SMAPI, ce qui signifie que tous les packs vont directement dans le dossier mod et que le ContentPack des deux exemples doit être téléchargé séparément (fichiers facultatifs).
Comprend deux exemples des deux ports de
Mods UlithiumDragons (contenu coupé et temple de la jungle).
Les calques supplémentaires et les nouvelles TileActions fonctionneront également dans les cartes non importées avec TMXL.
Structure Json de ContentPacks content.js :Becquet:
Montrer
{
"addMaps":// Nouvelles cartes
[
{
"nom": "JungleTempleExterior",// Nom du nouvel emplacement
"fichier": "JungleTempleExterior.tmx",// Nom de fichier dans le dossier ContentPacks
},
...
],
« mergeMaps » :// Remplacer des parties de cartes
[
{
"nom": "Woods",// Carte à fusionner dans
"fichier": "Woods.tmx",
"sourceArea": [0,0,12,12],// Zone sur votre carte que vous souhaitez placer (x, y, largeur, hauteur)
"position": [0,0],// Position où le nouveau contenu doit être placé sur la carte (x, y)
"addWarps":// ajouter des Warps ("entryX entryY TargetLocation exitX exitY")
[
"7 -1 JungleTempleExtérieur 14 34",
....
],
"supprimer les déformations" :// supprime les Warps existants ("entryX entryY TargetLocation exitX exitY")
[
"7 -1 JungleTempleExtérieur 14 34",
....
]
},
...
],
"replaceMaps":// Remplacer complètement les cartes
[
{
"nom": "Woods", // Carte à remplacer
"fichier": "Woods.tmx",
},
...
],
"onlyWarps":// Ne changez que les Warps
[
{
"nom": "Arrêt de bus",
"addWarps": [
« 12 8 CityBus 2 6 »
]
}
],
"scripts":["script.lua"]
}
Fonctionnalités supplémentaires :
Dessiner plus que les calques standards :
Ajouter la propriété
Dessiner/Dessiner au-dessus ou Dessiner avantpour le calque que vous souhaitez voir dessiné dans le jeu, la valeur doit être le calque après/avant lequel il est dessiné, pour exp.
Dossi vous voulez une autre couche arrière.
Ajout de TileActions (1.0.1), utilisé soit dans la propriété Action, soit dans la propriété TouchAction.
Et depuis la version 1.1.0, vous pouvez également utiliser la propriété de carte « EntryAction » qui sera déclenchée chaque fois que le joueur entre sur la carte.
DireVotre texte
Même chose que Message qui fonctionnait auparavant, mais sans le « »
Dites NainVotre texte
Identique à Say mais affiche le texte en nain si le joueur n'a pas le guide de traduction.SwitchLayersCouche 1 : Couche 2
Bascule entre deux calques, même ceux qui ne sont pas réellement dessinés.
SwitchLayersCouche 1 : Couche 2
:14:17Bascule uniquement la tuile spécifiée entre les calques x:ySwichLayersCouche 1 : Couche 2 : 1
-5:5
-7
Bascule la zone spécifiée entre les calques x1-x2:y1-y2
Les actions SwitchLayers peuvent être combinées en les écrivant simplement l'une après l'autre exp :
SwitchLayers Bâtiments : Bâtiments Ouverts : 4:6-9 Bâtiments : Bâtiments Ouverts : 9:5 Façade : Façade Ouverte : 4:6-9 Toujours Façade : Toujours Façade Ouverte : 4:6-9
Verrouillage1 380
Appelle une TileAction si l'objet actif est de l'index spécifié. Index de montant de verrouillage
Nécessite d'autres propriétés sur la même tuile :
SuccèsAction déclenchée lors de l'utilisation du bon objet dans au moins la bonne quantitéÉchecAction déclenchée lors de l'utilisation du mauvais objet ou d'une quantité insuffisanteDéfautAction déclenchée lorsque vous ne tenez aucun objet(Nouveau dans la version 1.1.0)
LuaVotreNomDeDossier VotreFonction
Appelle une fonction à partir de n'importe lequel de vos scripts Lua
Les fonctions Lua doivent prendre trois paramètres : location, tileposition et layerid
Exemples Lua
pc = faux
fonction startPC(emplacement, tilepos, couche)
si PC alors
Game1.playSound("pièce")
TMX.getTile(emplacement,"Avant",36, 12).TileIndex = 991
pc = faux
autre
Game1.playSound("étoile")
TMX.getTile(emplacement,"Avant",36, 12).TileIndex = 1153
pc = vrai
fin
fin
De plus, chaque action (et TouchAction) peut être définie comme conditionnelle en ajoutant les propriétés suivantes à la même tuile :
ConditionUne condition soit sous la forme d'une condition d'événement (Conditions préalables à l'événement) ou si préfixé parPCune condition de joueur (mais pas encore mélangée)RetomberAction déclenchée si la condition n'est pas remplie (facultatif)
Conditions de joueur actuellement prises en charge : catPerson, isMale, exhausted, hasGreenhouse, hasRustyKey, hasSkullKey, hasUnlockedSkullDoor, hasDarkTalisman, hasMagicInk, running, usingTool, usingSlingshot, bathingClothes, stardewHero, hasClubCard, canUnderstandDwarves
Les conditions et les conditions du joueur peuvent être préfixées par
PASles inverser.
Les actions sont encore très limitées, mais seront développées. Si vous avez besoin d'une TileAction spécifique, n'hésitez pas à me la suggérer sur le
SMAPI Discort(@Routine)
Les mods SMAPI peuvent ajouter leurs propres Tileactions à l'aide de PyTK :
en utilisant PyTK.Types ;
TileAction Say = new TileAction("Dire", sayAction).register();
Bugs connus :Draw/DrawBefore/DrawAbove ne fonctionne pas toujours avec la couche Front.
Modification du sérialiseur de sauvegarde Avertissement
SMAPI prévient que ce mod « peut corrompre vos fichiers de sauvegarde, ou les rendre inutilisables si vous le désinstallez ».
C'est parce que TMXL accède à des propriétés qui POURRAIENT être utilisées pour modifier le sérialiseur de cette manière, mais ne le modifie pas réellement.
Ainsi, malgré ce que dit l'avertissement, vos fichiers de sauvegarde ne seront pas corrompus ou ne deviendront pas inutilisables lors de l'utilisation ou de la désinstallation de ce mod.
Si vous avez des questions, vous pouvez généralement me trouver sur le
Stardew Valley Discordsous le nom d'utilisateur
Routine#8715
Si vous aimez mes mods et souhaitez me soutenir, vous pouvez le faire via
PayPalou sur
Patreon.