Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Item Template

Joined
Feb 26, 2010
Messages
1,374
Reaction score
780
Code:
// Written by Yamachi
//--------------------------------------

typedef struct {float row[4];} Vec4D;
typedef struct {Vec4D col[4];} Matrix4x4;       //  Stupid crap that needs to be done to emulate a multi-dimensional array ¬_¬

//--------------------------------------

typedef enum <uint32> {
    _1x1     = 0,
    _1x2     = 1,
    _1x3     = 2,
    _1x4     = 3,
    _2x1     = 4,
    _2x2     = 5,
    _2x3     = 6,
    _2x4     = 7,
    _3x1     = 8,
    _3x2     = 9,
    _3x3     = 10,
    _3x4     = 11,
    _4x1     = 12,
    _4x2     = 13,
    _4x3     = 14,
    _4x4     = 15,
} SLOTS;      // Width x Height

typedef enum <uint32> {
    m_BATTLE       = 1,
    a_ARMOUR        = 2,
    z_MARTIAL       = 0
} DISP;

typedef enum <uint32> {
    NORMAL,
    NO_DROP,
    NO_TRADE,
    BIND_ACT,
    NO_SELL,
    NO_DROPSELL,
    NO_SELLTRADE,
    BIND_ACT_NO_SELL,
    NO_STOR,
    NO_DROPSTOR,
    NO_STORTRADE,
    BIND_CHAR,
    NO_SELLSTOR,
    NO_DROPSELLSTOR,
    NO_SELLSTORTRADE,
    BIND_CHAR_NO_SELL
} PROP;

typedef enum <uint32> {
    WA       = 1,
    BL,
    WI,
    FA,
    FS,
    FB
} CLASS;

typedef enum <ubyte> {
    WA2       = 1,
    BL2,
    WI2,
    FA2,
    FS2,
    FB2
} CLASSB;

typedef enum <uint32> {
    IDT_UCOR        = 0,
    IDT_OCOR,
    IDT_QDID,
    IDT_QDIT,
    IDT_WSCL,
    IDT_MWPN,
    IDT_1HND,
    IDT_2HND,
    IDT_SUIT,
    IDT_GLOV,
    IDT_BOOT,
    IDT_HMET,
    IDT_ALZS        = 13,
    IDT_PTON,
    IDT_RING,
    IDT_NLCE,
    IDT_CLOK,
    IDT_QSTS,
    IDT_QSTN,
    IDT_QDMI,
    IDT_VEHI        = 22,
    IDT_PANT        = 24,
    IDT_SPOS        = 27,
    IDT_FMUC,
    IDT_EXTR,
    IDT_CTOL,
    IDT_CLVU,
    IDT_ERNG,
    IDT_BSLI,
    IDT_LOTT,
    IDT_COEN,
    IDT_FXTS,
    IDT_FXTN,
    IDT_BLBD,
    IDT_WCCL,
    IDT_RSRT        = 42,
    IDT_CURE,
    IDT_CHNG,
    IDT_RNCD,
    IDT_RSPN,
    IDT_GLDE        = 50,
    IDT_PETN,
    IDT_FXFS,
    IDT_AVAN        = 54,
    IDT_BALN,
    IDT_GEND,
    IDT_RPNS,
    IDT_FTSM,
    IDT_LKWP,
} TYPE;

