Changes

Jump to navigation Jump to search
→‎Mail: optional param on seenmail
Line 1: Line 1:  
←[[Modding:Index|Index]]
 
←[[Modding:Index|Index]]
 +
 +
{{note box|type=warning|text=<span style="font-size: larger;">'''Console commands aren't meant for general use. Be very careful using them.'''</span>
 +
<br />They can have permanent side-effects on your save data, break your save, or have other unintended effects. If you don't understand the command, don't use it on a save you care about.'''
 +
}}
    
SMAPI provides access to hundreds of console commands with a wide variety of effects, ranging from useful tools to cheats to specialized test commands. These are documented on this page.
 
SMAPI provides access to hundreds of console commands with a wide variety of effects, ranging from useful tools to cheats to specialized test commands. These are documented on this page.
 +
 +
{{TOC}}
    
==Format used on this page==
 
==Format used on this page==
Line 12: Line 18:  
==Console commands==
 
==Console commands==
 
===How to enter console commands===
 
===How to enter console commands===
You must have the Console Commands mod installed to use the commands listed below. That mod is bundled with SMAPI; if you deleted it, just [[Modding:Player Guide/Getting Started|reinstall SMAPI]] to get the mod back.
+
You can enter console commands directly into the SMAPI console window. You can type <code>help</code> to get a list of console commands (including commands added by other mods).
 
  −
You can enter console commands directly into the SMAPI console window (or into the in-game chat if you have {{nexus mod|2092|Chat Commands}} too). You can type <code>help</code> to get a list of console commands (including commands added by other mods).
      
===Items & money===
 
===Items & money===
Line 30: Line 34:  
   |example =
 
   |example =
 
<pre>
 
<pre>
> list_items iridum object
+
> list_items iridium
 
  −
  type |              name |  id
  −
------ | ----------------- | ----
  −
Object |      Iridium Bar |  337
  −
Object |      Iridium Milk |  803
  −
Object |      Iridium Ore |  386
  −
Object | Iridium Sprinkler |  645
  −
</pre>
  −
}}
  −
{{/cmd
  −
  |command = list_item_types
  −
  |params  =
  −
  |desc    = Shows a list of item types that can be used with the <samp>list_items</samp> and <samp>player_add</samp> commands.
  −
 
  −
  |example =
  −
<pre>
  −
> list_item_types
     −
        type
+
                name |                    id
------------
+
-------------------- | ---------------------
BigCraftable
+
   Iridium Fireplace |              (F)1796
      Boots
+
       Iridium Krobus |              (F)2396
    Clothing
+
        Iridium Pan |      (H)IridiumPanHat
    Flooring
+
         Iridium Band |                (O)527
   Furniture
+
        Iridium Bar |                (O)337
        Hat
+
...
       Object
  −
        Ring
  −
         Tool
  −
  Wallpaper
  −
      Weapon
   
</pre>
 
</pre>
 
}}
 
}}
Line 77: Line 59:  
{{/cmd
 
{{/cmd
 
   |command = player_add
 
   |command = player_add
   |params  = {{t|S:item type}}, {{t|I:item ID}}, {{o|I:count}}, {{o|I:quality}}
+
   |params  = {{t|I:item ID}}, {{o|I:count}}, {{o|I:quality}}
   |desc    = Adds an item to your inventory based on its type and ID.
+
   |desc    = Adds an item to your inventory based on its item ID.
    
Parameters:
 
Parameters:
* {{t|S:item type}} is one of <samp>BigCraftable</samp>, <samp>Boots</samp>, <samp>Clothing</samp>, <samp>Flooring</samp>, <samp>Furniture</samp>, <samp>Hat</samp>, <samp>Object</samp>, <samp>Ring</samp>, <samp>Tool</samp>, <samp>Wallpaper</samp>, or <samp>Weapon</samp>.
+
* {{t|I:item ID}} is the unique ID for the item to add (as shown by the <samp>list_items</samp> command).
* {{t|I:item ID}} is the integer item ID (as shown by the <samp>list_items</samp> command).
   
* {{o|I:count}} is how many items to add to your inventory (defaults to 1).
 
* {{o|I:count}} is how many items to add to your inventory (defaults to 1).
 
* {{o|I:quality}} is the quality of the item to create (defaults to normal). This can be one of <samp>0</samp> (normal), <samp>1</samp> (silver), <samp>2</samp> (gold), or 4 (<samp>iridium</samp>).
 
* {{o|I:quality}} is the quality of the item to create (defaults to normal). This can be one of <samp>0</samp> (normal), <samp>1</samp> (silver), <samp>2</samp> (gold), or 4 (<samp>iridium</samp>).
   |example = <code>player_add object 246</code> will create a [[Wheat Flour]] item.;<code>player_add object pufferfish 10 4</code> would create 10 iridium-quality [[pufferfish]].
+
   |example = <code>player_add (O)246</code> will create a [[Wheat Flour|wheat flour]] item.;<code>player_add (O)128 10 4</code> would create 10 iridium-quality [[pufferfish]].
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 259: Line 240:  
   |desc    = Provides documentation for console commands. If called without an argument, shows general help text and a list of available commands. If called with a command name, shows the documentation for that command.
 
   |desc    = Provides documentation for console commands. If called without an argument, shows general help text and a list of available commands. If called with a command name, shows the documentation for that command.
 
   |example =  
 
   |example =  
 +
}}
 +
{{/cmd
 +
  |command = log_context
 +
  |params  =
 +
  |desc    = Enables logging more contextual info like buttons pressed, menus changed, etc. For example, it can be used to get [[Modding:Player Guide/Key Bindings|key binding codes]] or to simplify troubleshooting. This is enabled until you restart the game, or run the command again to disable it.
 +
  |example =
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 276: Line 263:  
   |params  =  
 
   |params  =  
 
   |desc    = Opens the [[Modding:Player Guide/Getting Started#Find your game folder|game folder]].
 
   |desc    = Opens the [[Modding:Player Guide/Getting Started#Find your game folder|game folder]].
  |example =
  −
}}
  −
{{/cmd
  −
  |command = test_input
  −
  |params  =
  −
  |desc    = Logs the [[Modding:Player Guide/Key Bindings|key codes]] for all button presses to the console for 30 seconds.
   
   |example =
 
   |example =
 
}}
 
}}
 
|}
 
|}
 +
 +
Mods may also add their own commands. For example, Content Patcher adds the <samp>patch</samp> command, documented [https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/troubleshooting.md here].
    
===Advanced===
 
===Advanced===
Line 321: Line 304:     
==Debug commands==
 
==Debug commands==
<div style="border: 1px solid red; background: #FCC; padding: 1em;">'''Warning: These commands are intended for testing and troubleshooting rather than general playing. Some have permanent side effects and may cause crashes or other problems.'''</div>
+
{{note box|type=error|text=<span style="font-size: larger;">'''Don't use these commands unless you're aware of the possible consequences.'''</span><br />These are meant for the game developers, not players. They may crash your game, permanently corrupt or break your save, or cause other problems. Using these in a save you care about is not recommended.}}
    
===How to enter debug commands===
 
===How to enter debug commands===
Line 349: Line 332:  
Entering <code>debug runmacro quickstart</code> in the SMAPI console will execute all the commands, resulting in a backpack upgrade, money set to 10000g, farming skill set to level 1, and a [[Bone Sword]] added to the player's inventory. (Note: <samp>Money</samp> is capitalized in this example because if it is all lowercase it triggers a [[Secrets#Chat|special chat response]] instead of executing the command.)
 
Entering <code>debug runmacro quickstart</code> in the SMAPI console will execute all the commands, resulting in a backpack upgrade, money set to 10000g, farming skill set to level 1, and a [[Bone Sword]] added to the player's inventory. (Note: <samp>Money</samp> is capitalized in this example because if it is all lowercase it triggers a [[Secrets#Chat|special chat response]] instead of executing the command.)
   −
===Items and inventory===
+
===Actions and queries===
====General item search and spawning====
   
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
Line 358: Line 340:  
|-
 
|-
 
{{/cmd
 
{{/cmd
   |command = bigitem,big,bi,b
+
   |command = action
   |params  = {{t|I:itemID}}
+
   |params  = {{t|S:action}}
   |desc    = Adds the specified craftable to your inventory. See [[Modding:Items|big craftables data]] for a list of base game IDs.
+
   |desc    = Run a [[Modding:Trigger actions|trigger action string]].
   |example = <code>debug bigitem 12</code> would give you a [[keg]].
+
   |example = <code>action AddMoney 500</code> will add 500 g to the current player.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = createdebris,mainmenu
+
   |command = gamequery,gq
   |params  = {{t|I:itemID}}
+
   |params  = {{t|S:query}}
   |desc    = Spawns the specified object at your position. See [[Modding:Items|object data]] for a list of base game IDs. The object will initially be laying on the ground and will be picked up if you have room once the game regains focus.
+
   |desc    = Check whether the given [[Modding:Game state queries|game state query]] matches in the current context.
   |example = <code>debug createdebris 24</code> would spawn a [[parsnip]].
+
   |example = <pre>
  <!-- As odd as it seems, the above alias is correct. There may have been a different "mainmenu" command at one time, but currently it is equivalent to createdebris. -->
+
gq !SEASON Spring, WEATHER Here Sun
 +
> Result: true.
 +
</pre>
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   | command = everythingshop
+
   |command = itemquery,iq
   | desc    = Opens a shop menu containing a furniture [[catalogue]], all objects, all craftables, and all weapons. All items are free.
+
  |params  = {{t|S:query}}
 +
   |desc    = Open a shop menu with all the items matching an [[Modding:Item queries|item query]] (all items free).
 +
  |example = <samp>debug iq ALL_ITEMS</samp> shows all items;<samp>debug iq ALL_ITEMS (W)</samp> shows all weapons;<samp>debug iq (O)128</samp> shows a pufferfish (object 128);<samp>debug iq FLAVORED_ITEM Wine (O)128</samp> shows Pufferfish Wine.
 +
}}
 +
{{/cmd
 +
  |command = search
 +
  |params  = {{o|S:term}}
 +
  |desc    = List all debug commands that match the given search term (or all debug commands if the search term is omitted).
 +
  |example = <pre>debug search backpack
 +
> Found 2 debug commands matching search term 'backpack':
 +
    - Backpack
 +
    - FillBackpack (fbp, fill, fillbp)</pre>
 +
}}
 +
{{/cmd
 +
  |command = tokens
 +
  |params  = {{t|S:tokenizedString}}
 +
  |desc    = Parses a [[Modding:Tokenizable strings|tokenizable string]] and prints its output.
 +
  |example = <pre>
 +
tokens [LocalizedText Strings\StringsFromCSFiles:MapPage.cs.11064 [EscapedText [FarmName]]]
 +
> Result: "Lon Lon Farm"
 +
</pre>
 +
}}
 +
|}
 +
 
 +
===Items and inventory===
 +
====General item search and spawning====
 +
{| class="wikitable"
 +
|-
 +
! command
 +
! description
 +
! &nbsp;
 +
|-
 +
{{/cmd
 +
  |command = createdebris,mainmenu
 +
  |params  = {{t|I:itemID}}
 +
  |desc    = Spawns the specified object at your position. See [[Modding:Items|object data]] for a list of base game IDs. The object will initially be laying on the ground and will be picked up if you have room once the game regains focus.
 +
  |example = <code>debug createdebris 24</code> would spawn a [[parsnip]].
 +
  <!-- As odd as it seems, the above alias is correct. There may have been a different "mainmenu" command at one time, but currently it is equivalent to createdebris. -->
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 401: Line 422:  
   |command = itemnamed,in
 
   |command = itemnamed,in
 
   |params  = {{t|S:itemName}},{{o|I:amount}},{{o|I:quality}}
 
   |params  = {{t|S:itemName}},{{o|I:amount}},{{o|I:quality}}
   |desc    = Adds the specified object to your inventory. Accepts only object names; this is not a fuzzy match but is case-insensitive. Punctuation should be included, but all spaces should be removed from the name (see examples below). If the requested name is not unique, all matching objects will be added. The optional parameters are for stack amount (default is 1) and quality (default is 0.)
+
   |desc    = Adds the specified object to your inventory. Accepts only object names; this is not a fuzzy match but is case-insensitive. Punctuation should be included, and arguments with spaces should be quoted. If the requested name is not unique, all matching objects will be added. The optional parameters are for stack amount (default is 1) and quality (default is 0.)
   |example = <code>debug itemnamed miner'streat</code> would give you [[Miner's Treat]].;<code>debug in strangedoll 3</code> would give you 3 of each of the Strange Doll [[artifacts]].
+
   |example = <code>debug itemnamed "miner's treat"</code> would give you [[Miner's Treat]].;<code>debug in "strange doll" 3</code> would give you 3 of each of the Strange Doll [[artifacts]].
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 411: Line 432:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = resource
+
   |command = qualifiedid
  |params  = {{o|I:type}},{{o|I:amount}}
+
   |desc    = Print the held item's display name and [[#Custom items|qualified item ID]].
   |desc    = Marks specified amount of specified resource item as collected. This does not actually add any items but does increment some collection stats and may be useful for completing gathering quests. Valid types are 0 (copper), 2 (iron), 4 (coal), 6 (gold), 8 (coins), 10 (iridium), 12 (wood), and 28 (lantern fuel). Type 8 will increase your money by a random amount (rolls 10-49 and multiplies by the amount specified). {{upcoming|1.6.0|This command no longer exists.}}
  −
  |example =
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 454: Line 473:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = sl
+
   |command = sl,shiftToolbarLeft
 
   |desc    = Shifts inventory rows down, looping previous bottom row to top; similar to using Control-Tab with default keyboard controls. Will work with larger-than-normal inventories.
 
   |desc    = Shifts inventory rows down, looping previous bottom row to top; similar to using Control-Tab with default keyboard controls. Will work with larger-than-normal inventories.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = sr
+
   |command = sr,shiftToolbarRight
 
   |desc    = Shifts inventory rows up, looping previous top row to bottom; similar to using Tab with default keyboard controls. Will work with larger-than-normal inventories.
 
   |desc    = Shifts inventory rows up, looping previous top row to bottom; similar to using Tab with default keyboard controls. Will work with larger-than-normal inventories.
 
}}
 
}}
Line 470: Line 489:  
! &nbsp;
 
! &nbsp;
 
|-
 
|-
{{/cmd
  −
  |command = boots
  −
  |params  = {{t|I:itemID}}
  −
  |desc    = Adds the specified pair of [[Footwear|boots]] to your inventory. See <samp>Data/Boots</samp> for a list of base game IDs.
  −
  |example = <code>debug boots 504</code> would give you [[Sneakers]].
  −
}}
  −
{{/cmd
  −
  |command = clothes
  −
  |params  = {{t|I:itemID}}
  −
  |desc    = Adds the specified [[Tailoring|clothing]] item to your inventory. See <samp>Data/ClothingInformation</samp> for a list of base game IDs.
  −
  |example = <code>debug clothes 1008</code> would give you a "Good Grief" Shirt.; <code>debug clothes 11</code> would give you a Simple Dress.
  −
}}
   
{{/cmd
 
{{/cmd
 
   |command = dye
 
   |command = dye
Line 509: Line 516:  
   |desc    = Gives and automatically equips the specified [[Hats|hat]] to your farmer; any currently equipped hat will be destroyed.  See [[Modding:Items|hat data]] for a list of base game IDs.
 
   |desc    = Gives and automatically equips the specified [[Hats|hat]] to your farmer; any currently equipped hat will be destroyed.  See [[Modding:Items|hat data]] for a list of base game IDs.
 
   |example = <code>debug hat 3</code> would give you a [[Sombrero]] and automatically equip it.
 
   |example = <code>debug hat 3</code> would give you a [[Sombrero]] and automatically equip it.
}}
  −
{{/cmd
  −
  |command = ring
  −
  |params  = {{t|I:itemID}}
  −
  |desc    = Adds the specified [[Rings|ring]] to your inventory. See [[Modding:Items|object data]] for a list of base game IDs.
  −
  |example = <code>debug ring 527</code> would give you an [[Iridium Band]].
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 533: Line 534:  
! &nbsp;
 
! &nbsp;
 
|-
 
|-
{{/cmd
  −
  |command = ax
  −
  |desc    = Adds a basic [[Axes|Axe]] to your inventory.
  −
}}
   
{{/cmd
 
{{/cmd
 
   |command = forge
 
   |command = forge
 
   |desc    = Shows the [[Forge]] menu.
 
   |desc    = Shows the [[Forge]] menu.
}}
  −
{{/cmd
  −
  |command = hoe
  −
  |desc    = Adds a basic [[Hoes|Hoe]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = mp
  −
  |desc    = Adds a [[Milk Pail]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = pan
  −
  |desc    = Adds a [[Copper Pan]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = pickaxe,pickax,pick
  −
  |desc    = Adds a basic [[Pickaxes|Pickaxe]] to your inventory.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 561: Line 542:  
   |params  = {{o|I:type}}
 
   |params  = {{o|I:type}}
 
   |desc    = Adds a [[Tools#Fishing Poles|Fishing Pole]] of the specified type to your inventory. Valid types are 0 (Bamboo Pole; the default), 1 (Training Rod), 2 (Fiberglass Rod), or 3 (Iridium Rod).
 
   |desc    = Adds a [[Tools#Fishing Poles|Fishing Pole]] of the specified type to your inventory. Valid types are 0 (Bamboo Pole; the default), 1 (Training Rod), 2 (Fiberglass Rod), or 3 (Iridium Rod).
}}
  −
{{/cmd
  −
  |command = shears,scissors
  −
  |desc    = Adds [[Shears]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = slingshot
  −
  |desc    = Adds a [[Slingshot]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = tool
  −
  |params  = {{t|S:name}},{{t|I:level}}
  −
  |desc    = Changes the upgrade level of the specified tool to the specified level; the tool must be in your inventory. Tool names are case-sensitive but can match partially; valid names are <samp>Ax</samp>, <samp>Hoe</samp>, <samp>Pickaxe</samp>, and <samp>Watering Can</samp>. Upgrade levels are 0 (basic), 1 (copper), 2 (steel), 3 (gold), or 4 (iridium).
  −
  |example = <code>debug tool Pick 0</code> would set your pickaxe to base quality.; <code>debug tool Can 4</code> would set your watering can to iridium quality.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 580: Line 547:  
   |params  = {{t|I:level}}
 
   |params  = {{t|I:level}}
 
   |desc    = Changes the upgrade level of your inventory [[Trash Cans|Trash Can]]. Upgrade levels are 0 (basic), 1 (copper), 2 (steel), 3 (gold), or 4 (iridium). The can sprite may not fully update until the inventory is closed and reopened.
 
   |desc    = Changes the upgrade level of your inventory [[Trash Cans|Trash Can]]. Upgrade levels are 0 (basic), 1 (copper), 2 (steel), 3 (gold), or 4 (iridium). The can sprite may not fully update until the inventory is closed and reopened.
}}
  −
{{/cmd
  −
  |command = wand
  −
  |desc    = Adds a [[Return Scepter]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = wateringcan,can
  −
  |desc    = Adds a basic [[Watering Cans|Watering Can]] to your inventory.
  −
}}
  −
{{/cmd
  −
  |command = weapon
  −
  |params  = {{t|I:weaponID}}
  −
  |desc    = Adds the specified weapon to your inventory. See [[Modding:Items|weapon data]] for a list of base game IDs.
  −
  |example = <code>debug weapon 12</code> would give you a [[Wooden Blade]].
   
}}
 
}}
 
|}
 
|}
Line 653: Line 606:  
{{/cmd
 
{{/cmd
 
   |command = skullgear
 
   |command = skullgear
   |desc    = Sets your current backpack size to 32 slots, equips a Savage Ring and Iridium Band, equips Space Boots, and clears inventory except for an Iridium Pickaxe, a Galaxy Sword, a stack of 20 Spicy Eels, and a stack of 20 Mega Bombs. Also sets your maximum health to 75 and gives you the Fighter profession. Any previously equipped boots and rings and all previous inventory items are lost.
+
   |desc    = Sets your current backpack size to 36 slots, equips a Savage Ring and Iridium Band, equips Space Boots, and clears inventory except for an Iridium Pickaxe, a Galaxy Sword, a stack of 20 Spicy Eels, and a stack of 20 Mega Bombs. Also sets your maximum health to 75 and gives you the Fighter profession. Any previously equipped boots and rings and all previous inventory items are lost.
 
}}
 
}}
 
|}
 
|}
Line 821: Line 774:  
   |command = warptoplayer,wtp
 
   |command = warptoplayer,wtp
 
   |params  = {{t|S:playerName}}
 
   |params  = {{t|S:playerName}}
   |desc    = Warps you to the specified player, wherever they are. The match is case-insensitive and any spaces should be removed from the name.
+
   |desc    = Warps you to the specified player, wherever they are. The match is case-insensitive and names with spaces should be surrounded by double quotes.
 
}}
 
}}
 
|}
 
|}
Line 850: Line 803:  
   |command = profession
 
   |command = profession
 
   |params  = {{t|I:ID}}
 
   |params  = {{t|I:ID}}
   |desc    = Gives you the specified profession. Valid profesion IDs from the base game are shown below.
+
   |desc    = Gives you the specified profession. Note that this just hard adds the profession, it's not a way to switch skill trees. Valid profession IDs from the base game are shown below.
 
<table class="wikitable"><tr><th>Farming</th><th>Fishing</th><th>Foraging</th><th>Mining</th><th>Combat</th></tr>
 
<table class="wikitable"><tr><th>Farming</th><th>Fishing</th><th>Foraging</th><th>Mining</th><th>Combat</th></tr>
 
<tr><td>0 - Rancher</td><td>6 - Fisher</td><td>12 - Forester</td><td>18 - Miner</td><td>24 - Fighter</td></tr>
 
<tr><td>0 - Rancher</td><td>6 - Fisher</td><td>12 - Forester</td><td>18 - Miner</td><td>24 - Fighter</td></tr>
Line 893: Line 846:  
   |params  = {{t|I:value}}
 
   |params  = {{t|I:value}}
 
   |desc    = Sets the <samp>FishCaught</samp> stat to the specified amount.
 
   |desc    = Sets the <samp>FishCaught</samp> stat to the specified amount.
}}
  −
{{/cmd
  −
  |command = changestat
  −
  |params  = {{t|S:statID}},{{t|I:value}}
  −
  |desc    = Sets the specified stat to the specified value. These are different than the stats used in [[#getstat|getstat]]/[[#setstat|setstat]] (Technical note: they are entries in StardewValley.Stats.stat_dictionary). Known IDs as of version 1.4.3 are: <samp>trashCansChecked</samp>.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 917: Line 865:  
   |command = killmonsterstat,kms
 
   |command = killmonsterstat,kms
 
   |params  = {{t|S:monsterName}},{{t|I:value}}
 
   |params  = {{t|S:monsterName}},{{t|I:value}}
   |desc    = Sets the kill stats for the specified monster to the specified value. The monster name should be the same as the keys in <samp>Data/Monsters</samp> but with spaces replaced with zeros; it is case-sensitive. The command will output a buggy response to the console due to referencing the wrong string key, but the stats are correctly set.
+
   |desc    = Sets the kill stats for the specified monster to the specified value. The monster name should be the same as the keys in <samp>Data/Monsters</samp> and names with spaces should be in double quotes; it is case-sensitive. The command will output a buggy response to the console due to referencing the wrong string key, but the stats are correctly set.
   |example = <code>debug kms Dust0Spirit 499</code> will set the monster kill stats for [[Dust Sprite|Dust Sprites]] to 499 and output ''Drink Dust Spirit?''
+
   |example = <code>debug kms "Dust Spirit" 499</code> will set the monster kill stats for [[Dust Sprite|Dust Sprites]] to 499 and output ''Drink Dust Spirit?''
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 967: Line 915:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = craftingrecipe
+
   |command = craftingrecipe,addCraftingRecipe
 
   |params  = {{t|S:recipeName}}
 
   |params  = {{t|S:recipeName}}
 
   |desc    = Teaches you the specified crafting recipe. Names are case-sensitive and may contain spaces.
 
   |desc    = Teaches you the specified crafting recipe. Names are case-sensitive and may contain spaces.
Line 1,011: Line 959:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = sn
+
   |command = sn,secretNote
 
   |params  = {{o|I:noteID}}
 
   |params  = {{o|I:noteID}}
 
   |desc    = Adds specified secret note to your inventory. If no ID is specified, a random unseen note will be added. See <samp>Data/SecretNotes</samp> for a list of IDs.
 
   |desc    = Adds specified secret note to your inventory. If no ID is specified, a random unseen note will be added. See <samp>Data/SecretNotes</samp> for a list of IDs.
Line 1,044: Line 992:  
{{/cmd
 
{{/cmd
 
   |command = clearmail
 
   |command = clearmail
   |desc    = Clears records of all received mail (including hidden progress flags.) This also clears the letters tab in the collections menu.
+
   |desc    = Clears records of all received mail '''(including hidden progress flags)'''. This also clears the letters tab in the collections menu.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,053: Line 1,001:  
{{/cmd
 
{{/cmd
 
   |command = seenmail
 
   |command = seenmail
   |params  = {{t|S:mailID}}
+
   |params  = {{t|S:mailID}},{{o|B:addOrRemove}}
   |desc    = Marks specified mail as already received. The ID is case-sensitive; see <samp>Data/mail</samp> for valid IDs in the base game.
+
   |desc    = Marks specified mail as already received. The ID is case-sensitive; see <samp>Data/mail</samp> for valid IDs in the base game. You can remove a mail received (instead of adding it) by setting the second argument to false, like <samp>seenMail <code><id></code> false</samp>.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,182: Line 1,130:  
   |command = killall
 
   |command = killall
 
   |params  = {{t|S:npcName}}
 
   |params  = {{t|S:npcName}}
   |desc    = Removes all NPCs except for the specified character. Name is an exact match, and they are only spared from removal if they are in the current location.
+
   |desc    = Removes all NPCs except for the specified character. Name is an exact match, and they are only spared from removal if they are in the current location. Will also remove NPCs inside constructed buildings.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = killnpc
 
   |command = killnpc
 
   |params  = {{t|S:npcName}}
 
   |params  = {{t|S:npcName}}
   |desc    = Removes specified NPC from the game, checking all game locations. Name is an exact match.
+
   |desc    = Removes specified NPC from the game, checking all game locations (including constructed buildings). Name is an exact match.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,243: Line 1,191:  
   |command = marry
 
   |command = marry
 
   |params  = {{t|S:npcName}}
 
   |params  = {{t|S:npcName}}
   |desc    = Increases your friendship with specified NPC by 2500 points (10 hearts) and sets relationship status to <samp>Married</samp> with an anniversary of today. Name is a fuzzy match. The spouse room generally appears empty on the first day and you'll need to sleep for it and your spouse to spawn properly. For non-vanilla marriage candidates:
+
   |desc    = <p>Increases your friendship with the specified NPC by 2500 points (10 hearts), and sets your relationship status to <samp>Married</samp> with an anniversary of today. Name is a fuzzy match.</p>
 +
 
 +
Notes:
 +
* If you haven't upgraded your farmhouse, also run <code>debug houseUpgrade 1</code> to avoid errors.
 +
* The spouse room generally appears empty on the first day and you'll need to sleep for it and your spouse to spawn properly.
 +
 
 +
For non-vanilla marriage candidates:
 
<ul><li>Trying to <samp>debug marry Krobus</samp> will work, but will set him as a spouse rather than a roommate. Most of his dialogue and actions remain the same, but he will use some hardcoded spouse lines where he would otherwise have his own version, have a heart instead of a smiley face for his hug/kiss sprite, and the social menu will list him as your spouse. It's unclear if you're able to have children this way.</li>
 
<ul><li>Trying to <samp>debug marry Krobus</samp> will work, but will set him as a spouse rather than a roommate. Most of his dialogue and actions remain the same, but he will use some hardcoded spouse lines where he would otherwise have his own version, have a heart instead of a smiley face for his hug/kiss sprite, and the social menu will list him as your spouse. It's unclear if you're able to have children this way.</li>
 
<li>For other non-marriageable villagers, an empty spouse room will spawn and the NPC will move in. They will follow a basic hardcoded spouse schedule and can be kissed (although they won't have a kiss sprite), but they will rarely have dialogue.</li></ul>
 
<li>For other non-marriageable villagers, an empty spouse room will spawn and the NPC will move in. They will follow a basic hardcoded spouse schedule and can be kissed (although they won't have a kiss sprite), but they will rarely have dialogue.</li></ul>
Line 1,262: Line 1,216:  
|-
 
|-
 
{{/cmd
 
{{/cmd
   |command = db
+
   |command = db,speakTo
 
   |params  = {{t|S:npcName}}
 
   |params  = {{t|S:npcName}}
 
   |desc    = Shows a dialogue box with the current dialogue for the specified NPC. Name is a fuzzy match and will default to Pierre if not supplied. This does count as having spoken to that NPC today, and if they don't have any more dialogue right now, the message ''Stack empty'' will be output to the console.
 
   |desc    = Shows a dialogue box with the current dialogue for the specified NPC. Name is a fuzzy match and will default to Pierre if not supplied. This does count as having spoken to that NPC today, and if they don't have any more dialogue right now, the message ''Stack empty'' will be output to the console.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = dialogue
+
   |command = dialogue,addDialogue
 
   |params  = {{t|S:npcName}},{{t|S:dialogueString}}
 
   |params  = {{t|S:npcName}},{{t|S:dialogueString}}
   |desc    = Sets the dialogue for the specified character to the specified string. Name is a fuzzy match. The dialogue string should start with a zero and everything after will be parsed. It can include tokens such as <samp>@</samp> for the farmer name and portrait commands; see [[Modding:Dialogue#Format|Dialogue]] for format specifics.
+
   |desc    = Sets the dialogue for the specified character to the specified string. Name is a fuzzy match, and NPC names containing spaces should be quoted (e.g. <code>debug dialogue "Some NPC" Some dialgoue text$h</code>. The dialogue string should start with a zero and everything after will be parsed. It can include tokens such as <samp>@</samp> for the farmer name and portrait commands; see [[Modding:Dialogue#Format|Dialogue]] for format specifics.
 
   |example = <code>debug dialogue Abi 0Hi @! Modding is fun!$h</code> would set [[Abigail|Abigail's]] next dialogue to be ''Hi (FarmerName)! Modding is fun!'' with her happy portrait.
 
   |example = <code>debug dialogue Abi 0Hi @! Modding is fun!$h</code> would set [[Abigail|Abigail's]] next dialogue to be ''Hi (FarmerName)! Modding is fun!'' with her happy portrait.
 
}}
 
}}
Line 1,283: Line 1,237:  
{{/cmd
 
{{/cmd
 
   |command = question
 
   |command = question
   |params  = {{t|I:questionID}}
+
   |params  = {{t|I:questionID}},{{o|B:answerOrForget}}
   |desc    = Marks the specified dialogue question as answered.
+
   |desc    = Marks the specified dialogue question as answered. You can forget a selected answer (instead of adding it) by setting the second argument to false, like <samp>question <code><id></code> false</samp>.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = sb
 
   |command = sb
   |params  = {{t|S:npcName}}
+
   |params  = {{t|S:npcName}},showTextAboveHead
 
   |desc    = Shows a speech bubble saying ''"Hello! This is a test"'' above the specified NPC's head. Name is a fuzzy match.
 
   |desc    = Shows a speech bubble saying ''"Hello! This is a test"'' above the specified NPC's head. Name is a fuzzy match.
 
}}
 
}}
Line 1,294: Line 1,248:  
   |command = speech
 
   |command = speech
 
   |params  = {{t|S:npcName}},{{t|S:dialogueKey}}
 
   |params  = {{t|S:npcName}},{{t|S:dialogueKey}}
   |desc    = Displays a dialogue box for the specified character saying the specified string. Name is a fuzzy match. The dialogue string should start with a zero and everything after will be parsed. It can include tokens such as <samp>@</samp> for the farmer name and portrait commands; see [[Modding:Dialogue#Format|Dialogue]] for format specifics. Useful for testing dialogue changes.
+
   |desc    = Displays a dialogue box for the specified character saying the specified string. Name is a fuzzy match and names with spaces should be in double quotes. The dialogue string should start with a zero and everything after will be parsed. It can include tokens such as <samp>@</samp> for the farmer name and portrait commands; see [[Modding:Dialogue#Format|Dialogue]] for format specifics. Useful for testing dialogue changes.
 
   |example = <code>debug speech Abi 0Hi @! Modding is fun!$h</code> would open a dialogue box of [[Abigail]] saying ''Hi (FarmerName)! Modding is fun!'' with her happy portrait.
 
   |example = <code>debug speech Abi 0Hi @! Modding is fun!$h</code> would open a dialogue box of [[Abigail]] saying ''Hi (FarmerName)! Modding is fun!'' with her happy portrait.
 
}}
 
}}
Line 1,326: Line 1,280:  
   |params  = {{t|S:npcName}},{{o|F:velocity}}
 
   |params  = {{t|S:npcName}},{{o|F:velocity}}
 
   |desc    = Makes specified character jump with the specified velocity. Name is a fuzzy match and also accepts <samp>farmer</samp>. Velocity is a float and defaults to 8.0 if not supplied, which results in a jump of about half the height of the player character.
 
   |desc    = Makes specified character jump with the specified velocity. Name is a fuzzy match and also accepts <samp>farmer</samp>. Velocity is a float and defaults to 8.0 if not supplied, which results in a jump of about half the height of the player character.
}}
  −
{{/cmd
  −
  |command = pathspousetome,pstm
  −
  |desc    = Causes your spouse (NPC only) to start walking towards you if they are already on the current map or warp directly to you otherwise.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,350: Line 1,300:  
   |command = whereis,where
 
   |command = whereis,where
 
   |params  = {{t|S:npcName}}
 
   |params  = {{t|S:npcName}}
   |desc    = Outputs the location and coordinates of the specified character to the SMAPI console. Name is a fuzzy match.
+
   |desc    = Outputs the location and coordinates of the specified character to the SMAPI console. Name is a fuzzy match, so the command will return all matching NPCs.
 
}}
 
}}
 
|}
 
|}
Line 1,392: Line 1,342:  
{{/cmd
 
{{/cmd
 
   |command = growanimals
 
   |command = growanimals
   |desc    = Sets all animals who live in the current building to day 1 of adulthood. Must be done in a building such as a Barn or Coop. May cause each of them to eat hay.
+
   |desc    = Sets all animals who live in the current location to day 1 of adulthood, unless they are already adults. May cause each of them to eat hay.  
}}
  −
{{/cmd
  −
  |command = growanimalsfarm
  −
  |desc    = Sets all animals who live in the current location to day 1 of adulthood. Must be done on the Farm; this would apply to animals that no longer have homes due to building destruction such as after using [[#removebuildings|removebuildings]].
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,470: Line 1,416:  
|-
 
|-
 
{{/cmd
 
{{/cmd
   |command = ee
+
   |command = endevent
   |desc    = Ends (and restarts) the current event.
+
   |desc    = Immediately end the current event or festival, applying the event's skip logic (if any). The event is marked seen, but you can rewatch it using the <samp>eventById</samp> command if needed.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,490: Line 1,436:  
{{/cmd
 
{{/cmd
 
   |command = eventseen, seenevent
 
   |command = eventseen, seenevent
   |params  = {{t|I:eventID}}
+
   |params  = {{t|I:eventID}},{{o|B:seeOrForget}}
   |desc    = Marks specifid event as seen by your farmer. Useful for enabling access to event-dependent areas or events.
+
   |desc    = Marks specifid event as seen by your farmer. Useful for enabling access to event-dependent areas or events. You can forget an event (instead of adding it) by setting the second argument to false, like <samp>seenEvent <code><id></code> false</samp>.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,518: Line 1,464:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = leaveevent,endevent
+
   |command = runtestevent,rte
   |desc    = Ends (and restarts) the current event.<br />'''Warning: also clears all records of events seen, dialogue questions answered, and mail received (including hidden mail flags.)'''
+
   |desc    = Runs an event from the file <code>test_event.txt</code> in the root game folder. The first line of the file should specify the location where the event takes place, and the rest of the file should be the same as a normal event script except that line breaks will be treated as <code>/</code> delimiters.<br />'''Note: this file must use CRLF (Windows-style) line breaks, or it will fail to parse.''' If you are on Mac or Linux, make sure you convert when saving (any text editor should be able to do this).
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = runtestevent,rte
+
   |command = setFarmEvent,sfe
   |desc    = Runs an event from the file <code>test_event.txt</code> in the root game folder. The first line of the file should specify the location where the event takes place, and the rest of the file should be the same as a normal event script except that line breaks will be treated as <code>/</code> delimiters.
+
  |params  = {{t|S:eventID}}
 +
   |desc    = Queue an [[Random Events#Farm events|overnight farm event]] if one doesn't plan naturally instead. The {{t|event id}} can be one of...
 +
* <samp>dogs</samp>;
 +
* [[Random Events#Earthquake|<samp>earthquake</samp>]];
 +
* [[Random Events#The Crop Fairy|<samp>fairy</samp>]];
 +
* [[Random Events#Meteorite|<samp>meteorite</samp>]];
 +
* [[Random Events#Stone Owl|<samp>owl</samp>]];
 +
* [[Random Events#Strange Capsule|<samp>ufo</samp>]];
 +
* [[Random Events#The Witch|<samp>witch</samp>]].
 +
 
 +
Note that even if the farm event runs, it may exit without doing anything (e.g. rare events like <samp>ufo</samp> have extra condition checks when the start).
 
}}
 
}}
 
|}
 
|}
Line 1,550: Line 1,506:  
   |params  = {{t|I:fishID}}
 
   |params  = {{t|I:fishID}}
 
   |desc    = Starts the fishing minigame with the specified fish hooked and a treasure chest available. You must have a fishing line already cast into the water before entering the command in order to actually receive the fish after completing the minigame. Additional "hits" may trigger during the game, and none of the fishing pole animations will play. See [[Modding:Items|object data]] for a list of valid IDs; non-fish objects can be used and caught.
 
   |desc    = Starts the fishing minigame with the specified fish hooked and a treasure chest available. You must have a fishing line already cast into the water before entering the command in order to actually receive the fish after completing the minigame. Additional "hits" may trigger during the game, and none of the fishing pole animations will play. See [[Modding:Items|object data]] for a list of valid IDs; non-fish objects can be used and caught.
}}
  −
{{/cmd
  −
  |command = oldminegame
  −
  |desc    = Starts the pre-1.4 version of Junimo Kart.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,576: Line 1,528:  
<li><samp>target</samp> - starts the Slingshot minigame from the [[Stardew Valley Fair]]. When the game is over the farmer will be warped to coordinates (24, 63) on the current map.</li>
 
<li><samp>target</samp> - starts the Slingshot minigame from the [[Stardew Valley Fair]]. When the game is over the farmer will be warped to coordinates (24, 63) on the current map.</li>
 
</ul>
 
</ul>
 +
}}
 +
{{/cmd
 +
  |command = movieSchedule
 +
  |params  = {{o|I:year}}
 +
  |desc    = Lists the movies that will play in the given year (default this year), with the dates they'll play.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = test
 
   |command = test
 
   |desc    = Starts the ''Test'' minigame. This brings up a window showing a variety of flooring textures; left-click closes the window.
 
   |desc    = Starts the ''Test'' minigame. This brings up a window showing a variety of flooring textures; left-click closes the window.
 +
}}
 +
|}
 +
 +
===Shops===
 +
{| class="wikitable"
 +
|-
 +
! command
 +
! description
 +
! &nbsp;
 +
|-
 +
{{/cmd
 +
  |command = exportShops
 +
  |desc    = Export a summary of what's in every shop in the game, taking into account their current conditions. This is saved to a file on disk, and the file path shown in the console.
 +
}}
 +
{{/cmd
 +
  |command = shop
 +
  |params  = {{t|shopID}},{{o|ownerName}}
 +
  |desc    = Open a [[Modding:Shops|shop defined in <samp>Data/Shops</samp>]], regardless of whether one of the owners is nearby. Specifying {{o|ownerName}} will use that NPC, otherwise the command will find the closest valid NPC if possible (else open with no NPC).
 
}}
 
}}
 
|}
 
|}
Line 1,592: Line 1,567:  
|-
 
|-
 
{{/cmd
 
{{/cmd
   |command = addquartz
+
   |command = artifactSpots
  |params  = {{t|I:number}}
+
   |desc    = Spawn an [[Artifact Spot|artifact spot]] in each empty tile around the player.
   |desc    = Spawns the specified amount of ''Quartz'' terrain features on the Farm. The locations are randomly chosen and no checking is done on the underlying tiles, so they may wind up in impassable areas.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,611: Line 1,585:  
{{/cmd
 
{{/cmd
 
   |command = grass
 
   |command = grass
   |desc    = Spawns long grass on all available tiles on the farm.
+
   |desc    = Spawns long grass on all available tiles in the current location.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,636: Line 1,610:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = r
+
   |command = r,resetForPlayerEntry
 
   |desc    = Resets current location which essentially simulates the player leaving and reentering. Most noticeable effect is the restarting of music tracks.
 
   |desc    = Resets current location which essentially simulates the player leaving and reentering. Most noticeable effect is the restarting of music tracks.
 
}}
 
}}
Line 1,648: Line 1,622:  
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = removelargetf
+
   |command = removelargetf,removeLargeTerrainFeature
 
   |desc    = Removes all large terrain features (such as bushes) from the current location.
 
   |desc    = Removes all large terrain features (such as bushes) from the current location.
 
}}
 
}}
Line 1,662: Line 1,636:  
{{/cmd
 
{{/cmd
 
   |command = spreaddirt
 
   |command = spreaddirt
   |desc    = Tills all unoccupied diggable tiles on the farm.
+
   |desc    = Tills all unoccupied diggable tiles in the current location.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = spreadseeds
 
   |command = spreadseeds
 
   |params  = {{t|I:seedID}}
 
   |params  = {{t|I:seedID}}
   |desc    = Plants specified seed in all tilled dirt on the farm. The argument is the [[Modding:Items|object ID]] for the seed item. Out of season crops can be planted this way but will not survive outside of the greenhouse.<br />'''Warning: this will replace any currently-planted crops (including fully-grown ones) with the new seeds.'''
+
   |desc    = Plants specified seed in all tilled dirt in the current location. The argument is the [[Modding:Items|object ID]] for the seed item. Out of season crops can be planted this way but will not survive outside of the greenhouse.<br />'''Warning: this will replace any currently-planted crops (including fully-grown ones) with the new seeds.'''
 
   |example = <code>debug spreadseeds 472</code> would plant [[Parsnip|parsnips]] on all hoed dirt tiles.
 
   |example = <code>debug spreadseeds 472</code> would plant [[Parsnip|parsnips]] on all hoed dirt tiles.
 
}}
 
}}
Line 1,694: Line 1,668:  
{{/cmd
 
{{/cmd
 
   |command = clearfurniture
 
   |command = clearfurniture
   |desc    = Removes all furniture from the current location. Must be in a farmhouse/cabin. Use [[#removefurniture|removefurniture]] instead for other locations such as sheds.
+
   |desc    = Removes all furniture from the current location. Can be used in a farmhouse/cabin, or outside the farmhouse as well.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,738: Line 1,712:  
! &nbsp;
 
! &nbsp;
 
|-
 
|-
{{/cmd
  −
  |command = bpm
  −
  |desc    = Shows the building painting menu for the building immediately North of the player, or for the farmhouse if no such building is found.
  −
}}
   
{{/cmd
 
{{/cmd
 
   |command = build
 
   |command = build
 
   |params  = {{t|S:Name}},{{o|I:X}},{{o|I:Y}}
 
   |params  = {{t|S:Name}},{{o|I:X}},{{o|I:Y}}
   |desc    = Builds the specified building at the given coordinates. Names are exact but spaces should be replaced with "<samp>9</samp>". If the coordinates are not specified, it will build just to the right of your farmer. While higher-level farm buildings such as Deluxe Barns can be immediately built this way, the incubator will be missing from Big or Deluxe Coops.
+
   |desc    = Builds the specified building at the given coordinates. Names are exact. If the name includes spaces, quote them (e.g. <samp>"Junimo Hut"</samp>). If the coordinates are not specified, it will build just to the right of your farmer. While higher-level farm buildings such as Deluxe Barns can be immediately built this way, the incubator will be missing from Big or Deluxe Coops.
   |example = <code>debug build Stone9Cabin</code> would build a new Stone Cabin next to the player.
+
   |example = <code>debug build "Stone Cabin"</code> would build a new Stone Cabin next to the player.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,752: Line 1,722:  
   |params  = {{t|I:X}},{{t|I:Y}}
 
   |params  = {{t|I:X}},{{t|I:Y}}
 
   |desc    = Builds a new basic Coop at the specified coordinates.
 
   |desc    = Builds a new basic Coop at the specified coordinates.
 +
}}
 +
{{/cmd
 +
  |command = forcebuild
 +
  |params  = {{t|S:Name}},{{o|I:X}},{{o|I:Y}}
 +
  |desc    = Equivalent to <samp>build</samp>, but disables all safety checks so you can build in a location that wouldn't normally allow buildings, build on top of farm animals or placed objects, etc.
 +
  |example = <code>debug build "Stone Cabin"</code> would build a new Stone Cabin next to the player.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = movebuilding
 
   |command = movebuilding
 
   |params  = {{t|I:sourceX}},{{t|I:sourceY}},{{t|I:destX}},{{t|I:destY}}
 
   |params  = {{t|I:sourceX}},{{t|I:sourceY}},{{t|I:destX}},{{t|I:destY}}
   |desc    = Moves building from specified source coordinates to specified destination coordinates. The coordinates are the upper-left corner of the building's footprint. The [https://www.nexusmods.com/stardewvalley/mods/541 Lookup Anything] mod is one of the easier ways to get the source coordinates of a building; they are listed under <samp>tileX</samp> and <samp>tileY</samp> in the debug info (needs <samp>ShowDataMiningFields</samp> enabled.)
+
   |desc    = Moves building in the current location from specified source coordinates to specified destination coordinates. The coordinates are the upper-left corner of the building's footprint. The [https://www.nexusmods.com/stardewvalley/mods/541 Lookup Anything] mod is one of the easier ways to get the source coordinates of a building; they are listed under <samp>tileX</samp> and <samp>tileY</samp> in the debug info (needs <samp>ShowDataMiningFields</samp> enabled.)
 +
}}
 +
{{/cmd
 +
  |command = paintBuilding,bpm
 +
  |desc    = Gets the building the player is standing in front of and opens a paint menu for that building if it can be painted. If the player is not standing in front of a building, defaults to the main farmhouse.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
 
   |command = removebuildings
 
   |command = removebuildings
 
   |desc    = Destroys all farm buildings. Animals within any of the buildings will also be removed, but animals which are outside will not be.
 
   |desc    = Destroys all farm buildings. Animals within any of the buildings will also be removed, but animals which are outside will not be.
 +
}}
 +
{{/cmd
 +
  |command = skinbuilding,bsm
 +
  |desc    = If the player is standing right under a building, open a menu to change the building appearance.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,795: Line 1,779:  
   |command = renovate
 
   |command = renovate
 
   |desc    = Opens the [[Carpenter's Shop#House Renovations|farmhouse renovation]] menu.
 
   |desc    = Opens the [[Carpenter's Shop#House Renovations|farmhouse renovation]] menu.
 +
}}
 +
{{/cmd
 +
  |command = thishouseupgrade,thishouse,thu
 +
  |params  = {{t|I:upgradeLevel}}
 +
  |desc    = Equivalent to <samp>houseupgrade</samp>, but can be used to upgrade another player's house by running it from inside or just south of its exterior.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,826: Line 1,815:  
   <li>Spawns a large field of random spring crops (force-grown for 8 days) with a wooden path through it and 4 junimo huts to the south.</li>
 
   <li>Spawns a large field of random spring crops (force-grown for 8 days) with a wooden path through it and 4 junimo huts to the south.</li>
 
   <li>Spawns two large patches of grass and 18 random fruit trees (cherry and apricot)</li>
 
   <li>Spawns two large patches of grass and 18 random fruit trees (cherry and apricot)</li>
   <li>Spawns large groups of torches, furnaces, preserve jars, cheese presses, and kegs; the kegs are full of ancient fruit to make wine</li></ul>
+
   <li>Spawns large groups of torches, furnaces, preserves jars, cheese presses, and kegs; the kegs are full of ancient fruit to make wine</li></ul>
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 1,940: Line 1,929:  
{{/cmd
 
{{/cmd
 
   |command = movie
 
   |command = movie
   |params  = {{o|S:npcNameOrMovieID}},{{o|S:movieID}}
+
   |params  = {{o|S:movieID}},{{o|S:inviteNpcName}}
   |desc    = Starts a movie; this command is a bit complex with its parameter handling so be sure to check the examples. Note that this command can create a group with up to 3 guests instead of just the single guest allowed in normal play. Valid movie IDs are listed after the parameter explanation.
+
   |desc    = Starts a movie. The movie ID defaults to today's movie, and the NPC name can be omitted to watch the movie without an invitee. Specifying <samp>current</samp> as the movie defaults to today's movie. Note that this command can create a group with up to 3 guests instead of just the single guest allowed in normal play. Valid movie IDs are listed below.
<ul><li>If both parameters are given, it will start the specified movie (second parameter) with the specified NPC (fuzzy match on first parameter) as a guest.</li>
  −
<li>If just one parameter is given, it is interpreted as the movie ID and the NPC guest(s) will be chosen randomly.</li>
  −
<li>If no parameters are given, the movie will default to <samp>fall_movie_1</samp> (''It Howls in the Rain'') and the NPC guest(s) will be chosen randomly.</li></ul>
   
<table class="wikitable"><tr><td><samp>spring_movie_0</samp> - ''The Brave Little Sapling''</td><td><samp>spring_movie_1</samp> - ''Natural Wonders''</td></tr>
 
<table class="wikitable"><tr><td><samp>spring_movie_0</samp> - ''The Brave Little Sapling''</td><td><samp>spring_movie_1</samp> - ''Natural Wonders''</td></tr>
 
<tr><td><samp>summer_movie_0</samp> - ''Journey of the Prairie King''</td><td><samp>summer_movie_1</samp> - ''Wumbus''</td></tr>
 
<tr><td><samp>summer_movie_0</samp> - ''Journey of the Prairie King''</td><td><samp>summer_movie_1</samp> - ''Wumbus''</td></tr>
Line 1,950: Line 1,936:  
<tr><td><samp>winter_movie_0</samp> - ''Miracle at Coldstar Ranch''</td><td><samp>winter_movie_1</samp> - ''The Zuzu City Express''</td></tr></table>
 
<tr><td><samp>winter_movie_0</samp> - ''Miracle at Coldstar Ranch''</td><td><samp>winter_movie_1</samp> - ''The Zuzu City Express''</td></tr></table>
 
'''Warning: This command also increases the save's <samp>uniqueID</samp> by 1 each time it is used, which will cause the save filename to change and impact some random events.'''
 
'''Warning: This command also increases the save's <samp>uniqueID</samp> by 1 each time it is used, which will cause the save filename to change and impact some random events.'''
   |example = <code>debug movie</code> would show ''It Howls in the Rain'' with random NPC guests.;<code>debug movie spring_movie_1</code> would show ''Natural Wonders'' with random NPC guests.;<code>debug movie Abi summer_movie_0</code> would show ''Journey of the Prairie King'' with Abigail and possibly 1 or 2 additional random NPC guests.
+
   |example = <code>debug movie</code> would show ''It Howls in the Rain'' with random NPC guests.;<code>debug movie spring_movie_1</code> would show ''Natural Wonders'' with random NPC guests.;<code>debug movie summer_movie_0 Abi</code> would show ''Journey of the Prairie King'' with Abigail and possibly 1 or 2 additional random NPC guests.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = pgb
+
   |command = pgb,printGemBirds
 
   |desc    = Prints the [[Ginger Island#Gem Birds|Gem Bird Puzzle]] solution to the console.  
 
   |desc    = Prints the [[Ginger Island#Gem Birds|Gem Bird Puzzle]] solution to the console.  
 
}}
 
}}
Line 2,014: Line 2,000:  
   |params  = {{t|I:value}}
 
   |params  = {{t|I:value}}
 
   |desc    = Sets current time to the specified value. This is essentially 24-hour time without a colon, although the stardew clock keeps running until 2600. See examples.
 
   |desc    = Sets current time to the specified value. This is essentially 24-hour time without a colon, although the stardew clock keeps running until 2600. See examples.
   |example = <code>debug tme 2040</code> would set the time to 20:40 or 8:40pm.; <code>debug tme 2550</code> would set the time to 1:50am.
+
   |example = <code>debug time 2040</code> would set the time to 20:40 or 8:40pm.; <code>debug time 2550</code> would set the time to 1:50am.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,059: Line 2,045:  
   |command = conventionmode
 
   |command = conventionmode
 
   |desc    = Toggles convention mode on and off. When on, disables the resolution and window mode options as well as both "Exit to Title" and "Exit to Desktop" buttons.
 
   |desc    = Toggles convention mode on and off. When on, disables the resolution and window mode options as well as both "Exit to Title" and "Exit to Desktop" buttons.
 +
}}
 +
{{/cmd
 +
  |command = filterLoadMenu
 +
  |params  = {{t|searchText}}
 +
  |desc    = Filter the current list of saves to those whose player name or farm name contains the given text.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,099: Line 2,090:  
   |command = showplurals
 
   |command = showplurals
 
   |desc    = Prints (to the console) the plural forms of all items listed in <samp>Data/ObjectInformation</samp> and <samp>Data/BigCraftablesInformation</samp>.
 
   |desc    = Prints (to the console) the plural forms of all items listed in <samp>Data/ObjectInformation</samp> and <samp>Data/BigCraftablesInformation</samp>.
 +
}}
 +
{{/cmd
 +
  |command = toggleCheats
 +
  |desc    = Enable or disable entering debug commands into the in-game chat (prefixed with <samp>/</samp>).
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,107: Line 2,102:  
   |command = version
 
   |command = version
 
   |desc    = Outputs the assembly version number to the console. Note this is different from the more user-friendly version that can be accessed from the credits screen. For example, running this command on Stardew Valley 1.4.3 for Windows will output <samp>1.3.7286.33936</samp>
 
   |desc    = Outputs the assembly version number to the console. Note this is different from the more user-friendly version that can be accessed from the credits screen. For example, running this command on Stardew Valley 1.4.3 for Windows will output <samp>1.3.7286.33936</samp>
 +
}}
 +
{{/cmd
 +
  |command = worldMapLines
 +
  |desc    = Toggles the [[Modding:World map#Debug view|world map's debug view]].
 
}}
 
}}
 
