Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Development > Archive::Bugs

Archive::Bugs Archive area for Bugs's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #16  
Old 03-16-2003, 09:50 AM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

No, but character backups changed recently...

Put these in your database...

CREATE TABLE player_corpses_backup (
id int(11) unsigned NOT NULL auto_increment,
charid int(11) unsigned NOT NULL default '0',
parent_corpse_id int(11) unsigned NOT NULL default '0',
zoneid smallint(11) NOT NULL default '0',
x float NOT NULL default '0',
y float NOT NULL default '0',
z float NOT NULL default '0',
heading float NOT NULL default '0',
data blob NOT NULL,
timeofdeath datetime NOT NULL,
timeofdelete datetime NOT NULL default '0',
PRIMARY KEY (id),
KEY charid (charid)
) TYPE=MyISAM;

CREATE TABLE character_backup (
id int(11) unsigned NOT NULL auto_increment,
backupreason tinyint(3) unsigned not null default '0',
charid int(11) unsigned not null default '0',
account_id int(11) unsigned NOT NULL default '0',
name varchar(64) NOT NULL default '',
profile blob,
guild int(11) unsigned default '0',
guildrank tinyint(2) unsigned default '5',
x float NOT NULL default '0',
y float NOT NULL default '0',
z float NOT NULL default '0',
zoneid smallint(5) not null default '0',
alt_adv blob,
ts timestamp(14),
PRIMARY KEY (id),
KEY name (name),
KEY charid (charid)
) TYPE=MyISAM;


Other than that, I'm not 100% sure
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
Reply With Quote
  #17  
Old 03-16-2003, 11:50 PM
killspree
Dragon
 
Join Date: Jun 2002
Posts: 776
Default

Make sure the character_backup table has the field backupreason

That was causing crashes for me until I added it in.
__________________
Xeldan
Lead Content Designer
Shards of Dalaya
Reply With Quote
  #18  
Old 03-17-2003, 03:09 AM
Drawde
Dragon
 
Join Date: Jan 2002
Posts: 521
Default

Thanks for the info, that seems to have fixed it.
I've put made a .sql script to update these tables -
http://www.edwardpinniger.bctalk.net...atebackups.sql
also an items DB compatible with the new format -
http://www.edwardpinniger.bctalk.net/eq/items_44dr1.zip
Reply With Quote
  #19  
Old 03-17-2003, 03:45 AM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

Oh Drawde, I figured out whats happening to low end damage... Turns out its a casting problem (surprise surprise)

Heres the offender..

int max_hit = weapon_damage * ((GetSTR() + GetSkill(skillinuse)+ mylevel) / 100);

All these fields are integers.. What happens is that if STR+SKILL+LEVEL < 100, then the total is a 0, and you get 0 * weapon_damage, so your max_hit will always be 0.

What I've done to fix this is to cast the 3 variables to floats, then when they get jammed back into max_hit, it drops the remainder, but you dont lose the <1 case.

The new field is
int max_hit = weapon_damage * (( (float)GetSTR() + (float)GetSkill(skillinuse)+ (float)mylevel) / 100);

A wrote a little driver stub to test this, heres the before and after with a Str of 75, skill of 0, level 1 and weapon_damage of 8.

BEFORE
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2
Damage is : 2

AFTER
Damage is : 6
Damage is : 6
Damage is : 2
Damage is : 3
Damage is : 3
Damage is : 6
Damage is : 2
Damage is : 4
Damage is : 4
Damage is : 4
Damage is : 3
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
Reply With Quote
  #20  
Old 03-17-2003, 06:28 AM
a_Guest03
Demi-God
 
Join Date: Jun 2002
Posts: 1,693
Default

Yaaaaay, Trump I hated not having any weapon skills... It takes a LOT of fun out of the game when mobs hit you all the time and you can't do any damage.
__________________
It's never too late to be something great.
Reply With Quote
  #21  
Old 03-17-2003, 08:13 AM
Drawde
Dragon
 
Join Date: Jan 2002
Posts: 521
Default

So that's why the skill level needed for the damage output to work properly varied (sometimes it was 10, sometimes 15, 20, or 25),
it was due to the varying STR of my characters. Couldn't work out why it was varying so much, I thought it was version-related..

Anyway, great work on finally fixing this!
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 07:21 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