<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://te4.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Soadzombi</id>
		<title>Tales of Maj'Eyal - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://te4.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Soadzombi"/>
		<link rel="alternate" type="text/html" href="https://te4.org/wiki/Special:Contributions/Soadzombi"/>
		<updated>2026-04-10T18:00:09Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Player_Descriptors&amp;diff=9329</id>
		<title>T4 Modules Howto Guide/Player Descriptors</title>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Player_Descriptors&amp;diff=9329"/>
				<updated>2014-10-12T05:17:39Z</updated>
		
		<summary type="html">&lt;p&gt;Soadzombi: /* Guide */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Who do you want to be today?=&lt;br /&gt;
&lt;br /&gt;
==Important variables==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Variable&amp;lt;/th&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Display name of this option in the selection menu. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;short_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Identifier of this option.  name is used if unset.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;type&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines which birth stage this descriptor belongs to. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;descriptor_choices&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Selects which later descriptors are allowed or disallowed.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;talents_types&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Talent types learned at start of game&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;talents&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;List of starting learned talents.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;desc&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;String that describes the descriptor.  Appears in the selection menu. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;body&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Initializes available slots.  Requires ActorInventory defineInventory() calls in load.lua beforehand(?) which is NOT done in the example module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;copy&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;These variables and values will be copied to the resulting player object.  See [[NPCs|NPCs]] for values.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;experience&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Experience rate.  1 being normal experience gain.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;stats&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Initial stats for character.  Is added to default stat values.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Important to note is that these variables do not overwrite, they add every time.  If your race adds 2 strength, and your class adds 2 strength again you will end up with 4 strength.  The exception to this is the copy variable.  All elements in this will overwrite previous copy elements.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2 id=&amp;quot;toc2&amp;quot;&amp;gt;Editing the Example Module for your own use&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;At the time of writing, ToME has descriptors for world, race, subrace, sex, class and subclass.  However, the example module only has a descriptor for role.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;If you want to expand this and introduce your own descriptors for races and classes like ToME, or different descriptors entirely, you need to edit the following line in your /class/Game.lua file:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;local birth = Birther.new(self.player, {&amp;amp;quot;base&amp;amp;quot;, &amp;amp;quot;role&amp;amp;quot; }, function()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;For comparison, ToME has this line:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;local birth = Birther.new(self.player, {&amp;amp;quot;base&amp;amp;quot;, &amp;amp;quot;world&amp;amp;quot;, &amp;amp;quot;race&amp;amp;quot;, &amp;amp;quot;subrace&amp;amp;quot;, &amp;amp;quot;sex&amp;amp;quot;, &amp;amp;quot;class&amp;amp;quot;, &amp;amp;quot;subclass&amp;amp;quot; }, function()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Now you just need to create your own descriptors in the /data/birth/descriptors.lua file.  If you want to organize your descriptors in multiple files for organization such as ToME does, remember to make a load call with your file path, such as the following ToME uses for its elf descriptor file.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;load(&amp;amp;quot;/data/birth/races/elf.lua&amp;amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Leveling up==&lt;br /&gt;
&amp;lt;p&amp;gt;Once you gain enough xp to level, the levelup() method on the player gets called.&amp;lt;br /&amp;gt;&lt;br /&gt;
Use this method to include specific special code that runs on a new level up, such as gaining hp and stats.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Note that if you make use of NPC level scaling, its important to define a levelup() on the Actor class as well.  Since Player inherits from Actor, you can have the Player class call Actor's levelup() method through:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mod.class.Actor.levelup(self)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Guide==&lt;br /&gt;
&amp;lt;p&amp;gt;This guide is roughly based on the [[t4modules t3modules module_guide_part_1|te3 player descriptor guide]].&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;In the default ToME module, you get to choose from a race, a sub-race, gender, a background, a class, and then a subclass. To the T-Engine, these are all the same thing, called 'player descriptors' (Character descriptors would be more accurate, but that's nitpicking), or PDs for short. PDs are what let you alter the player character in all sorts of different ways. Player descriptors typically stack, so any modifications done to one will usually add with any other modifications, rather than replacing them.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;There's no definition or distinction between different types of PDs by the engine. They can all have the same functionality, the only place any consistency is found is by the module author. So, if you only want stats to come from races, and skills from classes, you will have to make sure that only races gain stat bonuses and only classes have skill bonuses. The engine will not discriminate against this for you.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;All the examples below will be from the ToME module, so you should be able to see pretty easily where everything came from and can easily modify it and see what happens.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Possibly the most important PD is the one that the player will never see, the base descriptor, found in /data/birth/descriptors.lua. This is the one that is loaded for every character, and provides the universal traits that each character will share.  This one has been edited slightly for clarity.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;newBirthDescriptor{&lt;br /&gt;
    type = &amp;amp;quot;base&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;base&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
    },&lt;br /&gt;
    talents = {},&lt;br /&gt;
    experience = 1.0,&lt;br /&gt;
    body = { INVEN = 1000, MAINHAND=1, OFFHAND=1, BODY=1, QUIVER=1 },&lt;br /&gt;
&lt;br /&gt;
    copy = {&lt;br /&gt;
        -- Mages are unheard of at first, nobody but them regenerates mana&lt;br /&gt;
        mana_rating = 6,&lt;br /&gt;
        mana_regen = 0,&lt;br /&gt;
&lt;br /&gt;
        max_level = 50,&lt;br /&gt;
        money = 10,&lt;br /&gt;
        resolvers.equip{ id=true,&lt;br /&gt;
            {type=&amp;amp;quot;lite&amp;amp;quot;, subtype=&amp;amp;quot;lite&amp;amp;quot;, name=&amp;amp;quot;brass lantern&amp;amp;quot;},&lt;br /&gt;
        },&lt;br /&gt;
        resolvers.inventory{ id=true,&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of cure poison&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of cure poison&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
        },&lt;br /&gt;
        resolvers.generic(function(e)&lt;br /&gt;
            e.hotkey[9] = {&amp;amp;quot;inventory&amp;amp;quot;, &amp;amp;quot;potion of lesser healing&amp;amp;quot;}&lt;br /&gt;
        end),&lt;br /&gt;
    },&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;This defines out the body and inventory slots for each character, the base experience rate and starting gold and the minimum equipment each character will need to have.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The second PD applied by the ToME module is your race, followed by subrace, found appropriate in /data/birth/races/. Races are where ToME typically grants the character their most unique abilities and major stat adjustments. Below is the PD for elves, and then a subrace of elf.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;newBirthDescriptor{&lt;br /&gt;
    type = &amp;amp;quot;race&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;Elf&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
        &amp;amp;quot;Quendi are Elves, the first children of Eru.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;The first Elves awoke by Cuiviénen, the Water of Awakening in the far east of Middle-earth, long Ages before the Rising of the Sun or Moon.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;Unlike Men, the Elves are not subject to death by old age.&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    descriptor_choices =&lt;br /&gt;
    {&lt;br /&gt;
        subrace =&lt;br /&gt;
        {&lt;br /&gt;
            Nandor = &amp;amp;quot;allow&amp;amp;quot;,&lt;br /&gt;
            Avari = &amp;amp;quot;allow&amp;amp;quot;,&lt;br /&gt;
            __ALL__ = &amp;amp;quot;never&amp;amp;quot;,&lt;br /&gt;
        },&lt;br /&gt;
    },&lt;br /&gt;
    talents = {&lt;br /&gt;
--        [ActorTalents.T_IMPROVED_MANA_I]=1,&lt;br /&gt;
    },&lt;br /&gt;
    copy = {&lt;br /&gt;
        type = &amp;amp;quot;humanoid&amp;amp;quot;, subtype=&amp;amp;quot;elf&amp;amp;quot;,&lt;br /&gt;
        default_wilderness = {39, 17},&lt;br /&gt;
        starting_zone = &amp;amp;quot;tower-amon-sul&amp;amp;quot;,&lt;br /&gt;
        starting_quest = &amp;amp;quot;start-dunadan&amp;amp;quot;,&lt;br /&gt;
        starting_intro = &amp;amp;quot;elf&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    experience = 1.05,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
newBirthDescriptor&lt;br /&gt;
{&lt;br /&gt;
    type = &amp;amp;quot;subrace&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;Nandor&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
        &amp;amp;quot;Elves who turned aside from the Great Journey in the early days and settled in th east of the Misty Mountains.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;Both the Wood-Elves of Mirkwood and the Elves of Lórien are Nandor.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;They posses the Grace of the Eldar talent which allows them a boost of speed every once in a while.&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    stats = { str=-2, mag=2, wil=3, cun=1, dex=1, con=0 },&lt;br /&gt;
    experience = 1.3,&lt;br /&gt;
    talents = { [ActorTalents.T_NANDOR_SPEED]=1 },&lt;br /&gt;
    copy = {&lt;br /&gt;
        life_rating = 9,&lt;br /&gt;
    },&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go back to [[T4 Modules Howto Guide]]&lt;br /&gt;
&lt;br /&gt;
{{Module Guides}}&lt;/div&gt;</summary>
		<author><name>Soadzombi</name></author>	</entry>

	<entry>
		<id>https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Player_Descriptors&amp;diff=9328</id>
		<title>T4 Modules Howto Guide/Player Descriptors</title>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Player_Descriptors&amp;diff=9328"/>
				<updated>2014-10-12T05:02:12Z</updated>
		
		<summary type="html">&lt;p&gt;Soadzombi: /* Guide */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Who do you want to be today?=&lt;br /&gt;
&lt;br /&gt;
==Important variables==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Variable&amp;lt;/th&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Display name of this option in the selection menu. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;short_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Identifier of this option.  name is used if unset.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;type&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines which birth stage this descriptor belongs to. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;descriptor_choices&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Selects which later descriptors are allowed or disallowed.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;talents_types&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Talent types learned at start of game&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;talents&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;List of starting learned talents.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;desc&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;String that describes the descriptor.  Appears in the selection menu. REQUIRED.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;body&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Initializes available slots.  Requires ActorInventory defineInventory() calls in load.lua beforehand(?) which is NOT done in the example module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;copy&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;These variables and values will be copied to the resulting player object.  See [[NPCs|NPCs]] for values.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;experience&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Experience rate.  1 being normal experience gain.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;stats&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Initial stats for character.  Is added to default stat values.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Important to note is that these variables do not overwrite, they add every time.  If your race adds 2 strength, and your class adds 2 strength again you will end up with 4 strength.  The exception to this is the copy variable.  All elements in this will overwrite previous copy elements.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2 id=&amp;quot;toc2&amp;quot;&amp;gt;Editing the Example Module for your own use&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;At the time of writing, ToME has descriptors for world, race, subrace, sex, class and subclass.  However, the example module only has a descriptor for role.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;If you want to expand this and introduce your own descriptors for races and classes like ToME, or different descriptors entirely, you need to edit the following line in your /class/Game.lua file:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;local birth = Birther.new(self.player, {&amp;amp;quot;base&amp;amp;quot;, &amp;amp;quot;role&amp;amp;quot; }, function()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;For comparison, ToME has this line:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;local birth = Birther.new(self.player, {&amp;amp;quot;base&amp;amp;quot;, &amp;amp;quot;world&amp;amp;quot;, &amp;amp;quot;race&amp;amp;quot;, &amp;amp;quot;subrace&amp;amp;quot;, &amp;amp;quot;sex&amp;amp;quot;, &amp;amp;quot;class&amp;amp;quot;, &amp;amp;quot;subclass&amp;amp;quot; }, function()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Now you just need to create your own descriptors in the /data/birth/descriptors.lua file.  If you want to organize your descriptors in multiple files for organization such as ToME does, remember to make a load call with your file path, such as the following ToME uses for its elf descriptor file.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;load(&amp;amp;quot;/data/birth/races/elf.lua&amp;amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Leveling up==&lt;br /&gt;
&amp;lt;p&amp;gt;Once you gain enough xp to level, the levelup() method on the player gets called.&amp;lt;br /&amp;gt;&lt;br /&gt;
Use this method to include specific special code that runs on a new level up, such as gaining hp and stats.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Note that if you make use of NPC level scaling, its important to define a levelup() on the Actor class as well.  Since Player inherits from Actor, you can have the Player class call Actor's levelup() method through:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mod.class.Actor.levelup(self)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Guide==&lt;br /&gt;
&amp;lt;p&amp;gt;This guide is roughly based on the [[t4modules t3modules module_guide_part_1|te3 player descriptor guide]].&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;In the default ToME module, you get to choose from a race, a sub-race, gender, a background, a class, and then a subclass. To the T-Engine, these are all the same thing, called 'player descriptors' (Character descriptors would be more accurate, but that's nitpicking), or PDs for short. PDs are what let you alter the player character in all sorts of different ways. Player descriptors typically stack, so any modifications done to one will usually add with any other modifications, rather than replacing them.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;There's no definition or distinction between different types of PDs by the engine. They can all have the same functionality, the only place any consistency is found is by the module author. So, if you only want stats to come from races, and skills from classes, you will have to make sure that only races gain stat bonuses and only classes have skill bonuses. The engine will not discriminate against this for you.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;All the examples below will be from the ToME module, so you should be able to see pretty easily where everything came from and can easily modify it and see what happens.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Possibly the most important PD is the one that the player will never see, the base descriptor, found in /data/birth/descriptors.lua. This is the one that is loaded for every character, and provides the universal traits that each character will share.  This one has been edited slightly for clarity.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;newBirthDescriptor{&lt;br /&gt;
    type = &amp;amp;quot;base&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;base&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
    },&lt;br /&gt;
    talents = {},&lt;br /&gt;
    experience = 1.0,&lt;br /&gt;
    body = { INVEN = 1000, MAINHAND=1, OFFHAND=1, BODY=1, QUIVER=1 },&lt;br /&gt;
&lt;br /&gt;
    copy = {&lt;br /&gt;
        -- Mages are unheard of at first, nobody but them regenerates mana&lt;br /&gt;
        mana_rating = 6,&lt;br /&gt;
        mana_regen = 0,&lt;br /&gt;
&lt;br /&gt;
        max_level = 50,&lt;br /&gt;
        money = 10,&lt;br /&gt;
        resolvers.equip{ id=true,&lt;br /&gt;
            {type=&amp;amp;quot;lite&amp;amp;quot;, subtype=&amp;amp;quot;lite&amp;amp;quot;, name=&amp;amp;quot;brass lantern&amp;amp;quot;},&lt;br /&gt;
        },&lt;br /&gt;
        resolvers.inventory{ id=true,&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of lesser healing&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of cure poison&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
            {type=&amp;amp;quot;potion&amp;amp;quot;, subtype=&amp;amp;quot;potion&amp;amp;quot;, name=&amp;amp;quot;potion of cure poison&amp;amp;quot;, ego_chance=-1000},&lt;br /&gt;
        },&lt;br /&gt;
        resolvers.generic(function(e)&lt;br /&gt;
            e.hotkey[9] = {&amp;amp;quot;inventory&amp;amp;quot;, &amp;amp;quot;potion of lesser healing&amp;amp;quot;}&lt;br /&gt;
        end),&lt;br /&gt;
    },&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;This defines out the body and inventory slots for each character, the base experience rate and starting gold and the minimum equipment each character will need to have.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The second PD applied by the ToME module is your race, followed by subrace, found appropriate in /data/birth/races/. Races are where ToME typically grants the charcter their most unique abilities and major stat adjustments. Below is the PD for elves, and then a subrace of elf.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;newBirthDescriptor{&lt;br /&gt;
    type = &amp;amp;quot;race&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;Elf&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
        &amp;amp;quot;Quendi are Elves, the first children of Eru.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;The first Elves awoke by Cuiviénen, the Water of Awakening in the far east of Middle-earth, long Ages before the Rising of the Sun or Moon.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;Unlike Men, the Elves are not subject to death by old age.&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    descriptor_choices =&lt;br /&gt;
    {&lt;br /&gt;
        subrace =&lt;br /&gt;
        {&lt;br /&gt;
            Nandor = &amp;amp;quot;allow&amp;amp;quot;,&lt;br /&gt;
            Avari = &amp;amp;quot;allow&amp;amp;quot;,&lt;br /&gt;
            __ALL__ = &amp;amp;quot;never&amp;amp;quot;,&lt;br /&gt;
        },&lt;br /&gt;
    },&lt;br /&gt;
    talents = {&lt;br /&gt;
--        [ActorTalents.T_IMPROVED_MANA_I]=1,&lt;br /&gt;
    },&lt;br /&gt;
    copy = {&lt;br /&gt;
        type = &amp;amp;quot;humanoid&amp;amp;quot;, subtype=&amp;amp;quot;elf&amp;amp;quot;,&lt;br /&gt;
        default_wilderness = {39, 17},&lt;br /&gt;
        starting_zone = &amp;amp;quot;tower-amon-sul&amp;amp;quot;,&lt;br /&gt;
        starting_quest = &amp;amp;quot;start-dunadan&amp;amp;quot;,&lt;br /&gt;
        starting_intro = &amp;amp;quot;elf&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    experience = 1.05,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
newBirthDescriptor&lt;br /&gt;
{&lt;br /&gt;
    type = &amp;amp;quot;subrace&amp;amp;quot;,&lt;br /&gt;
    name = &amp;amp;quot;Nandor&amp;amp;quot;,&lt;br /&gt;
    desc = {&lt;br /&gt;
        &amp;amp;quot;Elves who turned aside from the Great Journey in the early days and settled in th east of the Misty Mountains.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;Both the Wood-Elves of Mirkwood and the Elves of Lórien are Nandor.&amp;amp;quot;,&lt;br /&gt;
        &amp;amp;quot;They posses the Grace of the Eldar talent which allows them a boost of speed every once in a while.&amp;amp;quot;,&lt;br /&gt;
    },&lt;br /&gt;
    stats = { str=-2, mag=2, wil=3, cun=1, dex=1, con=0 },&lt;br /&gt;
    experience = 1.3,&lt;br /&gt;
    talents = { [ActorTalents.T_NANDOR_SPEED]=1 },&lt;br /&gt;
    copy = {&lt;br /&gt;
        life_rating = 9,&lt;br /&gt;
    },&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go back to [[T4 Modules Howto Guide]]&lt;br /&gt;
&lt;br /&gt;
{{Module Guides}}&lt;/div&gt;</summary>
		<author><name>Soadzombi</name></author>	</entry>

	<entry>
		<id>https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Directory_Structure&amp;diff=9327</id>
		<title>T4 Modules Howto Guide/Directory Structure</title>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Directory_Structure&amp;diff=9327"/>
				<updated>2014-10-12T04:38:56Z</updated>
		
		<summary type="html">&lt;p&gt;Soadzombi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=An Overview=&lt;br /&gt;
==Player Profiles==&lt;br /&gt;
&lt;br /&gt;
When you run T-Engine or a module for the first time a player profile will be created. This contains your settings and keybindings, as well as module specific settings and achievements.&lt;br /&gt;
&lt;br /&gt;
On linux this profile can be found in your home directory.&lt;br /&gt;
&lt;br /&gt;
For Windows the profile folder will be called T-Engine. It will be located in the following locations.&lt;br /&gt;
&lt;br /&gt;
    Windows 7 - C:\Users\&amp;lt;username&amp;gt;\T-Engine&lt;br /&gt;
    Windows XP - C:\Documents and Settings\&amp;lt;username&amp;gt;\T-Engine&lt;br /&gt;
&lt;br /&gt;
Future plans involve moving the profile online, making it easier to compare, rank and show off individual accomplishments to friends. (As of April 2011, this appears to have been implemented.)&lt;br /&gt;
&lt;br /&gt;
==T-Engine Root Directory==&lt;br /&gt;
&lt;br /&gt;
In your T-Engine directory, the one where your executable is located, you will find a game directory. This directory contains all the Lua scripts used by the game and all its modules. The script is interpreted at runtime, so no recompilation is needed after modifying a file.&lt;br /&gt;
&lt;br /&gt;
If you are writing a custom module you should avoid editing any file outside your module directory, since you will not be able to distribute those changes along with your module if you do.&lt;br /&gt;
&lt;br /&gt;
This directory is located in your game folder and contains every module currently available to T-Engine. Every module has its own folder and copying a module directory here is sufficient for it to be detected and appear on the list of available modules when starting a new game.&lt;br /&gt;
&lt;br /&gt;
For all of these guides, the convention to refer to a filepath will use the game's module directory as its root. This is the folder that contains your init.lua file.&lt;br /&gt;
&lt;br /&gt;
Note that the structure described here is only a convention used by ToME, but it is advised that third party module writers follow it for consistency. Few of these paths are hardcoded.&lt;br /&gt;
&lt;br /&gt;
Directories and files not in the example module are underlined. Directories are boldface.&lt;br /&gt;
&lt;br /&gt;
ToME uses many more than listed here, this is only intended to be a rough guide for structuring your own modules.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Directory or file&amp;lt;/th&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Purpose&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Root Module directory&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/init.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Description and basic information about the module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/load.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;This file loads all the basic code and definitions needed to run the module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/resolvers.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Contains additional custom resolvers.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/ai/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Directory for custom AI definitions.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/class/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Directory for module custom class files.  These usually extend the generic T-Engine classes of the same name and are used instead of them if they exist.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/Actor.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Both the player and all NPCs use this class.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/Game.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles game initialization, lower level code like keybindings and changing levels and displaying to screen.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/Grid.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines tooltips for grids and methods that handle what terrain blocks movement.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/NPC.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles non-player actors.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/class/Object.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles all objects in the game.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/Player.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles all player specific code that isn't generic to all Actors.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/class/PlayerDisplay.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles displaying the player's stats.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/class/Store.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles stores.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/class/Trap.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles traps.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;/class/World.lua&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Handles saving and Achievements.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/class/generator/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Directory for custom generators in zones.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/class/interface/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Directory for custom interfaces.  These are inherited by other classes to help segment and seperate code and improve readability for complex classes.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/class/interface/Combat.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Module custom combat code is defined here.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Most of T-Engine is data-driven, not code-driven.  This directory contains all the module custom definitions loaded to make your game unique.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/damage_types.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines the default damage projector and all the different damage types used in the module. (fire, water, acid, etc)&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/talents.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Default talents file loaded by /init.lua.  This file often Load()'s other talent files to improve readability.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/timed_effects.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines various timed effects available to the module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/achievements/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Stores module achievements.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/birth/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Birth descriptors folder.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/birth/descriptors.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Default birth descriptors file.  Often Load()'s other descriptor files to improve readability..&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/chats/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Stores NPC chats for mobs that can speak.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/general/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines entities available to your module. Note that zones may define their own entities, such as bosses or special items, in the zone directories.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/general/grids/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines general grids (terrain).&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/general/npcs/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines general NPCs.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/general/objects/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines general objects.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/general/stores/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines general stores.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/general/traps/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Defines general traps.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/gfx/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Special module image or particle assets.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/gfx/particles/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Particle script files.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/maps/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Static map definitions.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/music/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Module music.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/quest/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Module quests.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/rooms/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Special generators for rooms.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/sound/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Sound effects directory.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/talents/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Stores talent description files.  These are Load()'ed by the /data/talents.lua file.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/texts/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Special non-quest or monster related texts.  Used in ToME for introduction messages and new class unlock texts.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;u&amp;gt;&amp;lt;strong&amp;gt;/data/tilesets/&amp;lt;/strong&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Data folder for the map generator.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/data/zones/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zones folder.  Each zone has its own directory.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/ZONE/grids.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zone load file for grids.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/ZONE/npcs.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zone load file for npcs.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/ZONE/objects.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zone load file for objects.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/ZONE/traps.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zone load file for traps.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/data/ZONE/zone.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Zone description file.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;/dialogs/&amp;lt;/strong&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Contains module specific dialogs.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/dialogs/DeathDialog.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Dialog displayed on death.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;/dialogs/Quit.lua&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Dialog displayed when a quit is requested.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Module team files==&lt;br /&gt;
The team files are renamed zip files. However, they have a different directory structure. The data folder remains the same and everything else is put in a mod folder.&lt;br /&gt;
&lt;br /&gt;
Go back to [[T4 Modules Howto Guide]]&lt;br /&gt;
&lt;br /&gt;
{{Module Guides}}&lt;/div&gt;</summary>
		<author><name>Soadzombi</name></author>	</entry>

	<entry>
		<id>https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Getting_Started&amp;diff=9326</id>
		<title>T4 Modules Howto Guide/Getting Started</title>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=T4_Modules_Howto_Guide/Getting_Started&amp;diff=9326"/>
				<updated>2014-10-12T04:36:59Z</updated>
		
		<summary type="html">&lt;p&gt;Soadzombi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;p&amp;gt;In order to start your own module, you need to create a new directory in the /game/modules/ directory, into which you copy the contents of either /game/modules/example/ or /game/modules/example_realtime/, which will give you bare-bones but working base to work off of.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==init.lua==&lt;br /&gt;
&amp;lt;p&amp;gt;The first file you need to customize is the init.lua file. This file has a few things you need to edit to make this module your own:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table class=&amp;quot;wikitable&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Setting&amp;lt;/th&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;This is the official name of the module as seen in module selection list.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;long_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;This is the long name of the module that appears is descriptions.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;short_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;This is a short name used internal to the module. Preferred to be lower case and should be the same as the folder name.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;author&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Your name or pseudonym and email address.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;homepage&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Optional homepage of the module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;version&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Module version. Does not automatically update. Change this between releases to differentiate them.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;engine&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Expected engine version.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;description&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;A description of your module. Can be multiple lines and paragraphs.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;starter&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Only change if you know what you are doing. And if you have to ask, you don't.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;show_only_on_cheat&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;If true, prevents this module from appearing in the mods list normally. This is enabled by default on the example module and should be disabled in your module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;no_get_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Prevents the new character name dialog from showing up for your module. Use this if you set the character name yourself in your module.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;no_funfacts&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Set to true. This stops ToME4 gameplay stats from appearing on the loading screen.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;loading_wait_ticks&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;The affects the full speed of the loading bar. Set to around 30 for a small game, or tweak to get a speed that feels right to you.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;allow_userchat&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Registers 'space' as a key to talk, joins a channel named &amp;amp;quot;module&amp;amp;quot;, and inits the chat system. If the game implements a game.logChat(str, ...) method it'll send chat listens to there.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;background_name&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;A list of filenames (without the extension) of PNG images under the data/gfx/background directory to use as startup screen backgrounds. The game will load a logo file for each background at data/gfx/background/background_name.png if it is there&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2 id=&amp;quot;toc2&amp;quot;&amp;gt;Launching your module using command line parameters&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;By now you should be able to start t-engine normally and see your module in the list when you select new game. However, when changing features then quickly wanting to see its effects, this process involves a lot of unneeded clicks and wasted time. For this reason t-engine.exe supports various command line parameters.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table class=&amp;quot;wikitable&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Parameter&amp;lt;/th&amp;gt;&lt;br /&gt;
        &amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;-M&amp;amp;lt;Module&amp;amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Auto-loads the specified module '''(using the module's short_name)'''.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;-u&amp;amp;lt;name&amp;amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Uses the specified name for the character.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;-n&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;Forces a new character, overwriting any old saves with the same name.&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;To take advantage of this in windows, you need to right-click on t-engine.exe and select 'Create Shortcut'. On the created shortcut right-click again and select properties. In the dialog add the following to the Target field:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.../t-engine.exe -MMyModule -udefault -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Replacing MyModule with your module name and default with whichever character name you desire. Using this shortcut now will launch your module directly, saving you some time while prototyping.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go back to [[T4 Modules Howto Guide]].&lt;br /&gt;
&lt;br /&gt;
{{Module Guides}}&lt;/div&gt;</summary>
		<author><name>Soadzombi</name></author>	</entry>

	</feed>