|}
 
|}
Line 2,128: Line 2,127:  
{{/cmd
 
{{/cmd
 
   |command = netjoin
 
   |command = netjoin
   |desc    = Details unknown.
+
   |desc    = Calls up the farmhand menu. Details unknown.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,147: Line 2,146:  
   |command = logbandwidth
 
   |command = logbandwidth
 
   |desc    = Toggles bandwidth logging on and off. Can be used on either host or client.
 
   |desc    = Toggles bandwidth logging on and off. Can be used on either host or client.
 +
}}
 +
{{/cmd
 +
  |command = logFile
 +
  |desc    = Begin writing debug messages to a log file at <samp>%appdata%/StardewValley/ErrorLogs/game-latest.txt</samp> to simplify troubleshooting. You can also enter <samp>/logtext</samp> into the in-game chatbox to enable it. This does nothing if SMAPI is installed, since the debug messages are already saved to SMAPI's log.
 +
}}
 +
{{/cmd
 +
  |command = logSounds
 +
  |desc    = Log info about each sound effect played to the SMAPI console window.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,154: Line 2,161:  
{{/cmd
 
{{/cmd
 
   |command = netdump
 
   |command = netdump
   |desc    = Outputs network message log to a file.
+
   |desc    = Outputs network message log to a file.
}}
+
}}
{{/cmd
+
{{/cmd
   |command = netlog
+
   |command = netlog
   |desc    = Toggles network message logging on and off.
+
   |desc    = Toggles network message logging on and off.
 +
}}
 +
|}
 +
 
 +
====Player relationships====
 +
{| class="wikitable"
 +
|-
 +
! command
 +
! description
 +
! &nbsp;
 +
|-
 +
{{/cmd
 +
  |command = dateplayer
 +
  |desc    = Checks all other farmers and sets the first one found as dating the player.
 +
}}
 +
{{/cmd
 +
  |command = engageplayer
 +
  |desc    = Checks all other farmers and sets the first one found as engaged to the player with a wedding date of the next game day.
 
}}
 
}}
|}
  −
  −
====Player relationships====
  −
{| class="wikitable"
  −
|-
  −
! command
  −
! description
  −
! &nbsp;
  −
|-
   
{{/cmd
 
{{/cmd
   |command = dateplayer
+
   |command = testwedding
   |desc    = Checks all other farmers and sets the first one found as dating the player.
+
   |desc    = Immediately play the [[Marriage#The Wedding|wedding]] event. This requires the player to be married first - to test specific NPCs, <samp>debug marry</samp> the NPC followed by this command.
}}
  −
{{/cmd
  −
  |command = engageplayer
  −
  |desc    = Checks all other farmers and sets the first one found as engaged to the player with a wedding date of the next game day.
   
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,235: Line 2,246:  
   |command = frameoffset, fo
 
   |command = frameoffset, fo
 
   |params  = {{t|I:frameID}},{{t|S:X}},{{t|S:Y}},{{t|S:??}}
 
   |params  = {{t|I:frameID}},{{t|S:X}},{{t|S:Y}},{{t|S:??}}
   |desc    = Sets frame offset for specified frame and specified X & Y values. The X and Y can be prefaced with <samp>s</samp> to flip the direction. Details unknown; reference <samp>FarmerRenderer.featureXOffsetPerFrame()</samp> and <samp>FarmerRenderer.featureYOffsetPerFrame()</samp>.
+
   |desc    = Sets frame offset for specified frame and specified X & Y values. The X and Y can be made negative to flip the direction. Details unknown; reference <samp>FarmerRenderer.featureXOffsetPerFrame()</samp> and <samp>FarmerRenderer.featureYOffsetPerFrame()</samp>.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,244: Line 2,255:  
{{/cmd
 
{{/cmd
 
   |command = sprinkle
 
   |command = sprinkle
   |desc    = Shows an animation of a sprinkle effect around the farmer. Unsure if the animation is used.
+
   |desc    = Shows an animation of a sprinkle effect around the farmer. (It's the animation used while fairy-dusting a machine).
 
}}
 
}}
 
{{/cmd
 
{{/cmd
Line 2,284: Line 2,295:  
{{/cmd
 
{{/cmd
 
   |command = panmode, pm
 
   |command = panmode, pm
   |desc    = Turns on panmode. During panmode the screen can be panned with movement keys or mouse movements and <samp>debug panmode</samp> or <samp>debug exit</samp> will turn panmode off.
+
   |desc    = Turns on panmode. During panmode the screen can be panned with movement keys or mouse movements and <samp>debug panmode</samp> or <samp>debug exit</samp> will turn panmode off. You can also clear with <sampe>debug panMode clear</samp> or set a time with <samp>debug panMode {time}</samp>.
 
}}
 
}}
 
{{/cmd
 
{{/cmd
   |command = tls
+
   |command = tls,toggleLightingScale
 
   |desc    = Toggles between scaled and unscaled lighting.
 
   |desc    = Toggles between scaled and unscaled lighting.
 
}}
 
}}
Line 2,324: Line 2,335:  
{{/cmd
 
{{/cmd
 
   |command = playsound, ps
 
   |command = playsound, ps
   |params  = {{t|s:cueID}}
+
   |params  = {{t|s:cueID}},{{t|I:pitch}}
   |desc    = Playes the specified sound effect. See the [https://docs.google.com/spreadsheets/d/1CpDrw23peQiq-C7F2FjYOMePaYe0Rc9BwQsj3h6sjyo/ modder's resource spreadsheet] (Sound Bank IDs tab) for a list of valid cue IDs.
+
   |desc    = Playes the specified sound effect. The pitch argument is optional and can take values from 1 (low pitch) to 2400 (high pitch) inclusively. See the [https://docs.google.com/spreadsheets/d/1CpDrw23peQiq-C7F2FjYOMePaYe0Rc9BwQsj3h6sjyo/ modder's resource spreadsheet] (Sound Bank IDs tab) for a list of valid cue IDs.
 
   |example = <code>debug ps purchase</code> would make the coin clink sound heard when buying and selling items.  
 
   |example = <code>debug ps purchase</code> would make the coin clink sound heard when buying and selling items.  
 
}}
 
}}
Line 2,337: Line 2,348:  
! &nbsp;
 
! &nbsp;
 
|-
 
|-
{{/cmd
  −
  |command = bluebook
  −
  |desc    = Adds a "Farmer's Catalogue" to your inventory which looks like an axe and opens up a partially-implemented menu when used.
  −
}}
  −
{{/cmd
  −
  |command = blueprint
  −
  |params  = {{t|s:ID}}
  −
  |desc    = Adds the specified blueprint to the "Farmer's Catalogue" menu. IDs seem to be buildings and animals from <samp>Data/Blueprints</samp>.
  −
}}
  −
{{/cmd
  −
  |command = end
  −
  |desc    = Attempts to warp the player to town and start the "Stardew Hero Celebration" event but appears to crash due to missing music cues.
  −
}}
   
{{/cmd
 
{{/cmd
 
   |command = lantern
 
   |command = lantern
Line 2,361: Line 2,359:  
   |command = stoprafting
 
   |command = stoprafting
 
   |desc    = Sets an internal <samp>isRafting</samp> flag to false. As rafting was not fully implemented, this doesn't do much.
 
   |desc    = Sets an internal <samp>isRafting</samp> flag to false. As rafting was not fully implemented, this doesn't do much.
}}
  −
{{/cmd
  −
  |command = upgradebarn, barn
  −
  |desc    = {{upcoming|1.6.0|This command no longer exists.}} Increments an unused barn upgrade level variable (max 3).<br />'''Warning: This feature was not completely implemented and the game will crash on new day due to missing textures after using it.'''
  −
}}
  −
{{/cmd
  −
  |command = upgradecoop, coop
  −
  |desc    = {{upcoming|1.6.0|This command no longer exists.}} Increments an unused coop upgrade level variable (max 3).<br />'''Warning: This feature was not completely implemented and the game will crash on new day due to missing textures after using it.'''
   
}}
 
}}
 
|}
 
|}
138

edits

Navigation menu