PDA

View Full Version : Problem With 2.71 Admin?


mByte
08-19-2002, 03:30 AM
I was fiddling around making items and logged into to try them out.

Keep getting that your class, race and or diety cannot use this item messege

funnything is I checked all the class's and races when that did not work I check all dieties too.

No Go.

Windcatcher
08-19-2002, 05:57 AM
Grrr this is getting frustrating. There must be some field in the item structure that's still unknown that's affecting it. If we knew the location of the field that sets the player's deity it would be a big help too. Is there anyone else (dev or otherwise) who might be able to help track down these unknown fields? When I test the tool I usually put up a label and fill it with hex dumps of everything still marked as unknown, but so far I haven't been able to make heads or tails of anything else.

WC

mByte
08-19-2002, 10:34 AM
Well see if you can use any of this information it's what I use for my web based item editor.

Note the code is php but is has most of the offsets.

*************************************************
//Common Information
$itemname = GetNulLTermString(substr($row[0],0,64));
$itemlore = GetNulLTermString(substr($row[0],64,80));
// * - lore item
// ~ - pending lore
// # - artifact
// & - summoned
$itemVisual = GetNulLTermString(substr($row[0],144,16));
$itemWeight = hexdec(bin2hex(substr($row[0],174,1)));
$itemNoRent = hexdec(bin2hex(substr($row[0],175,1)));
$itemNoDrop = hexdec(bin2hex(substr($row[0],176,1)));
$itemSize = hexdec(bin2hex(substr($row[0],177,1)));
$itemTypeFlag = hexdec(bin2hex(substr($row[0],178,1)));
// 0 - Generic
// 1 - Contaner
// 2 - Book
$itemNuma = bin2hex(substr($row[0],180,1));
$itemNumb = bin2hex(substr($row[0],181,1));
$itemNum = hexdec($itemNumb . $itemNuma);
$itemIcona = hexdec(bin2hex(substr($row[0],182,1)));
$itemIconb = hexdec(bin2hex(substr($row[0],183,2)));
$itemIcon = $itemIcona + $itemIconb;
$itemPSlot = hexdec(bin2hex(substr($row[0],184,1)));
$itemSlotsa = hexdec(bin2hex(substr($row[0],188,1)));
$itemSlotsb = hexdec(bin2hex(substr($row[0],189,2)));
$itemSlotsc = hexdec(bin2hex(substr($row[0],190,2))) * 256 - $itemSlotsb;
if($itemSlotsc <= -1){
$itemSlotsc = 0;
}
$itemSlots = $itemSlotsa + $itemSlotsb + $itemSlotsc;
$itemCost = hexdec(bin2hex(substr($row[0],192,1)));
$itemID = "0"; //hexdec(bin2hex(substr($row[0],212,1))); // somthing about the zone

