No categories assigned

Content:DB Milestone

Revision as of 11:25, 1 August 2011 by John adams (talk | contribs) (Created page with "==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...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.


While the Content Design team is building the World, the C++ developers will continue to implement new features, with respect to how it impacts the Content being worked on. Ie., we will not globally change entire systems after you have finished a zone.


TASKS

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.

Details on each of these tasks can be found in their associated KB Articles, but here is the overview:


RAW DATA

Raw Data is what we pull 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 (John Adams). 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:

  • Collect packet logs and process with PacketParser.
  • Analyze RAW data to ensure accuracy
  • Clean up any inconsistencies (key violations in database)
  • Populate the World Database with the raw data (packetparser -populate command)
  • Verify data in destination database
  • Enable spawn names, targeting, and other flags to ensure content team can "see" all non-static zone content
  • Initial "population control" pass through zone using spawn Clean Up scripts (DB Editor)
  • Enable cleaned, Raw zone for content team to enter (otherwise, RAW zones are *locked*)


CONTENT 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:

  • Verify spawns are in their proper positions (static spawns, x,y,z,heading)
  • Verify spawn appearances - that their colors/equipment are reasonable to what is in EQ2 Live
  • Move wandering spawns into a logical "starting position"
  • Delete duplicates of those wandering spawns that might have been re-captured across multiple packet logs
  • Consolidate spawns that have level, size, or appearance differences*
  • Build Spawn Groups (multi-spawn parties) of 2-6 NPCs and/or Boss encounters
  • Verify the right-click "entity commands" for each spawn ID is accurate to it's tasks
  • Build entity command menus for spawns that have alternate options
  • Assign NPCs special Equipment, Skills and Spells so they behave according to EQ2 Live standards
  • Assign Spawn Scripts (see SCRIPTING below)


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


GROUND SPAWNS

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


LOOT

SCRIPTING

(this document is incomplete)