Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Database/World Building

Development::Database/World Building World Building forum, dedicated to the EQEmu MySQL Database. Post partial/complete databases for spawns, items, etc.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #14  
Old 01-03-2007, 06:17 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

Part of the problem with the lack of a public database is the fact that we don't have a common numbering system for anyone to modify from...

think about it... someone gives you a SQL file that adds say 200 doors to your database that populate pok, abyssmal sea, and say uh shadowhaven as an example... those doors will auto increment their id field so the doors that might be numbered 200-400 on your database might be 500-700 on someone else's

now yeah i know doors dont really matter because the id means nothing really, but think about the npc_types table, the spawngroups spawn2 spawnentry etc etc

we have no default numbering system for those ID's that *DO* matter...

a while back the concept of zonenumber * 1000 was applies to the npc_types table... but it's not consistent. some older zones still have npc's with numbers out of that scope. and the other problem is that we cant do a mass modify script using names extracted from spawn lists because there are a ton of different rat, bat, orc, goblin, giant, etc etc mobs in different zones and i can only hope that they all have different npc_type values in the existing database or we're a lot worse off than i thought we were lol

If we were to take the time to mod the database to a default numbering scheme... then we could start adding to a larger database because we would know that every door, spawngroup, spawn entry, etc etc in the plane of knowledge has an id value between x and y which means that if I make a perfect copy of the live servers' POK i can make 2 SQL files to distribute it.

one does DELETE FROM `blah` WHERE `id` >= 202000 AND `id` < 203000 etc etc

and the other adds my new stuff

reboot and tadaa. but the way it is now... i had to create a new table which was a copy of the npc_types table, then delete 3 rows from it to fit the insert query for the newest pok i found to start working from. then after the inster was done, add those rows back in to make it work with the latest db version, export it all to sql, delete all the npc types entries for pok, delete all the spawn groups etc etc etc, then reinsert my sql file into npc types with all the new values for the merchantlists etc.

difference? took me about 3 hours to source it in, VS about 5 minutes if we had a global setup for the database that everyone used.

im a php/mysql programmer so im actually working on a php system that will go through and revamp my entire database using a numbering scheme of 1000*zoneid on auto increment.

so far the past couple attempts have screwed up loot, merchants, pets, spells etc... so it's still a work in progress, but once i have it finished i will release the new database, not the utility.

if i put out the utility then everyone who has their own custom database work will just use it to mod their db and continue to mooch our releases without any contributions of their own. but by releasing the database only we force them to conform if they want to use our db updates :p
Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 02:52 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3