Difference between revisions of "Villager NPCs"
DeamonHunter (Talk | contribs) (Initial commit.) |
DeamonHunter (Talk | contribs) (Some new variables for Villager npcs. But a lot still missing.) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | [[Category:Modding]][[Category: | + | [[Category:Modding]][[Category:Villager Modding]] |
− | [[:Category: | + | [[:Category:Villager Modding|Villagers]] in Staxel are fairly moddable, with many parts being able to be switched out, and new creations can add to the pool. |
This page is about Villager NPC, these are found in .villagernpc files and contains information for how to create a character. That is it contains info for; | This page is about Villager NPC, these are found in .villagernpc files and contains information for how to create a character. That is it contains info for; | ||
Line 13: | Line 13: | ||
= Creating a *.villagernpc file = | = Creating a *.villagernpc file = | ||
+ | Creating a Villager is an involved affair. Common Villagers need at least 5 files per villager, each of which are of differing sizes. | ||
+ | |||
+ | |||
+ | ''Before you start this tutorial, be sure to head through [[Modding#Getting Started with Staxel Modding]].'' | ||
+ | |||
+ | |||
+ | If you are working with the Staxel Launcher then after going through the setup tutorial, then open it up and make sure there is no game update available. If there is an update available, download it. This is to make sure you don't accidentally lose the files while you are working on them. | ||
+ | |||
+ | |||
+ | If you ever do come to see "Begin Update", remove the files from the <code>\mods\</code> before starting. Once that is checked, then we can start creating the stuff needed to get the your tile into the game. Make sure that all files are already ready in the <code>\mods\</code> folder. | ||
+ | |||
+ | |||
+ | == Creating the Villager Files == | ||
+ | Now as this is an involved process, the following steps will point you to new pages which will tell you how to create the individual files. | ||
+ | |||
+ | # Create the needed [[Villager Designs]] file by following the tutorial at [[Villager Designs#Creating a *.characterdesign file]]. | ||
+ | # Create the needed [[Villager Outfits]] file by following the tutorial at [[Villager Outfits#Creating a *.characteroutfit file]]. | ||
+ | # Step coming soon! ([[Villager Personalities]] is not complete yet) | ||
+ | # Step coming soon! ([[Villager Jobs]] is not complete yet) | ||
+ | |||
+ | At this point you should have everything you need to have a working NPC. However this NPC will almost certainly need a house to live. That being said, if your NPC is created by other means, such as [[Code Based Mod]] or [[Festivals]], then you will not need to do the following step. | ||
+ | |||
+ | * Create a [[Totems|Totem]] that will serve as the NPC's home. Do this by following the tutorial at [[Totems#Creating a *.totem file]] | ||
+ | |||
+ | ''This tutorial is in progress. This section will be expanded as pieces of the tutorial are completed.'' | ||
+ | |||
+ | |||
+ | <!-- | ||
+ | == The Villager | ||
The villager NPC file mainly just specifies each individual [[:Category:VillagerModding|Villager file]] that would be necessary to making an NPC. The basic layout is as follows; | The villager NPC file mainly just specifies each individual [[:Category:VillagerModding|Villager file]] that would be necessary to making an NPC. The basic layout is as follows; | ||
<pre> | <pre> | ||
Line 21: | Line 50: | ||
"job": "staxel.village.job.Patissier", | "job": "staxel.village.job.Patissier", | ||
"initialDesign": "staxel.village.design.Emilia", | "initialDesign": "staxel.village.design.Emilia", | ||
− | "initialOutfit": "staxel.village.outfit.Emilia", | + | "initialOutfit": "staxel.village.outfit.Emilia", |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
"homeTotem" : "staxel.totem.EmiliaHome" | "homeTotem" : "staxel.totem.EmiliaHome" | ||
} | } | ||
Line 44: | Line 59: | ||
With all of this done, you know have a villager that can be spawned. | With all of this done, you know have a villager that can be spawned. | ||
− | + | --> | |
= Config Options = | = Config Options = | ||
− | |||
== "code" == | == "code" == | ||
− | '''Valid options (String): <code>A unique string which villager what this object is.</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A unique string which villager what this object is.</code>''' |
'''Default Value:''' No default value is specified. Always need to provide your own. | '''Default Value:''' No default value is specified. Always need to provide your own. | ||
Line 54: | Line 68: | ||
A string containing the code of the villager this file will be referring to. | A string containing the code of the villager this file will be referring to. | ||
+ | |||
+ | |||
+ | == "hideFromMap" == | ||
+ | '''Valid options ([[Modding_Key_Terms#Bool|Bool]]): <code>True or False.</code>''' | ||
+ | |||
+ | '''Default Value:''' If not specified, will default to False. | ||
+ | |||
+ | |||
+ | This determines whether or not the villager will be hidden when the player goes into Map Mode. Makes it much harder to find the NPC. | ||
== "homeTotem" == | == "homeTotem" == | ||
− | '''Valid options (String): <code>A string that points to a [[Totem]].</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Totems|Totem]].</code>''' |
− | '''Default Value:''' | + | '''Default Value:''' If not specified, the villager will not care for totems. |
This is the totem that the villager will look for at it's home. If this home is missing then the villager can have extra stuff defined in it's personality. | This is the totem that the villager will look for at it's home. If this home is missing then the villager can have extra stuff defined in it's personality. | ||
+ | |||
+ | |||
+ | == "ignoreTavern" == | ||
+ | '''Valid options ([[Modding_Key_Terms#Bool|Bool]]): <code>True or False.</code>''' | ||
+ | |||
+ | '''Default Value:''' If not specified, will default to False. | ||
+ | |||
+ | |||
+ | Whether or not this villager will ignore the tavern if their home is missing. May be used in other similar circumstances. | ||
+ | |||
+ | |||
+ | == "ignoreTotemClaimed" == | ||
+ | '''Valid options ([[Modding_Key_Terms#Bool|Bool]]): <code>True or False.</code>''' | ||
+ | |||
+ | '''Default Value:''' If not specified, will default to False. | ||
+ | |||
+ | |||
+ | Whether or not this villager can \"claim\", and count it as another villagers totem. For example, the villager, Alua, uses this to claim Oscar's home as their own. Thus giving them a spawn point until they leave the town again. | ||
== "initialDesign" == | == "initialDesign" == | ||
− | '''Valid options (String): <code>A string that points to a [[Villager Designs|Villager Design]].</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Villager Designs|Villager Design]].</code>''' |
− | '''Default Value:''' | + | '''Default Value:''' If not specified, the villager will have a random design. |
Line 75: | Line 116: | ||
== "initialOutfit" == | == "initialOutfit" == | ||
− | '''Valid options (String): <code>A string that points to a [[Villager Outfits|Villager Outfit]].</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Villager Outfits|Villager Outfit]].</code>''' |
− | '''Default Value:''' | + | '''Default Value:''' If not specified, the villager will have a random outfit. |
This is the outfit that the villager will have. | This is the outfit that the villager will have. | ||
+ | |||
+ | |||
+ | == "introductionDialogue" == | ||
+ | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Dialogue]]</code>''' | ||
+ | |||
+ | '''Default Value:''' If not specified, normal dialogue will play. | ||
+ | |||
+ | |||
+ | This adds a Dialogue that must be played before all other dialogue. This dialogue should act as the Introduction and have the Introduction Type. | ||
== "job" == | == "job" == | ||
− | '''Valid options (String): <code>A string that points to a [[Villager Jobs|Villager Job]].</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Villager Jobs|Villager Job]].</code>''' |
− | '''Default Value:''' | + | '''Default Value:''' If not specified, the villager will act as if they are jobless. |
Line 93: | Line 143: | ||
== "name" == | == "name" == | ||
− | '''Valid options (String): <code>A string that specifies the default name for this villager.</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that specifies the default name for this villager.</code>''' |
'''Default Value:''' No default value is specified. Always need to provide your own. | '''Default Value:''' No default value is specified. Always need to provide your own. | ||
Line 102: | Line 152: | ||
== "personality" == | == "personality" == | ||
− | '''Valid options (String): <code>A string that points to a [[Villager Personalities|Villager Personality]].</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Villager Personalities|Villager Personality]].</code>''' |
'''Default Value:''' No default value is specified. Always need to provide your own. | '''Default Value:''' No default value is specified. Always need to provide your own. | ||
Line 111: | Line 161: | ||
== "regards" == | == "regards" == | ||
− | '''Valid options (List of Blobs): <code>A blob containing several properties.</code>''' | + | '''Valid options ([[Modding_Key_Terms#List|List]]of [[Modding_Key_Terms#Blob|Blobs]]): <code>A blob containing several properties.</code>''' |
'''Default Value:''' Can be omitted. | '''Default Value:''' Can be omitted. | ||
Line 122: | Line 172: | ||
This contains all the information needed for "baseUniqueDialogue", "likedUniqueDialogue", "fondUniqueDialogue" and "bestFriendUniqueDialogue". | This contains all the information needed for "baseUniqueDialogue", "likedUniqueDialogue", "fondUniqueDialogue" and "bestFriendUniqueDialogue". | ||
− | '''Valid options (String): <code>A string that points to a [[Dialogue]]</code>''' | + | '''Valid options ([[Modding_Key_Terms#String|String]]): <code>A string that points to a [[Dialogue]]</code>''' |
− | '''Default Value:''' | + | '''Default Value:''' If not specified, normal dialogue will play |
These properties adds in extra dialogues that can play once the villager likes you enough. (Listed above in ascending order). More elaborations will be added later when regards are elaborated. | These properties adds in extra dialogues that can play once the villager likes you enough. (Listed above in ascending order). More elaborations will be added later when regards are elaborated. |
Latest revision as of 06:57, 12 September 2018
Villagers in Staxel are fairly moddable, with many parts being able to be switched out, and new creations can add to the pool.
This page is about Villager NPC, these are found in .villagernpc files and contains information for how to create a character. That is it contains info for;
- What job this npc should have.
- What personality this npc has.
- What the npc will look like.
- The totem that signifies their home
- Regards and dialogues specific for the villagers happiness towards you.
This therefore contains all the information needed to spawn a villager into the world. It basically brings together all other Villager files into a single file.
Creating a *.villagernpc file
Creating a Villager is an involved affair. Common Villagers need at least 5 files per villager, each of which are of differing sizes.
Before you start this tutorial, be sure to head through Modding#Getting Started with Staxel Modding.
If you are working with the Staxel Launcher then after going through the setup tutorial, then open it up and make sure there is no game update available. If there is an update available, download it. This is to make sure you don't accidentally lose the files while you are working on them.
If you ever do come to see "Begin Update", remove the files from the \mods\
before starting. Once that is checked, then we can start creating the stuff needed to get the your tile into the game. Make sure that all files are already ready in the \mods\
folder.
Creating the Villager Files
Now as this is an involved process, the following steps will point you to new pages which will tell you how to create the individual files.
- Create the needed Villager Designs file by following the tutorial at Villager Designs#Creating a *.characterdesign file.
- Create the needed Villager Outfits file by following the tutorial at Villager Outfits#Creating a *.characteroutfit file.
- Step coming soon! (Villager Personalities is not complete yet)
- Step coming soon! (Villager Jobs is not complete yet)
At this point you should have everything you need to have a working NPC. However this NPC will almost certainly need a house to live. That being said, if your NPC is created by other means, such as Code Based Mod or Festivals, then you will not need to do the following step.
- Create a Totem that will serve as the NPC's home. Do this by following the tutorial at Totems#Creating a *.totem file
This tutorial is in progress. This section will be expanded as pieces of the tutorial are completed.
Config Options
"code"
Valid options (String): A unique string which villager what this object is.
Default Value: No default value is specified. Always need to provide your own.
A string containing the code of the villager this file will be referring to.
"hideFromMap"
Valid options (Bool): True or False.
Default Value: If not specified, will default to False.
This determines whether or not the villager will be hidden when the player goes into Map Mode. Makes it much harder to find the NPC.
"homeTotem"
Valid options (String): A string that points to a Totem.
Default Value: If not specified, the villager will not care for totems.
This is the totem that the villager will look for at it's home. If this home is missing then the villager can have extra stuff defined in it's personality.
"ignoreTavern"
Valid options (Bool): True or False.
Default Value: If not specified, will default to False.
Whether or not this villager will ignore the tavern if their home is missing. May be used in other similar circumstances.
"ignoreTotemClaimed"
Valid options (Bool): True or False.
Default Value: If not specified, will default to False.
Whether or not this villager can \"claim\", and count it as another villagers totem. For example, the villager, Alua, uses this to claim Oscar's home as their own. Thus giving them a spawn point until they leave the town again.
"initialDesign"
Valid options (String): A string that points to a Villager Design.
Default Value: If not specified, the villager will have a random design.
This is the design that the villager will have.
"initialOutfit"
Valid options (String): A string that points to a Villager Outfit.
Default Value: If not specified, the villager will have a random outfit.
This is the outfit that the villager will have.
"introductionDialogue"
Valid options (String): A string that points to a Dialogue
Default Value: If not specified, normal dialogue will play.
This adds a Dialogue that must be played before all other dialogue. This dialogue should act as the Introduction and have the Introduction Type.
"job"
Valid options (String): A string that points to a Villager Job.
Default Value: If not specified, the villager will act as if they are jobless.
This is the job that the villager will have.
"name"
Valid options (String): A string that specifies the default name for this villager.
Default Value: No default value is specified. Always need to provide your own.
This is the default name the villager will have. This name can be translated into a different language however.
"personality"
Valid options (String): A string that points to a Villager Personality.
Default Value: No default value is specified. Always need to provide your own.
This is the personality that the villager will have.
"regards"
Valid options (Listof Blobs): A blob containing several properties.
Default Value: Can be omitted.
Regards are a system that involves villager friendship. Will elaborate in the future.
Unique Dialogues
This contains all the information needed for "baseUniqueDialogue", "likedUniqueDialogue", "fondUniqueDialogue" and "bestFriendUniqueDialogue".
Valid options (String): A string that points to a Dialogue
Default Value: If not specified, normal dialogue will play
These properties adds in extra dialogues that can play once the villager likes you enough. (Listed above in ascending order). More elaborations will be added later when regards are elaborated.