Zone Instancing
This was probably already asked, if so can someone point me to the correct post?
When a dynamic zone is first loaded is everything loaded into memory? Or does the server need to reference the zone’s database entry for pathing, spawns, loot table, etc?
I am asking because I think I may have a way to deal with zone instancing, such as LDoNs. But it I think for it to work all of the zone info would need to be loaded into memory.
Here is a summary of my initial thoughts for LDoN zone instancing. Sorry if it is hard to follow.
Database setup
LDoN Table fields - AccessFlagNum, MapName, uniqueZoneName, Timer, GroupID, FlagCount
Group LDoN Table fields - GroupID, AccessFlagNum, Char1ID, Char2ID, Char3ID,
Char4ID, Char5ID, Char6ID
(could add adventure objective fields later)
Player Requests LDoN
Server checks if player is leader
If No, rejects request
If Yes, server checks if group has 3 or more members
If No, rejects request
If Yes, server checks if any group member already has an access flag
If Yes, rejects request
If No,LDoN is offered
Group Leader accepts LDoN
AccessFlagNum created
Search LDoN.AccessFlagNum for first available flag number
Start at 01,
If 01 exists move to 02, etc…
If 01 does not exist, create 01
Entry made in LDoN Table and Group LDoN Table
Server checks which zone map to load for that LDoN
Server loads unique zone from map and access flag number
Zone is named by map name plus access flag number (mmca23)
Access flag given to leader and group for that zone
Player tries to zone into instance
Server checks flag to determine which zone to place player in
If no access flag exists it boots player back to previous zone, or a defualt zone
If access flag exists player is sent to zone based on access flag #
Player successfully zones into instance
Start timer
Player completes LDoN objectives
Zone timer set to 115 minutes
Player leaves adventure
Remove one from FlagCount
Zone stays active until
It has been active for 130 minutes or greater
Zone deactivates
Remove access flag from any marked with it
Remove LDoN Table and Group LDoN Table entry
Reset/remove timer
Last edited by Rocker8956; 08-27-2008 at 01:34 AM..
Reason: most of post was cut off
|