Go Back   EQEmulator Home > EQEmulator Forums > General > General::General Discussion

General::General Discussion General discussion about EverQuest(tm), EQEMu, and related topics.
Do not post support topics here.

Reply
 
Thread Tools Display Modes
  #1  
Old 02-19-2006, 01:43 PM
lordkazan
Fire Beetle
 
Join Date: Nov 2004
Posts: 11
Default spells_us.txt data format

I've been searching around for documentation of the spells_us.txt data format but i've come up pretty much empty. I need to know every column. I have a SQL table that i based off eqcaster.exe's output - but it cannot handle the number of spells in the abandoned spells_en.txt not to mention to new completey spells_us.txt [that contains twice the number of spells] - the auto_increment column is database purposes only, the rest of it is fields from the file

anyone got the documentation on how to translate the file directly? spells email me at thekazan AT gmail DOT com - thanks!

Code:
CREATE TABLE `spells` (
  `eq_spells_id` int(11) unsigned NOT NULL auto_increment,
  `Spell Name` tinytext,
  `Description 1` tinytext,
  `Description 2` tinytext,
  `Description 3` tinytext,
  `Description 4` tinytext,
  `Description 5` tinytext,
  `Description 6` tinytext,
  `Description 7` tinytext,
  `Description 8` tinytext,
  `Description 9` tinytext,
  `Description 10` tinytext,
  `Description 11` tinytext,
  `Description 12` tinytext,
  `Extra` tinytext,
  `Mana Drain` int(11) NOT NULL default '0',
  `WAR` int(8) unsigned NOT NULL default '255',
  `CLR` int(8) unsigned NOT NULL default '255',
  `PAL` int(8) unsigned NOT NULL default '255',
  `RNG` int(8) unsigned NOT NULL default '255',
  `SHD` int(8) unsigned NOT NULL default '255',
  `DRU` int(8) unsigned NOT NULL default '255',
  `MNK` int(8) unsigned NOT NULL default '255',
  `BRD` int(8) unsigned NOT NULL default '255',
  `ROG` int(8) unsigned NOT NULL default '255',
  `SHM` int(8) unsigned NOT NULL default '255',
  `NEC` int(8) unsigned NOT NULL default '255',
  `WIZ` int(8) unsigned NOT NULL default '255',
  `MAG` int(8) unsigned NOT NULL default '255',
  `ENC` int(8) unsigned NOT NULL default '255',
  `BST` int(8) unsigned NOT NULL default '255',
  `Casting Time` float NOT NULL default '0',
  `Fizzle Time` float NOT NULL default '0',
  `Recovery Time` float NOT NULL default '0',
  `Indoor/Outdoor` tinytext,
  `Time` tinytext,
  `Location` tinytext,
  `Skill` tinytext,
  `Duration` int(11) NOT NULL default '0',
  `Dur Formula` int(11) NOT NULL default '0',
  `AoE Duration` int(11) NOT NULL default '0',
  `Pos/Neg` int(11) NOT NULL default '0',
  `Category` tinytext,
  `Attrib 1` tinytext,
  `Min 1` int(11) NOT NULL default '0',
  `Max 1` int(11) NOT NULL default '0',
  `Calc 1` tinytext,
  `Attrib 2` tinytext,
  `Min 2` int(11) NOT NULL default '0',
  `Max 2` int(11) NOT NULL default '0',
  `Calc 2` tinytext,
  `Attrib 3` tinytext,
  `Min 3` int(11) NOT NULL default '0',
  `Max 3` int(11) NOT NULL default '0',
  `Calc 3` tinytext,
  `Attrib 4` tinytext,
  `Min 4` int(11) NOT NULL default '0',
  `Max 4` int(11) NOT NULL default '0',
  `Calc 4` tinytext,
  `Attrib 5` tinytext,
  `Min 5` int(11) NOT NULL default '0',
  `Max 5` int(11) NOT NULL default '0',
  `Calc 5` tinytext,
  `Attrib 6` tinytext,
  `Min 6` int(11) NOT NULL default '0',
  `Max 6` int(11) NOT NULL default '0',
  `Calc 6` tinytext,
  `Attrib 7` tinytext,
  `Min 7` int(11) NOT NULL default '0',
  `Max 7` int(11) NOT NULL default '0',
  `Calc 7` tinytext,
  `Attrib 8` tinytext,
  `Min 8` int(11) NOT NULL default '0',
  `Max 8` int(11) NOT NULL default '0',
  `Calc 8` tinytext,
  `Attrib 9` tinytext,
  `Min 9` int(11) NOT NULL default '0',
  `Max 9` int(11) NOT NULL default '0',
  `Calc 9` tinytext,
  `Attrib 10` tinytext,
  `Min 10` int(11) NOT NULL default '0',
  `Max 10` int(11) NOT NULL default '0',
  `Calc 10` tinytext,
  `Attrib 11` tinytext,
  `Min 11` int(11) NOT NULL default '0',
  `Max 11` int(11) NOT NULL default '0',
  `Calc 11` tinytext,
  `Attrib 12` tinytext,
  `Min 12` int(11) NOT NULL default '0',
  `Max 12` int(11) NOT NULL default '0',
  `Calc 12` tinytext,
  `Reagent 1` tinytext,
  `Quantity 1` int(11) NOT NULL default '0',
  `Reageant 2` tinytext,
  `Quantity 2` int(11) NOT NULL default '0',
  `Reageant 3` tinytext,
  `Quantity 3` int(11) NOT NULL default '0',
  `Reageant 4` tinytext,
  `Quantity 4` int(11) NOT NULL default '0',
  `Focus 1` tinytext,
  `Focus 2` tinytext,
  `Focus 3` tinytext,
  `Focus 4` tinytext,
  `Resistance` tinytext,
  `Target` tinytext,
  `Resist Adj` int(11) NOT NULL default '0',
  `Gem` int(11) NOT NULL default '0',
  `Range` float NOT NULL default '0',
  `AoE Range` float NOT NULL default '0',
  `Back Range` float NOT NULL default '0',
  `Up Range` float NOT NULL default '0',
  `Spell ID` int(11) unsigned NOT NULL default '0',
  `You Cast` tinytext,
  `Someone Casts` tinytext,
  `Cast on You` tinytext,
  `Cast on Someone` tinytext,
  `Spell Fades` tinytext,
  PRIMARY KEY  (`eq_spells_id`)
) TYPE=MyISAM;