typedef enum <uint32> {
    Upgrade_Core        = 0,
    Force_Core,
	DT,
	Dungeon_Count,
	Return_Stone,
	Force_Controller,
	Two_Handed_Sword,
	One_Handed_Sword,
	Suit,
	Glove,
	Boot,
	Headgear,
	Headgear2,
	Alz,
	Potion,
	Ring,
	Amulet,
	Epaulet,
	QSTS,
	QSTN,
	Dungeon_Mission,
	Auto_Trap,
	Astral_Bike_Card,
	Skill_Curcuit,
	Plasma_Coating_Kit,
	Event_Item,
	SerialS,
	Special_Potion,
	Formula_Card,
	Slot_Extender,
	CA_Transmuter,
	Craft_License,
	Earring,
	Bracelet,
	Chaos_Lamp,
	Core_Enhancer,
	FX_ItemS,
	FX_ItemN,
	Blessing_Bead,
	Return_Core,
	Summon_Card,
	Special_Warp_Card,
	Ressurrection_Potion,
	Cure_Potion,
	Change_Kit,
	Rename_Card,
	Remote_Shop_Pannel,
	Treasure_Hunting_Kit,
	Summoning_Ritual_Kit,
	Epaulet2,
	Guild_Emblem,
	Summoning_Pet,
	FX_Item_S,
	FX_Item_N,
	Avatar_Item,
	Dialog_Bubble_Item,
	Change_Gender_Item,
	Remote_Shop_Pannel2,
	Recall_Force_Tower,
	Link_Weapon,
	Recovery_Kit,
	Pet_Rename_Card,
	Pet_Seal_Item,
	Pet_Buff_Remover,
	Gamble_Ticket,
	Pet_Change_Kit,
	Remote_Consignment_Agency,
	EventS,
	EventN,
	Lottery,
	FontS,
	Ability_Rune,
	Event_Formula_Card,
    Pet_Sleeping_Kit,
    Anima_Lune,
    Ability_Rune2,
    Warp_Stone,
    Skill_Book,
    Belt
} TYPEN;

typedef struct {
    float x;
    float y;
} Vec2D <read=Vec2DRead, write=Vec2DWrite>;

typedef struct {
    char VisualID[60];
    char ItemID[60];
    char DescID[60];
    ubyte unk_0[20];
    TYPE Type <read=commentType>;
    DISP DisplayCode_pt1;
    int32 DisplayCode_pt2;
    ubyte unk_1[4];
    float unk_2;
    ubyte unk_3[4];
    Vec2D Translate;
    float unk_4a;
    float unk_4b;
    float unk_4c;
    float unk_4d;
    float unk_4e;
    Vec2D Rotate;
    float unk_5;
    float Scale;
    uint32 LimitLevel;
    CLASS LimitClass;
    uint32 LimitReputation;
    ubyte unk_6[32];
    uint32 dSTR2;
    uint32 dDEX2;
    uint32 dINT2;
    uint32 PriceSell;
    SLOTS SlotSpaces;
    uint32 ValueLv;
    uint32 AttackRate_Opt1;
    uint32 DefenRate_Opt1Val_PhyAttMax;
    uint32 Defense_LEVLmt_MagAttVal;
    uint32 MaxCore;
    uint32 Opt2_STRLmt1;
    uint32 DEXLmt1_Opt2Val;
    uint32 INTLmt1_Opt3;
    uint32 Opt3Val_STRLmt2;
    uint32 DEXLmt2_Opt4;
    uint32 INTLmt2_Opt4Val;
    uint32 dSTR1;
    uint32 dDEX1;
    uint32 dINT1;
    PROP Property;
    ubyte EnchantCodeLnk;
    ubyte unk_7;
    ubyte Grade;
    ubyte unk_8;
    CLASSB ClassID1;
    CLASSB ClassID2;
    ubyte PeriodType;
    ubyte PeriodUse;
} ITEM;

//--------------------------------------

FSeek(0);

ITEM Items[FileSize() / 400] <optimize=false>;

//--------------------------------------

string commentType(TYPE &t) {
    string s;
    TYPEN tn = t;
    SPrintf( s, "%s - %s (%i)", EnumToString(tn), EnumToString(t), t);
    return s;
}

string Vec2DRead( Vec2D &v ) {
    string s; SPrintf( s, "(%f %f)", v.x, v.y); return s;
}

void Vec2DWrite( Vec2D &v, string s ) {
    SScanf( s, "(%f %f)", v.x, v.y );
}
 
Upvote 0
Banned
Banned
Joined
Oct 20, 2006
Messages
3,245
Reaction score
1,652
I already told you, go download this from the main thread... Why bother making a new thread for this when there's already a thread with links to ALL of my templates?
 
Last edited:
Upvote 0
Junior Spellweaver
Joined
Apr 9, 2010
Messages
128
Reaction score
11
becoz your links don't work !

- broken

and

was offline, sorry
 
Last edited:
Upvote 0
Banned
Banned
Joined
Oct 20, 2006
Messages
3,245
Reaction score
1,652
The links work fine. I did say that last time. The only reason they were down before is because I moved servers, but that was before I replied to you a few weeks ago.
 
Upvote 0
Back
Top