EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Archive::Development (https://www.eqemulator.org/forums/forumdisplay.php?f=621)
-   -   Lets start out nice(With a new Item DB) (https://www.eqemulator.org/forums/showthread.php?t=12)

Reap 01-21-2002 03:52 PM

How do you update item DBs?

Lurker_005 01-21-2002 04:22 PM

item record format
 
Auto grabbing items from the live servers is definatly the best way to go... But that does require someone activly collecting the items. Also I have noticed that there are several entries in the current database that are corrupt. Take a look at the first 30 or so items with the admin tool. Above and beyond that there is a bunch of garbage in there that dosen't apear to affect the database. Notice all the garbage between the item name and lore name, that should be all nulls.
Someone posted a image that had the hex values for items, but that was on the other board. Well this is what I have found messing with it last weekend. I am sure windcatcher can tell us some more also. The first numbers are the hex offset for the item. Note some values seem to be used differently for different type of items like bags/spells. I am not sure how it would impact the emu, but I imagine changing the item from a BLOB in SQL to individual entries would make dealing with the item records easier.
Code:

00-21          Item Name
22        <Null>
23-5D          Lore name
5E        <Null>
5F-63        ID File (or 5f-64)
<Null>

(hex bytes reversed)

65-66        Flag (or 66-67)
<Null>

7D        Weight
7E        No save (summoned)
7F        No drop
80        Size
81        <Null>
82-83        Item Number
84-85        Icon Number
85-86        Equipable Slots (binary)
87-8B        ??
8C-8D        Cost in cp
8E        ??
A4        Str
A5        Sta
A6        Cha
A7        Dex
A8        Int
A9        Agi
AA        Wis
AB        MR
AC        FR
AD        CR
AE        DR
AF        PR
B0        HP
B1        Mana
B2        AC
B3        Max Charges
B4        Curent Charges??
B5        Light
B6        Delay
B7        damage
B8        Range??
BA        Item Type
BB        Magic Flag
BC        Casting Level
BD        Material
BE-BF        ??
C0-C3        Color 4
C4-C5        <null>?
C6-C7        Spell ID
C8-C9        Clases
CA-CB        <null>?
CC-CD        Races ? ? ? ? ? ? ? ? ? ? ? Ogr Trl
CE        <null>?
D0        Weight Reduction? (set same as BA?? Item Type)
D1        same as BC?? level
D2        charges
D3        same as B8?? range
D4-D5        same as C6-C7?? spell ID
D6        ??
D7?        Slots
CD        Slots
        Open/Closed??
CF        Max Item size for Container
        Trigered / Proc / Constant effect??
       
       
Below is a snipit from the showEQ code regarding items that I used as referance
       
  int16_t  m_flag;                // See itemStruct for values
  uint8_t  m_weight;              // Weight of item
  int8_t  m_nosave;              // Nosave flag 1=normal, 0=nosave, -1=spell?
  int8_t  m_nodrop;              // Nodrop flag 1=normal, 0=nodrop, -1=??
  uint8_t  m_size;                // Size of item
  uint16_t  m_iconNr;              // Icon Number
  uint32_t m_equipableSlots;      // Slots where this item goes
  int32_t  m_cost;                // Item cost in copper
  int8_t  m_STR;                // Strength
  int8_t  m_STA;                // Stamina
  int8_t  m_CHA;                // Charisma
  int8_t  m_DEX;                // Dexterity
  int8_t  m_INT;                // Intelligence
  int8_t  m_AGI;                // Agility
  int8_t  m_WIS;                // Wisdom
  int8_t  m_MR;                  // Magic Resistance
  int8_t  m_FR;                  // Fire Resistance
  int8_t  m_CR;                  // Cold Resistance
  int8_t  m_DR;                  // Disease Resistance
  int8_t  m_PR;                  // Poison Resistance
  int8_t  m_HP;                  // Hitpoints
  int8_t  m_MANA;                // Mana
  int8_t  m_AC;                  // Armor Class
  uint8_t  m_light;              // Light effect of this item
  int8_t  m_delay;              // Weapon Delay
  int8_t  m_damage;              // Weapon Damage
  uint8_t  m_range;              // Range of weapon
  uint8_t  m_skill;              // Skill of this weapon
  int8_t  m_magic;              // Magic flag, 1(0001)=magic
  int8_t  m_level0;              // Casting level
  uint8_t  m_material;            // Material?
  uint32_t m_color;              // Amounts of RGB in original color
  uint16_t  m_spellId0;            // SpellID of special effect
  uint16_t  m_classes;            // Classes that can use this item
  uint16_t  m_races;              // Races that can use this item
  uint8_t  m_level;              // Casting level
  uint16_t  m_spellId;            // spellId of special effect
  int8_t  m_charges;            // number of charges of item effect (-1 = inf)
  uint8_t  m_numSlots;            // number of slots
  uint8_t  m_weightReduction;    // percentage weight reduction
  uint8_t  m_sizeCapacity;        // Maximum size item container can hold


Rico 01-27-2002 08:05 AM

Out..but in?
 
Sorry for the lack of updates, I was very sick with the Flu which has bed ridden me for the last 6 days. Before I was sick, I was able to get some new items in. Some items include Worked,Heavy,Matchless Dragon armor,and all the items down to "eashen of the sky'' in the North Temple of Veeshan Drop list website listed a few posts above. Fixed a bunch of textures on items, and some items who's slots were wrong. You can grab the new items here

http://www.nerdyboys.com/rico/Itemsv3.0.zip

-Enjoy

jack_frost 01-27-2002 11:54 AM

I dunno what I'm supposed to do to import your (Ricos) new items db, so I just went to the command line and:

c:\mysql\bin\mysql
mysql> use eq
Database changed
mysql> source items.sql

It seems to work, just makes a million really annoying beeps, So I unplugged the internal speaker so no beeps... Is there a better way to do it?

Thanks, Jack
;-)

CoderJ 01-27-2002 03:46 PM

I went into the file and emptied out the pieces I didn't need (like the table creation and extra data (accounts, zone server IPs, etc). I was left with a 4 meg file of the items, spawns, npcs, and zones. And no beeps :)

It might be a good idea to either delete your EQ database structure (but not the DB itself) or just empty the tables and live through a few beeps than to just run this file after running the standard db.sql.

CoderJ 01-28-2002 07:53 AM

ACK!
 
Just noticed this DB is still in the old format, so unless you have an easy way to modify the INSERTS on some of the tables, delete everything except for the "DUMPING ITEM DATA" section.

Also, Rico, you might want to check you zones on your server. The last 5 or 6 entries have the small name and long name switched (and are duplicate entries to boot!).

If anyone wants, I can upload an edited version that works with 0.2.0's DB structure (without spawns, sorry. Not sure if the spawns the way Rico has them work in 0.2.0)

Nada 01-28-2002 08:18 AM

Coderj that would be great if you could. :D

CoderJ 01-30-2002 01:39 AM

Okay, it's up....

Click here to get it

This is easy to install, and if Rico releases more in the future, I'll mod those as well for general consumption. It's very recommended you have phpMyAdmin installed and run through this process.
  1. Open up phpMyAdmin (make sure you're web server (I use Apache) and MySQL services are both started) and click on "EQ" in the right hand window.
  2. Put a check mark in "items" and "zone".
  3. Click on the "Empty" button near the bottom of the table list.
  4. A new page, asking if you want to go through with the delete will pop up. Confirm it, then exit phpMyAdmin.
  5. Extract "items.sql" from "mod-itemsv3.0.zip" to your MySQL bin directory (may be something like "C:\mysql\bin", if you're on Linux, you know where to find it ;)).
  6. Run "mysql"
  7. Type in "use eq;" and hit return.
  8. Type in "source items.sql;" and hit return. At this point, it will process the file and your screen should get flooded by confirmation of each query in the file "Query Complete. 0 rows affected... blah blah". If it beeps, note what the error was and report it back here. If it says duplicate entry on anything, you did not properly empty your "items" or "zone" table. There's about 7,692 items and zones that get inserted, so if you do not properly follow these instructions, you will get 7,962 beeps. Trust me, it's annoying.

In the future, I may configure the sql file to auto empty the relevant database tables prior to the INSERT queries so you don't have to muck through phpMyAdmin (which is a great tool if you do any PHP/MySQL development).

Boxz0r 02-11-2002 05:49 AM

wee
 
When will there be another item release? =)

Zeitgeist 02-11-2002 08:50 AM

eek someone stole my graphic(!).

TheClaus 02-11-2002 10:01 AM

Damn them, Damn them all to hell for taking your graphic

Pyrotek 02-12-2002 12:57 AM

Wow, this is an old thread. There will be a new item db released with the next EQ Emu. If you would like to contribute, run PacketCollector. :)

Zeitgeist 02-12-2002 08:58 AM

Thank you for your sympathy Claus :D The sad thing is that's a pic of my 'chanter from EQ in Werepuppy form =)

Trumpcard 02-12-2002 09:04 AM

Maybe he's just paying you homage...
Imitiation is the sincerest form of flattery, or is it plagiarism?


All times are GMT -4. The time now is 09:44 AM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.