//General Item Information
$itemSTR = hexdec(bin2hex(substr($row[0],228,1)));
$itemSTA = hexdec(bin2hex(substr($row[0],229,1)));
$itemCHA = hexdec(bin2hex(substr($row[0],230,1)));
$itemDEX = hexdec(bin2hex(substr($row[0],231,1)));
$itemINT = hexdec(bin2hex(substr($row[0],232,1)));
$itemAGI = hexdec(bin2hex(substr($row[0],233,1)));
$itemWIS = hexdec(bin2hex(substr($row[0],234,1)));
$itemMR = hexdec(bin2hex(substr($row[0],235,1)));
$itemFR = hexdec(bin2hex(substr($row[0],236,1)));
$itemCR = hexdec(bin2hex(substr($row[0],237,1)));
$itemPR = hexdec(bin2hex(substr($row[0],238,1)));
$itemDR = hexdec(bin2hex(substr($row[0],239,1)));
$itemHP = hexdec(bin2hex(substr($row[0],240,1)));
$itemMana = hexdec(bin2hex(substr($row[0],242,1)));
$itemAC = hexdec(bin2hex(substr($row[0],244,1)));
$itemMaxCharges = hexdec(bin2hex(substr($row[0],246,1)));
$itemGMFLAG = hexdec(bin2hex(substr($row[0],247,1)));
$itemLight = hexdec(bin2hex(substr($row[0],248,1)));
$itemDelay = hexdec(bin2hex(substr($row[0],249,1)));
$itemDMG = hexdec(bin2hex(substr($row[0],250,1)));
$itemEffect = hexdec(bin2hex(substr($row[0],251,1)));
$itemRange = hexdec(bin2hex(substr($row[0],252,1)));
$itemSkill = hexdec(bin2hex(substr($row[0],253,1)));
$itemMagicFlag = hexdec(bin2hex(substr($row[0],254,1)));
$itemCastLevel = hexdec(bin2hex(substr($row[0],255,1)));
$itemEquipType = hexdec(bin2hex(substr($row[0],256,1)));
$itemColor = hexdec(bin2hex(substr($row[0],260,1)));
$itemDiety = hexdec(bin2hex(substr($row[0],264,1)));
$itemSpell = hexdec(bin2hex(substr($row[0],266,1)));
$itemClass1 = hexdec(bin2hex(substr($row[0],268,1)));
$itemClass2 = hexdec(bin2hex(substr($row[0],269,2)));
$itemClass = $itemClass1 + $itemClass2;
$itemRaces1 = hexdec(bin2hex(substr($row[0],272,1)));
$itemRaces2 = hexdec(bin2hex(substr($row[0],273,2)));
$itemRaces = $itemRaces1 + $itemRaces2;
$itemSaleRate = hexdec(bin2hex(substr($row[0],288,1)));
$itemCastTime = hexdec(bin2hex(substr($row[0],292,1)));
$itemSkillModIndex = hexdec(bin2hex(substr($row[0],312,1)));
$itemSkillModValue = hexdec(bin2hex(substr($row[0],314,1)));
$itemBaneDMGrace = hexdec(bin2hex(substr($row[0],316,1)));
$itemBaneDMGbody = hexdec(bin2hex(substr($row[0],318,1)));
$itemBaneDMG = hexdec(bin2hex(substr($row[0],320,1)));
$itemReqLevel = hexdec(bin2hex(substr($row[0],324,1)));
$itemReqSkill = hexdec(bin2hex(substr($row[0],325,1)));
$itemElemDMGType = hexdec(bin2hex(substr($row[0],328,1)));
// 0 - None
// 1 - MR
// 2 - FR
// 3 - CR
// 4 - PR
// 5 - DR
$itemElemDMG = hexdec(bin2hex(substr($row[0],329,1)));
$itemDietyReq = hexdec(bin2hex(substr($row[0],348,1)));

//Faction Modification - No Idea on this yet
// itemFactionModI_1 = hexdec(bin2hex(substr($row[0],330,1)));
// itemFactionModI_2 = hexdec(bin2hex(substr($row[0],330,1)));
// itemFactionModI_3 = hexdec(bin2hex(substr($row[0],330,1)));
// itemFactionModI_4 = hexdec(bin2hex(substr($row[0],330,1)));
// itemFactionModV_1 = hexdec(bin2hex(substr($row[0],338,1)));
// itemFactionModV_2 = hexdec(bin2hex(substr($row[0],338,1)));
// itemFactionModV_3 = hexdec(bin2hex(substr($row[0],338,1)));
// itemFactionModV_4 = hexdec(bin2hex(substr($row[0],338,1)));

DeletedUser
08-19-2002, 01:25 PM
link ?

btw: its the 3.5 item DB i've been told from several people in irc... drop the 3.5 db's items and put in the 3.4 items.. two mysql commands.. i don't know them but search button can help.. i gotta rush so I can't.. but should be useful to try that.

mByte
08-19-2002, 01:40 PM
btw: its the 3.5 item DB i've been told from several people in irc... drop the 3.5 db's items and put in the 3.4 items.. two mysql commands.. i don't know them but search button can help.. i gotta rush so I can't.. but should be useful to try that.


I have already dropped the table from my 3.5 database and imported the 3.4 items

Same Error

I also dropped the 3.5 items and created new items nothing

BUT I created a 1hs, Normal Item, HUM, WAR, RALLOS ZEK and it worked

so its not the table if i can get the same error on both databases.

only thing that i had a problem with from the 3.5 items table was i couldnt summon items in game. that was sloved by dropping 3.5 items and adding 3.4 items

Lurker_005
08-19-2002, 03:43 PM
Windcatcher, here is a item structure deffinition I have edited as best as I can. It is based on EQEmu/hackersquest/ShowEQ, with a few entries from you :)



