Difference between revisions of "Basic NPC Creation Tutorial"

m
Moved pictures around to keep blockquotes from being covered.
imported>TS7
imported>Drspooky
m (Moved pictures around to keep blockquotes from being covered.)
Line 10: Line 10:


==Creating a new NPC==
==Creating a new NPC==
For this tutorial, let's create a special boss NPC for [[My First Dungeon|Creepy Cave]] tutorial dungeon.  As such, load up the cell CreepyCave02 we created and delete '''"LL1BanditBossLvl100"'''.
For this tutorial, let's create a special boss NPC for [[My First Dungeon|Creepy Cave]] tutorial dungeon.  As such, load up the cell CreepyCave02 we created and delete '''"LL1BanditBossLvl100"'''.
<blockquote>If you didn't complete the tutorial; don't worry, the dungeon from the tutorial just happens to have a boss chamber we're re-using.
<blockquote>If you didn't complete the tutorial; don't worry, the dungeon from the tutorial just happens to have a boss chamber we're re-using.
Line 17: Line 18:


'''Important:''' Before doing anything, change her ID to something unique.  This way we avoid accidentally saving our changes to the existing NPC.  When you hit 'OK' after changing the ID, you'll be prompted to either rename the existing object or create a new one.
'''Important:''' Before doing anything, change her ID to something unique.  This way we avoid accidentally saving our changes to the existing NPC.  When you hit 'OK' after changing the ID, you'll be prompted to either rename the existing object or create a new one.
==Editing NPC Stats==
[[Image:Tut3_img2.jpg|thumb|right|The NPC properties window]]
[[Image:Tut3_img2.jpg|thumb|right|The NPC properties window]]


==Editing NPC Stats==
Let's briefly review the basic properties on the far left of this window.
Let's briefly review the basic properties on the far left of this window.
*'''ID''' Editor ID for this NPC.  Must be unique. Let's use ''CreepyCaveBoss''
*'''ID''' Editor ID for this NPC.  Must be unique. Let's use ''CreepyCaveBoss''
Line 41: Line 43:
==Editing NPC Appearance==
==Editing NPC Appearance==
[[Image:tut3_img2.jpg|thumb|right|Basic Facial Editing]]
[[Image:tut3_img2.jpg|thumb|right|Basic Facial Editing]]
[[Image:tut3_img3.jpg|Face Advanced Tab|thumb|right]]
Click the "'''Face'''" tab.  This tab gives us some basic controls in the form of age, complexion, and hair sliders.  Additionally we can change hair style, color, generate random facial features, and change eye color.   
Click the "'''Face'''" tab.  This tab gives us some basic controls in the form of age, complexion, and hair sliders.  Additionally we can change hair style, color, generate random facial features, and change eye color.   


Line 58: Line 63:
*'''Control Type''' Geometry mode will allow you to change the actual shape of the NPC facial structure, while texture will allow you to change the appearance of skin, facial hair, and cosmetics.  For this NPC I lowered her brows, making her look a bit meaner than the random face I had generated.
*'''Control Type''' Geometry mode will allow you to change the actual shape of the NPC facial structure, while texture will allow you to change the appearance of skin, facial hair, and cosmetics.  For this NPC I lowered her brows, making her look a bit meaner than the random face I had generated.
*'''Symmetry Type''' Usually you'll want to work in Symmetry mode.  However; Asymmetry mode (only available for geometry control) is very useful for creating interesting imperfections in character faces.  For instance, I've changed the ''Mouth - corners transverse shift'' on this NPC to -8.93, giving her the appearance of a smirk.  Just remember that it's best to be subtle, though when creating a combat-only NPC such as this, you can go a little bigger than you would with a speaking NPC.
*'''Symmetry Type''' Usually you'll want to work in Symmetry mode.  However; Asymmetry mode (only available for geometry control) is very useful for creating interesting imperfections in character faces.  For instance, I've changed the ''Mouth - corners transverse shift'' on this NPC to -8.93, giving her the appearance of a smirk.  Just remember that it's best to be subtle, though when creating a combat-only NPC such as this, you can go a little bigger than you would with a speaking NPC.
[[Image:tut3_img3.jpg|Face Advanced Tab|thumb|right]]


==Editing NPC Inventory & Spells==
==Editing NPC Inventory & Spells==
Line 70: Line 74:


==Basic AI & Package Editing==
==Basic AI & Package Editing==
[[Image:tut3_img6.jpg|thumb|right|The Character Menu]]
[[Image:Tut3_img4.gif|thumb|right|The AI window]]
[[Image:tut3_img5.jpg|thumb|right]]
Finally, we want to give this NPC a little more than the standard behavior.  Press the "'''AI'''" button to open the AI window.
Finally, we want to give this NPC a little more than the standard behavior.  Press the "'''AI'''" button to open the AI window.


Line 77: Line 86:


Notice ''aaaCreatureInterior512''' and '''aaaCreatureExterior1500''' packages already in the package list.  '''aaa''' is a naming convention prefix we use to indicate basic packages which can be used on any NPC or creature.  We'll leave these two in, which will just allow the NPC to wander around and interact with the environment if no other packages are chosen.
Notice ''aaaCreatureInterior512''' and '''aaaCreatureExterior1500''' packages already in the package list.  '''aaa''' is a naming convention prefix we use to indicate basic packages which can be used on any NPC or creature.  We'll leave these two in, which will just allow the NPC to wander around and interact with the environment if no other packages are chosen.
[[Image:tut3_img6.jpg|thumb|right|The Character Menu]]
 
In your toolbar, open ''Packages...''.  This is a complete list of packages created.  Select the following three and add them to the NPC's package list.
In your toolbar, open ''Packages...''.  This is a complete list of packages created.  Select the following three and add them to the NPC's package list.
*aaaEat10x2
*aaaEat10x2
Line 83: Line 92:
*aaaSleep22x8
*aaaSleep22x8
These are all standard packages we can use, as indicated by the ''aaa'' prefix.  The naming convention for these three also give time information.  The first number is a time in military time, and the second is a duration.  So our NPC will now Eat for two hours at 10am and 8pm, and sleep for eight hours at 10pm.  This behavior will create a chance that some players may be able to more easily sneak in and loot her and her living area without direct confrontation.
These are all standard packages we can use, as indicated by the ''aaa'' prefix.  The naming convention for these three also give time information.  The first number is a time in military time, and the second is a duration.  So our NPC will now Eat for two hours at 10am and 8pm, and sleep for eight hours at 10pm.  This behavior will create a chance that some players may be able to more easily sneak in and loot her and her living area without direct confrontation.
[[Image:Tut3_img4.gif|thumb|right|The AI window]]
 
AI processes the package list from top to bottom, so be sure to keep the wander packages at the bottom.  Because they have no conditions (such as time or duration), the AI will always choose one of them, meaning that the NPC will never eat or sleep if those packages are below either of the wander packages in the list.
AI processes the package list from top to bottom, so be sure to keep the wander packages at the bottom.  Because they have no conditions (such as time or duration), the AI will always choose one of them, meaning that the NPC will never eat or sleep if those packages are below either of the wander packages in the list.


==Saving and Testing==
==Saving and Testing==
Again, be sure to have changed the ID before pressing okay, otherwise you'll overwrite the changes of the pre-existing NPC we used as our template.
Again, be sure to have changed the ID before pressing okay, otherwise you'll overwrite the changes of the pre-existing NPC we used as our template.
[[Image:tut3_img5.jpg|right]]
 
Now you're ready to drag the NPC into her chamber in CreepyCave02 (or anyplace you prefer).  It's a good idea to keep her near the bed for her sleep package, and you may want to put extra food in the room for her.
Now you're ready to drag the NPC into her chamber in CreepyCave02 (or anyplace you prefer).  It's a good idea to keep her near the bed for her sleep package, and you may want to put extra food in the room for her.
<blockquote>You can also add food to her inventory and set the quantity to -1, meaning she'll never run out of food.  This is helpful when NPC's searching for food in the environment begin to cause bad behavior.</blockquote>
<blockquote>You can also add food to her inventory and set the quantity to -1, meaning she'll never run out of food.  This is helpful when NPC's searching for food in the environment begin to cause bad behavior.</blockquote>
That's about it!  You can save this plugin and test it as normal.  Now you have a special boss just for your dungeon, and can tweak any of the settings we learned about to tailor your player experience.
That's about it!  You can save this plugin and test it as normal.  Now you have a special boss just for your dungeon, and can tweak any of the settings we learned about to tailor your player experience.


[[Category:Getting Started]]
[[Category:Getting Started]]
[[Category:Tutorials]]
[[Category:Tutorials]]
Anonymous user