Difference between revisions of "Database:Spawns"

(Menders)
(Menders)
Line 46: Line 46:
  
 
<pre>
 
<pre>
UPDATE spawn SET merchant_type = 12, command_primary = 8,attackable = 0,show_command_icon = 1 WHERE name LIKE '%Merchant Harrok%';
+
UPDATE spawn SET merchant_type = 16, command_primary = 8,attackable = 0,show_command_icon = 1 WHERE name LIKE '%Merchant Harrok%';
 
</pre>
 
</pre>
  

Revision as of 21:12, 1 October 2009

About

Please fill more information in here as you find it

Table Breakdown

The following lists how fields function in the database

Generic Spawn Fields

Generic information like name, race, etc

  • name = The name of the spawn

Entity Command Fields

This allows you to tag an npc as a banker, a merchant and so forth. Run the query SELECT * FROM entity_commands to see commands set up on your server.

  • command_primary = The primary entity command of the NPC, see the entity_commands table for more information. EG: 9 may = bank
  • command_secondary = The secondary entity command of the NPC, see the entity_commands table for more information. EG: 9 may = bank

Merchant Fields

This allows you to configure the NPC as a merchant, note you should tag the entity command ie: frommerchant (see your entity_command table) or bank etc.

  • merchant_id = The merchant list id
  • merchant_type = (1 - no buy), (2 - no buy back), (3 - spells), (4 - crafting)

Menders

Menders are merchants that are able to repair your items

You require:

  • Merchant Type of 16
  • Entity Command 'repair'
SELECT * FROM entity_commands WHERE command LIKE '%repair%';

Eg returns 8

Updating the Spawn:

UPDATE spawn SET merchant_type = 16, command_primary = 8,attackable = 0,show_command_icon = 1 WHERE name LIKE '%Merchant Harrok%';

Pathing

NPC pathing can be achieved via SpawnScripts and LUA. See LUA:MovementLoopAddLocation for more information.

Related tables

spawn_ground

Allows you to create ground spawns for use with harvesting and similar skills

  • spawn_id - the id of the spawn
  • number_harvests - how many harvests
  • num_attempts_per_harvest - how many times per harvest
  • groundspawn_entity_id - id of the groundspawn
  • collection_skill - skill used ('Unused','Mining','Gathering','Fishing','Trapping','Foresting')

Example

Note: this example requires you to have set the starting_skills for your players so they can use fishing and harvesting skills and such

Where the spawn_id object is ID: 85 and groundspawn_entry_id is: 1 where 5 is the entitycommand for fish

update spawn set command_primary = 5 where id = 85;
insert into spawn_ground (spawn_id, number_harvests, num_attempts_per_harvest,groundspawn_entry_id, collection_skill) values (85, 5, 1, 1, 'Fishing');
insert into groundspawn_items (groundspawn_entry_id,item_id,num_items) values (1,14,20);

now enable the command icon:

  • /spawn set show_command_icon 1

disable level

  • /spawn set show_level 0

disable attackable and hand icon

  • /spawn set attackable 0
  • /spawn set display_hand_icon 0

Now you need to create the spell

INSERT  INTO `wiki_spells`(`id`,`type`,`cast_type`,`name`,`description`,`icon`,`icon2`,`icontype`,`class_skill`,`mastery_skill`,`duration_until_cancel`,`target_type`,`success_message`,`fade_message`,`interruptable`,`lua_script`,`spell_visual`,`effect_message`,`spell_book_type`,`can_effect_raid`,`affect_only_group_members`,`is_live`,`display_spell_tier`,`friendly_spell`,`group_spell`) values (3,2,0,'Fishing','',774,65535,65535,0,0,0,0,NULL,NULL,1,'harvest.lua',568,NULL,2,0,0,0,0,0,0);

Harvest.lua:

--[[
	Script Name	: harvest.lua
	Script Purpose	: Fishing, Foresting, Gathering, Mining, Trapping
	Script Author	: John Adams
	Script Date	: 2008.12.05
	Script Notes	: 
--]]

function cast(Caster, Target)
	Harvest(Caster, Target)
end

spawn_loot

Provides a list of loot tables that a spawn id should drop

  • spawn_id = id of the spawn
  • loottable_id = id of the loot table

loottable

A list of loot tables, which acts as a parent to lootdrops

  • name = descriptive name of the loottable
  • mincoin = minimum amount of coin
  • maxcoin = maximum amount of coin
  • maxlootitems = maximum amount of items that should drop
  • lootdrop_probability = probability of the lootdrop occuring
  • coin_probability = probability of the coin occuring

lootdrop

Loot drops are members of loot tables and list items that drop

  • loot_table_id = id of the lootttable (see above)
  • item_id = the id of one of the items to appear in the lootdrop list
  • item_charges = number of charges on this item
  • equip_item = should the npc equip this item
  • probability = probability of this item dropping

Merchants

Merchant-lists list a selection of inventories that a merchant list will sell

  • merchant_id = the merchant_id for your table
  • inventory_id = the inventory the merchant list will show (see merchant_inventory)
  • description = the description of the merchant list

merchant_inventory

Merchant inventories allow you to configure the items for sale in a merchant list

  • inventory_id = the inventory_id to place the item in (see merchants/inventory_id)
  • item_id = the id of the item to sell
  • quantity = the amount of item to sell