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

Archive::Database/World Building Archive area for General Discussion's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 01-21-2003, 11:16 AM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

Hmmm.. Where did you see that it would only allow 3602?

I'll take a look at it this evening when I get in.
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
Reply With Quote
  #2  
Old 01-21-2003, 11:33 AM
Divide
Hill Giant
 
Join Date: Dec 2002
Location: Wouldnt you like to know
Posts: 101
Default

There is no limit that i know of,. But i have noticed that some items have caused crashes and loop deaths due to the bane set on them. the Bane dmg had no set target so it default target(self) I fixed about 25 of those when i first started messing with the DB.
__________________
Divide the Kindhearted
<the Item Dev Queen>
Read this before asking for help!
Reply With Quote
  #3  
Old 01-21-2003, 09:11 PM
killspree
Dragon
 
Join Date: Jun 2002
Posts: 776
Default

Quote:
*/
#define SPDAT_RECORDS 3602
#define EFFECT_COUNT 12

enum RESISTTYPE {
RESIST_NONE = 0,
RESIST_MAGIC = 1,
RESIST_FIRE = 2,
RESIST_COLD = 3,
RESIST_POISON = 4,
RESIST_DISEASE = 5 };
That's in spdat.h, I guess it's not really a limit perse, but could it be that it's only looking for 3602 max due to that? Dunno I may be reading it wrong.
Reply With Quote
  #4  
Old 01-22-2003, 06:58 AM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

Thats a good possibility, I wouldnt be suprised if this was causing a segfault when you activate a spell with an id higher than the whats defined here...

/*
solar: look at your spells_en.txt and find the id of the last spell.
this number has to be 1 more than that. if it's higher, your zone will
NOT start up. gonna autodetect this later..
*/
#define SPDAT_RECORDS 3602^M


Being set low doesnt cause a problem, but activating a new spell with this lower number could cause array out of bounds exceptions... spells[] goes up to 3602, then you try to reference spells[3640]

I'll play around with it tonight. The best way to do it would be to write a function that will parse out and find the max id in the current spells_en.txt, then use that+1 for the array size (as solar suggested at some point in the past in the comment).
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
Reply With Quote
  #5  
Old 01-22-2003, 06:13 PM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

I'd say thats the problem, i up'd it to 3715 (new spells_en.txt), and Raex's helm seems to work ok for me (though I have no idea what the Faerune effect is).

Shouldnt be hard to set the high number, just need to run the loop twice, the first time to find the max id (though this is the bulky way to do it), the next time to actually load the spells...
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
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 02:51 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