发新话题
打印

[魔力私服分享] GMSV角色结构体

GMSV角色结构体

复制内容到剪贴板
代码:
//Char_int结构体定义
typedef struct tagChar_int {
    int WhichType;
    int BaseImageNumber;
    int BaseBaseImageNumber;
    int MapId;
    int Floor;
    int X;
    int Y;
    int Dir;
    int Lv;
    int Hp;
    int ForcePoint;
    int Vital;
    int Str;
    int Tough;
    int Quick;
    int Magic;
    int Luck;
    int Tribe;
    int Attrib[4];
    int Poison;
    int Sleep;
    int Stone;
    int Drunk;
    int Confusion;
    int Amnesia;
    int Critical;
    int Counter;
    int HitRate;
    int Avoid;
    int ItemLimit;
    int HaveSkillLimit;
    int DeadCount;
    int DamageCount;
    int KillPetCount;
    int LastTimeSetLuck;
    int Injury;
    int WalkInterval;
    int LoopInterval;
    int Exp;
    int LevelUpPoint;
    int ImageType;
    int NameColor;
    int AllocPoint;
    int EatTime;
}Char_int;

//tagChar_int_union内部类型结构体定义
typedef struct tagChar_player_int {
    int DataPlaceNumber;
    int RegistNumber;
    int Job;
    int JobRank;
    int JobAncestry;
    int FaceImageNumber;
    int Gold;
    int PoolGold;
    int Stamina;
    int Dex;
    int Intelligence;
    int Charm;
    int Fame;
    int EquipTitle;
    int SavePoint;
    int DefaultPet;
    int ChatVolume;
    int HelpPoint;
    int LoginCount;
    int TalkCount;
    int GetPetCount;
    int SendMailCount;
    int MergeItemCount;
    int WalkCount;
    int DeadPetCount;
    int ResurrectPetCount;
    int HealPetCount;
    int CaptureCount;
    int OtherFlg;
    int FameGetValue;
    int FameGetTime;
    int FameAutoDownTime;
    int SickLevel;
    int Renewalflg;
    int EndEvent[8];
    int NowEvent[8];
    int Recipe[32];
    int Album[10];
    int MaxPoolPetHaveLimit;
    int MaxPoolItemHaveLimit;
    int DuelPoint;
    int PopupNameColor;
    int Position;
    int Debugger;
    int DungeonClr[3];
    int LastSaveTime;
    int RankDownFlg;
    int Penalty;
    int LoginPoint;
    int FeverResetTime;
    int FeverHaveTime;
    int HouseId;
    int HouseLimit;
    int TimeOutDungeonId;
    int TimeOutServerNumber;
    int OriginalImageNumber;
}Char_player_int;

typedef struct tagChar_enemy_int {
    int DuelPoint;
    int Size;
    int ModLoyalty;
    int VariableLoyalty;
    int Slot;
    int PetGetLv;
    int Rare;
    int PutPetTime;
    int PetRank;
    int LevelupRandomPattern;
    int PetId;
}Char_enemy_int;

typedef struct tagChar_pet_int {
    int OwnerRegistNumber;
    int Size;
    int ModLoyalty;
    int VariableLoyalty;
    int Slot;
    int PetGetLv;
    int Rare;
    int PutPetTime;
    int MailMode;
    int PetMailBufIndex;
    int PetMailIdleTime;
    int PetMailFromMapId;
    int PetMailFromFloor;
    int PetMailFromX;
    int PetMailFromY;
    int PetMailEffect;
    int PetSendMailCount;
    int PetMailDtopItemFlg;
    int ResurrectedCount;
    int PetRank;
    int LevelupRandomPattern;
    int PetId;
    int DepartureBattleStatus;
    int HouseX;
    int HouseY;
}Char_pet_int;

typedef struct tagChar_npc_int {
    int dmy;
}Char_npc_int;

typedef union tagChar_int_union {
    Char_player_int player;
    Char_enemy_int enemy;
    Char_pet_int pet;
    Char_npc_int npc;
}Char_int_union;

//Char_char
typedef struct tagChar_char {
    char Name[32];
}Char_char;

//Char_char_union所属
typedef struct tagChar_player_char {
    char OwnTitle[32];
    char CdKey[32];
}Char_player_char;

typedef struct tagChar_pet_char {
    char UserPetName[32];
    char CdKey[32];
    char OwnerCdKey[32];
    char OwnerCharName[32];
}Char_pet_char;

typedef struct tagChar_npc_char {
    char dmy[64];
}Char_npc_char;

typedef union tagChar_char_union {
    Char_player_char player;
    Char_pet_char pet;
    Char_npc_char npc;
}Char_char_union;


//Player_addon结构体的内部定义
typedef struct tagCHAR_Skill {
    int SkillId;
    int SkillLevel;
    int SkillExp;
    int SkillSuccessProb;
    int ConsumptionRate;
    int SeqNo;
    int Technique[11];
}CHAR_Skill;

