Obj File - torilmud/docs GitHub Wiki

Obj File

The *.obj file, or the object file, contains all the items in your zone.

Obj File Format

Object Format Example Object
#virtual number #8000
namelist~ holy sword greatsword avenger~
short description~ &+Wa holy avenger enshrouded in &+Ylight&N~
long description~ &+WA magnificent greatsword hovers just off the ground, awaiting a worthy wielder.&n~
action description~ ~
type flag(#object-types) extra flag(#object-extra-flags) wear flag(#object-wear-flags) anti flag(#object-anti-flags) 5 474243520 8193 57339
val0(#object-types) val1(#object-types) val2(#object-types) val3(#object-types) val4(#object-types) val5(#object-types) val6(#object-types) val7(#object-types) 0 8 4 3 40 0 0 0
weight(#object-basics) value(#object-basics) cost per day(#object-basics) 15 60000 6000
special1(Affect-Flags#special-affect-1) 8192
special2(Affect-Flags#special-affect-2) 0
special3(Affect-Flags#special-affect-3) 0
E (objects can have MANY extra descriptions) E
[keyword-list]~ holy sword~
[extra description] The sword is heavy and crafted for a great warrior.
The sword is made from a metal only known to gods.
The entire blade glows softly.
~ ~
T (Traps) (Optional) n/a * Avenger isn't trapped
trigger type(Traps#trigger-type) damage type(Traps#damage-type) charges(Traps#trap-charges) level(Traps#trap-level) [#die] die damage(Traps#die--die-damage)
A (Max 2 Affects per object) A 18 6
location/apply(#object-affects) modifier(#object-affects) A 19 6
M (weapon enchantments- stackable) M 12 100 50 -5 0
enchant type(#enchantment-type) Damage%(#damage) Frequency%(#frequency) Modifier(#modifier) Duration(#duration) M 25 100 15 -4 2
POWER: (Optional power line. Only if the object has one assigned) POWER: Torms Blessing, Torms Strength
RESIST: (Optional resistances line.) RESIST: melee 5, negative 5, elemental 5, Slash 2, Psi 3, fire 7
AFFECTS: name, name, name AFFECTS: haste, protection from cold, no sleep
FLAGS: name, name, name FLAGS: no drop, no burn, bless
WEAR: name, name WEAR: take, wield
ANTI: name, name, name ANTI: thief, warrior, moon elf
TYPE: name TYPE: weapon

Note

  • Last Line: There must be a blank line at the bottom of the file.

  • Dev Features:

    • AFFECTS: This line will automatically assign any flags named in this field, as though they were assigned via the Special1/Special2/Special3 bitvector fields above.
    • FLAGS: This line will automatically assign any flags named in this field, as though they were assigned via the Extra Flags bitvector fields above.
    • WEAR: This line will automatically assign any flags named in this field, as though they were assigned via the Wear bitvector fields above (Don't forget Take!).
    • ANTI: This line will automatically assign any flags named in this field, as though they were assigned via the Anti Flags bitvector fields above.
    • TYPE: This line will automatically assign any flags named in this field, as though they were assigned via the Type bitvector fields above.

Object Description Fields

Virtual Number

The unique number of that object.

Namelist

Same as for monsters, these are the keywords you use when handling the item, for taking, holding or otherwise interacting with it.

Do not use ANSI here.

Short Description

This string will be displayed when the object is used. For example if it is a rubber raft, and a player drops it, then a message like: Altherog drops a rubber raft. would be displayed. The first letter MUST be lowercase, unless the word is a proper noun.

Long Description

This description is displayed when the object is lying on the ground. For example, if it is A wet black rubber raft lies here. then this message is displayed when the raft is lying on the ground.

Action Description

Action descriptions are generally unused in objects, save for a few item types. They are used by the code to generate a preset message to the player. They are completely optional, and at the moment only used by switches, although more items will use them in the future. See the entry on switches for an example.

Extra Descriptions

Extra descriptions are the text a player will see when they look at, or examine the object. They may or may not contain clues about the object's magical nature, or for example with a book, they might each be a page: look page1, look page2. Several extra descriptions may appear for a single object. They follow the room format exactly. All objects a player will interact with REQUIRE an extra description... adds to the realism and atmosphere of your area. We highly encourage you to get creative with the descriptions, there is a lot that you can do with them.

The following is an example of an object with multiple descriptions:

#420006
stiletto mithril aquamarine jeweled~
&cLa &ccmithril &cLstiletto with an &cCaq&ccu&cCamar&cci&cCne &cLhilt&N~
&ccA thin mithril blade has been left here despite it's bejeweled hilt.&N~
~
5 335602888 8193
1 4 4 11 3
2 0 0
0 128
E
stiletto mithril~
   &ccThis extremely thin blade is nearly as long as a short sword if the
&cccomparison is based solely on the blades.  This blade is much, much thinner
&ccoverall to the point where it is almost flexible.  Mithril is the material
&ccwhich the stiletto's fine blade is forged of, creating a very strong yet
&ccyielding weapon which is also much easier to get an enchantment to take hold
&ccon.  The blade widens slightly from its dagger-like tip down to the handguard
&ccwhich is forged from a very dark colored metal, probably black steel or
&ccadamantium.  &N
~
E
hilt jeweled aquamarine jem~
   &cCThe hilt of the stiletto is a mark of true craftsmanship combined with what
&cCsimply must be magical enchantments.  It is shaped as would any other stiletto
&cChilt would be, except that instead of being made of metal or wood wrapped in
&cCleather for grip this hilt appears to be carved from one enormous aquamarine
&cCstone.  The base of the hilt, past where the hand would grip the weapon, the
&cChilt widens out before it becomes a deeper hue.  Here where the stone is the
&cCdarkest of the blueish hues and largest is carved the head of a dragon, most
&cClikely that of a blue.  Although at first look it would appear that the smooth
&cCsurface of the gemstone would make a slippery dagger hilt, some means of
&cCmagical enhancement has made it very easy to grip, to the point where it is
&cCnearly impossible to let go of.  &N
~
A
18 4
A
19 4

Object Types

Value Flags

NOTE: If a value below is blank, then use a zero "0"

1 LIGHT

Items that will light up your room by using them, such as torches.

NOTE: For items lit permanently as (illuminating), add it in the extra obj flag.

  • Value[0]
  • Value[1]
  • Value[2] Number of hours the light lasts. -1 is infinite hours.
  • Value[3]

2 SCROLL

An item that can contain up to 3 spells. You can recite this item to unleash the spells, consuming the item in the process.


3 WAND

Once equipped, you can use a wand to cast a spell on a target until it is out of charges.

  • Value[0] Spell Level
  • Value[1] Max Charges
  • Value[2] Charges Left
  • Value[3] Spell Number

4 STAFF

Once equipped, you can use a staff to cast a spell that will affect all valid targets in the room until it is out of charges.

  • Value[0] Spell Level
  • Value[1] Max Charges
  • Value[2] Charges Left
  • Value[3] Spell Number

5 WEAPON

Melee weapons that you can wield and use to attack when in combat.

  • Value[0] -
  • Value[1] Number of damage dice
  • Value[2] Size of damage dice
  • Value[3] Attack type:
Value CATEGORY Message type Related Skill Notes
2 Slash "whip/whips" 1h/2h Misc used to be "whip/whips", now "slash/slashes"
3 Slash "slash/slashes" 1h/2h Slashing
6 Bludgeon "crush/crushes" 1h/2h Bludgeon used to be "crush/crushes", now "bludgeon/bludgeons"
7 Bludgeon "pound/pounds" 1h/2h Bludgeon used to be "pound/pounds", now "bludgeon/bludgeons"
11 Pierce "pierce/pierces" 1h/2h Piercing
4 Unknown "crush/crushes" 1h/2h Bludgeon These no longer work
5 Unknown "crush/crushes" 1h/2h Bludgeon properly. Now they only
1 Unknown "whip/whips" 1h/2h Misc display "hit/hits" as an attack
8 Unknown "claw/claws" 1h/2h Misc verb, rather than
9 Unknown "claw/claws" 1h/2h Misc their original attack
10 Unknown "bite/bites" 1h/2h Misc verbs. Don't use them.
  • Value[4] Weapon Type:
Value Simple Weapons Crit Range Crit Multiplier
1 Gauntlet 3% x2
2 Gauntlet, spiked 3% x2
3 Dagger 6% x2
4 Dagger, throwing 3% x3
5 Mace, light 3% x2
6 Sickle 3% x2
7 Club 3% x2
8 Mace, heavy 3% x2
9 Morningstar 5% x2
10 Spear, short 3% x2
11 Spear, long 3% x3
12 Quarterstaff 3% x2
13 Spear 3% x3
14 Crossbow, heavy 6% x2
15 Crossbow, light 6% x2
16 Dart 3% x2
17 Javelin 3% x2
18 Sling 3% x2
Value Martial Weapons Crit Range Crit Multiplier
19 Axe, throwing 3% x2
20 Hammer, throwing 3% x2
21 Hammer, light 3% x2
22 Handaxe 3% x3
23 Kukri 9% x2
24 Pick, light 3% x4
25 Sap 3% x2
26 Shortsword 6% x2
27 Battleaxe 3% x3
28 Flail 3% x2
29 Longsword 6% x2
30 Pick, heavy 3% x4
31 Rapier 9% x2
32 Scimitar 9% x2
33 Trident 3% x2
34 Warhammer 3% x3
35 Falchion 9% x2
36 Glaive 3% x3
37 Greataxe 3% x3
38 Greatclub 3% x2
39 Flail, heavy 6% x2
40 Greatsword 6% x2
41 Maul 2% x5
42 Guisarme 4% x3
43 Halberd 4% x3
44 Polearm 4% x3
45 Lance 4% x3
46 Ranseur 4% x3
47 Scythe 3% x4
48 Longbow 3% x3
49 Longbow, composite 3% x3
50 Shortbow 3% x3
51 Shortbow, composite 3% x3
Value Exotic Weapons Crit Range Crit Multiplier
52 Gauntlet, bladed 3% x2
53 Kama 3% x2
54 Nunchaku 3% x2
55 Sai 3% x2
56 Siangham 3% x2
57 Butterfly sword 3% x2
58 Warfan 3% x2
59 Bastard Sword 6% x2
60 Dwarven Waraxe 3% x3
61 Whip 3% x2
62 Orc Double Axe 3% x3
63 Spiked Chain 1% x2
64 Dire Flail 3% x2
65 Hooked Hammer 3% x3
66 Double Sword 6% x5
67 Double Mace 3% x2
68 Double Scimitar 3% x2
69 Three Section Staff 3% x2
70 Dwarven Urgrosh 3% x3
71 Bolas 3% x2
72 Crossbow, hand 6% x2
73 Crossbow, repeating heavy 6% x2
74 Crossbow, repeating light 6% x2
75 Net 3% x2
76 Shuriken 3% x2
77 Chakram 3% x2
Value Ammo Crit Range Crit Multiplier
78 Arrow 3% x2
79 Bolt 3% x2
80 Bullet 3% x2

6 FIREWEAPON !!Depreciated!! Use the Weapon type (5) above

Ranged weapons such as bows, crossbows, thrown weapons, and flung weapons.

  • Value[0] -
  • Value[1] Number of die
  • Value[2] Damage per die.
  • Value[3] Message type (see value[3] for weapons above.)
  • Value[4] Speed factor delay of firing per missile. (Round delay per shot for reloading. 0 = no delay like in normal bows.)
  • Value[5] Max number of missiles weapon fires per round.
  • Value[6] Durability of Thrown weapon/Bowstring. (1-10 1=worst, 10=best)
  • Value[7] Type of weapon:
Bows Crossbows Throwing Other Siege
1 Short Bow 5 Hand Crossbow 9 Dagger 13 Sling 18 Common
2 Long Bow 6 Light Crossbow 10 Dart 14 Javelin 19 Scorpion Ballista
3 Elven Short 7 Heavy Crossbow 11 Hammer 15 Spear 20 Catapult
4 Elven Long 12 Handaxe 16 Blowgun
17 Special

7 MISSILE !!Depreciated!! Use the Weapon type (5) above

Ammunition for ranged weapons.

  • To hit a dragon arrows need +2hit or better.

  • To sunder missile shield arrows need +3hit or better.

  • Value[0] Number of die

  • Value[1] Damage per die.

  • Value[2] Durability of missile. (Scale of 1-10, 1=worst 10=best)

  • Value[3] Type of missile:

Value Missile type
1 Normal Flight Arrow (Standardized damage 2d6)
2 Elven Flight Arrow (Standardized damage 2d7)
3 Normal Sheaf Arrow (Standardized 3d6)
4 Elven Sheaf Arrow (Standardized damage 4d6)
5 Hand Crossbow Quarrel (Standardized damage to 3d3)
6 Light Crossbow Quarrel (Standardized damage 4d4)
7 Heavy Crossbow Quarrel (Standardized damage 5d5)
8 Special Flight
9 Throwing Dagger
10 Dart
11 Throwing Hammer
12 Throwing Handaxe
13 Sling Stone
14 Javelin
15 Spear
16 Blowgun Dart
17 Special Throw
18 Object
19 Ballista Missile
20 Catapult Missile

8 TREASURE

A generic object type with no function.

  • Value[0] -
  • Value[1] -
  • Value[2] -
  • Value[3] -

9 ARMOR

When worn this item will grants protection from physical attacks. Using this item type will save you having to use the one of your 2 obj affects for AC.

NOTE: Finger and ear eq slots will not receive this AC bonus. You have to use Type 11 Worn below.

  • Value[0] Armor Improvement
    • A number greater than zero enhances the armor class (good AC)
    • A number less than zero reduces the armor class (cursed armor for example, bad AC)
  • Value[1] -
  • Value[2] -
  • Value[3] -

10 POTION

When quaffed this item will grant the drinker up to 3 spells, consuming the item in the process.

NOTE: A player can only quaff so many potions a day.


11 WORN

Wearable items, especially rings and earrings if they need AC.

  • Value[0] - Armor Class
    • A number less than zero enhances the armor class (good AC)
    • A number greater than zero hurts the armor class (bad AC)
  • Value[1] -
  • Value[2] -
  • Value[3] -

12 OTHER

A generic object type with no function.

  • Value[0] -
  • Value[1] -
  • Value[2] -
  • Value[3] -

13 TRASH

A generic object type with no function.

  • Value[0] -
  • Value[1] -
  • Value[2] -
  • Value[3] -

14 TRAP (UNUSED)

Doesn't do a thing and never will now that we have Trap Code.


15 CONTAINER

Bags, boxes, chests etc. Anything you can put items inside of or get items out of.

NOTE: Remember don't give the TAKE flag to containers such as chests in your zone if you don't want players picking them up. They will still be able to get items out of the container while it is on the ground.

  • Value[0] Maximum weight capacity the container can hold.
  • Value[1] Container flags (Add them up to combine flags):
CLOSEABLE 1
CLOSED 4
LOCKED 8
PICKPROOF 16
  • Value[2] Key: The item-number of the object which can open this. -1 means no lockability.
  • Value[3] DO NOT USE: Internal use for Corpses that must "rot".

16 NOTE (UNUSED)

A generic object type with no function.


17 DRINKCON

Bottles, flasks, and even fountains. Anything that holds a liquid that players can drink from.

NOTE: Only fountains should have unlimited capacity and should never have the TAKE flag.

  • Value[0] Maximum drink-units the drink-container can contain. -1 is infinite.
  • Value[1] Number of drink-units that are left in the container. -1 is infinite.
  • Value[2] The type of liquid in the drink-container, one of:
Type Number Drunkenness Fullness Thirst
WATER 0 0 1 10
BEER 1 3 2 5
WINE 2 5 2 5
ALE 3 2 2 5
DARKALE 4 1 2 5
WHISKY 5 6 1 4
LEMONADE 6 0 1 8
FIREBREATHER 7 10 0 0
LOCAL SPECIALTY 8 3 3 3
SLIME 9 0 4 -8
MILK 10 0 3 6
TEA 11 0 1 6
COFFEE 12 0 1 6
BLOOD 13 0 2 -1
SALTWATER 14 0 1 -2
COKE 15 0 1 5
FOUNTAIN 16 0 ALL ALL
HOLYWATER 17 0 1 1
MISO SOUP 18 ? ? ?
MINESTRONE 19 0 3 2
POTATO SOUP 20 0 4 1
SHARK SOUP 21 0 5 1
CHICKEN SOUP 22 0 3 2
CHAMPAGNE 23 5 1 3
PEPSI 24 0 1 5
UNHOLYWATER 25 0 1 2
SAKE 26 ? ? ?
CURE 27 (pending implementation)

NOTE: The above values for drunkenness/fullness/thirst are used per four "units" drunk. The values are expressed in HOURS!

Example:

Dragon empties a bottle (say 7 units) of saltwater.
His Drunkenness is not changed ((7/4)*0)
His Fullness increases by ((7/4)*1) hours
His Thirst increases by ((7/4)*-2) hours, thus making him _More_ thirsty.
  • Value[3] Poisoned if this value is non-zero

18 KEY

Any item type can be a key, but using this type will allow you to include a chance for the key to break when used.

  • Value[0] The key-type. This value must match the lock-type of the door or container.
  • Value[1] Break Chance: % chance that the key will break (0 = no chance, 100 = always breaks)
  • Value[2] -
  • Value[3] -

19 FOOD

Items you can eat to sate hunger, consuming part or all of the item.

  • Value[0] The number of hours that this food will fill the stomach
  • Value[1] - (iron rations do 24 hours)
  • Value[2] -
  • Value[3] Poisoned: Any non-zero number

20 MONEY

A pile of money, when you get it will be consolidated into a player's regular money.

  • Value[0] Copper coins
  • Value[1] Silver coins
  • Value[2] Gold coins
  • Value[3] Platinum coins

21 PEN

An item that when held can be used for scribing spellbooks and writing on paper.

  • Value[0] -
  • Value[1] -
  • Value[2] -
  • Value[3] -

22 BOAT

An item that when kept in your inventory allows you to travel through certain water rooms.

  • Value[0] -
  • Value[1] -
  • Value[2] -
  • Value[3] -

23 BOOK (UNUSED)

A generic object type with no function.


24 CORPSE (UNUSED)

Don't use this. If you need a corpse, make it type container without a TAKE flag, they're great for hiding stuff in.


25 TELEPORT

Portals and items that transport the player to a defined destination.

NOTE: Never give teleport items the TAKE flag.

  • Value[0] The room where the teleport item takes you to (vnum)
  • Value[1] The command that activates the item. See list here. (eg. value 7 is Enter)
  • Value[2] Charges the teleport item has (-1 for infinite)
  • Value[3] Minimum level of PC that can use the item (0 is default)
  • Value[4] Maximum level of PC that can use the item (0 is default)
  • Value[5] Start room (REQUIRES PROC FOR BOUNCING PORTALS - MUST CLEAR WITH CODER)
  • Value[6] Stop room (REQUIRES PROC FOR BOUNCING PORTALS - MUST CLEAR WITH CODER)
  • Value[7] Bounce speed (REQUIRES PROC FOR BOUNCING PORTALS - MUST CLEAR WITH CODER)

26 POISON

When a character with the required skill applies this to a weapon, it will receive a temporary poisoning ability, eventually consuming the poison in the process.

  • Value[0] The type of poison, which can be as follows (fyi, mobs save vs para):
    • ^ Restricted: Poisons marked with ^ require approval from an appropriate staff member.
Value[0] Poison Type
1 Slow
2 Blindness
3 Minor Paralysis
4 Major Paralysis^
5 Cause Light Wounds
6 Cause Serious Wounds
7 Cause Critical Wounds
8 Harm
9 Full Harm^
10 Instant Death^
11 Ray of Enfeeblement
12 Fumble
13 Stumble
14 Enervate
  • Value[1] Spell Level
  • Value[2] Number of applications (Until poison is consumed)
  • Value[3] Hits per application (Until weapon returns to normal)

27 SUMMON

An item that can create a creature, consuming the item when it runs out of charges.

NOTE: Generally summons should only have 1 charge if they are take-able. Be very careful when making the mob that this item summons. As these items can become very unbalancing depending on how they are made, you will need to seek approval for this item from an appropriate staff member.

  • Value[0] Command number which activates the item.
  • Value[1] Vnum of the mob to summon.
  • Value[2] Charges (-1 is infinite, but you'd need a darn good reason for doing this.)
  • Value[3] Type of summoning:
Value[3] Summon Type
0 uncharmed (no follow)
1 charmed (follows)
2 loosely alignment specific (follow if neut or same alignment)
3 strict alignment (follow if same alignment)

28 SHIP (UNUSED)

Don't use this. A forger will help you make one if you need it.

  • Value[0] Hull points
  • Value[1] Speed (max is 30)
  • Value[2] Damage
  • Value[3] Capacity

29 SWITCH

Switches are items that will unblock an exit when used by a player.

NOTE: If item is TAKE-able then it won't work unless you're in the room with the exit.

  • Value[0] Command number to activate the switch.

  • Value[1] Room # with the blocked exit.

  • Value[2] Direction of blocked exit in room (0 = North, 1 = East, etc).

  • Value[3] While before switches were only able to have 0 and 1, they are now much more dynamic. By using these new values you can send out a specialized message with your switch objects. The message is contained in the action_description of the object, explained in more detail below.

    • 0: wall moves,
    • 1: switch item moves,
    • 2: action_desc shown only to player who activates it + 'wall moves' to room,
    • 3: action_desc shown only to player who activates it + 'switch_item moves' to room,
    • 4: action_desc shown to room + wall moves,
    • 5: action_desc shown to room + switch item moves,
    • 6: action_desc shown to room
  • Value[4] This value is optional, and defaults to 0 when not set. It is used to change the displayed message when the switch is located in a different room than the blocked exit.

    • 0: rumbling in the distance,
    • 1: action_desc to the player who activates it + rumbling to room,
    • 2: action_desc to room

First off, the new settings at value[4] control only what you see when the switch is on the ground in a different room than the blocked exit. Either the standard 'You hear a rumbling in the distance', the action_description or a combination of both. Then there's the settings at value[3] which will show in the room with the blocked exit and in the case of 2 and 3 to wherever the person activating the switch is. It is important to note that 2 and 3 can be redundant with some settings in val[4]

Anyhow, with these changes you can mix and match settings to get what you want people to see with your switches, and now you can use the objects action_description (a field that was pretty much unused in objects) to write your own ansi'd up echo message.

So where is this action_description you ask? Remember that lone ~tilde that separates the objects long_description from the item type, extra & wear fields? That's the action_description. Here's an example:

#1001
button red~
a big and shiny red button~
A big and shiny red button pops out of the wall.~
As you press the button the alarm sounds. Oh noes!! Better run!!~ <--- Action Description - can and should contain ANSI
29 36864 0
1 414289 5 2
10000 0 0
0 0
E
button red~
This big and shiny button pops out of the wall, drawing your attention. It is
very hard to resist pushing it and laughing like a madman.
~

30 QUIVER

A container that holds ammunition for bows and crossbows.

  • Value[0] Maximum Number of Arrows
  • Value[1] Container flags (Add them up to combine flags):
CLOSEABLE 1
CLOSED 4
LOCKED 8
PICKPROOF 16
  • Value[2] Key Number (-1 for no lockability)
  • Value[3] Type of Quiver
1 arrows
2 crossbow bolts & thrown weapons

31 LOCKPICK

An item that a character with the required skill can use to unlock doors and containers.

  • Value[0] Chance % bonus to success
  • Value[1] Break % (1 = almost always breaks, 99 = almost never breaks)
  • Value[2] -
  • Value[3] -

32 INSTRUMENT

An item that a character with the required skill can play to enhance their songs.

  • Value[0] Instrument type (which spells)
Instrument Value Songs
FLUTE 184 sorcery, renewal, recovery
LYRE 185 heal, travel
MANDOLIN 186 harm, miscast
HARP 187 protect, reveal
DRUM 188 offense, defense, elements
HORN 189 slow, clumsy
  • Value[1] Quality Modifier (0 - 12)
  • Value[2] Stutter Modifier (0 - 10)
  • Value[3] Minimum Level

33 SPELLBOOK

Mage classes scribe their spells into these items and must keep them in their inventory to renew their spells.

  • Value[0] Language Number (Generally 0, this is set when the character scribes)
  • Value[1] Class Number (Generally 0, this is set when the character scribes)
  • Value[2] Total Pages
  • Value[3] Used Pages (Generally 0, blank)

37 PSP_CRYSTAL

A psionicist with the required skill can chargepsp to store mana in this item.

  • Value[0] Max PSP (200 is most commonly used)
  • Value[1] Current charge
  • Value[2] -
  • Value[3] -

40 DISTRO

An item that will send any mobs in the room to a random destination among the rooms defined in the values.

  • You can load multiple distro objects in a room to distribute your mobs faster.
  • This item should NEVER be TAKE-able, and always be NOSHOW.
    • NOTE: If you decide to make it NO-TAKE you will not be able to load more than one in the same room.
  • Normally this item is used in a room that players cannot reach called a "Distro Room". This is not required though, if you think of another creative use for it.

NOTE: Item's long description MUST be standard_distro

  • Value[0] Odds of being distributed each round (1 is 100%, 2 is 50%, 3 is 33%, etc)
  • Value[1] First room VNUM
  • Value[2] Last room VNUM
  • Value[3] Sum of sector types included
    • The bit values of the sector types of the rooms that will be distro'd to. You can select multiple sectors by adding the bit values together.
  • Value[4] NO-TELEPORT rooms?
0 It will not distribute to NO-TELEPORT rooms.
1 It will distribute to NO-TELEPORT rooms.
  • Value[5] NO-MOB rooms?
0 It will not distribute to NO-MOB rooms.
1 It will distribute to NO-MOB rooms.

41 COMPONENT BAG

Casters need a component bag to store spell components for certain spells.

  • Value[0] Maximum weight the container can contain.
  • Value[1] Container flags (Add them up to combine flags):
CLOSEABLE 1
CLOSED 4
LOCKED 8
PICKPROOF 16
  • Value[2] Key: The item-number of the object which can open this. -1 means no lockability.
  • Value[3]

42 SPELL_COMPONENT

DON'T USE. This item type is only for the creation of new spells in the code, and not for regular area production.

  • Value[0]
  • Value[1]
  • Value[2]
  • Value[3]

43 PET

A place holder for a shop that will sell you a creature as a pet.

  • Value[0] Mob VNUM
  • Value[1]
  • Value[2]
  • Value[3]

44 MOVE_BLOCK

An object that blocks movement in a certain direction regardless on if there are mobs in the room or not. (for objects that only block when mobs are there, refer to ATD devices)

  • This item should be NOSHOW.

NOTE: block message is the object's long description.

  • Value[0] Direction blocked (0 for north, 1 for east etc...)
  • Value[1] Minimum level blocked. Blocks >= to value set here. (0 blocks anybody)
  • Value[2] Maximum level blocked. Blocks <= to value set here. (0 blocks anybody)
  • Value[3] 0 = Block Players and NPCs, 1 = Block Players ONLY!, 2 = Block NPCs ONLY!

45 RANDOM_ENCOUNTER

Chance to load one of four mobs into the room when a player tries to leave the room.

  • Value[0] Percent chance to load mobs.
  • Value[1] Now has two settings, positive and negative, as well as 0 which will always fire:
    • Positive: Maximum number of players/pets in the room for an encounter (If this value is 2 and there are 3 pc's in the room, it will not happen.)
    • Negative: Minimum number of players/pets in the room for an encounter (If this value is -10 and there are 9 pc's in the room, it will not happen.)
  • Value[2] Maximum instances of a mob to load. If you put 4 in this field, it will load from 1 - 4 copies of the mob.
  • Value[3] Recharge time of the encounter in game hours, now with three settings:
    • if number is positive: npcs are removed in 12 game hours regardless of recharge time.
    • if number is negative: npcs are removed in as many game hours as the object's recharge value
    • if number is 0: Encounter will never recharge, npcs will never be removed
  • Value[4-7] These 4 values are the VNUM's of possible mobs you wish to load. Code will pick one of these four to load for this encounter. Load will occur when player tries to leave the room. Player will see LONG desc of mob when it pops into room. Mobs will attack if aggro, and will disappear after 12 game hours or the time set in Value[3] if its negative.

46 FORCED_MOVE

An item that forces a player to move out of the room.

  • Short desc: The message the room sees when the player is moved OUT. Player's name will be first word, so don't use caps at start.
  • Long desc: The message moved player sees (with caps at start)
  • Extra desc keyword: Message destination sees. Will use player name just like the short desc, so no caps at start.

NOTE: This item should always be NOSHOW.

  • Value[0] Exit direction you want the movement to be forced.
    • If you specify a value greater than 5, it will choose a random direction. If it doesn't find a valid exit after 20 checks, then no movement happens.
  • Value[1] 0-99 % chance for a forced movement to happen.
  • Value[2] The ending position the player will be in when they get to the destination room. This is just the 0-3 values for mob position. (Example: 0 is prone)
  • Value[3] 1: Ignore fly/levitate.
  • Value[4] 1: Ignore immaterials.
  • Value[5] Stun: Number of combat rounds stunned.

47 HELPER (UNUSED)

No clue what this does. Don't use it.


48 GEOBOOK (UNUSED)

Development of this was abandoned. Don't use it.


Object Extra Flags

Extra Flag Value Bit Human Readable Description
ITEM_GLOW 1 BIT_1 "glow" Item gains the suffix (glowing)
ITEM_NOSHOW 2 BIT_2 "no show" Item will not appear visible to PCs, EVER.
ITEM_DARK 4 BIT_3 "dark" Don't Use
ITEM_NOSELL 8 BIT_4 "no sell" Shopkeepers won't buy it
ITEM_ANTI_GOODRACE 16 BIT_5 "anti-goodrace" Good race races can't use it
ITEM_INVISIBLE 32 BIT_6 "invisible" Item is invisible but can be dispelled
ITEM_MAGIC 64 BIT_7 "magic" Weapons with this quality can hit all wraithforms. All magic objects are subject to antimagic fields
ITEM_NODROP 128 BIT_8 "no drop" Item is cursed, can't be disarmed/stolen
ITEM_BLESS 256 BIT_9 "bless" Blessed weapons can hit undead wraithforms
ITEM_ANTI_GOOD 512 BIT_10 "anti-good" Not usable by good people
ITEM_ANTI_EVIL 1024 BIT_11 "anti-evil" Not usable by evil people
ITEM_ANTI_NEUTRAL 2048 BIT_12 "anti-neutral" Not usable by neutral people
ITEM_SECRET 4096 BIT_13 "secret" Item will load hidden, requires search
ITEM_FLOAT 8192 BIT_14 "float" Item will not sink underwater
ITEM_NOBURN 16384 BIT_15 "no burn" Can't be destroyed with dragon breath
ITEM_NOLOCATE 32768 BIT_16 "no locate" Item cannot be located
ITEM_NOIDENTIFY 65536 BIT_17 "no identify" Item cannot be identified
ITEM_UNUSED_18 131072 BIT_18 Old NOSUMMON flag
ITEM_LIT 262144 BIT_19 "lit" Item has a continual light spell cast on it
ITEM_TRANSIENT 524288 BIT_20 "transient" Item which dissolves when dropped
ITEM_UNUSED_21 1048576 BIT_21 Old NOSLEEP flag
ITEM_UNUSED_22 2097152 BIT_22 Old NOCHARM flag
ITEM_TWOHANDS 4194304 BIT_23 "two hands" Item requires two hands to hold/wield
ITEM_NORENT 8388608 BIT_24 "no rent" Item cannot be rented
ITEM_ANTI_EVILRACE 16777216 BIT_25 "anti-evilrace" Evil race races can't use it
ITEM_ANTI_WA 33554432 BIT_26 "no warrior" Warriors, Blackguards, Paladins, Rangers, Hexblades can't use
ITEM_ANTI_CL 67108864 BIT_27 "no cleric" Shamans, Druids, Clerics can't use
ITEM_ANTI_TH 134217728 BIT_28 "no thief" Rogues can't use. Bards and Battlechanters might not, either.
ITEM_ANTI_MU 268435456 BIT_29 "no mage" Mage types can't use
ITEM_WHOLE_BODY 536870912 BIT_30 "whole body" Item occupies all body slots
ITEM_WHOLE_HEAD 1073741824 BIT_31 "whole head" Item occupies all head slots
ITEM_WAS_DISARMED 2147483648 BIT_32 "was disarmed" If disarmed, re-arm in perform_violence Don't Use

Object Wear Flags

Location Value Bit Human Readable Comments
ITEM_TAKE 1 BIT_1 "take" Item is takeable. DON'T FORGET THIS ONE
ITEM_WEAR_FINGER 2 BIT_2 "finger"
ITEM_WEAR_NECK 4 BIT_3 "neck"
ITEM_WEAR_BODY 8 BIT_4 "body"
ITEM_WEAR_HEAD 16 BIT_5 "head" Headgear with a keyword 'spiked' might cause 2x damage on headbutt
ITEM_WEAR_LEGS 32 BIT_6 "legs"
ITEM_WEAR_FEET 64 BIT_7 "feet"
ITEM_WEAR_HANDS 128 BIT_8 "hands"
ITEM_WEAR_ARMS 256 BIT_9 "arms"
ITEM_WEAR_SHIELD 512 BIT_10 "shield" Shields with a keyword of 'spiked' will cause double damage on a bash attack.
ITEM_WEAR_ABOUT 1024 BIT_11 "about"
ITEM_WEAR_WAIST 2048 BIT_12 "waist"
ITEM_WEAR_WRIST 4096 BIT_13 "wrist"
ITEM_WIELD 8192 BIT_14 "wield"
ITEM_HOLD 16384 BIT_15 "hold"
ITEM_THROW 32768 BIT_16 "throw" Unused
ITEM_LIGHT_SOURCE 65536 BIT_17 "light" Unused
ITEM_WEAR_EYES 131072 BIT_18 "eyes"
ITEM_WEAR_FACE 262144 BIT_19 "face"
ITEM_WEAR_EARRING 524288 BIT_20 "earring"
ITEM_WEAR_QUIVER 1048576 BIT_21 "quiver"
ITEM_WEAR_BADGE 2097152 BIT_22 "insignia"
ITEM_WEAR_TAIL 4194304 BIT_23 "tail" Obviously only works for yuanti
ITEM_WEAR_COMPONENT_BAG 8388608 BIT_24 "component bag"

Object Anti Flags

Along with the general anti_warrior, anti_mage, etc flags that restricted an entire class group, or the anti_evilrace, anti_goodrace that restricts many different races you may also wish to restrict your items so that only specific classes, races or even sexes can use them. That is where these flags come in.

To make an item specific to one class/race/gender combo, it's easiest to use the old flags to eliminate broad combinations, and then use the anti flags for the specifics left over.

Example: if I want a helm to be worn by female troll warriors only I'd make it ANTI_MAGE, ANTI_THIEF, ANTI_CLERIC, ANTI_GOODRACE with the broad extra-flags, and then ANTI_OGRE, ANTI_DUERGAR, ANTI_DROWELF, ANTI_ILLITHID, ANTI_YUANTI, ANTI_LICH and ANTI_MALE` and that would do it. You can also just add together all the applicable anti fields if you'd prefer, however keep in mind that these flags tend to clutter up the text shown when you identify an object and the result could be ugly.

While it's kind of tedious to add flags together for a specifically restricted item, the result is always better than unrestricted gear. The more you restrict your equipment the less of a cookie-cutter feel the mud has. To do this, the TE program has a handy dandy calculator that lets you do this painlessly, and there are several excel based spreadsheets available that will do most of the work for you.

If left blank, then this field defaults to zero.

NOTE If you've scanned through the list, you've without a doubt noticed that half-orcs are absent from it, the reason is quite simple. Due to the nature of halforcs they are able to use both evil race and good race items, but if any item is restricted to either of their parent races (humans or orcs) then they will not be able to use it. Keep this in mind when dealing with these races.

Anti flag Bit number Bit Human Readable
ANTI_WARRIOR 1 BIT_1 "warrior"
ANTI_RANGER/HEX 2 BIT_2 "ranger"
ANTI_PALADIN 4 BIT_3 "paladin"
ANTI_BLACKGUARD 8 BIT_4 "blackguard"
ANTI_CLERIC 16 BIT_5 "cleric"
ANTI_INVOKER 32 BIT_6 "invoker"
ANTI_DRUID 64 BIT_7 "druid"
ANTI_SHAMAN 128 BIT_8 "shaman"
ANTI_ENCHANTER 256 BIT_9 "enchanter"
ANTI_NECROMANCER 512 BIT_10 "necromancer"
ANTI_ELEMENTALIST 1024 BIT_11 "elementalist"
ANTI_PSIONICIST 2048 BIT_12 "psionicist"
ANTI_ROGUE 4096 BIT_13 "thief"
ANTI_ORC 8192 BIT_14 "orc"
ANTI_ILLUSIONIST 16384 BIT_15 "illusionist"
ANTI_BARD/BCHANT 32768 BIT_16 "bard"
ANTI_HUMAN 65536 BIT_17 "human"
ANTI_GREYELF 131072 BIT_18 "moon elf"
ANTI_HALFELF 262144 BIT_19 "half elf"
ANTI_DWARF 524288 BIT_20 "dwarf"
ANTI_HALFLING 1048576 BIT_21 "halfling"
ANTI_GNOME 2097152 BIT_22 "gnome"
ANTI_BARBARIAN 4194304 BIT_23 "barbarian"
ANTI_DUERGAR 8388608 BIT_24 "duergar"
ANTI_DROWELF 16777216 BIT_25 "drow"
ANTI_TROLL 33554432 BIT_26 "troll"
ANTI_OGRE 67108864 BIT_27 "ogre"
ANTI_ILLITHID 134217728 BIT_28 "illithid"
ANTI_YUANTI 268435456 BIT_29 "yuan-ti"
ANTI_LICH 536870912 BIT_30 "lich"
ANTI_MALE 1073741824 BIT_31 "male"
ANTI_FEMALE 2147483648 BIT_32 "female"

Object Basics

Weight

The weight of the item in pounds. Pay special attention to this for weapons, particularly if you want a mob or player to be able to dual wield it. Try to give a weight to your items, as there is nothing quite as dull as a mud full of wt0 objects.

Value

The value of the item if sold in copper pieces. Items with a value of 0 cannot be sold, so make sure you give your items some sort of value. Be reasonable, we do not want to see farmable rings that you can sell for 500 platinum.

Cost Per Day

The cost to store the item in the reception overnight. (Right now is irrelevant since renting is free, so leave it as 0)

Object Affects

  • Max: Only up to 2 affects may be set on an item.

  • Equipped: The affect is only applied when the character wears, wields or holds the item, fading upon removal of said item.

  • Maximum stat limit: The max you can raise or lower something is 256. If you go over this, it will roll over. Example: A 18 300 will turn into A 18 44.

Affect Types

NOTE: Old or unused affects have been striked-out and should no longer be used.

Apply/Type Value Human Readable Description
APPLY_NONE 0 DO NOT USE
APPLY_STR 1 "strength" Replaced by 41
APPLY_DEX 2 "dexterity" Replaced by 42
APPLY_INT 3 "intelligence" Replaced by 43
APPLY_WIS 4 "wisdom" Replaced by 44
APPLY_CON 5 "constitution" Replaced by 45
APPLY_SEX 6 "sex" DO NOT USE
APPLY_CLASS 7 "class" DO NOT USE
APPLY_LEVEL 8 "level" DO NOT USE
APPLY_AGE 9 "age" DO NOT USE
APPLY_CHAR_WEIGHT 10 "weight" DO NOT USE
APPLY_CHAR_HEIGHT 11 "height" DO NOT USE
APPLY_MANA 12 "mana" Adds PSP or Mana
APPLY_HIT 13 "hitpoints" Hit points
APPLY_MOVE 14 "move" Movement points
APPLY_GOLD 15 "gold" DO NOT USE
APPLY_EXP 16 "experience" DO NOT USE
APPLY_AC 17 "armor" Negative value is beneficial
APPLY_HITROLL 18 "hitroll"
APPLY_DAMROLL 19 "damroll"
APPLY_SAVING_PARA 20 "save paralysis"
APPLY_SAVING_ROD 21 "save rod"
APPLY_SAVING_PETRI 22 "save petrification"
APPLY_SAVING_BREATH 23 "save breath"
APPLY_SAVING_SPELL 24 "save spell"
APPLY_FIRE_PROT 25 "fire protection" DO NOT USE
APPLY_AGILITY 26 "agility" Replaced by 46
APPLY_POWER 27 "power" Replaced by 47
APPLY_CHARISMA 28 "charisma" Replaced by 48
APPLY_KARMA 29 "karma" Replaced by 49 - NOT USED
APPLY_LUCK 30 "luck" Replaced by 50 - NOT USED
APPLY_STR_MAX 31 "max strength" These will go over the 100 max
APPLY_DEX_MAX 32 "max dexterity" These will go over the 100 max
APPLY_INT_MAX 33 "max intelligence" These will go over the 100 max
APPLY_WIS_MAX 34 "max wisdom" These will go over the 100 max
APPLY_CON_MAX 35 "max constitution" These will go over the 100 max
APPLY_AGI_MAX 36 "max agility" These will go over the 100 max
APPLY_POW_MAX 37 "max power" These will go over the 100 max
APPLY_CHA_MAX 38 "max charisma" These will go over the 100 max
APPLY_KARMA_MAX 39 "max karma" NOT USED
APPLY_LUCK_MAX 40 "max luck" NOT USED
APPLY_STR_RACE 41 "race strength" NOT USED
APPLY_DEX_RACE 42 "race dexterity" NOT USED
APPLY_INT_RACE 43 "race intelligence" NOT USED
APPLY_WIS_RACE 44 "race wisdom" NOT USED
APPLY_CON_RACE 45 "race constitution" NOT USED
APPLY_AGI_RACE 46 "race agility" NOT USED
APPLY_POW_RACE 47 "race power" NOT USED
APPLY_CHA_RACE 48 "race charisma" NOT USED
APPLY_KARMA_RACE 49 "race karma" NOT USED
APPLY_LUCK_RACE 50 "race luck" NOT USED
APPLY_MAGIC_RESIST 51 "magic resistance" Maximum MR is 10% untrue, think 15?
APPLY_TRUE_STAT_STR 53 "true strength" Adds Strength
APPLY_TRUE_STAT_DEX 54 "true dexterity" Adds Dexterity
APPLY_TRUE_STAT_AGI 55 "true agility" Adds Agility
APPLY_TRUE_STAT_CON 56 "true constitution" Adds Constitution
APPLY_TRUE_STAT_POW 57 "true power" Add Power
APPLY_TRUE_STAT_INT 58 "true intelligence" Adds Intelligence
APPLY_TRUE_STAT_WIS 59 "true wisdom" Adds Wisdom
APPLY_TRUE_STAT_CHA 60 "true charisma" Adds Charisma
APPLY_TRUE_STAT_LUCK 61 "true luck" Adds Luck - NOT USED
APPLY_TRUE_STAT_KARMA 62 "true karma" Adds Karma - NOT USED
SPELL_FOCUS_INVOCATION 63 "spell focus invocation" Enhances spellcast invocation
SPELL_FOCUS_ILLUSION 64 "spell focus illusion" Enhances spellcast illusion
SPELL_FOCUS_HEALING 65 "spell focus healing" Enhances spellcast healing
SPELL_FOCUS_SUMMONING 66 "spell focus summoning" Enhances spellcast summoning
SPELL_FOCUS_PROTECTION 67 "spell focus protection" Enhances spellcast protection
SPELL_FOCUS_NECROMANCY 68 "spell focus necromancy" Enhances spellcast necromancy
SPELL_FOCUS_ENCHANT 69 "spell focus enchantment" Enhances spellcast enchantment
SPELL_FOCUS_SPIRIT 70 "spell focus spirit" Enhances spellcast spirit
SPELL_FOCUS_NATURE 71 "spell focus nature" Enhances spellcast nature
SPELL_FOCUS_ELEMENTAL 72 "spell focus elemental" Enhances spellcast elemental

Affect Modifiers

Below is an example of an item that will improve strength and armor class. Notice that you can choose to skip a line after for the modifiers or not, it doesn't matter:

A
53 2
A 17 -2

NOTE: For those weird old stat adjustments #1-5, the stat will by modified by your number times 4.5 round down. Thus A 1 2 is +9 strength, and A 2 3 is +13 dexterity.

Weapon Enchantments

Weapon enchantments are magical properties that can be added to any weapon without the use of special procedures. There are currently 26 possible enchantments in the game, ranging from elemental damage to vampiric to keen (improved critical range) types. Some of these enchantments are invisible and work behind the scenes, while others can directly modify your damage messages. For instance, a longsword with a flaming enchantment would now show "Your powerful flaming slash barely wounds a tough old pirate". The modifiers to damage messages are limited to two words at most, with various types taking precedence to keep the spam in check.

These enchantments are currently only available to areamakers to add to new or existing weapons, but there are lots of future possibilities for customization with this system.

Format

M [enchant type] [Damage%] [Frequency%] [Modifier] [Duration]

Enchantment Type

Enchantment Type Value Base Damage / Description
ENCHANT_W_ACID 1 +2d4 acid damage per hit
ENCHANT_W_FLAMING 2 +2d4 fire damage per hit
ENCHANT_W_ICY 3 +2d4 cold damage per hit
ENCHANT_W_SHOCK 4 +2d4 electricity damage per hit
ENCHANT_W_SONIC 5 +2d4 sonic damage per hit
ENCHANT_W_NECROTC 5 +2d4 negative damage per hit
ENCHANT_W_ACID_BURST 7 (+10d10 * crit mod of weapon) acid damage on critical hit
ENCHANT_W_FLAMING_BURST 8 (+10d10 * crit mod of weapon) fire damage on critical hit
ENCHANT_W_ICY_BURST 9 (+10d10 * crit mod of weapon) cold damage on critical hit
ENCHANT_W_SHOCKING_BURST 10 (+10d10 * crit mod of weapon) electricity damage on critical hit
ENCHANT_W_SONIC_BURST 11 (+10d10 * crit mod of weapon) sonic damage on critical hit
ENCHANT_W_HOLY 12 +2d4 holy damage per hit vs. evil align
ENCHANT_W_UNHOLY 13 +2d4 unholy damage per hit vs. good align
ENCHANT_W_AXIOMATIC 14 +2d4 lawful damage per hit vs. chaotic align
ENCHANT_W_ANARCHIC 15 +2d4 chaotic damage per hit vs. lawful align
ENCHANT_W_BANE 16 +4d5 vs. one specified race. Race number must be specified in value[7] of the weapon.
ENCHANT_W_KEEN 17 Double the critical hit range of the weapon
ENCHANT_W_GHOSTTOUCH 18 Halves the negative modifier to damage on wraithform NPCs
ENCHANT_W_VAMPIRIC 19 +3d4 and chance to heal back part of that on hit. Save vs. CON negates damage and heal
ENCHANT_W_HOLY_BURST 20 (+10d10 * crit mod of weapon) holy damage per hit vs. evil align on critical hit
ENCHANT_W_UNHOLY_BURST 21 (+10d10 * crit mod of weapon) unholy damage per hit vs. good align on critical hit
ENCHANT_W_AXIOMATIC_BURST 22 (+10d10 * crit mod of weapon) lawful damage per hit vs. chaotic align on critical hit
ENCHANT_W_ANARCHIC_BURST 23 (+10d10 * crit mod of weapon) chaotic damage per hit vs. lawful align on critical hit
ENCHANT_W_THUNDERING 24 stun
ENCHANT_W_BRILLIANT 25 blind
ENCHANT_W_FORCE 26 bash
ENCHANT_W_NECROTIC_BURST 27 (+10d10 * crit mod of weapon) negative damage on critical hit

Damage%

Defaults to 100 if not set. Does nothing on certain enchantments.

Frequency%

How often this object's enchantment will fire.

Modifier

Values set here make it either easier or harder to get past a mob's natural resistances.

Duration

This is a special field that will work in different ways for some enchantments. Only those mentioned below will have any effect from this.

  • Thundering Duration measured in combat rounds
  • Brilliant Duration measured in "minutes" (based on ticks just like the spell)
  • Force Duration measured in pulses the mob is lagged (4 pulses = 1 second)

Notes

  • Weapon enchantments can be placed on any weapon from the object file just by adding a line. No coding is required.
    • You can mix and match any enchantments
    • You can't stack the same enchantment twice on a weapon.
    • There is no limit to the number of enhancements on a weapon - yet.
    • The Areas Staff will have to approve any new weapons with enchantments before they go into the game.
    • NOTE: ENCHANT_W_BANE weapons will require an object's Value [7] to identify which race it will give bonuses against. Use the numerical value for the race you want found in the Race Chart for the Mob File.

Resistances

Resistances
None|Unarmd slashing|Slash bludgeoning|Bludgn piercing|Pierce missile|Range
spells|Spells fire|Fire cold|Cold electricity|Elect acid|Acid
sonic|Sonic poison|Poison positive|Pos negative|Neg psionic|Psi
mental|Mental good|Good evil|Evil law|Law chaos|Chaos
force|Force all physical|melee align|alignment energy
elemental
  • If you are placing resistances on an item, you would use the following syntax in the obj file: RESIST: fire 1, cold 50, positive 100
  • In the above example the item would grant: resist fire 1%, resist cold 50%, and resist positive -100%.
  • A negative resist will increase damage from that source to the wearer.
  • Be mindful of the spelling and case of the names/abbreviations. For example: Resist type Slashing will not work, nor will resist type slash.

Related Pages