Last edited by lordkazan; 02-19-2006 at 10:19 PM..
Reply With Quote
  #2  
Old 02-20-2006, 01:40 AM
Cisyouc
Demi-God
 
Join Date: Jun 2004
Location: Heaven.
Posts: 1,260
Default

Ive tried to make a spell editor in the past, but I [ was too lazy / was not able / no one seemed to have documentation ] to figure out the syntax of the spells_us.txt file. :(
__________________
namespace retval { template <class T> class ReturnValueGen { private: T x; public: ReturnValueGen() { x = 0; }; T& Generator() { return x; }; }; } int main() { retval::ReturnValueGen<int> retvalue; return retvalue.Generator(); }
C++ is wonderful.
Reply With Quote
  #3  
Old 02-20-2006, 02:23 AM
fathernitwit
Developer
 
Join Date: Jul 2004
Posts: 773
Default

spdat.h
might check lucy for possibly identities of the spacing/unknown fields.
Code:
struct SPDat_Spell_Struct
{
/* 000 */	int			id;	// not used
/* 001 */	char		name[32]; // Name of the spell
/* 002 */	char		player_1[32]; // "PLAYER_1"
/* 003 */	char		teleport_zone[32];	// Teleport zone, pet name summoned, or item summoned
/* 004 */	char		you_cast[64]; // Message when you cast
/* 005 */	char		other_casts[64]; // Message when other casts
/* 006 */	char		cast_on_you[64]; // Message when spell is cast on you 
/* 007 */	char		cast_on_other[64]; // Message when spell is cast on someone else
/* 008 */	char		spell_fades[64]; // Spell fades
/* 009 */	float		range;
/* 010 */	float		aoerange;
/* 011 */	float		pushback;
/* 012 */	float		pushup;
/* 013 */	int32		cast_time; // Cast time
/* 014 */	int32		recovery_time; // Recovery time
/* 015 */	int32		recast_time; // Recast same spell time
/* 016 */	int32		buffdurationformula;
/* 017 */	int32		buffduration;
/* 018 */	int32		AEDuration;	// sentinel, rain of something
/* 019 */	int16		mana; // Mana Used
/* 020 */	sint16		base[EFFECT_COUNT];	//various purposes
/* 032 */	int			base2[12];			//various purposes
/* 044 */	sint16		max[EFFECT_COUNT];
/* 056 */	int16		icon; // Spell icon
/* 057 */	int16		memicon; // Icon on membarthing
/* 058 */	sint16		components[4]; // reagents
/* 062 */	int			component_counts[4]; // amount of regents used
/* 066 */	signed		NoexpendReagent[4];	// focus items (Need but not used; Flame Lick has a Fire Beetle Eye focus.)
											// If it is a number between 1-4 it means components[number] is a focus and not to expend it
											// If it is a valid itemid it means this item is a focus as well
/* 070 */	int16		formula[EFFECT_COUNT]; // Spell's value formula
/* 082 */	int			LightType; // probaly another effecttype flag
/* 083 */	int			goodEffect; //0=detrimental, 1=Beneficial, 2=Beneficial, Group Only
/* 084 */	int			Activated; // probaly another effecttype flag	
/* 085 */	int			resisttype;
/* 086 */	int			effectid[EFFECT_COUNT];	// Spell's effects
/* 098 */	SpellTargetType	targettype;	// Spell's Target
/* 099 */	int			basediff; // base difficulty fizzle adjustment
/* 100 */	int			skill;
/* 101 */	sint16		zonetype;	// 01=Outdoors, 02=dungeons, ff=Any 
/* 102 */	int16		EnvironmentType;
/* 103 */	int			TimeOfDay;
/* 104 */	int8		classes[PLAYER_CLASS_COUNT]; // Classes, and their min levels
/* 120 */	int8		CastingAnim;
/* 121 */	int8		TargetAnim;
/* 122 */	int32		TravelType;
/* 123 */	int16		SpellAffectIndex;
/* 124 */	int16		Spacing2[23];
/* 147 */	sint16		ResistDiff;
/* 148 */	int16		Spacing3[2];
/* 150 */	int16		RecourseLink;
/* 151 */	int			Spacing4[4];
/* 155 */	int			descnum; // eqstr of description of spell
/* 156 */	int			typedescnum; // eqstr of type description
/* 157 */	int			effectdescnum; // eqstr of effect description
/* 158 */	int			Spacing5[17];
/* 175 */	// last field is 174
/*
Some fields which should be in here somewhere (MQ2):
Deletable
PvPResistBase
PvPResistCalc
PvPResistCap
CanMGB
*/
};
Reply With Quote
  #4  
Old 02-20-2006, 03:01 AM
lordkazan
Fire Beetle
 
Join Date: Nov 2004
Posts: 11
Default

ok thanks, if i could only track down Phillip Davis (who wrote eqcaster)
Reply With Quote
Reply

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 07:18 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