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.

Reply
 
Thread Tools Display Modes
  #1  
Old 10-21-2007, 08:18 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default Hollowshade Moore watch

PART ONE

With my last ax_classic update (2j), i have a working Hollowshade Moore zone, not just "working", but actually has part of the on-going tribal wars active, and not all the three tribes are spawned at the same time. I might finish it up one day, but for now, this is what I got.
First thing I had to do, was form the three spawn groups: grimlins, wolves, owlbears. Hollowshade zone id is 166, so NPCs there start with 166 (an_owlbear_bonegrinder is 166039). I wanted the spawngroup, spawnentry spawn2, id's to also fall under 166xxxx -since 1660000-1669999 in all these tables were not used, i set myself to move them there, and further group the numbers into owlbears, grimlins, and wolves. The in-game #spawn commands and the PEQ editor, or any other editor for that matter, always pick up id numbers from the highest number in the table, the 166xxx numbers are probably still available in all the databases, PEQ included - so you can do this with whatever database you have too. I did this, so I could have an organized picture of what i was going to do, and it will also be much easier for anyone else who wants to work on this zone (just have to look for the 166xxxx spawns and npcs).
Code:
UPDATE spawn2 SET id=id+1291864 WHERE (id>=368136 AND id<=368404);
UPDATE spawn2 SET id=id+1282531 WHERE (id>=377738 AND id<=377729);
UPDATE spawn2 SET id=id+1281768 WHERE (id>=378503 AND id<=378549);

UPDATE spawn2 SET spawngroupID=spawngroupID+331999 WHERE (spawngroupID>=1328001 AND spawngroupID<=1328268);
UPDATE spawn2 SET spawngroupID=spawngroupID+226970 WHERE (spawngroupID>=1433299 AND spawngroupID<=1433300);
UPDATE spawn2 SET spawngroupID=spawngroupID-31929767 WHERE (spawngroupID>=33590038 AND spawngroupID<=33590071);

UPDATE spawngroup SET ID=ID+331999 WHERE (ID>=1328001 AND ID<=1328268);
UPDATE spawngroup SET ID=ID+226970 WHERE (ID>=1433299 AND ID<=1433300);
UPDATE spawngroup SET ID=ID-31929767 WHERE (ID>=33590038 AND ID<=33590071);

UPDATE spawnentry SET spawngroupID=spawngroupID+331999 WHERE (spawngroupID>=1328001 AND spawngroupID<=1328268);
UPDATE spawnentry SET spawngroupID=spawngroupID+226970 WHERE (spawngroupID>=1433299 AND spawngroupID<=1433300);
UPDATE spawnentry SET spawngroupID=spawngroupID-31929767 WHERE (spawngroupID>=33590038 AND spawngroupID<=33590071);
This will re-number them to the 166xxxx area
Only thing is, these npc's 33590038-33590071 (the last line), do not exist in the PEQ database, these are named and extras that I added.

You could also just dump/make an SQL of what I did, then source it into the PEQ database, but you'd still have to delete the old spawns if you don't re-number.
But you won't need to, because I'll post an SQL that will update any database, when I'm done with this explanation.

EDIT: there was one spawngroup with all of the NPCs combined - I basically made three copys (two additional) of these spawn groups, then removed the other NPC tribes leaving one outstanding tribe. After that, I renumbered the extra copies with the new spawngroups and and set them to spawn with assigned _condition values, so they would spawn when needed.
MORE TO COME

Last edited by Angelox; 10-21-2007 at 06:06 PM..
Reply With Quote
  #2  
Old 10-21-2007, 08:26 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

Code:
UPDATE spawnentry SET spawngroupID=spawngroupID+331999 WHERE (spawngroupID>=1328001 AND spawngroupID<=1328268);
How does this work?
the bottom number in the original spawngroupID is 1328001 if you add 331999 to it, you get 1660000. next number (as per code mentioned) will be 1328001; add 331999 , you get 1660001, all get changed by one up to 1328268 ( last should be 1660268 ).
Reply With Quote
  #3  
Old 10-23-2007, 12:54 PM
gernblan
Discordant
 
Join Date: Aug 2006
Posts: 394
Default

Renumbering and "packing" spawngroups back down to reasonable numbers db-wide would be an INCREDIBLE THING.
__________________
--
Keelyeh
Owner, ServerOp and Developer
Jest 4 Server
Linux (Jest3 runs on Fedora, our Dev servers usually run on Ubuntu and/or Gentoo), OC-12 Connection = Hella Fast
Reply With Quote
  #4  
Old 10-23-2007, 01:21 PM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

I've been screaming and crying about the horrific indexes in the millions for over a year. I too am very happy to see this making sense to someone other than me.
Reply With Quote
  #5  
Old 10-23-2007, 01:53 PM
gernblan
Discordant
 
Join Date: Aug 2006
Posts: 394
Default

We're all in pain, John. Every one of us.

It hurts hehe.
__________________
--
Keelyeh
Owner, ServerOp and Developer
Jest 4 Server
Linux (Jest3 runs on Fedora, our Dev servers usually run on Ubuntu and/or Gentoo), OC-12 Connection = Hella Fast
Reply With Quote
  #6  
Old 10-25-2007, 12:42 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

If anyone needs any help understanding this, go ahead and ask - at one time my database was "burning memory" since I had a plan to classify everything (loots included) by zoneid the loot numbers were too high, and caused everything to eat up memory. After a lot of thinking, not to mention I have a good friend that "tutors" me through situations like these (he's not a "MONKEY" programmer like me ), I learned this method, and it's been very helpful for many situations.
Reply With Quote
Reply


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 08:49 PM.


 

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