Difference between revisions of "Content:DB Milestone"

(NPCs)
Line 1: Line 1:
== Introduction ==
 
 
'''DB Milestone 2''' is an effort to take all the knowledge we learned from data in Milestone 1, all the features we implemented, and advancements in log parsing and design a much more thorough database for release. This development cycle will be extremely process-oriented, controlled, and monitored for accuracy by our development staff and Beta Testers. Our goal is to achieve the best gaming experience possible for the features currently implemented.  
 
'''DB Milestone 2''' is an effort to take all the knowledge we learned from data in Milestone 1, all the features we implemented, and advancements in log parsing and design a much more thorough database for release. This development cycle will be extremely process-oriented, controlled, and monitored for accuracy by our development staff and Beta Testers. Our goal is to achieve the best gaming experience possible for the features currently implemented.  
  
  
 
The Tasks of DB Milestone 2 will be more detailed than in previous content design, because now we are more sure of what we want. Adherence to these processes is absolutely mandatory -- no "renegade" zone building will be allowed. Do it how we instruct, or please don't do it at all.
 
The Tasks of DB Milestone 2 will be more detailed than in previous content design, because now we are more sure of what we want. Adherence to these processes is absolutely mandatory -- no "renegade" zone building will be allowed. Do it how we instruct, or please don't do it at all.
 +
  
 
== Task: Database Designer ==
 
== Task: Database Designer ==
Line 16: Line 16:
 
*Initial "[[DataDesigner:RAWData#Initial_Cleanup|population control]]" pass through zone using spawn Clean Up scripts (DB Editor)
 
*Initial "[[DataDesigner:RAWData#Initial_Cleanup|population control]]" pass through zone using spawn Clean Up scripts (DB Editor)
 