typedef struct _ADDRESSBOOK_entry {
    int level;
    int graphicsno;
    int registseqnumber;
    int registnumber;
    char cdkey[32];
    char charname[32];
    char owntitle[32];
    int use;
    int gpa[2];
    int online;
    unsigned int hash;
    int addindex;
    void *pPrev;
    void *pNext;
    void *ch;
    void *toch;
    int toGuildID;
    int toGuildTitleID;
}ADDRESSBOOK_entry;

typedef struct tagPlayer_addon {
    void *PetPointer[5];
    int PetSeqNo[5];
    void *PoolPetPointer[5];
    int indexOfExistPoolItems[20];
    void *HousePetPointer[5];
    int indexOfExistHouseItems[20];
    CHAR_Skill Skill[15];
    int indexOfHaveTitle[48];
    int HaveTitleMakeId[48];
    ADDRESSBOOK_entry addressBook[60];
}Player_addon;


typedef struct tagPet_addon {
    int indexOfPetSkill[10];
    int PetSkillSeqNo[10];
}Pet_addon;

typedef struct tagGuildInfo {
    int guildID;
    int titleID;
    int sequence;
    int closenessMonster[3];
    int sortType;
}GUILD_INFO;

typedef struct tagEventFlag{
    int globalFlag[16];
    int localFlag[8];
    char localCounter[32];
    int globalFlag_T[8];
}EVENT_FLAG;


typedef struct tagChar_walk_work{
    int walkPet;
    int walkPetDir;
    int walkPetDir2;
    int ridePet;
    int rideCount;
    int rideMove;
    int walkSpeed;
}Char_walk_work;

typedef struct tagChar_work {
    int BattleMode;
    int BattleIndex;
    int BattleSide;
    int BattleCom1;
    int BattleCom2;
    int BattleCom3;
    int Battle2Com1;
    int Battle2Com2;
    int Battle2Com3;
    int BattleFlg;
    int Tribe;
    int FixAttrib[4];
    int MaxHp;
    int MaxForcePoint;
    int AttackPower;
    int DefencePower;
    int Agility;
    int MagicPower;
    int Recovery;
    int FixVital;
    int FixStr;
    int FixTough;
    int FixQuick;
    int FixMagic;
    int FixRecovery;
    int FixLuck;
    int ModAttack;
    int ModDefence;
    int ModAgility;
    int ModMagic;
    int ModCapture;
    int ModCharm;
    int ModCriticalMagic;
    int ModHitRateMagic;
    int ModAvoidMagic;
    int ModCounterMagic;
    int DamageAbsrob;
    int DamageReflec;
    int DamageVanish;
    int DamageMagicAbsrob;
    int DamageMagicReflec;
    int DamageMagicVanish;
    int LpRecovery;
    int BadCount;
    int Reverse;
    int Poison;
    int Sleep;
    int Stone;
    int Drunk;
    int Confusion;
    int Amnesia;
    int ModPoison;
    int ModSleep;
    int ModStone;
    int ModDrunk;
    int ModConfusion;
    int ModAmnesia;
    int ModCritical;
    int ModCounter;
    int ModHitRate;
    int ModAvoid;
    int Ultimate;
    int ObjIndex;
    int WalkStartSec;
    int WalkStartMSec;
    int LoopStartSec;
    int LoopStartMSec;
    int LastAttackCharaIndex;
    int ReviveHp;
    int GetExp;
    int Action;
    int Flg;
    int State;
    int NextEatTime;
    int DefUpDown;
    int AtkUpDown;
    int AglUpDown;
    int RcvUpDown;
    int Provoked_Flg;
    char WalkArray[64];
    Char_walk_work walk;
    int LevelUp;
    int SkillUse;
    int RebirthSkill;
    int RebirthFlag;
    int RebirthView;
    int RebirthLevel;
    int RebirthAttr;
    int RebirthBaseImage;
}Char_work;

typedef struct tagChar_player_work {
    int Fd;
    int PartyMode;
    int EncountProbability_Min;
    int EncountProbability_Max;
    int FixCharm;
    int FixFame;
    int BattleWatch;
    int ItemUse;
    int ModStamina;
    int ModDex;
    int ModIntelligence;
    int Adm;
    int Rss;
    int DuelHp;
    int DuelFp;
    int DuelInjury;
    int DuelFeverTime;
    int DuelFeverStatus;
    int DuelPetBattleStatus[5];
    int DuelRidePet;
    int DuelRideCount;
    int BattleDuel;
    int BattleSkillExp;
    int Tohelos_EscapeRate;
    int Tohelos_CutRate;
    int Tohelos_Count;
    int Metamo_Count;
    int RingWatchWait;
    int WindowBuffer;
    int WindowBuffer2;
    int WindowBuffer3;
    int ConfirmAlbumId;
    int ConfirmAlbum_Itemindex;
    int ShopRelevant;
    int ShopRelevantSec;
    int ShopRelevantTrd;
    int Trader;
    int Effect;
    int RenameItemNum;
    int RenameItemIndex;
    int TradeFdid;
    int TradeGold;
    int TradeItem[28];
    int TradePet[5];
    int TradeOkFlg;
    int FeverEndTime;
    int OpecateFirstTime;
    int OpecateCount;
    int TrialFlg;
    int dummy_tmp;
    int EventNPCWork;
    int dmy[59];
    void *PartyChar[5];
    void *battleChar[10];
    void *duelChar[10];
    void *tradecardChar[10];
    void *joinpartyChar[10];
    void *itemChar[10];
    void *OperationC[10];
    void *FollowingChar[2];
    void *guildInvitedChar;
    void *copyChar;
    int copyCount;
    int logintime;
    int EffectiveLevel;
    int HeadGraNo;
    char script_cmd_flg[4];
    int SeekPos;
    int OpenFlg;
    int SellFlg;
    int BuyFlg;
    int AboutFlg;
    char SellMsg[30];
    char BuyMsg[30];
    char AboutMsg[30];
    char ProfileMsg[120];
    ADDRESSBOOK_entry ProfileAddress[20];
    int PetHelpSkill;
}Char_player_work;