#define ITEM_STRUCT_SIZE 356
// #define SHORT_BOOK_ITEM_STRUCT_SIZE 356
// #define SHORT_CONTAINER_ITEM_STRUCT_SIZE 356
struct Item_Struct
{
/*0000*/ char name[64]; // Name of item
/*0064*/ char lore[80]; // Lore text
/*0144*/ char idfile[6]; // Not sure what this is used for
/*0150*/ sint16 flag;
/*0152*/ uint8 unknown0150[22]; // Placeholder
/*0174*/ uint8 weight; // Weight of item
/*0175*/ sint8 nosave; // Nosave flag 1=normal, 0=nosave, -1=spell?
/*0176*/ sint8 nodrop; // Nodrop flag 1=normal, 0=nodrop, -1=??
/*0177*/ uint8 size; // Size of item
/*0178*/ int8 type; // 0 - generic item, 1 - container, 2 - book
/*0179*/ uint8 unknown0178; // ***Placeholder
/*0180*/ uint16 item_nr; // Unique Item number
/*0182*/ uint16 icon_nr; // Icon Number
/*0184*/ sint16 equipSlot; // Current Equip slot
/*0186*/ uint8 unknwn0186[2]; // Equip slot cont.?
/*0188*/ uint32 equipableSlots; // Slots where this item goes
/*0192*/ sint32 cost; // Item cost in copper
/*0196*/ uint8 unknown0196[32]; // ***Placeholder
union
{
struct
{
// 0228- have different meanings depending on flags
/*0228*/ sint8 STR; // Strength
/*0229*/ sint8 STA; // Stamina
/*0230*/ sint8 CHA; // Charisma
/*0231*/ sint8 DEX; // Dexterity
/*0232*/ sint8 INT; // Intelligence
/*0233*/ sint8 AGI; // Agility
/*0234*/ sint8 WIS; // Wisdom
/*0235*/ sint8 MR; // Magic Resistance
/*0236*/ sint8 FR; // Fire Resistance
/*0237*/ sint8 CR; // Cold Resistance
/*0238*/ sint8 DR; // Disease Resistance
/*0239*/ sint8 PR; // Poison Resistance
/*0240*/ uint16 HP; // Hitpoints
/*0242*/ uint16 MANA; // Mana
/*0244*/ uint16 AC; // Armor Class
/*0246*/ uint8 maxCharges; // Number of charges
/*0247*/ uint8 GMflag; // GM flag 0 - normal item, -1 - gm item
/*0248*/ uint8 light; // Light effect of this item
/*0249*/ uint8 delay; // Weapon Delay
/*0250*/ uint8 damage; // Weapon Damage
/*0251*/ sint8 effecttype0; // 0=combat, 1=click anywhere w/o class check, 2=latent/worn, 3=click anywhere EXPENDABLE, 4=click worn, 5=click anywhere w/ class check, -1=no effect
/*0252*/ uint8 range; // Range of weapon
/*0253*/ uint8 skill; // Skill of this weapon | Item Type?
// 0 - 1H Slashing
// 1 - 2H Slashing
// 2 - 1H Piercing
// 3 - 1H Blunt
// 4 - 2H Blunt
// 5 - archery
// 6 - archery - 2
// 7 - throwing
// 8 - shield
// 10 - defence
// 11 - precious stones
// 12 - lockpicks
// 14 - food
// 15 - water
// 16 - source of light
// 17 - archery (more stones, arrow components)
// 18 - bandages
// 19 - throwing (more)
// 20 - spells
// 21 - EXPENDABLE (potion)
// 23 - wind instrument
// 24 - stringed instrument
// 25 - brass instrument
// 26 - percussion instrument
// 27 - arrows
// 27 - archery related item
// 29 - jewelry
// 30 - skull (1 item)
// 32 - ???
// 33 - keys
// 34 - coins
// 35 - ???
// 36 - fishing pole
// 37 - fishing bait
// 38 - alcohol
// 39 - more keys, some letters
// 40 - compass
// 42 - poisons
/*0254*/ sint8 magic; // Magic flag
// 00 (0000) = ???
// 01 (0001) = magic
// 12 (1100) = ???
// 14 (1110) = ???
// 15 (1111) = ???
/*0255*/ sint8 level0; // Casting level
/*0256*/ uint8 material; // Material?
// 0 Armor (cloth)
// 1 Armor (leather)
// 2 Armor (chain)
// 3 Armor (plate)
// 4 Armor (monk)
// 5 Armor (chitin)
// 7 Armor (scale)
// 10 Robe (advisor pattern)
// 11 Robe (FBR pattern)
// 12 Robe (ishva pattern)
// 13 Robe (oracle pattern)
// 14 Robe (kedge pattern)
// 15 Robe (SMR pattern)
// 16 Robe (plain)
// 17 Armor (icy)
// 18 Armor (dragonskin)
// 19 Armor (stability pattern)
// 20 Armor (ulthork)
// 21 Armor (ry'gorr pattern)
// 22 Armor (guardian pattern)
// 105 unknown
// 213 unknown
/*0258*/ uint8 unknown0258[3]; // ***Placeholder
/*0260*/ uint32 color; // Amounts of RGB in original color
/*0264*/ uint16 deity; // deity
/*0266*/ uint16 spellId0; // SpellID of special effect
/*0268*/ uint16 classes; // Classes that can use this item
/*0270*/ uint8 unknown0270[2]; // ***Placeholder
/*0272*/ uint16 races; // Races that can use this item
/*0274*/ sint8 unknown0274[2]; // ***Placeholder
/*0276*/ sint8 stackable; // 1= stackable, 3 = normal, 0 = ? (not stackable)
/*0277*/ uint8 level; // Casting level
union // 0278 has different meanings depending on an stackable
{
/*0278*/ sint8 number; // Number of items in stack
/*0278*/ sint8 charges; // Number of charges (-1 = unlimited)
};
/*0279*/ sint8 effecttype; // 0=combat, 1=click anywhere w/o class check, 2=latent/worn, 3=click anywhere EXPENDABLE, 4=click worn, 5=click anywhere w/ class check, -1=no effect
/*0280*/ uint16 spellId; // spellId of special effect
/*0282*/ uint8 effectmask; // Windcatchers label
/*0283*/ uint8 unknown0283[3]; // ***Placeholder
/*0288*/ uint32 sellRate; // multiplyer to item price in case of it selling from shopkeeper
/*0290*/ uint16 foodSize; // Value for size of food or drink
/*0292*/ uint32 casttime; // Cast time of clicky item in miliseconds
/*0296*/ uint8 unknown0296[16]; // ***Placeholder
/*0312*/ uint16 skillModId; // ID of skill that item modifies
/*0314*/ sint16 skillModPercent; // Percent that item modifies skill
/*0316*/ uint16 baneRaceDMG; // Race bane damage applies to
/*0318*/ uint16 baneBodyDMG; // Body type bane damage applies to
/*0320*/ uint8 bandDMG; // Ammount of bane damage
/*0321*/ uint8 unknown0321[3]; // ***Placeholder
/*0324*/ uint8 reqLevel; // Required Level
/*0325*/ uint8 reqSkill; // Required Skill
/*0326*/ uint8 unknown0326[2]; // ***Placeholder
/*0328*/ uint8 elemDMGtype; // Elemental Damage Type
/*0329*/ uint8 elemDMG; // Elemental Damage ammount
/*0330*/ uint16 factionModindex[4]; // Faction Modifier Index
/*0338*/ uint16 factionModvalue[4]; // Faction Modifier values
/*0346*/ uint8 unknown0346[2]; // ***Placeholder
/*0348*/ uint32 Diety2; // Diety only wearable
/*0352*/ uint8 unknown0352[4]; // ***Placeholder
} common;
struct // Book Structure (flag == 0x7669)
{
/*0228*/ sint8 bookType; // 0 - note, 1 - book
/*0229*/ sint8 bookOpen; // 0 - closed/rolled up, 1 - open/unrolled
/*0230*/ sint8 unknown0230; // ***Placeholder
/*0231*/ char file[33]; // Filename of book text on server
/*0264*/ sint8 unknown0264[92]; // ***Placeholder
} book;
struct // containers flag == 0x5400 or 0x5450
{
/*0228*/ sint8 unknown0228[40]; // ***Placeholder
/*0268*/ sint8 containerType; // Container Type ?
// 0x10 - deluxe sewing kit
// 0x12 - fletching kit
// 0x2B - fier'dal fletching kit
// 0x10 - small sewing kit
// 0x10 - large sewing kit
// 0x14 - jeweller kit
/*0269*/ uint8 numSlots; // number of slots in container
/*0270*/ sint8 unknown0270; // ***Placeholder
/*0271*/ sint8 sizeCapacity; // Maximum size item container can hold
/*0272*/ uint8 weightReduction; // % weight reduction of container
/*0273*/ sint8 unknown0273[83]; // ***Placeholder
} container;
};
};

Windcatcher
09-01-2002, 07:35 AM
OK, I'm adding the new fields in...but is this for 0.34 or 0.35 items? Or are they the same?

Lurker_005
09-01-2002, 04:05 PM
They are the same