*[[DataDesigner:RAWData#Enable_RAW_Zone|Enable RAW Zone]] for content team to enter (otherwise, RAW zones are '''*locked*''')
 
*[[DataDesigner:RAWData#Enable_RAW_Zone|Enable RAW Zone]] for content team to enter (otherwise, RAW zones are '''*locked*''')
 +
  
 
== Task: Spawn Design ==
 
== Task: Spawn Design ==
Line 32: Line 33:
 
*[[DataDesigner:NPCs#SpawnEquipment|NPC Equipment]] - special Equipment, Skills and Spells so they behave accordingly
 
*[[DataDesigner:NPCs#SpawnEquipment|NPC Equipment]] - special Equipment, Skills and Spells so they behave accordingly
 
*[[DataDesigner:NPCs#SpawnScripts|Spawn Scripts]] - Design, develop and assign spawn scripts (see SCRIPTING below)
 
*[[DataDesigner:NPCs#SpawnScripts|Spawn Scripts]] - Design, develop and assign spawn scripts (see SCRIPTING below)
 +
  
 
=== Objects ===
 
=== Objects ===
Line 51: Line 53:
 
*Remove duplicates, or spawn new signs where one may be missing from the collection
 
*Remove duplicates, or spawn new signs where one may be missing from the collection
 
*If a Zone sign, verify zone_id and destination x,y,z coordinates
 
*If a Zone sign, verify zone_id and destination x,y,z coordinates
 +
  
 
=== Widgets ===
 
=== Widgets ===
Line 98: Line 101:
  
  
==== [[Database:CoreServerData|General Server Core Data]] ====
+
[[Database:CoreServerData|'''General Server Core Data''']]
 +
 
 
This Core data is crtical data that the server will not even start up without. While there are no real checks that the data provided is valid, without this information, EQ2World.exe will die.
 
This Core data is crtical data that the server will not even start up without. While there are no real checks that the data provided is valid, without this information, EQ2World.exe will die.
  
==== [[Database:CoreGameData|Game-related Core Data]] ====
+
 
 +
[[Database:CoreGameData|'''Game-related Core Data''']]
 +
 
 
This Core data affects the game experience, whether it be appearances, commands the player can utilize, merchant lists, etc. While not mandatory, the gaming experience will be uneventful without this data.
 
This Core data affects the game experience, whether it be appearances, commands the player can utilize, merchant lists, etc. While not mandatory, the gaming experience will be uneventful without this data.
  
==== [[Database:CorePlayerData|Player-related Core Data]] ====
+
 
 +
[[Database:CorePlayerData|'''Player-related Core Data''']]
 +
 
 
This Core data provides the newly created characters with the proper information on first-world entry. Things like default factions, items, spells, and where the player starts based on race/class combinations. These are otherwise known as "Starting Data".
 
This Core data provides the newly created characters with the proper information on first-world entry. Things like default factions, items, spells, and where the player starts based on race/class combinations. These are otherwise known as "Starting Data".
  
==== [[Database:CoreNPCData|NPC-related Core Data]] ====
+
 
 +
[[Database:CoreNPCData|'''NPC-related Core Data''']]
 +
 
 
This Core data are merely pre-configured NPC setups for things like NPC gear stats, spells and skills, furthering the customization of your NPCs. '''This is not NPC appearance data!''' See details within this link.
 
This Core data are merely pre-configured NPC setups for things like NPC gear stats, spells and skills, furthering the customization of your NPCs. '''This is not NPC appearance data!''' See details within this link.
  
  
 
(this document is incomplete)
 
(this document is incomplete)

Revision as of 20:27, 10 February 2012

DB Milestone 2 is an effort to take all the knowledge we learned from data in Milestone 1, all the features we implemented, and advancements in log parsing and design a much more thorough database for release. This development cycle will be extremely process-oriented, controlled, and monitored for accuracy by our development staff and Beta Testers. Our goal is to achieve the best gaming experience possible for the features currently implemented.


The Tasks of DB Milestone 2 will be more detailed than in previous content design, because now we are more sure of what we want. Adherence to these processes is absolutely mandatory -- no "renegade" zone building will be allowed. Do it how we instruct, or please don't do it at all.


Task: Database Designer

Raw Data is what we get from the collected packet logs. This data is 90% accurate and will be used as-is. However, there are many, many duplicates and other forms of redundant data that are unnecessary in the packet log collections that must be cleaned up. This is the job of the Database Designer. By the time the Content Design team enters a zone, most of the Raw Data cleanup should already be done, and what you are left with is a workable, functioning zone filled with raw content.


Data Designer tasks are:


Task: Spawn Design

A Content Designer (aka, Zone Builder) must take the raw content that remains, and turn an otherwise lifeless zone into a functioning playground.


NPCs

NPCs are the humanoid, interactive spawns in a zone that players communicate, accept quests from, and engage in combat with. The Content Designer's tasks for NPCs are:


Objects

Objects are things like Statues, Rocks, Fences, generally objects in the zone that are not interacted with. Along with verifying most of the same information as with NPCs regarding placement and appearance:


  • Verify position, [u]size[/u], heading of all Zone objects
  • Delete duplicates of static Objects, like tents, sign posts, statues, etc.
  • When object placement/correction is done, disable name, attack, targeting, level, etc.


Signs

Signs are usually found on sign posts, hanging over doors, and are the main triggers for zoning in EQ2Emulator (ie., click on a door which is actually a "sign" and you zone to a new location).


  • Verify Sign text/descriptions are accurate
  • Check the sign "type" is set (Generic = a sign on a wall/post, Zone = a zone point)
  • Verify Heading/Location information is set properly
  • Remove duplicates, or spawn new signs where one may be missing from the collection
  • If a Zone sign, verify zone_id and destination x,y,z coordinates


Widgets

Widgets are interactive objects in the world, such as Doors or clickable objects for quests/triggers, etc. The biggest issue with doors is the open/close coordinates are off, or backwards. Due to a math flaw in the parser/population routines, 50% of our doors are wrong and must be fixed.


  • Verify open and close heading of doors.
  • Elevators/Lifts are not parsed properly, and must be setup.
  • Verify coordinates (x,y,z), location and heading settings of all doors/clickables
  • Build functionality of levers and switches


GroundSpawns

The tasks for Ground Spawns are the same as all the above, with NPCs, Objects, Signs and Widgets. Ground Spawns can not only be harvesting nodes, but also quest items you pick up from the ground.


  • Evaluate ground spawn requirements for a given area (ie., 10x10 space)
  • Setup balanced nodes using spawn combine, and spawn offset locations
  • Build Ground Spawn Items sets and attach to ground spawns
  • Item sets are the 1,3,5,10,rare,imbued and bonus configs
  • Setup node "despawn" timers


Task: Loot Design

Task: LUA Scripting

LUA.

  • SpawnScripts
  • SpellScripts
  • QuestScripts
  • ItemScripts
  • ZoneScripts


Task: Spells Designer

Spells.

  • Spell Data
  • Spell Effects
  • Spell Scripting


Task: Server Data

There is data the server will not function without. We refer to this as "Core Data". Without this data, appearances or effects will not work, players will not have skills and etc. Below are the categories of Server Core Data, with pages linking to the many different types.


General Server Core Data

This Core data is crtical data that the server will not even start up without. While there are no real checks that the data provided is valid, without this information, EQ2World.exe will die.


Game-related Core Data

This Core data affects the game experience, whether it be appearances, commands the player can utilize, merchant lists, etc. While not mandatory, the gaming experience will be uneventful without this data.


Player-related Core Data

This Core data provides the newly created characters with the proper information on first-world entry. Things like default factions, items, spells, and where the player starts based on race/class combinations. These are otherwise known as "Starting Data".


NPC-related Core Data

This Core data are merely pre-configured NPC setups for things like NPC gear stats, spells and skills, furthering the customization of your NPCs. This is not NPC appearance data! See details within this link.


(this document is incomplete)