typedef struct tagChar_pet_work {
    int FixLoyalty;
    void *PlayerChar;
    int DuelHp;
    int DuelFp;
    int DuelInjury;
    int BattleDuel;
    int BattleTurn;
    int MailWalkCount;
    int StayFlg;
    void *riderChar;
    int petHp;
    int petMaxHp;
    int petForcePoint;
    int petMaxForcePoint;
}Char_pet_work;

typedef struct tagChar_npc_work {
    char *Argument;
    int EventType;
    int NpcCreateIndex;
    int GlobalTimerA;
    int GlobalTimerB;
    int GlobalTimerTime;
    int dmy[10];
}Char_npc_work;

typedef struct tagChar_enemy_work {
    int PetFlg;
    int ActionFlg;
    int BossFlg;
    int ModCaptureDefault;
    int Tactics;
    int summon1;
    int summon2;
    int escape;
    int msg;
    int BattleAction;
    char Battle_TacticsOption[64];
}Char_enemy_work;

typedef union tagChar_work_union {
    Char_player_work player;
    Char_pet_work pet;
    Char_npc_work npc;
    Char_enemy_work enemy;
}Char_work_union;

typedef struct tagChar_functable {
    void *Init;
    void *PreWalk;
    void *PostWalk;
    void *Watch;
    void *Loop;
    void *Dying;
    void *Talked;
    void *Looked;
    void *ItemPut;
    void *SpecialTalked;
    void *WindowTalked;
}Char_functable;

typedef struct tagCharLinkList {
    void *charpointer;
    struct tagCharLinkList *prev;
    struct tagCharLinkList *next;
}CharLinkList;

//玩家ch结构体
typedef struct tagChar {
    int use;
    int CharaIndex;
    int CharMakeSequenceNumber;
    Char_int i;
    Char_int_union iu;
    Char_char c;
    Char_char_union cu;
    int flg[1];
    int workflg[1];
    int indexOfExistItems[28];
    Player_addon *player_addon;
    Pet_addon *pet_addon;
    GUILD_INFO *guildInfo;
    EVENT_FLAG flagEx;
    Char_work w;
    Char_work_union wu;
    Char_functable functable;
    CharLinkList CharLinkList_Body;
    void *guild;
    void *myGuildList;
    int guildServer;
    int hash;
    void *pNext;
    EVENT_FLAG flagEx_T;
}Char;
这些不是所谓的源码,看了有网友回复,免得误会。
! N3 e) i6 T8 u8 C+ E, R& Y魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com) j3 ~( w" b/ v0 s  ^- e
是在一个群里看到有人问,我就发到论坛来。
  ~5 a% t5 z, h8 T# V4 w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com; e# C/ `# k2 k; x
这些信息每个gmsv本身都有的。用gdb都可以查看到。
6 Y! V7 \7 ]7 c% m) ]; \/ s& C0 Wbbs.mocwww.com—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' Z* n7 n+ l4 j: x+ j  I3 ~
有兴趣的可以自己去往这方面找资料查一下
妖城欢迎您!

TOP

看不懂,占沙发。。。。。。。。
你在我身边时,你是一切;你不在我身边时,一切是你。

TOP

收藏,嘿嘿,留待以后使用。
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

难道楼主有个强大的计划?要模拟GMSV
* R2 F5 o$ X3 H; u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
; s7 \: U- i5 k& J( Y* I魔力私服,最新魔力宝贝私服技术交流又或者楼主已经有源代码了?

TOP

额   看起来是gmsv的c源码      魔力的一些数据结构  貌似有点用处   
1 x7 v' H, E- Q+ ?+ d, j魔力私服,最新魔力宝贝私服技术交流哎...何时我们这些平民才能有完整的源码学习啊6 f+ }8 O, L. P+ _3 y, J" O2 C

3 z1 G6 a7 S1 Y/ n妖城在线论坛[ 本帖最后由 6650398 于 2013-5-10 16:45 编辑 ]

TOP

这些个东西跟数据库的内容应该也是对应的吧?

TOP

没研究过这个 呵呵

TOP

看起来... 天书啊这是

TOP

发新话题