mirror of
https://gitlab.com/hashborgir/plugy.git
synced 2025-10-13 08:24:24 -05:00
v14.00 by Yohann
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
/*======================================================================
|
||||
File created by Yohann NICOLAS.
|
||||
Add support 1.13d by L'Autour.
|
||||
Add support 1.14d by haxifix.
|
||||
Add support 1.14d by haxifix.
|
||||
|
||||
Declares the type for a STDCALL or FASTCALL function pointer
|
||||
called N with arguments list P, returning R, namedInDLL D and at @A
|
||||
Declares the type for a STDCALL or FASTCALL function pointer
|
||||
called N with arguments list P, returning R, namedInDLL D and at @A
|
||||
|
||||
======================================================================*/
|
||||
|
||||
@@ -149,144 +149,143 @@
|
||||
|
||||
|
||||
|
||||
//F7(STD, D2Common,00000,00000,00000,00000,10001,00000,00000,00000, DWORD, D2GetActIDFromLevel, (DWORD levelID));
|
||||
F8(STD, D2Common,00000,00000,00000,10188,11084,11109,10346,10907, 21AED0, DWORD, D2Common11084, (Room* ptRoom, DWORD zero));
|
||||
F8(STD, D2Common,10057,10057,10057,10332,11021,10511,10826,10691, 21A1B0, DWORD, D2GetLevelID, (Room* ptRoom));
|
||||
F8(STD, D2Common,10138,10138,10138,10623,10491,11043,10654,10716, 24E810, Room*, D2GetDropRoom, (Room* ptRoom, Position*, Position*, DWORD, DWORD, DWORD, DWORD));
|
||||
//F7(STD, D2Common,10149,10149,10149,00000,00000,00000,00000,00000, Inventory*, D2GetInventory, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10242,10242,10242,00000,00000,00000,00000,00000,00000, Unit*, D2Common10242, (Inventory* ptInventory, Unit* ptItem, DWORD bIsClient));
|
||||
F8(STD, D2Common,10246,10246,10246,10855,10813,10289,10133,10402, 23B950, Unit*, D2CanPutItemInInv, (Inventory* ptInventory, Unit* ptItem, DWORD p3, DWORD zero, Unit* ptUnit, const char* file, DWORD line));
|
||||
F8(STD, D2Common,10243,10243,10243,10461,10827,10936,10646,10490, 23AD90, Unit*, D2InvRemoveItem, (Inventory* ptInventory, Unit* ptItem));
|
||||
F8(STD, D2Common,10249,10249,10249,10880,11068,10436,11107,10963, 23BCC0, DWORD, D2InvAddItem, (Inventory* ptInventory, Unit* ptItem, DWORD posX, DWORD posY, DWORD vValueC, DWORD bIsClient, BYTE page));//result : boolean 0=echec ; vValueC = 0 for Game.dll, 1 for Clientdll
|
||||
F8(STD, D2Common,10250,10250,10250,00000,00000,00000,00000,00000, 00000, DWORD, D2Common10250, (const char* file, DWORD line, Inventory* ptInventory, DWORD posX, DWORD posY, DWORD vValueC, DWORD bIsClient, BYTE page));// result : boolean 0=echec ; vValueC = 0 for Game.dll, 1 for Clientdll
|
||||
//F7(STD, D2Common,10257,10257,10257,00000,00000,00000,00000,00000, Unit*, D2GetItemFromBodyLoc, (Inventory* ptInventory, DWORD bodyloc));
|
||||
F8(STD, D2Common,10273,10273,10273,00000,00000,00000,00000,00000, 00000, DWORD, D2Common10273, (Inventory* ptInventory, void* unknown));
|
||||
F8(STD, D2Common,10277,10277,10277,10402,10535,11151,10460,11040, 23B2C0, Unit*, D2InventoryGetFirstItem, (Inventory* ptInventory));
|
||||
F8(STD, D2Common,10304,10304,10304,10934,11140,10770,10464,10879, 23DFA0, Unit*, D2UnitGetNextItem, (Unit* ptItem));
|
||||
F8(STD, D2Common,10305,10305,10305,11095,10748,10852,11147,10897, 23DFD0, Unit*, D2GetRealItem, (Unit* ptUnit));
|
||||
//F7(STD, D2Common,10321,10321,10321,00000,00000,00000,00000,00000, SkillData*, D2GetLeftSkill, (Unit* ptChar));
|
||||
//F7(STD, D2Common,10322,10322,10322,00000,00000,00000,00000,00000, SkillData*, D2GetRightSkill, (Unit* ptChar));
|
||||
F8(STD, D2Common,10326,10326,00000,00000,00000,00000,00000,00000, 00000, DWORD, D2GetPosX, (Unit* ptUnit));//NOT IN 1.10
|
||||
//F7(STD, D2Common,10328,10328,10328,00000,00000,00000,00000,00000, void, D2SetPosX, (Unit* ptUnit, DWORD pos));
|
||||
F8(STD, D2Common,10329,10329,00000,00000,00000,00000,00000,00000, 00000, DWORD, D2GetPosY, (Unit* ptUnit));//NOT IN 1.10
|
||||
//F7(STD, D2Common,10331,10331,10331,00000,00000,00000,00000,00000, void, D2SetPosY, (Unit* ptUnit, DWORD pos));
|
||||
F8(STD, D2Common,10332,10332,10332,11080,10056,10543,10141,11166, 220870, void, D2GetPosition, (Unit* ptUnit, Position* pos));
|
||||
F8(STD, D2Common,10339,10339,10339,10455,10864,10941,11060,11025, 223460, DWORD, D2GetMaxGoldBank, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10342,10342,10342,10172,10933,10366,10331,10846, 220BB0, Room*, D2GetRoom, (Unit* ptUnit));
|
||||
//F7(STD, D2Common,10348,10348,10348,00000,00000,00000,00000,00000, void, D2SetUnitMode, (Unit* ptUnit, DWORD mode));
|
||||
//F7(STD, D2Common,10394,10394,10394,00000,00000,00000,00000,00000, ObjectsBIN*,D2GetObjectsBIN, (Unit* ptObject));
|
||||
F8(STD, D2Common,10420,10420,10420,10218,10079,11097,10356,10404, 221F90, PlayerData*,D2InitPlayerData, (Unit* ptChar));
|
||||
//F7(STD, D2Common,10421,10421,10421,10914,10329,00000,00000,00000, DWORD, D2FreePlayerData, (DWORD game1C, Unit* ptChar));
|
||||
F8(STD, D2Common,10424,10424,10424,10562,10800,10860,10920,11103, 2221A0, PlayerData*,D2GetPlayerData, (Unit* ptChar));
|
||||
F8(STD, D2Common,10431,10431,10431,00000,00000,00000,00000,00000, 00000, DWORD, D2GetDefence, (Unit* ptChar));
|
||||
F8(STD, D2Common,10433,10433,10433,00000,00000,00000,00000,00000, 00000, DWORD, D2GetChanceToBlock, (Unit* ptChar, DWORD isLODGame));
|
||||
F8(STD, D2Common,10439,10439,10439,10343,11131,10729,10049,11159, 222E70, DWORD, D2GetMaxGold, (Unit* ptUnit));
|
||||
F8(STD, D2Common,00000,00000,00000,10440,10572,10481,11090,10193, 224690, DWORD, D2Common10572, (Unit* ptObject, DWORD value));
|
||||
//F7(STD, D2Common,10463,10463,10463,00000,00000,00000,00000,00000, DWORD, D2SetStatWithNoTest, ( Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F7(STD, D2Common,10464,10464,10464,00000,00000,00000,00000,00000, void, D2AddStat, (Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F7(STD, D2Common,10465,10465,10465,00000,00000,00000,00000,00000, DWORD, D2SetStat, (Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F7(STD, D2Common,10466,10466,10466,00000,00000,00000,00000,00000, int, D2GetStat, (Stats* ptStats, DWORD statID, DWORD statIndex));
|
||||
//F7(STD, D2Common,10470,10470,10470,00000,00000,00000,00000,00000, Stats*, D2AllocNewStats, (DWORD nUnitId, DWORD flags, DWORD uk18, DWORD nUnitType, DWORD nItemNum));
|
||||
F8(STD, D2Common,00000,00000,00000,10471,11160,10866,10258,10040, 2222C0, BYTE, D2GetObjectFlags, (Unit* ptObject));
|
||||
F8(STD, D2Common,00000,00000,00000,10572,11048,10150,10111,10033, 222300, void, D2SetObjectFlags, (Unit* ptObject, BYTE flags));
|
||||
//F7(STD, D2Common,10471,10471,10471,00000,00000,00000,00000,00000, DWORD, D2Common10471, (void*));
|
||||
//F7(STD, D2Common,10472,10472,10472,00000,00000,00000,00000,00000, DWORD, D2Common10472, (void*));
|
||||
//F7(STD, D2Common,10475,10475,10475,00000,00000,00000,00000,00000, void, D2UpdateDisabledStat, (Stats* ptCharStats, Stats* ptStats, DWORD one));
|
||||
//F7(STD, D2Common,10481,10481,10481,00000,00000,00000,00000,00000, void*, D2Common10481, (Unit* ptUnit, DWORD flags));
|
||||
//F7(STD, D2Common,10484,10484,10484,00000,00000,00000,00000,00000, Stats*, D2GetAffixStats, (Unit* ptItem, DWORD, DWORD));
|
||||
//F7(STD, D2Common,10485,10485,10485,00000,00000,00000,00000,00000, void, D2FreeStats, (Stats* ptStats));
|
||||
F8(STD, D2Common,10487,10487,10487,00000,00000,00000,00000,00000, 00000, DWORD, D2isInState, (Unit* ptChar, DWORD isLODGame));
|
||||
//F7(STD, D2Common,10517,10517,10517,00000,00000,00000,00000,00000, void, D2SetPlayerStat, (Unit* ptChar, DWORD statID, int amount, DWORD index));
|
||||
F8(STD, D2Common,10518,10518,10518,10109,10627,10762,10551,10645, 2272B0, void, D2AddPlayerStat, (Unit* ptChar, DWORD statID, int amount, DWORD index));//ONLY 1.11b
|
||||
F8(STD, D2Common,10519,10519,10519,11092,10061,10658,10973,10550, 225480, int, D2GetPlayerStat, (Unit* ptChar, DWORD statID, DWORD index));//ONLY 1.11b
|
||||
//F7(STD, D2Common,10520,10520,10520,00000,00000,00000,00000,00000, int, D2GetPlayerStat20, (Unit* ptChar, DWORD statID, DWORD index));
|
||||
F8(STD, D2Common,10521,10521,10521,10733,10550,10494,10587,10216, 2253B0, int, D2GetPlayerBaseStat, (Unit* ptChar, DWORD statID, DWORD index));//ONLY 1.11b
|
||||
//F7(STD, D2Common,10527,10527,10527,00000,00000,00000,00000,00000, DWORD, D2Common10527, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10539,10539,10539,00000,00000,00000,00000,00000, 00000, DWORD, D2haveDefenceBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10540,10540,10540,00000,00000,00000,00000,00000, 00000, DWORD, D2haveFireResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10541,10541,10541,00000,00000,00000,00000,00000, 00000, DWORD, D2haveColdResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10542,10542,10542,00000,00000,00000,00000,00000, 00000, DWORD, D2haveLightResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10543,10543,10543,00000,00000,00000,00000,00000, 00000, DWORD, D2havePoisonResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10546,10546,10546,00000,00000,00000,00000,00000, 00000, DWORD, D2haveDefenceMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10547,10547,10547,00000,00000,00000,00000,00000, 00000, DWORD, D2haveFireResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10548,10548,10548,00000,00000,00000,00000,00000, 00000, DWORD, D2haveColdResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10549,10549,10549,00000,00000,00000,00000,00000, 00000, DWORD, D2haveLightResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10550,10550,10550,00000,00000,00000,00000,00000, 00000, DWORD, D2havePoisonResMalus, (Unit* ptChar));
|
||||
//F7(STD, D2Common,10552,10552,10552,00000,00000,00000,00000,00000, DWORD, D2Common10552, (Unit* ptUnit));
|
||||
//F7(STD, D2Common,10567,10567,10567,00000,00000,00000,00000,00000, DWORD, D2CanBeBroken, (Unit* ptItem));
|
||||
//F7(STD, D2Common,10573,10573,10573,00000,00000,00000,00000,00000, void, D2CopyStats, (Stats* ptDestStats, Stats* ptSrcStats));
|
||||
//F7(STD, D2Common,10574,10574,10574,00000,00000,00000,00000,00000, void*, D2SetEnabledStat, (Unit* ptItem, DWORD statId, DWORD disabled));
|
||||
//F7(STD, D2Common,10575,10575,10575,00000,00000,00000,00000,00000, void, D2FreeBinFiles, ());
|
||||
//F7(STD, D2Common,10576,10576,10576,00000,00000,00000,00000,00000, void, D2LoadBinFiles, (DWORD zero1, DWORD zero2, bool));
|
||||
//F7(STD, D2Common,00000,00000,00000,10651,10651,00000,00000,00000, DWORD, D2CheckQuestState, (void* ptQuest, DWORD index, DWORD value));
|
||||
F8(STD, D2Common,10578,10578,10578,10653,10496,10244,10849,10037, 2122F0, void*, D2CompileTxtFile, (DWORD unused, const char* filename, BINField* ptFields, DWORD* ptRecordCount, DWORD recordLength));
|
||||
F8(STD, D2Common,10600,10600,10600,10573,10262,10887,10695,10994, 2335F0, ItemsBIN*, D2GetItemsBIN, (DWORD itemID));
|
||||
//F7(STD, D2Common,10601,10601,10601,00000,00000,00000,00000,00000, ItemsBIN*, D2GetByCodeItemStatsBIN, (DWORD code, DWORD* itemID));
|
||||
//F7(STD, D2Common,10604,10604,10604,00000,00000,00000,00000,00000, AffixBIN*, D2GetAffixBIN, (int affixID));
|
||||
F8(STD, D2Common,10616,10616,10616,10500,10523,10774,10806,10619, 10619, GemsBIN*, D2GetGemsBIN, (DWORD gemID));
|
||||
F8(STD, D2Common,11232,11232,11232,10746,10258,10913,10783,10393, 26A1B0, CubeMainBIN*,D2GetCubeMainBIN, (DWORD cubemainID));
|
||||
F8(STD, D2Common,11233,11233,11233,10639,11135,10390,10675,10235, 26A200, int, D2GetNbCubeMainBIN, ());
|
||||
//F7(STD, D2Common,10737,10737,10737,00000,00000,00000,00000,00000, LevelsBIN*, D2GetLevelsBIN, (DWORD levelID));
|
||||
F8(STD, D2Common,10628,10628,10628,00000,00000,00000,00000,00000, 00000, DWORD, D2GetNextLevelXP, (DWORD classID, DWORD level));
|
||||
F8(STD, D2Common,10629,10629,10629,00000,00000,00000,00000,00000, 00000, DWORD, D2GetMaxLevel, (DWORD classID));
|
||||
F8(STD, D2Common,10655,10655,10655,10655,10309,10297,10218,10694, 10694, DifficultyLevelsBIN*, D2GetDifficultyLevelsBIN, (DWORD difficultyLevel));
|
||||
//F7(STD, D2Common,10659,10659,10659,00000,00000,00000,00000,00000, TreasureClassBIN*, D2GetTreasureClassBIN, (WORD id, DWORD uk));
|
||||
//F7(STD, D2Common,10668,10668,10668,10450,10953,00000,00000,00000, SuperUniqueBIN*, D2GetSuperUniqueBIN, (WORD id));
|
||||
F8(STD, D2Common,10695,10695,10695,10927,10899,10276,10106,10911, 227E70, DWORD, D2GetItemQuality, (Unit* ptItem));
|
||||
F8(STD, D2Common,10707,10707,10707,10911,10303,10989,10202,10458, 2280A0, DWORD, D2TestFlags, (Unit* ptUnit, DWORD flags, DWORD line, const char* file));
|
||||
//F7(STD, D2Common,10708,10708,10708,00000,00000,00000,00000,00000, void, D2SetFlags, (Unit* ptUnit, DWORD flags, DWORD bitNewValue));
|
||||
//F7(STD, D2Common,10709,10709,10709,00000,00000,00000,00000,00000, DWORD, D2GetFlags, (Unit* ptUnit));
|
||||
//F7(STD, D2Common,10711,10711,10711,00000,00000,00000,00000,00000, void, D2ItemSetFlags, (Unit* ptItem, DWORD flags, DWORD toSet));// toSet = 0 for set to 0 the selected flags else set to 1
|
||||
F8(STD, D2Common,10717,10717,10717,10898,10100,10410,10086,10008, 2281E0, DWORD, D2GetItemLevel, (Unit* ptItem));
|
||||
F8(STD, D2Common,10719,10719,10719,10820,10505,10370,10020,10810, 228250, BYTE, D2ItemGetPage, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10720,10720,10720,10485,10608,10223,10012,11026, 228280, void, D2ItemSetPage, (Unit* ptItem, BYTE page));
|
||||
F8(STD, D2Common,10731,10731,10731,11017,10890,10231,10744,10601, 229BB0, DWORD, D2CheckItemType, (Unit* ptItem, DWORD itype));
|
||||
F8(STD, D2Common,10732,10732,10732,10692,10685,10280,10620,10075, 229DA0, int, D2GetUniqueID, (Unit* ptItem));
|
||||
F8(STD, D2Common,10734,10734,10734,00000,00000,00000,00000,00000, 00000, void, D2SetAnim, (Unit* ptUnit, int anim));
|
||||
//F7(STD, D2Common,10749,10749,10749,00000,00000,00000,00000,00000, void, D2GetWidthHeight, (Unit* ptItem, BYTE* Width, BYTE* Height);
|
||||
//F7(STD, D2Common,10751,10751,10751,00000,00000,00000,00000,00000, DWORD, D2GetItemType, (Unit* ptUnit));
|
||||
//F7(STD, D2Common,10757,10757,10757,00000,00000,00000,00000,00000, DWORD, D2GetItemLevelReq, (Unit* ptChar, Unit* ptItem));
|
||||
F8(STD, D2Common,10619,10619,10619,10687,10877,10321,11032,10981, 10981, int*, D2GetNbRunesBIN, ());//return the point on th number
|
||||
F8(STD, D2Common,10620,10620,10620,10775,10296,10622,10006,10405, 10405, RunesBIN*, D2GetRunesBIN, (int runesID));
|
||||
//F7(STD, D2Common,10792,10792,10792,00000,00000,00000,00000,00000, DWORD, D2CanBeRare, (Unit* ptItem));
|
||||
//F7(STD, D2Common,10810,10810,10810,00000,00000,00000,00000,00000, BYTE, D2CheckHasInv, (Unit* ptItem));
|
||||
//F7(STD, D2Common,10813,10813,10813,00000,00000,00000,00000,00000, DWORD, D2GetStaffMods, (Unit* ptItem));
|
||||
//F7(STD, D2Common,10816,10816,10816,10816,11085,00000,00000,00000, DWORD, D2GetNbSocket, (Unit* ptItem));
|
||||
//F7(STD, D2Common,10840,10840,10840,00000,00000,00000,00000,00000, DWORD, D2Common10840, (Unit* ptItem, Unit* ptChar));
|
||||
//F7(STD, D2Common,10855,10855,10855,00000,00000,00000,00000,00000, void, D2AddAffix, (DWORD, DWORD, Unit* ptItem, AffixBIN* ptAffix, DWORD, DWORD));
|
||||
//F7(STD, D2Common,10872,10872,10872,00000,00000,00000,00000,00000, DWORD, D2WarpPlayer, (Path* ptPath, Unit* ptChar, Room* ptRoom, DWORD x, DWORD y));
|
||||
//F7(STD, D2Common,10875,10875,10875,00000,00000,00000,00000,00000, WORD, D2GetItemVersion, (Unit* ptItem));
|
||||
F8(STD, D2Common,11163,11163,11163,10880,11068,10436,11107,10963, 23BCC0, DWORD, D2isEtheral, (Unit* ptItem));//ONLY UNTIL 1.10
|
||||
F8(STD, D2Common, 11163, 11163, 11163, 10880, 11068, 10436, 11107, 10963, 23BCC0, DWORD, D2isEtheral2, (Unit* ptItem, DWORD a2, DWORD a3, DWORD a4, DWORD a5, DWORD a6, WORD a7));
|
||||
F8(STD, D2Common,10881,10881,10881,10956,11156,10218,10987,10665, 2313E0, DWORD, D2SaveItem, (Unit* ptItem, saveBitField* data, DWORD startSize, DWORD p4, DWORD p5, DWORD p6));
|
||||
//F7(STD, D2Common,10916,10916,10916,00000,00000,00000,00000,00000, void, DoNothing916, ());
|
||||
//F7(STD, D2Common,10940,10940,10940,10027,10105,10953,00000,00000, void, D2Common10027, (Unit* ptChar, DWORD skillID));
|
||||
//F7(STD, D2Common,10950,10950,10950,00000,00000,00000,00000,00000, SkillData*, D2GetSkillPointer, (Unit* ptChar, WORD SkillID));
|
||||
//F7(STD, D2Common,10952,10952,10952,10950,10256,10858,00000,00000, SkillData*, D2IncSkillBaseLevel, (Unit* ptChar, DWORD skillID));
|
||||
F8(STD, D2Common,10953,10953,10953,10099,10255,10210,10302,10335, 247280, void, D2SetSkillBaseLevel,(Unit* ptChar, DWORD skillID, DWORD slvl, DWORD bRemove, char*, DWORD));
|
||||
//F7(STD, D2Common,10963,10963,10963,00000,00000,00000,00000,00000, DWORD, D2GetSkillID, (SkillData* ptSkill, const char* file, DWORD line));
|
||||
//F7(FAST, D2Common,10966,10966,10966,00000,00000,00000,00000,00000, SkillsBIN*, D2GetSkillsBIN, (SkillData* ptSkill));
|
||||
F8(STD, D2Common,10968,10968,10968,10700,10109,10904,10306,10007, 2442A0, DWORD, D2GetSkillLevel, (Unit* ptChar, SkillData* ptSkill, DWORD includingBonus));
|
||||
//F7(STD, D2Common,11023,11023,11023,00000,00000,00000,00000,00000, DWORD, D2GetCriticalStrikeFromMasteries, (Unit* ptChar, Unit* ptItem, DWORD zero, DWORD two));
|
||||
//F7(STD, D2Common,11007,11007,11007,00000,00000,00000,00000,00000, bool, D2TestQuestState, (void* ptQuest, DWORD QuestID, DWORD QuestState));
|
||||
//F7(STD, D2Common,11041,11041,11041,00000,00000,00000,00000,00000, int, D2GetPlayerSkillID, (DWORD playerID, DWORD skillNumber));
|
||||
//F7(STD, D2Common,11042,11042,11042,00000,00000,00000,00000,00000, int, D2GetNbSkillsPerPlayer, (DWORD playerID));
|
||||
//F7(STD, D2Common,11269,11269,11269,00000,00000,00000,00000,00000, DWORD, D2GetAllIndexFromStat, (Stats* ptStats, DWORD statID, D2Stat* allIndex, DWORD maxIndex));
|
||||
//F7(STD, D2Common,11270,11270,11270,00000,00000,00000,00000,00000, DWORD, D2GetAllIndexFromStatID, (Unit* ptItem, DWORD statID, D2Stat* allIndex, DWORD));
|
||||
F8(STD, D2Common,11276,11276,11276,10254,10074,10111,10435,11081, 246D00, DWORD, D2GetSkillCost, (Unit* ptChar, int skpoints, DWORD skillID, DWORD curSkillLevel));//not 10447
|
||||
A8(FAST, D2Common,00000,00000,82C80, 15D0, 1800, 1220, 12D0, 17B0, 833E0, CharStatsBIN*, D2GetCharStatsBIN, (DWORD charID));
|
||||
A8(FAST, D2Common,00000,00000,12410,5D7D0,1A100,116C0,1C020,5B0E0, 268600, DWORD, D2CompileCubeInput, (CubeInput* cubeinput, char* s, DWORD p1, DWORD p2));
|
||||
A8(FAST, D2Common,00000,00000,12910,5D210,19B40,11100,1BA60,5AB20, 5AB20, DWORD, D2CompileCubeOutput, (CubeOutput* cubeoutput, char* s, DWORD p1, DWORD p2));
|
||||
A8(FAST, D2Common,00000,00000,2B1A0, 11F0, 1380, 1140, 1300, 1160, 155C90, ItemTypesBIN*, D2GetItemTypesBIN, (DWORD itemTypesId));
|
||||
//A7(FAST, D2Common,00000,00000,62FD0,00000,00000,00000,00000,00000, void, D2EncodeValueCheckMax, (saveBitField* data, DWORD value, DWORD bitSize));
|
||||
A8(FAST, D2Common,00000,00000,642B0, 13F0, 12F0, 1540, 17A0, 17E0, 5C4F0, ItemStatCostBIN*,D2GetItemStatCostBIN, (DWORD id));
|
||||
//A7(FAST, D2Common,00000,00000,764A0,00000,00000,00000,00000,00000, void*, D2Common764A0, (Stats* ptStats, DWORD stat, ItemStatCostBIN* itemStatCost ,DWORD));
|
||||
//A7(STD, D2Common,00000,00000,76E30,00000,00000,00000,00000,00000, void, D2PreUpdateDisabledStat, (Stats* ptStats));
|
||||
//A7(FAST, D2Common,00000,00000,76C10,00000,00000,00000,00000,00000, void, D2ApplyStat,(Stats* ptCharStats, DWORD statId, DWORD value, Unit* ptItem));
|
||||
A8(FAST, D2Common,738A4,739B4,84268, 96E0, 98D0, 9900, 9900, B5E0, /*116E46*/117079, void*, D2ReadFile,(DWORD unused, char* filename, DWORD* size, const char*, DWORD));
|
||||
//A7(FAST, D2Common,00000,00000, 94D0,00000,00000,00000,00000,00000, void*, D2GetStringIDForTxtFile,(const char * string));
|
||||
A8(STD, D2Common,1F500,1F510,29FA0,71EB0,32AA0,7D2A0,59870,80C40, 2552E0, void, D2LoadSuperuniques,(DWORD mempool));//FASCALL UNTIL 1.10
|
||||
|
||||
//F8(STD, D2Common,00000,00000,00000,00000,10001,00000,00000,00000,00000, DWORD, D2GetActIDFromLevel, (DWORD levelID));
|
||||
F8(STD, D2Common,00000,00000,00000,10188,11084,11109,10346,10907,21AED0, DWORD, D2Common11084, (Room* ptRoom, DWORD zero));
|
||||
F8(STD, D2Common,10057,10057,10057,10332,11021,10511,10826,10691,21A1B0, DWORD, D2GetLevelID, (Room* ptRoom));
|
||||
F8(STD, D2Common,10138,10138,10138,10623,10491,11043,10654,10716,24E810, Room*, D2GetDropRoom, (Room* ptRoom, Position*, Position*, DWORD, DWORD, DWORD, DWORD));
|
||||
//F8(STD, D2Common,10149,10149,10149,00000,00000,00000,00000,00000,00000, Inventory*, D2GetInventory, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10242,10242,10242,00000,00000,00000,00000,00000,00000, Unit*, D2Common10242, (Inventory* ptInventory, Unit* ptItem, DWORD bIsClient));
|
||||
F8(STD, D2Common,10246,10246,10246,10855,10813,10289,10133,10402,23B950, Unit*, D2CanPutItemInInv, (Inventory* ptInventory, Unit* ptItem, DWORD p3, DWORD zero, Unit* ptUnit, const char* file, DWORD line));
|
||||
F8(STD, D2Common,10243,10243,10243,10461,10827,10936,10646,10490,23AD90, Unit*, D2InvRemoveItem, (Inventory* ptInventory, Unit* ptItem));
|
||||
F8(STD, D2Common,10249,10249,10249,10880,11068,10436,11107,10963,23BCC0, DWORD, D2InvAddItem, (Inventory* ptInventory, Unit* ptItem, DWORD posX, DWORD posY, DWORD vValueC, DWORD bIsClient, BYTE page));//result : boolean 0=echec ; vValueC = 0 for Game.dll, 1 for Clientdll
|
||||
F8(STD, D2Common,10250,10250,10250,00000,00000,00000,00000,00000,00000, DWORD, D2Common10250, (const char* file, DWORD line, Inventory* ptInventory, DWORD posX, DWORD posY, DWORD vValueC, DWORD bIsClient, BYTE page));// result : boolean 0=echec ; vValueC = 0 for Game.dll, 1 for Clientdll
|
||||
//F8(STD, D2Common,10257,10257,10257,00000,00000,00000,00000,00000,00000, Unit*, D2GetItemFromBodyLoc, (Inventory* ptInventory, DWORD bodyloc));
|
||||
F8(STD, D2Common,10273,10273,10273,00000,00000,00000,00000,00000,00000, DWORD, D2Common10273, (Inventory* ptInventory, void* unknown));
|
||||
F8(STD, D2Common,10277,10277,10277,10402,10535,11151,10460,11040,23B2C0, Unit*, D2InventoryGetFirstItem, (Inventory* ptInventory));
|
||||
F8(STD, D2Common,10304,10304,10304,10934,11140,10770,10464,10879,23DFA0, Unit*, D2UnitGetNextItem, (Unit* ptItem));
|
||||
F8(STD, D2Common,10305,10305,10305,11095,10748,10852,11147,10897,23DFD0, Unit*, D2GetRealItem, (Unit* ptUnit));
|
||||
//F8(STD, D2Common,10321,10321,10321,00000,00000,00000,00000,00000,00000, SkillData*, D2GetLeftSkill, (Unit* ptChar));
|
||||
//F8(STD, D2Common,10322,10322,10322,00000,00000,00000,00000,00000,00000, SkillData*, D2GetRightSkill, (Unit* ptChar));
|
||||
F8(STD, D2Common,10326,10326,00000,00000,00000,00000,00000,00000,00000, DWORD, D2GetPosX, (Unit* ptUnit));//NOT IN 1.10
|
||||
//F8(STD, D2Common,10328,10328,10328,00000,00000,00000,00000,00000,00000, void, D2SetPosX, (Unit* ptUnit, DWORD pos));
|
||||
F8(STD, D2Common,10329,10329,00000,00000,00000,00000,00000,00000,00000, DWORD, D2GetPosY, (Unit* ptUnit));//NOT IN 1.10
|
||||
//F8(STD, D2Common,10331,10331,10331,00000,00000,00000,00000,00000,00000, void, D2SetPosY, (Unit* ptUnit, DWORD pos));
|
||||
F8(STD, D2Common,10332,10332,10332,11080,10056,10543,10141,11166,220870, void, D2GetPosition, (Unit* ptUnit, Position* pos));
|
||||
F8(STD, D2Common,10339,10339,10339,10455,10864,10941,11060,11025,223460, DWORD, D2GetMaxGoldBank, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10342,10342,10342,10172,10933,10366,10331,10846,220BB0, Room*, D2GetRoom, (Unit* ptUnit));
|
||||
//F8(STD, D2Common,10348,10348,10348,00000,00000,00000,00000,00000,00000, void, D2SetUnitMode, (Unit* ptUnit, DWORD mode));
|
||||
//F8(STD, D2Common,10394,10394,10394,00000,00000,00000,00000,00000,00000, ObjectsBIN*,D2GetObjectsBIN, (Unit* ptObject));
|
||||
F8(STD, D2Common,10420,10420,10420,10218,10079,11097,10356,10404,221F90, PlayerData*,D2InitPlayerData, (Unit* ptChar));
|
||||
//F8(STD, D2Common,10421,10421,10421,10914,10329,00000,00000,00000,00000, DWORD, D2FreePlayerData, (DWORD game1C, Unit* ptChar));
|
||||
F8(STD, D2Common,10424,10424,10424,10562,10800,10860,10920,11103,2221A0, PlayerData*,D2GetPlayerData, (Unit* ptChar));
|
||||
F8(STD, D2Common,10431,10431,10431,00000,00000,00000,00000,00000,00000, DWORD, D2GetDefence, (Unit* ptChar));
|
||||
F8(STD, D2Common,10433,10433,10433,00000,00000,00000,00000,00000,00000, DWORD, D2GetChanceToBlock, (Unit* ptChar, DWORD isLODGame));
|
||||
F8(STD, D2Common,10439,10439,10439,10343,11131,10729,10049,11159,222E70, DWORD, D2GetMaxGold, (Unit* ptUnit));
|
||||
F8(STD, D2Common,00000,00000,00000,10440,10572,10481,11090,10193,224690, DWORD, D2Common10572, (Unit* ptObject, DWORD value));
|
||||
//F8(STD, D2Common,10463,10463,10463,00000,00000,00000,00000,00000,00000, DWORD, D2SetStatWithNoTest, ( Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F8(STD, D2Common,10464,10464,10464,00000,00000,00000,00000,00000,00000, void, D2AddStat, (Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F8(STD, D2Common,10465,10465,10465,00000,00000,00000,00000,00000,00000, DWORD, D2SetStat, (Stats* ptStats, DWORD statID, DWORD statValue, DWORD statIndex));
|
||||
//F8(STD, D2Common,10466,10466,10466,00000,00000,00000,00000,00000,00000, int, D2GetStat, (Stats* ptStats, DWORD statID, DWORD statIndex));
|
||||
//F8(STD, D2Common,10470,10470,10470,00000,00000,00000,00000,00000,00000, Stats*, D2AllocNewStats, (DWORD nUnitId, DWORD flags, DWORD uk18, DWORD nUnitType, DWORD nItemNum));
|
||||
F8(STD, D2Common,00000,00000,00000,10471,11160,10866,10258,10040,2222C0, BYTE, D2GetObjectFlags, (Unit* ptObject));
|
||||
F8(STD, D2Common,00000,00000,00000,10572,11048,10150,10111,10033,222300, void, D2SetObjectFlags, (Unit* ptObject, BYTE flags));
|
||||
//F8(STD, D2Common,10471,10471,10471,00000,00000,00000,00000,00000,00000, DWORD, D2Common10471, (void*));
|
||||
//F8(STD, D2Common,10472,10472,10472,00000,00000,00000,00000,00000,00000, DWORD, D2Common10472, (void*));
|
||||
//F8(STD, D2Common,10475,10475,10475,00000,00000,00000,00000,00000,00000, void, D2UpdateDisabledStat, (Stats* ptCharStats, Stats* ptStats, DWORD one));
|
||||
//F8(STD, D2Common,10481,10481,10481,00000,00000,00000,00000,00000,00000, void*, D2Common10481, (Unit* ptUnit, DWORD flags));
|
||||
//F8(STD, D2Common,10484,10484,10484,00000,00000,00000,00000,00000,00000, Stats*, D2GetAffixStats, (Unit* ptItem, DWORD, DWORD));
|
||||
//F8(STD, D2Common,10485,10485,10485,00000,00000,00000,00000,00000,00000, void, D2FreeStats, (Stats* ptStats));
|
||||
F8(STD, D2Common,10487,10487,10487,00000,00000,00000,00000,00000,00000, DWORD, D2isInState, (Unit* ptChar, DWORD isLODGame));
|
||||
//F8(STD, D2Common,10517,10517,10517,00000,00000,00000,00000,00000,00000, void, D2SetPlayerStat, (Unit* ptChar, DWORD statID, int amount, DWORD index));
|
||||
F8(STD, D2Common,10518,10518,10518,10109,10627,10762,10551,10645,2272B0, void, D2AddPlayerStat, (Unit* ptChar, DWORD statID, int amount, DWORD index));//ONLY 1.11b
|
||||
F8(STD, D2Common,10519,10519,10519,11092,10061,10658,10973,10550,225480, int, D2GetPlayerStat, (Unit* ptChar, DWORD statID, DWORD index));//ONLY 1.11b
|
||||
//F8(STD, D2Common,10520,10520,10520,00000,00000,00000,00000,00000,00000, int, D2GetPlayerStat20, (Unit* ptChar, DWORD statID, DWORD index));
|
||||
F8(STD, D2Common,10521,10521,10521,10733,10550,10494,10587,10216,2253B0, int, D2GetPlayerBaseStat, (Unit* ptChar, DWORD statID, DWORD index));//ONLY 1.11b
|
||||
//F8(STD, D2Common,10527,10527,10527,00000,00000,00000,00000,00000,00000, DWORD, D2Common10527, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10539,10539,10539,00000,00000,00000,00000,00000,00000, DWORD, D2haveDefenceBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10540,10540,10540,00000,00000,00000,00000,00000,00000, DWORD, D2haveFireResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10541,10541,10541,00000,00000,00000,00000,00000,00000, DWORD, D2haveColdResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10542,10542,10542,00000,00000,00000,00000,00000,00000, DWORD, D2haveLightResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10543,10543,10543,00000,00000,00000,00000,00000,00000, DWORD, D2havePoisonResBonus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10546,10546,10546,00000,00000,00000,00000,00000,00000, DWORD, D2haveDefenceMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10547,10547,10547,00000,00000,00000,00000,00000,00000, DWORD, D2haveFireResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10548,10548,10548,00000,00000,00000,00000,00000,00000, DWORD, D2haveColdResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10549,10549,10549,00000,00000,00000,00000,00000,00000, DWORD, D2haveLightResMalus, (Unit* ptChar));
|
||||
F8(STD, D2Common,10550,10550,10550,00000,00000,00000,00000,00000,00000, DWORD, D2havePoisonResMalus, (Unit* ptChar));
|
||||
//F8(STD, D2Common,10552,10552,10552,00000,00000,00000,00000,00000,00000, DWORD, D2Common10552, (Unit* ptUnit));
|
||||
//F8(STD, D2Common,10567,10567,10567,00000,00000,00000,00000,00000,00000, DWORD, D2CanBeBroken, (Unit* ptItem));
|
||||
//F8(STD, D2Common,10573,10573,10573,00000,00000,00000,00000,00000,00000, void, D2CopyStats, (Stats* ptDestStats, Stats* ptSrcStats));
|
||||
//F8(STD, D2Common,10574,10574,10574,00000,00000,00000,00000,00000,00000, void*, D2SetEnabledStat, (Unit* ptItem, DWORD statId, DWORD disabled));
|
||||
//F8(STD, D2Common,10575,10575,10575,00000,00000,00000,00000,00000,00000, void, D2FreeBinFiles, ());
|
||||
//F8(STD, D2Common,10576,10576,10576,00000,00000,00000,00000,00000,00000, void, D2LoadBinFiles, (DWORD zero1, DWORD zero2, bool));
|
||||
//F8(STD, D2Common,00000,00000,00000,10651,10651,00000,00000,00000,00000, DWORD, D2CheckQuestState, (void* ptQuest, DWORD index, DWORD value));
|
||||
F8(STD, D2Common,10578,10578,10578,10653,10496,10244,10849,10037,2122F0, void*, D2CompileTxtFile, (DWORD unused, const char* filename, BINField* ptFields, DWORD* ptRecordCount, DWORD recordLength));
|
||||
F8(STD, D2Common,10600,10600,10600,10573,10262,10887,10695,10994,2335F0, ItemsBIN*, D2GetItemsBIN, (DWORD itemID));
|
||||
//F8(STD, D2Common,10601,10601,10601,00000,00000,00000,00000,00000,00000, ItemsBIN*, D2GetByCodeItemStatsBIN, (DWORD code, DWORD* itemID));
|
||||
//F8(STD, D2Common,10604,10604,10604,00000,00000,00000,00000,00000,00000, AffixBIN*, D2GetAffixBIN, (int affixID));
|
||||
F8(STD, D2Common,10616,10616,10616,10500,10523,10774,10806,10619,2372C0, GemsBIN*, D2GetGemsBIN, (DWORD gemID));
|
||||
F8(STD, D2Common,11232,11232,11232,10746,10258,10913,10783,10393,26A1B0, CubeMainBIN*,D2GetCubeMainBIN, (DWORD cubemainID));
|
||||
F8(STD, D2Common,11233,11233,11233,10639,11135,10390,10675,10235,26A200, int, D2GetNbCubeMainBIN, ());
|
||||
//F8(STD, D2Common,10737,10737,10737,00000,00000,00000,00000,00000,00000, LevelsBIN*, D2GetLevelsBIN, (DWORD levelID));
|
||||
F8(STD, D2Common,10628,10628,10628,00000,00000,00000,00000,00000,00000, DWORD, D2GetNextLevelXP, (DWORD classID, DWORD level));
|
||||
F8(STD, D2Common,10629,10629,10629,00000,00000,00000,00000,00000,00000, DWORD, D2GetMaxLevel, (DWORD classID));
|
||||
F8(STD, D2Common,10655,10655,10655,10655,10309,10297,10218,10694,111D30, DifficultyLevelsBIN*, D2GetDifficultyLevelsBIN, (DWORD difficultyLevel));
|
||||
//F8(STD, D2Common,10659,10659,10659,00000,00000,00000,00000,00000,00000, TreasureClassBIN*, D2GetTreasureClassBIN, (WORD id, DWORD uk));
|
||||
//F8(STD, D2Common,10668,10668,10668,10450,10953,00000,00000,00000,00000, SuperUniqueBIN*, D2GetSuperUniqueBIN, (WORD id));
|
||||
F8(STD, D2Common,10695,10695,10695,10927,10899,10276,10106,10911,227E70, DWORD, D2GetItemQuality, (Unit* ptItem));
|
||||
F8(STD, D2Common,10707,10707,10707,10911,10303,10989,10202,10458,2280A0, DWORD, D2TestFlags, (Unit* ptUnit, DWORD flags, DWORD line, const char* file));
|
||||
//F8(STD, D2Common,10708,10708,10708,00000,00000,00000,00000,00000,00000, void, D2SetFlags, (Unit* ptUnit, DWORD flags, DWORD bitNewValue));
|
||||
//F8(STD, D2Common,10709,10709,10709,00000,00000,00000,00000,00000,00000, DWORD, D2GetFlags, (Unit* ptUnit));
|
||||
//F8(STD, D2Common,10711,10711,10711,00000,00000,00000,00000,00000,00000, void, D2ItemSetFlags, (Unit* ptItem, DWORD flags, DWORD toSet));// toSet = 0 for set to 0 the selected flags else set to 1
|
||||
F8(STD, D2Common,10717,10717,10717,10898,10100,10410,10086,10008,2281E0, DWORD, D2GetItemLevel, (Unit* ptItem));
|
||||
F8(STD, D2Common,10719,10719,10719,10820,10505,10370,10020,10810,228250, BYTE, D2ItemGetPage, (Unit* ptUnit));
|
||||
F8(STD, D2Common,10720,10720,10720,10485,10608,10223,10012,11026,228280, void, D2ItemSetPage, (Unit* ptItem, BYTE page));
|
||||
F8(STD, D2Common,10731,10731,10731,11017,10890,10231,10744,10601,229BB0, DWORD, D2CheckItemType, (Unit* ptItem, DWORD itype));
|
||||
F8(STD, D2Common,10732,10732,10732,10692,10685,10280,10620,10075,229DA0, int, D2GetUniqueID, (Unit* ptItem));
|
||||
F8(STD, D2Common,10734,10734,10734,00000,00000,00000,00000,00000,00000, void, D2SetAnim, (Unit* ptUnit, int anim));
|
||||
//F8(STD, D2Common,10749,10749,10749,00000,00000,00000,00000,00000,00000, void, D2GetWidthHeight, (Unit* ptItem, BYTE* Width, BYTE* Height);
|
||||
//F8(STD, D2Common,10751,10751,10751,00000,00000,00000,00000,00000,00000, DWORD, D2GetItemType, (Unit* ptUnit));
|
||||
//F8(STD, D2Common,10757,10757,10757,00000,00000,00000,00000,00000,00000, DWORD, D2GetItemLevelReq, (Unit* ptChar, Unit* ptItem));
|
||||
F8(STD, D2Common,10619,10619,10619,10687,10877,10321,11032,10981,239CB0, int*, D2GetNbRunesBIN, ());//return the point on th number
|
||||
F8(STD, D2Common,10620,10620,10620,10775,10296,10622,10006,10405,239D60, RunesBIN*, D2GetRunesBIN, (int runesID));
|
||||
//F8(STD, D2Common,10792,10792,10792,00000,00000,00000,00000,00000,00000, DWORD, D2CanBeRare, (Unit* ptItem));
|
||||
//F8(STD, D2Common,10810,10810,10810,00000,00000,00000,00000,00000,00000, BYTE, D2CheckHasInv, (Unit* ptItem));
|
||||
//F8(STD, D2Common,10813,10813,10813,00000,00000,00000,00000,00000,00000, DWORD, D2GetStaffMods, (Unit* ptItem));
|
||||
//F8(STD, D2Common,10816,10816,10816,10816,11085,00000,00000,00000,00000, DWORD, D2GetNbSocket, (Unit* ptItem));
|
||||
//F8(STD, D2Common,10840,10840,10840,00000,00000,00000,00000,00000,00000, DWORD, D2Common10840, (Unit* ptItem, Unit* ptChar));
|
||||
//F8(STD, D2Common,10855,10855,10855,00000,00000,00000,00000,00000,00000, void, D2AddAffix, (DWORD, DWORD, Unit* ptItem, AffixBIN* ptAffix, DWORD, DWORD));
|
||||
//F8(STD, D2Common,10872,10872,10872,00000,00000,00000,00000,00000,00000, DWORD, D2WarpPlayer, (Path* ptPath, Unit* ptChar, Room* ptRoom, DWORD x, DWORD y));
|
||||
//F8(STD, D2Common,10875,10875,10875,00000,00000,00000,00000,00000,00000, WORD, D2GetItemVersion, (Unit* ptItem));
|
||||
//F8(STD, D2Common,11163,11163,11163,10880,11068,10436,11107,10963,23BCC0, DWORD, D2isEtheral, (Unit* ptItem));//ONLY UNTIL 1.10
|
||||
F8(STD, D2Common,10881,10881,10881,10956,11156,10218,10987,10665,2313E0, DWORD, D2SaveItem, (Unit* ptItem, saveBitField* data, DWORD startSize, DWORD p4, DWORD p5, DWORD p6));
|
||||
//F8(STD, D2Common,10916,10916,10916,00000,00000,00000,00000,00000,00000, void, DoNothing916, ());
|
||||
//F8(STD, D2Common,10940,10940,10940,10027,10105,10953,00000,00000,00000, void, D2Common10027, (Unit* ptChar, DWORD skillID));
|
||||
//F8(STD, D2Common,10950,10950,10950,00000,00000,00000,00000,00000,00000, SkillData*, D2GetSkillPointer, (Unit* ptChar, WORD SkillID));
|
||||
//F8(STD, D2Common,10952,10952,10952,10950,10256,10858,00000,00000,00000, SkillData*, D2IncSkillBaseLevel, (Unit* ptChar, DWORD skillID));
|
||||
F8(STD, D2Common,10953,10953,10953,10099,10255,10210,10302,10335,247280, void, D2SetSkillBaseLevel,(Unit* ptChar, DWORD skillID, DWORD slvl, DWORD bRemove, char*, DWORD));
|
||||
//F8(STD, D2Common,10963,10963,10963,00000,00000,00000,00000,00000,00000, DWORD, D2GetSkillID, (SkillData* ptSkill, const char* file, DWORD line));
|
||||
//F8(FAST, D2Common,10966,10966,10966,00000,00000,00000,00000,00000,00000, SkillsBIN*, D2GetSkillsBIN, (SkillData* ptSkill));
|
||||
F8(STD, D2Common,10968,10968,10968,10700,10109,10904,10306,10007,2442A0, DWORD, D2GetSkillLevel, (Unit* ptChar, SkillData* ptSkill, DWORD includingBonus));
|
||||
//F8(STD, D2Common,11023,11023,11023,00000,00000,00000,00000,00000,00000, DWORD, D2GetCriticalStrikeFromMasteries, (Unit* ptChar, Unit* ptItem, DWORD zero, DWORD two));
|
||||
//F8(STD, D2Common,11007,11007,11007,00000,00000,00000,00000,00000,00000, bool, D2TestQuestState, (void* ptQuest, DWORD QuestID, DWORD QuestState));
|
||||
//F8(STD, D2Common,11041,11041,11041,00000,00000,00000,00000,00000,00000, int, D2GetPlayerSkillID, (DWORD playerID, DWORD skillNumber));
|
||||
//F8(STD, D2Common,11042,11042,11042,00000,00000,00000,00000,00000,00000, int, D2GetNbSkillsPerPlayer, (DWORD playerID));
|
||||
//F8(STD, D2Common,11269,11269,11269,00000,00000,00000,00000,00000,00000, DWORD, D2GetAllIndexFromStat, (Stats* ptStats, DWORD statID, D2Stat* allIndex, DWORD maxIndex));
|
||||
//F8(STD, D2Common,11270,11270,11270,00000,00000,00000,00000,00000,00000, DWORD, D2GetAllIndexFromStatID, (Unit* ptItem, DWORD statID, D2Stat* allIndex, DWORD));
|
||||
F8(STD, D2Common,11276,11276,11276,10254,10074,10111,10435,11081,246CA0, DWORD, D2GetSkillCost, (Unit* ptChar, int skpoints, DWORD skillID, DWORD curSkillLevel));//not 10447
|
||||
A8(FAST, D2Common,00000,00000,82C80, 15D0, 1800, 1220, 12D0, 17B0, 833E0, CharStatsBIN*, D2GetCharStatsBIN, (DWORD charID));
|
||||
A8(FAST, D2Common,00000,00000,12410,5D7D0,1A100,116C0,1C020,5B0E0,268600, DWORD, D2CompileCubeInput, (CubeInput* cubeinput, char* s, DWORD p1, DWORD p2));
|
||||
//A8(FAST, D2Common,00000,00000,12910,5D210,19B40,11100,1BA60,5AB20,268A90, DWORD, D2CompileCubeOutput, (CubeOutput* cubeoutput, char* s, DWORD p1, DWORD p2));
|
||||
A8(FAST, D2Common,00000,00000,2B1A0, 11F0, 1380, 1140, 1300, 1160,155C90, ItemTypesBIN*, D2GetItemTypesBIN, (DWORD itemTypesId));
|
||||
//A8(FAST, D2Common,00000,00000,62FD0,00000,00000,00000,00000,00000,00000, void, D2EncodeValueCheckMax, (saveBitField* data, DWORD value, DWORD bitSize));
|
||||
A8(FAST, D2Common,00000,00000,642B0, 13F0, 12F0, 1540, 17A0, 17E0,5C4F0, ItemStatCostBIN*,D2GetItemStatCostBIN, (DWORD id));
|
||||
//A8(FAST, D2Common,00000,00000,764A0,00000,00000,00000,00000,00000,00000, void*, D2Common764A0, (Stats* ptStats, DWORD stat, ItemStatCostBIN* itemStatCost ,DWORD));
|
||||
//A8(STD, D2Common,00000,00000,76E30,00000,00000,00000,00000,00000,00000, void, D2PreUpdateDisabledStat, (Stats* ptStats));
|
||||
//A8(FAST, D2Common,00000,00000,76C10,00000,00000,00000,00000,00000,00000, void, D2ApplyStat,(Stats* ptCharStats, DWORD statId, DWORD value, Unit* ptItem));
|
||||
A8(FAST, D2Common,738A4,739B4,84268, 96E0, 98D0, 9900, 9900, B5E0,117079, void*, D2ReadFile,(DWORD mempool, char* filename, DWORD* size, const char*, DWORD));
|
||||
//A8(FAST, D2Common,00000,00000, 94D0,00000,00000,00000,00000,00000,00000, void*, D2GetStringIDForTxtFile,(const char * string));
|
||||
A8(STD, D2Common,1F500,1F510,29FA0,71EB0,32AA0,7D2A0,59870,80C40,2552E0, void, D2LoadSuperuniques,(DWORD mempool));//FASCALL UNTIL 1.10
|
||||
A8(STD, D2Common,00000,00000,00000,00000,00000,00000,81EA0,00000,00000, InventoryBIN*, D2GetInventoryBIN, ());
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//D2Client : 6FAA0000
|
||||
@@ -310,26 +309,29 @@ A8(STD, D2Common,1F500,1F510,29FA0,71EB0,32AA0,7D2A0,59870,80C40, 2552E0, void,
|
||||
//E2F(D2Client,5BA90, void, D2ReloadGambleScreen, ());//1.11b
|
||||
//E2F(D2Client,1FEB0, void, D2OpenNPCMenu, (Unit* ptNPC));//1.11b by ESI
|
||||
|
||||
A8(FAST, D2Client, 1000, 1000, 1000,75D00,A9070,BEF70,2B420,A9480, 788B0, void*, D2LoadImage, (const char* filename, DWORD filetype));
|
||||
A8(FAST, D2Client, 1150, 1150, 1140,00000,00000,00000,00000,00000, 00000, void, D2FreeImage, (void* image));//6FAA1140
|
||||
A8(FAST, D2Client, D640, D630, DB50,73620,5E4E0,79670,147A0,B6890, 787B0, void, D2SendMsgToAll,(BYTE* data));//1.11 and 1.11b by ESI !!
|
||||
//A7(STD, D2Client,00000,00000,15A80,00000,00000,00000,00000,00000, int, D2GetAvgChanceMonsterWillHitYou, ());//6FAB5A80
|
||||
A8(STD, D2Client,00000,00000,15A80,00000,00000,00000,00000,00000, 00000, DWORD, D2GetLastMonsterIDFight, ());//6FAB5A80
|
||||
A8(STD, D2Client,29800,297F0,2FD60,828A0,89320,6B280,BCEA0,BF640, A7D00, void, D2PrintStatsPage, ());
|
||||
//A7(FAST, D2Client,00000,00000,45990,00000,00000,00000,00000,00000, Unit*, D245990, (Inventory*,DWORD idItem);//6FAE5990
|
||||
A8(FAST, D2Client,4BB20,4BB20,521C0,B8CB0,21250,88EA0,54E10,2CE40, E4D80, DWORD, D2PrintStat,(Unit* ptItem, Stats* ptStats, DWORD statID, DWORD statIndex, DWORD statValue, LPWSTR lpText));//statID=EAX, lpText=ESI 1.11b
|
||||
A8(FAST, D2Client,85A60,84DE0,80430,9EEB0,62070,8B7A0,BF5F0,18820, 521C0, LPWSTR, D2SetColorPopup, (LPWSTR popupText, DWORD color));//1.11 and 1.11b BY EDI
|
||||
//A7(FAST, D2Client,00000,00000,869F0,00000,00000,00000,00000,00000, Unit*, D2ClientGetObject, (DWORD itemNum, DWORD type));//6FB269F0
|
||||
A8(FAST, D2Client,B4360,B36E0,B5820,3ACC0,54210,31FA0,88A70,26270, B9A00, DWORD, D2PlaySound, (DWORD id, DWORD, DWORD, DWORD, DWORD));
|
||||
//A7(FAST, D2Client,B9970,B8CF0,BB0F0,00000,00000,00000,00000,00000, void, D2FillRect,(DWORD x, DWORD y, DWORD Width, DWORD Height, DWORD color, DWORD transTbl));
|
||||
A8(FAST, D2Client,00000,00000,00000,00000,571C0,18450,46150,790D0, 790D0, Unit*, D2GetCurrentNPC, ());
|
||||
A8(FAST, D2Client,00000,00000,00000,73260,5DE40,791A0,143E0,B61F0, 78350, void, D2SendToServerXX,(DWORD size, BYTE * data));//by EBX
|
||||
A8(FAST, D2Client,88940,87CC0,83260,A1F30,65690,8EF00,C2790,1C190, 55F20, void, D2TogglePage, (DWORD a, DWORD b, DWORD c));
|
||||
A8(FAST, D2Client,00000,00000,00000,A6520,710C0,A6640,8CD00,90C10, 89980, void, D2ClickOnStashButton, (DWORD x, DWORD y));//BY x=ESI y=EDI
|
||||
A8(STD, D2Client,897B0,88B30,84110,9E3B0,621C0,8B8F0,BEAF0,18AA0, 54600, void*, D2LoadBuySelBtn, ());
|
||||
A8(FAST, D2Client,00000,00000,00000,8E480,5BA90,1CC00,4ABE0,7DC60, 7DC60, void, D2ReloadGambleScreen, ());
|
||||
//A7(FAST, D2Client,00000,00000,00000,00000,1FEB0,5CDD0,00000,00000, void, D2OpenNPCMenu, (Unit* ptNPC));//by ESI
|
||||
|
||||
A8(FAST, D2Client, 1000, 1000, 1000,75D00,A9070,BEF70,2B420,A9480,788B0, void*, D2LoadImage, (const char* filename, DWORD filetype));
|
||||
A8(FAST, D2Client, 1150, 1150, 1140,00000,00000,00000,00000,00000,78A00, void, D2FreeImage, (void* image));//6FAA1140
|
||||
A8(FAST, D2Client, D640, D630, DB50,73620,5E4E0,79670,147A0,B6890,787B0, void, D2SendMsgToAll,(BYTE* data));//1.11 and 1.11b by ESI !!
|
||||
//A8(STD, D2Client,00000,00000,15A80,00000,00000,00000,00000,00000,00000, int, D2GetAvgChanceMonsterWillHitYou, ());//6FAB5A80
|
||||
A8(STD, D2Client,00000,00000,15A80,00000,00000,00000,00000,00000,00000, DWORD, D2GetLastMonsterIDFight, ());//6FAB5A80
|
||||
A8(STD, D2Client,29800,297F0,2FD60,828A0,89320,6B280,BCEA0,BF640,A7D00, void, D2PrintStatsPage, ());
|
||||
//A8(FAST, D2Client,00000,00000,45990,00000,00000,00000,00000,00000,00000, Unit*, D245990, (Inventory*,DWORD idItem);//6FAE5990
|
||||
A8(FAST, D2Client,4BB20,4BB20,521C0,B8CB0,21250,88EA0,54E10,2CE40,E4D80, DWORD, D2PrintStat,(Unit* ptItem, Stats* ptStats, DWORD statID, DWORD statIndex, DWORD statValue, LPWSTR lpText));//statID=EAX, lpText=ESI 1.11b
|
||||
A8(FAST, D2Client,85A60,84DE0,80430,9EEB0,62070,8B7A0,BF5F0,18820,521C0, LPWSTR, D2SetColorPopup, (LPWSTR popupText, DWORD color));//1.11 and 1.11b BY EDI
|
||||
//A8(FAST, D2Client,00000,00000,869F0,00000,00000,00000,00000,00000,00000, Unit*, D2ClientGetObject, (DWORD itemNum, DWORD type));//6FB269F0
|
||||
A8(FAST, D2Client,B4360,B36E0,B5820,3ACC0,54210,31FA0,88A70,26270,B9A00, DWORD, D2PlaySound, (DWORD id, DWORD, DWORD, DWORD, DWORD));
|
||||
//A8(FAST, D2Client,B9970,B8CF0,BB0F0,00000,00000,00000,00000,00000,00000, void, D2FillRect,(DWORD x, DWORD y, DWORD Width, DWORD Height, DWORD color, DWORD transTbl));
|
||||
//A8(FAST, D2Client,00000,00000,00000,00000,571C0,18450,46150,790D0,00000, Unit*, D2GetCurrentNPC, ());
|
||||
A8(FAST, D2Client,00000,00000,00000,73260,5DE40,791A0,143E0,B61F0,78350, void, D2SendToServerXX,(DWORD size, BYTE * data));//by EBX
|
||||
A8(FAST, D2Client,88940,87CC0,83260,A1F30,65690,8EF00,C2790,1C190,55F20, void, D2TogglePage, (DWORD a, DWORD b, DWORD c));
|
||||
A8(FAST, D2Client,00000,00000,00000,A6520,710C0,A6640,8CD00,90C10,89980, void, D2ClickOnStashButton, (DWORD x, DWORD y));//BY x=ESI y=EDI
|
||||
A8(STD, D2Client,897B0,88B30,84110,9E3B0,621C0,8B8F0,BEAF0,18AA0,54600, void*, D2LoadBuySelBtn, ());
|
||||
//A8(FAST, D2Client,00000,00000,00000,8E480,5BA90,1CC00,4ABE0,7DC60,00000, void, D2ReloadGambleScreen, ());
|
||||
//A8(FAST, D2Client,00000,00000,00000,00000,1FEB0,5CDD0,00000,00000,00000, void, D2OpenNPCMenu, (Unit* ptNPC));//by ESI
|
||||
A8(FAST, D2Client,00000,00000,00000,00000,00000,00000,00000,00000,520C0, void*, D2LoadResImage, (const char* filename));
|
||||
A8(FAST, D2Client,00000,00000,00000,00000,00000,00000,00000,00000,96990, void*, D2FreeResImages, ());
|
||||
A8(FAST, D2Client,00000,00000,00000,00000,00000,00000,00000,00000,5C850, void*, D2ReceivePacket, (DWORD a , DWORD b));
|
||||
A8(STD, D2Client,87220,865A0,81B70,A35F0,669F0,90150,C39E0,1D3E0,56EE0, DWORD, D2PrintInterface, (void* unknown));
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//D2Game : 6FC30000
|
||||
@@ -351,7 +353,7 @@ A8(FAST, D2Client,00000,00000,00000,8E480,5BA90,1CC00,4ABE0,7DC60, 7DC60, void,
|
||||
////E2F(D2Game,22C00, WORD, D2GetNewAffix, (Unit* ptItem, DWORD testIfSpawnable, DWORD mustSelectOne, DWORD addToItem, DWORD isPrefix, int affixID, WORD autoAffixGroupID));//6FC52C00
|
||||
////E2F(D2Game,23610, WORD, D2GetRareAffixName, (Unit* ptItem, DWORD wantPrefix));//6FC53610
|
||||
////E2F(D2Game,3AD10, DWORD, D2GetSuperUniqueMonsterID, (Game* ptGame, Unit* ptMonster));//6FC6AD10
|
||||
//E2F(D2Game,EC7E0, DWORD, D2SpawnMonster, (Game* ptGame, Room* ptRoom, DWORD zero1, DWORD x, DWORD y, DWORD minusOne, DWORD superuniqueID, DWORD zero2));//1.11b (wrong param)
|
||||
//E2F(D2Game,EC7E0, DWORD, D2SpawnSuperUnique, (Game* ptGame, Room* ptRoom, DWORD zero1, DWORD x, DWORD y, DWORD minusOne, DWORD superuniqueID, DWORD zero2));//1.11b (wrong param)
|
||||
//E2S(D2Game,235C0, void, D2Game235C0, (Game* ptGame, Room* ptRoom));//1.11/1.11b
|
||||
//E2F(D2Game,4C7B0, Unit*, D2GetSkillItem, (Unit* ptChar));//6FC7C7B0
|
||||
////E2F(D2Game,5A500, DWORD, D2SavePlayer, (Game* ptGame, Unit* ptChar, char* playername, DWORD zero));//6FC8A500
|
||||
@@ -362,53 +364,57 @@ A8(FAST, D2Client,00000,00000,00000,8E480,5BA90,1CC00,4ABE0,7DC60, 7DC60, void,
|
||||
//E2F(D2Game,C09E0, Unit*, D2CreateUnit, (DWORD type, DWORD id, DWORD x, DWORD y, Game* ptGame, Room* ptRoom, DWORD uk1, DWORD uk2, DWORD uk3));//1.11b
|
||||
//E2F(D2Game,34920, void, D2OpenPandPortal, (Game* ptGame, Unit* ptChar));//1.11b
|
||||
//E2F(D2Game,34910, void, D2OpenPandFinalPortal, (Game* ptGame, Unit* ptChar));//1.11b
|
||||
//E2F(D2Game,85AA0, void, D2MephIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,D7BD0, void, D2DiabloIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,2BC80, void, D2BaalIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,D2D70, void, D2UberMephIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,7FE60, void, D2UberDiabloIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,2A300, void, D2UberBaalIA, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,85AA0, void, D2MephAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,D7BD0, void, D2DiabloAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,2BC80, void, D2BaalAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,D2D70, void, D2UberMephAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,7FE60, void, D2UberDiabloAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
//E2F(D2Game,2A300, void, D2UberBaalAI, (Game* ptGame, Unit* ptMonster, DWORD*));//1.11b
|
||||
////E2F(D2Game,92420, void, D2ReloadGambleScreenGame, (Unit* ptNPC, Game* ptGame, Unit* ptChar, DWORD, DWORD one));//1.11b
|
||||
//E2S(D2Game,E66D0, void, D2SaveGame, (Game* ptGame));//1.11b
|
||||
|
||||
|
||||
F8(FAST, D2Game,10059,10059,10059,10039,10007,10037,10049,10002, 135780, void, D2SetNbPlayers, (DWORD nbPlayers));
|
||||
//A7(FAST, D2Game,00000,00000,01DE0,00000,00000,00000,00000,00000, void*, D2GetClientByClientID, (Game* ptGame, DWORD clientID));//6FC31DE0
|
||||
A8(FAST, D2Game,00000,00000, 6C60,E3DA0,E8210,EB060,49930,E5070, 12C550, void, D2AddClient, (DWORD clientID));//BY EAX
|
||||
A8(STD, D2Game,00000,00000, 94E0,E0520,E49A0,A6360,2AAE0,BC700, /*12E860*/12FEE0, Game*, D2GetGameByClientID, (DWORD clientID));//6FC394E0
|
||||
A8(FAST, D2Game,00000,00000, B0E0,DF250,E36D0,A5080,29820,BB510, 12DED0, void, D2BroadcastFunction, (Game* ptGame, void* fct, void* param));//00DAB0E0
|
||||
A8(FAST, D2Game, C380, C650, C710,41420,A0D50,7D220,8A3E0,DB780, 13B280, DWORD, D2SendPacket, (void* ptNetClient, LPVOID pData, DWORD size));//EAX=ptNetClient [ESP]=pData
|
||||
A8(FAST, D2Game, D650, D920, DB50,44D00,A3F20,802E0,8D5F0,DD4F0, 13C4A0, void, D2SetSkillBaseLevelOnClient, (void* ptClient, Unit* ptChar, DWORD skillID, DWORD sLvl, DWORD bRemove));//by EAX,ESI,EBX
|
||||
//A7(FAST, D2Game,00000,00000,0E6F0,00000,00000,00000,00000,00000, void, D2UpdateClientItem, (NetClient* ptNetClient, Unit* ptChar, Unit* ptItem,DWORD,DWORD,DWORD));//6FC3E6F0
|
||||
//A7(FAST, D2Game,00000,00000,10FB0,00000,00000,00000,00000,00000, DWORD, D2UpdateInventory, (Game* ptGame, Unit* ptChar, void* ptNetClient, Inventory* pInventory));//6FC40FB0
|
||||
//A7(FAST, D2Game,00000,00000,110E0,00000,00000,00000,00000,00000, DWORD, D2UpdateItem, (Unit* ptChar, Unit* ptItem, Unit* ptSocketedItem, void* ptNetClient));//6FC410E0
|
||||
A8(STD, D2Game,00000,00000,00000,27230,109F0,AE930,A22E0,15F40, 16CF40, DWORD, D2LinkPortal, (Game* ptGame, Unit* ptObject, DWORD levelEndID, DWORD levelStartID));
|
||||
A8(FAST, D2Game,00000,00000,128F0,38D90,43E60,11FF0,D2070,B2F70, 15CA40, DWORD, D2VerifIfNotCarry1, (Unit* ptItem, ItemsBIN* itemsData, Unit* ptFirstItem));// BY EBX=itemsData EAX=ptFirstItem [ESP]=ptItem
|
||||
//A7(FAST, D2Game,00000,00000,1ED80,00000,00000,00000,00000,00000, Unit*, D2CreateItem, (Game* ptGame, ItemGenerationData* itemGenerationData, DWORD));//6FC4ED80
|
||||
A8(FAST, D2Game,00000,00000,22070, 1090, 1DF0, 11F0, 1280, 1340, 63740, Room*, D2TestPositionInRoom, (Room* ptRoom, DWORD x, DWORD y));
|
||||
//A7(FAST, D2Game,00000,00000,22410,00000,00000,00000,00000,00000, void, D2AddStaffModAffixes, (Unit* ptItem, ItemGenerationData* itemParam));//6FC52410
|
||||
//A7(FAST, D2Game,00000,00000,22C00,00000,00000,00000,00000,00000, WORD, D2GetNewAffix, (Unit* ptItem, DWORD testIfSpawnable, DWORD mustSelectOne, DWORD addToItem, DWORD isPrefix, int affixID, WORD autoAffixGroupID));//6FC52C00
|
||||
//A7(FAST, D2Game,00000,00000,23610,00000,00000,00000,00000,00000, WORD, D2GetRareAffixName, (Unit* ptItem, DWORD wantPrefix));//6FC53610
|
||||
//A7(FAST, D2Game,00000,00000,3AD10,00000,00000,00000,00000,00000, DWORD, D2GetSuperUniqueMonsterID, (Game* ptGame, Unit* ptMonster));//6FC6AD10
|
||||
A8(FAST, D2Game,00000,00000,3F220,4ABE0,EC7E0,40B90,24950,CDE20, 1A09E0, DWORD, D2SpawnMonster, (Game* ptGame, Room* ptRoom, DWORD zero1, DWORD x, DWORD y, DWORD minusOne, DWORD superuniqueID, DWORD zero2));//wrong param
|
||||
A8(STD, D2Game,00000,00000,00000,D6D10,235C0, D410,200E0,59980, 142B40, void, D2Game235C0, (Game* ptGame, Room* ptRoom));
|
||||
//A7(FAST, D2Game,00000,00000,4C7B0,00000,00000,00000,00000,00000, Unit*, D2GetSkillItem, (Unit* ptChar));//6FC7C7B0
|
||||
//A7(FAST, D2Game,00000,00000,5A500,00000,00000,00000,00000,00000, DWORD, D2SavePlayer, (Game* ptGame, Unit* ptChar, char* playername, DWORD zero));//6FC8A500
|
||||
A8(FAST, D2Game,4F100,4F500,5B8A0,B9D70,25D50,44950,54810,3A4C0, 1335E0, DWORD, D2LoadInventory, (Game* ptGame, Unit* pChar, saveBitField* pdata, DWORD p2, DWORD maxSize, DWORD p4, DWORD *ptNbBytesRead));//6FC8B8A0
|
||||
A8(FAST, D2Game,7BAE0,7BFD0,8BB00,97620,BEF80,93650,E03A0,6DC40, 152F60, Unit*, D2GameGetObject, (Game* ptGame, DWORD type, DWORD itemNum));//6FCBBB00
|
||||
//A7(FAST, D2Game,00000,00000,9F320,501C0,F1C50,F1A50,F3220,00000, Unit*, D2GetOwnerMonster, (Unit* ptMonster));
|
||||
//A7(FAST, D2Game,00000,00000,E08D0,00000,00000,00000,00000,00000, void, D2UpdateSkillDataAfterUnassignment, (Game* ptGame, Unit* ptChar, DWORD skillID));//6FD108D0
|
||||
A8(FAST, D2Game,00000,00000,00000,99760,C09E0,94E70,E1D90,6FE10, 155230, Unit*, D2CreateUnit, (DWORD type, DWORD id, DWORD x, DWORD y, Game* ptGame, Room* ptRoom, DWORD uk1, DWORD uk2, DWORD uk3));
|
||||
A8(FAST, D2Game,00000,00000,00000,9B480,34920,D1AA0,70180,941E0, 194270, void, D2OpenPandPortal, (Game* ptGame, Unit* ptChar));
|
||||
A8(FAST, D2Game,00000,00000,00000,9B470,34910,D1A90,70170,941D0, 194280, void, D2OpenPandFinalPortal, (Game* ptGame, Unit* ptChar));
|
||||
A8(FAST, D2Game,00000,00000,00000,84730,85AA0,DBE90,A9610,31920, 1E9170, void, D2MephIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
A8(FAST, D2Game,00000,00000,00000,75980,D7BD0,CD0F0,85B60,4EAD0, 1F78B0, void, D2DiabloIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
A8(FAST, D2Game,00000,00000,00000,EAB20,2BC80,B3B90,B8610,C8850, 1FCFE0, void, D2BaalIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
A8(FAST, D2Game,00000,00000,00000,70320,D2D70,C2A90,7B4E0,49480, 1F81C0, void, D2UberMephIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
A8(FAST, D2Game,00000,00000,00000,7F200,7FE60,D6250,A39D0,2C3F0, 1E9DF0, void, D2UberDiabloIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
A8(FAST, D2Game,00000,00000,00000,E92B0,2A300,B2210,B6C80,C6EC0, 1FD200, void, D2UberBaalIA, (Game* ptGame, Unit* ptMonster, DWORD*));
|
||||
//A7(FAST, D2Game,00000,00000,00000,00000,92420,00000,00000,00000, void, D2ReloadGambleScreenGame, (Unit* ptNPC, Game* ptGame, Unit* ptChar, DWORD, DWORD one));
|
||||
A8(STD, D2Game,00000,00000, 89C0,E2390,E66D0,A8090,2C830,BE660, 12CA10, void, D2SaveGame, (Game* ptGame) );
|
||||
F8(FAST, D2Game,10059,10059,10059,10039,10007,10037,10049,10002,135780, void, D2SetNbPlayers, (DWORD nbPlayers));
|
||||
//A8(FAST, D2Game,00000,00000,01DE0,00000,00000,00000,00000,00000,00000, void*, D2GetClientByClientID, (Game* ptGame, DWORD clientID));//6FC31DE0
|
||||
A8(FAST, D2Game,00000,00000, 6C60,E3DA0,E8210,EB060,49930,E5070,12C550, void, D2AddClient, (DWORD clientID));//BY EAX
|
||||
A8(STD, D2Game,00000,00000, 94E0,E0520,E49A0,A6360,2AAE0,BC700,12E860, Game*, D2GetGameByClientID, (DWORD clientID));//6FC394E0
|
||||
A8(FAST, D2Game,00000,00000, B0E0,DF250,E36D0,A5080,29820,BB510,12DED0, void, D2BroadcastFunction, (Game* ptGame, void* fct, void* param));//00DAB0E0
|
||||
A8(FAST, D2Game, C380, C650, C710,41420,A0D50,7D220,8A3E0,DB780,13B280, DWORD, D2SendPacket, (void* ptNetClient, LPVOID pData, DWORD size));//EAX=ptNetClient [ESP]=pData
|
||||
A8(FAST, D2Game, D650, D920, DB50,44D00,A3F20,802E0,8D5F0,DD4F0,13C4A0, void, D2SetSkillBaseLevelOnClient, (void* ptClient, Unit* ptChar, DWORD skillID, DWORD sLvl, DWORD bRemove));//by EAX,ESI,EBX
|
||||
//A8(FAST, D2Game,00000,00000,0E6F0,00000,00000,00000,00000,00000,00000, void, D2UpdateClientItem, (NetClient* ptNetClient, Unit* ptChar, Unit* ptItem,DWORD,DWORD,DWORD));//6FC3E6F0
|
||||
//A8(FAST, D2Game,00000,00000,10FB0,00000,00000,00000,00000,00000,00000, DWORD, D2UpdateInventory, (Game* ptGame, Unit* ptChar, void* ptNetClient, Inventory* pInventory));//6FC40FB0
|
||||
//A8(FAST, D2Game,00000,00000,110E0,00000,00000,00000,00000,00000,00000, DWORD, D2UpdateItem, (Unit* ptChar, Unit* ptItem, Unit* ptSocketedItem, void* ptNetClient));//6FC410E0
|
||||
A8(STD, D2Game,00000,00000,00000,27230,109F0,AE930,A22E0,15F40,16CF40, DWORD, D2LinkPortal, (Game* ptGame, Unit* ptObject, DWORD levelEndID, DWORD levelStartID));
|
||||
A8(FAST, D2Game,00000,00000,128F0,38D90,43E60,11FF0,D2070,B2F70,15CA40, DWORD, D2VerifIfNotCarry1, (Unit* ptItem, ItemsBIN* itemsData, Unit* ptFirstItem));// BY EBX=itemsData EAX=ptFirstItem [ESP]=ptItem
|
||||
//A8(FAST, D2Game,00000,00000,1ED80,00000,00000,00000,00000,00000,00000, Unit*, D2CreateItem, (Game* ptGame, ItemGenerationData* itemGenerationData, DWORD));//6FC4ED80
|
||||
A8(FAST, D2Game,00000,00000,22070, 1090, 1DF0, 11F0, 1280, 1340,63740, Room*, D2TestPositionInRoom, (Room* ptRoom, DWORD x, DWORD y));
|
||||
//A8(FAST, D2Game,00000,00000,22410,00000,00000,00000,00000,00000,00000, void, D2AddStaffModAffixes, (Unit* ptItem, ItemGenerationData* itemParam));//6FC52410
|
||||
//A8(FAST, D2Game,00000,00000,22C00,00000,00000,00000,00000,00000,00000, WORD, D2GetNewAffix, (Unit* ptItem, DWORD testIfSpawnable, DWORD mustSelectOne, DWORD addToItem, DWORD isPrefix, int affixID, WORD autoAffixGroupID));//6FC52C00
|
||||
//A8(FAST, D2Game,00000,00000,23610,00000,00000,00000,00000,00000,00000, WORD, D2GetRareAffixName, (Unit* ptItem, DWORD wantPrefix));//6FC53610
|
||||
//A8(FAST, D2Game,00000,00000,3AD10,00000,00000,00000,00000,00000,00000, DWORD, D2GetSuperUniqueMonsterID, (Game* ptGame, Unit* ptMonster));//6FC6AD10
|
||||
A8(FAST, D2Game,00000,00000,3F220,4ABE0,EC7E0,40B90,24950,CDE20,1A09E0, DWORD, D2SpawnSuperUnique, (Game* ptGame, Room* ptRoom, DWORD zero1, DWORD x, DWORD y, DWORD minusOne, DWORD superuniqueID, DWORD zero2));//wrong param
|
||||
A8(FAST, D2Game,00000,00000,00000,C80F0,EF870,EFB10,EF650,C8D70,1B2F20, Unit*, D2SpawnMonster, (DWORD id, DWORD mode, Game* ptGame, Room* ptRoom, DWORD x, DWORD y, DWORD one, DWORD zero));
|
||||
A8(STD, D2Game,00000,00000,00000,D6D10,235C0, D410,200E0,59980,142B40, void, D2Game235C0, (Game* ptGame, Room* ptRoom));
|
||||
//A8(FAST, D2Game,00000,00000,4C7B0,00000,00000,00000,00000,00000,00000, Unit*, D2GetSkillItem, (Unit* ptChar));//6FC7C7B0
|
||||
//A8(FAST, D2Game,00000,00000,5A500,00000,00000,00000,00000,00000,00000, DWORD, D2SavePlayer, (Game* ptGame, Unit* ptChar, char* playername, DWORD zero));//6FC8A500
|
||||
A8(FAST, D2Game,4F100,4F500,5B8A0,B9D70,25D50,44950,54810,3A4C0,1335E0, DWORD, D2LoadInventory, (Game* ptGame, Unit* pChar, saveBitField* pdata, DWORD p2, DWORD maxSize, DWORD p4, DWORD *ptNbBytesRead));//6FC8B8A0
|
||||
A8(FAST, D2Game,7BAE0,7BFD0,8BB00,97620,BEF80,93650,E03A0,6DC40,152F60, Unit*, D2GameGetObject, (Game* ptGame, DWORD type, DWORD itemNum));//6FCBBB00
|
||||
//A8(FAST, D2Game,00000,00000,9F320,501C0,F1C50,F1A50,F3220,00000,00000, Unit*, D2GetOwnerMonster, (Unit* ptMonster));
|
||||
//A8(FAST, D2Game,00000,00000,E08D0,00000,00000,00000,00000,00000,00000, void, D2UpdateSkillDataAfterUnassignment, (Game* ptGame, Unit* ptChar, DWORD skillID));//6FD108D0
|
||||
A8(FAST, D2Game,00000,00000,00000,99760,C09E0,94E70,E1D90,6FE10,155230, Unit*, D2CreateUnit, (DWORD type, DWORD id, DWORD x, DWORD y, Game* ptGame, Room* ptRoom, DWORD uk1, DWORD uk2, DWORD uk3));
|
||||
A8(FAST, D2Game,00000,00000,00000,9B480,34920,D1AA0,70180,941E0,165A90, void, D2OpenPandPortal, (Game* ptGame, Unit* ptChar));
|
||||
A8(FAST, D2Game,00000,00000,00000,9B470,34910,D1A90,70170,941D0,165AA0, void, D2OpenPandFinalPortal, (Game* ptGame, Unit* ptChar));
|
||||
A8(FAST, D2Game,00000,00000,00000,75980,D7BD0,CD0F0,85B60,4EAD0,1F78B0, void, D2MephAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
A8(FAST, D2Game,00000,00000,00000,84730,85AA0,DBE90,A9610,31920,1E9170, void, D2DiabloAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
A8(FAST, D2Game,00000,00000,00000,EAB20,2BC80,B3B90,B8610,C8850,1FCFE0, void, D2BaalAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
A8(FAST, D2Game,00000,00000,00000,E92B0,2A300,B2210,B6C80,C6EC0,1FD200, void, D2UberBaalAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
A8(FAST, D2Game,00000,00000,00000,70320,D2D70,C2A90,7B4E0,49480,1F81C0, void, D2UberMephAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
A8(FAST, D2Game,00000,00000,00000,7F200,7FE60,D6250,A39D0,2C3F0,1E9DF0, void, D2UberDiabloAI, (Game* ptGame, Unit* ptMonster, AIParam* args));
|
||||
//A8(FAST, D2Game,00000,00000,00000,00000,92420,00000,00000,00000,179430, void, D2ReloadGambleScreenGame, (Unit* ptNPC, Game* ptGame, Unit* ptChar, DWORD, DWORD one));
|
||||
A8(STD, D2Game,00000,00000, 89C0,E2390,E66D0,A8090,2C830,BE660,12CA10, void, D2SaveGame, (Game* ptGame) );
|
||||
A8(FAST, D2Game,00000,00000,00000,EF580,F0F70,F0D70,F2540,F1800,1DEB60, void, D2MonsterMove, (Game* ptGame, Unit* ptMonster, Unit* target, DWORD two, DWORD x, DWORD y, DWORD one, DWORD zero) );
|
||||
A8(FAST, D2Game,00000,00000,00000,FF1B0,F0DB0,F0BB0,F2380,F1430,1DEAD0, void, D2MonsterUseSkill, (Game* ptGame, Unit* ptMonster, DWORD arg, DWORD skill, Unit* target, DWORD x, DWORD y) );
|
||||
A8(FAST, D2Game,00000,00000,00000,B9340,25450,44140,53F10,39810,132240, void, D2SaveSPChar, (Game* ptGame, Unit* ptChar, char* name, DWORD arg, DWORD secondPass) );
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -416,8 +422,8 @@ A8(STD, D2Game,00000,00000, 89C0,E2390,E66D0,A8090,2C830,BE660, 12CA10, void,
|
||||
//D2S(D2Net,10020, DWORD, D2SendToServer, (DWORD size, DWORD one, void* data));//ONLY 1.11b
|
||||
//D2S(D2Net,10018, DWORD, D2SendToClient, (DWORD zero, DWORD clientID, void* data, DWORD size));//ONLY 1.11b
|
||||
|
||||
F8(STD, D2Net, 10005,10005,10005,10035,10020,10036,10024,10015, 12AE50, DWORD, D2SendToServer, (DWORD size, DWORD one, void* data));//(DWORD zero, void* data, DWORD size) for 1.10 and before
|
||||
F8(STD, D2Net, 10006,10006,10006,10018,10018,10015,10002,10012, 12B330, DWORD, D2SendToClient, (DWORD zero, DWORD clientID, void* data, DWORD size));
|
||||
F8(STD, D2Net, 10005,10005,10005,10035,10020,10036,10024,10015,12AE50, DWORD, D2SendToServer, (DWORD size, DWORD one, void* data));//(DWORD zero, void* data, DWORD size) for 1.10 and before
|
||||
F8(STD, D2Net, 10006,10006,10006,10018,10018,10015,10002,10012,12B330, DWORD, D2SendToClient, (DWORD zero, DWORD clientID, void* data, DWORD size));
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -442,25 +448,25 @@ F8(STD, D2Net, 10006,10006,10006,10018,10018,10015,10002,10012, 12B330, DWORD,
|
||||
////D2S(Fog,10217, int, D2GetIDFromLookUpTable, (void* table, char* string, bool));//6FF53840
|
||||
//D2S(Fog,10265, int, D2GetInstructionPointer, ());//ONLY 1.11/1.11b NOT 1.10
|
||||
|
||||
F8(STD, Fog, 10023,10023,10023,00000,00000,00000,00000,00000, 00000, void, D2FogAssertOld, (const char* ptMessage, DWORD eip, DWORD line));//(STDCALL until 1.10)
|
||||
F8(FAST, Fog, 00000,00000,00000,10024,10024,10024,10024,10024, 8A60, void, D2FogAssert, (const char* ptMessage, DWORD eip, DWORD line));
|
||||
F8(FAST, Fog, 10042,10042,10042,10042,10042,10042,10042,10042, B380, void*, D2FogMemAlloc, (DWORD dwMemSize, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10043,10043,10043,10043,10043,10043,10043,10043, B3C0, void*, D2FogMemDeAlloc, (void* ptMemLoc, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10045,10045,10045,10045,10045,10045,10045,10045, B430, void*, D2AllocMem, (DWORD,DWORD dwMemSize, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10046,10046,10046,10046,10046,10046,10046,10046, B480, void*, D2FreeMem, (DWORD,void* ptMemLoc, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10102,10102,10102,10102,10102,10102,10102,10102, 68E0, DWORD, D2MPQOpenFile, (char* ptPath, void** buf));
|
||||
F8(FAST, Fog, 10103,10103,10103,10103,10103,10103,10103,10103, 68F0, DWORD, D2MPQCloseFile, (void* mpqfile));
|
||||
F8(FAST, Fog, 10104,10104,10104,10104,10104,10104,10104,10104, 6900, DWORD, D2MPQReadFile, (void* mpqfile, BYTE* buffer, DWORD nbToRead, DWORD* nbRead,DWORD,DWORD,DWORD));
|
||||
F8(FAST, Fog, 10105,10105,10105,10105,10105,10105,10105,10105, 6930, DWORD, D2MPQGetSizeFile, (void* mpqfile, DWORD* toReset));
|
||||
F8(FAST, Fog, 10115,10115,10115,10115,10115,10115,10115,10115, 7050, void, D2FogGetSavePath, (char* ptPath, DWORD maxsize));
|
||||
F8(FAST, Fog, 10116,10116,10116,10116,10116,10116,10116,10116, 6BA0, void, D2FogGetInstallPath, (char* ptPath, DWORD maxsize));
|
||||
//F7(STD, Fog, 10126,10126,10126,10126,10126,10126,10126,10126, DWORD, D2InitBitField, (saveBitField* data, BYTE* buf, DWORD bufsize));//6FF536C0
|
||||
//F7(STD, Fog, 10127,10127,10127,10127,10127,10127,10127,10127, DWORD, D2GetBitFieldSize, (saveBitField* data));//6FF536C0
|
||||
//F7(STD, Fog, 10128,10128,10128,10128,10128,10128,10128,10128, void, D2EncodeValue, (saveBitField* data, DWORD value, DWORD bitSize));//6FF536C0
|
||||
//F7(STD, Fog, 10130,10130,10130,10130,10130,10130,10130,10130, DWORD, D2DecodeValue, (saveBitField* data,DWORD readingSize));//6FF53840
|
||||
F8(STD, Fog, 10212,10212,10212,10212,10212,10212,10212,10212, 2BD0B0, void, D2Fog10212, (DWORD unknown));
|
||||
//F7(STD, Fog, 10217,10217,10217,10217,10217,10217,10217,10217, int, D2GetIDFromLookUpTable, (void* table, char* string, bool));//6FF53840
|
||||
F8(STD, Fog, 00000,00000,00000,10265,10265,10265,10265,10265, 8090, int, D2GetInstructionPointer, ());
|
||||
F8(STD, Fog, 10023,10023,10023,00000,00000,00000,00000,00000,00000, void, D2FogAssertOld, (const char* ptMessage, DWORD eip, DWORD line));//(STDCALL until 1.10)
|
||||
F8(FAST, Fog, 00000,00000,00000,10024,10024,10024,10024,10024,8A60, void, D2FogAssert, (const char* ptMessage, DWORD eip, DWORD line));
|
||||
F8(FAST, Fog, 10042,10042,10042,10042,10042,10042,10042,10042,B380, void*, D2FogMemAlloc, (DWORD dwMemSize, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10043,10043,10043,10043,10043,10043,10043,10043,B3C0, void*, D2FogMemDeAlloc, (void* ptMemLoc, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10045,10045,10045,10045,10045,10045,10045,10045,B430, void*, D2AllocMem, (DWORD,DWORD dwMemSize, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10046,10046,10046,10046,10046,10046,10046,10046,B480, void*, D2FreeMem, (DWORD,void* ptMemLoc, LPCSTR lpszErrFile, DWORD ErrLine, DWORD Zero));
|
||||
F8(FAST, Fog, 10102,10102,10102,10102,10102,10102,10102,10102,68E0, DWORD, D2MPQOpenFile, (char* ptPath, void** buf));
|
||||
F8(FAST, Fog, 10103,10103,10103,10103,10103,10103,10103,10103,68F0, DWORD, D2MPQCloseFile, (void* mpqfile));
|
||||
F8(FAST, Fog, 10104,10104,10104,10104,10104,10104,10104,10104,6900, DWORD, D2MPQReadFile, (void* mpqfile, BYTE* buffer, DWORD nbToRead, DWORD* nbRead,DWORD,DWORD,DWORD));
|
||||
F8(FAST, Fog, 10105,10105,10105,10105,10105,10105,10105,10105,6930, DWORD, D2MPQGetSizeFile, (void* mpqfile, DWORD* toReset));
|
||||
F8(FAST, Fog, 10115,10115,10115,10115,10115,10115,10115,10115,7050, void, D2FogGetSavePath, (char* ptPath, DWORD maxsize));
|
||||
F8(FAST, Fog, 10116,10116,10116,10116,10116,10116,10116,10116,6BA0, void, D2FogGetInstallPath, (char* ptPath, DWORD maxsize));
|
||||
//F8(STD, Fog, 10126,10126,10126,10126,10126,10126,10126,10126,00000, DWORD, D2InitBitField, (saveBitField* data, BYTE* buf, DWORD bufsize));//6FF536C0
|
||||
//F8(STD, Fog, 10127,10127,10127,10127,10127,10127,10127,10127,00000, DWORD, D2GetBitFieldSize, (saveBitField* data));//6FF536C0
|
||||
//F8(STD, Fog, 10128,10128,10128,10128,10128,10128,10128,10128,00000, void, D2EncodeValue, (saveBitField* data, DWORD value, DWORD bitSize));//6FF536C0
|
||||
//F8(STD, Fog, 10130,10130,10130,10130,10130,10130,10130,10130,00000, DWORD, D2DecodeValue, (saveBitField* data,DWORD readingSize));//6FF53840
|
||||
F8(STD, Fog, 10212,10212,10212,10212,10212,10212,10212,10212,2BD0B0, void, D2Fog10212, (DWORD unknow));
|
||||
//F8(STD, Fog, 10217,10217,10217,10217,10217,10217,10217,10217,00000, int, D2GetIDFromLookUpTable, (void* table, char* string, bool));//6FF53840
|
||||
F8(STD, Fog, 00000,00000,00000,10265,10265,10265,10265,10265,8090, int, D2GetInstructionPointer, ());
|
||||
//Fog10213 getIndexFromLookupTable (&table,code,bool)
|
||||
|
||||
|
||||
@@ -479,19 +485,19 @@ F8(STD, Fog, 00000,00000,00000,10265,10265,10265,10265,10265, 8090, int, D2Get
|
||||
////E2F(D2Lang,2CD0, DWORD, D2unicodenwidth, (char* ptChar, DWORD size));//6FC12CD0_unicodenwidth
|
||||
////E2S(D2Lang,1670, DWORD, D2swprintf, (DWORD bufSize, LPWSTR buf, LPWSTR string, ...));//6FC11670_sprintf
|
||||
|
||||
//F7(FAST, D2Lang, 10003,10003,10003,00000,00000,00000,00000,10011, LPWSTR, D2GetStringFromString, (const char* ptString));//6FC13BC0
|
||||
F8(FAST, D2Lang, 10003,10003,10003,10002,10004,10010,10011,10011, 124E20, LPWSTR, D2GetStringFromString, (const char* ptString));//6FC13BC0 LAutour
|
||||
F8(FAST, D2Lang, 10004,10004,10004,10005,10000,10005,10003,10004, 124A30, LPWSTR, D2GetStringFromIndex, (WORD dwIndexNum));
|
||||
//F7(STD, D2Lang, 10006,10006,10006,00000,00000,00000,00000,00000, void, D2GetStringLang, (LPSTR ptLang, DWORD Zero));//6FC13FB0
|
||||
F8(STD, D2Lang, 10007,10007,10007,10009,10013,10002,10009,10001, 125150, DWORD, D2GetLang, ());//14b 00522A20
|
||||
F8(STD, D2Lang, 10010,10010,10010,00000,00000,00000,00000,00000, 00000, DWORD, D2PrintBigNumber, (LPWSTR ptBuf , DWORD number, DWORD size));//6FC14210
|
||||
//F7(STD, D2Lang, 10013,10013,10013,00000,00000,00000,00000,10005, DWORD, D2GetStringAndIndexFromString, (const char* ptString , LPWSTR result));//6FC13960
|
||||
//A7(FAST, D2Lang, 00000,00000,029B0,00000,00000,00000,00000,00000, DWORD, D2UnicodeWidth, (DWORD MemLoc, WORD Size));//6FC129B0
|
||||
//A7(FAST, D2Lang, 00000,00000,02E60,00000,00000,00000,00000,00000, LPWSTR, D2GetStrFromIndex , (void* ptFile, void* ptMemLoc, DWORD dwIndexNum));//6FC12E60
|
||||
//A7(FAST, D2Lang, 00000,00000,03640,00000,00000,00000,00000,00000, TblHeader*, D2LoadTblFile, (LPCSTR lpszFileName));//6FC13640
|
||||
//A7(FAST, D2Lang, 00000,00000,03A90,00000,00000,00000,00000,00000, WORD, D2GetStrAndIndexFromString, (void* ptFile, void* ptMemLoc, LPSTR String, LPWSTR RetString));//6FC13A90
|
||||
//A7(FAST, D2Lang, 00000,00000,02CD0,00000,00000,00000,00000,00000, DWORD, D2unicodenwidth, (char* ptChar, DWORD size));//6FC12CD0_unicodenwidth
|
||||
//A7(STD, D2Lang, 00000,00000,01670,00000,00000,00000,00000,00000, DWORD, D2swprintf, (DWORD bufSize, LPWSTR buf, LPWSTR string, ...));//6FC11670_sprintf
|
||||
//F8(FAST, D2Lang, 10003,10003,10003,00000,00000,00000,00000,10011,00000, LPWSTR, D2GetStringFromString, (const char* ptString));//6FC13BC0
|
||||
F8(FAST, D2Lang, 10003,10003,10003,10002,10004,10010,10011,10011,124E20, LPWSTR, D2GetStringFromString, (const char* ptString));//6FC13BC0 LAutour
|
||||
F8(FAST, D2Lang, 10004,10004,10004,10005,10000,10005,10003,10004,124A30, LPWSTR, D2GetStringFromIndex, (WORD dwIndexNum));
|
||||
//F8(STD, D2Lang, 10006,10006,10006,00000,00000,00000,00000,00000,00000, void, D2GetStringLang, (LPSTR ptLang, DWORD Zero));//6FC13FB0
|
||||
F8(STD, D2Lang, 10007,10007,10007,10009,10013,10002,10009,10001,125150, DWORD, D2GetLang, ());//14b 00522A20
|
||||
F8(STD, D2Lang, 10010,10010,10010,00000,00000,00000,00000,00000,00000, DWORD, D2PrintBigNumber, (LPWSTR ptBuf , DWORD number, DWORD size));//6FC14210
|
||||
//F8(STD, D2Lang, 10013,10013,10013,00000,00000,00000,00000,10005,00000, DWORD, D2GetStringAndIndexFromString, (const char* ptString , LPWSTR result));//6FC13960
|
||||
//A8(FAST, D2Lang, 00000,00000,029B0,00000,00000,00000,00000,00000,00000, DWORD, D2UnicodeWidth, (DWORD MemLoc, WORD Size));//6FC129B0
|
||||
//A8(FAST, D2Lang, 00000,00000,02E60,00000,00000,00000,00000,00000,00000, LPWSTR, D2GetStrFromIndex , (void* ptFile, void* ptMemLoc, DWORD dwIndexNum));//6FC12E60
|
||||
//A8(FAST, D2Lang, 00000,00000,03640,00000,00000,00000,00000,00000,00000, TblHeader*, D2LoadTblFile, (LPCSTR lpszFileName));//6FC13640
|
||||
//A8(FAST, D2Lang, 00000,00000,03A90,00000,00000,00000,00000,00000,00000, WORD, D2GetStrAndIndexFromString, (void* ptFile, void* ptMemLoc, LPSTR String, LPWSTR RetString));//6FC13A90
|
||||
//A8(FAST, D2Lang, 00000,00000,02CD0,00000,00000,00000,00000,00000,00000, DWORD, D2unicodenwidth, (char* ptChar, DWORD size));//6FC12CD0_unicodenwidth
|
||||
//A8(STD, D2Lang, 00000,00000,01670,00000,00000,00000,00000,00000,00000, DWORD, D2swprintf, (DWORD bufSize, LPWSTR buf, LPWSTR string, ...));//6FC11670_sprintf
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//Storm : 6FFB0000
|
||||
@@ -500,10 +506,10 @@ F8(STD, D2Lang, 10010,10010,10010,00000,00000,00000,00000,00000, 00000, DWORD,
|
||||
//D2S(Storm,503, void, D2Storm503, (DWORD, DWORD, DWORD)); //+1.11
|
||||
//D2S(Storm,511, void, D2FreeWinMessage, (sWinMessage* msg));//1.11/1.11b
|
||||
|
||||
//F7(STD, Storm, 253, 253, 253, 253, 253, 253, 000, 000, void, D2StormMPQCloseFile, (void* mpqfile));
|
||||
F8(STD, Storm, 268, 268, 268, 268, 268, 268, 268, 268, 192F0, DWORD, D2StormMPQOpenFile, (DWORD zero, LPCSTR fileName, DWORD dwSearchScope, void** buffer))
|
||||
F8(STD, Storm, 503, 503, 503, 503, 503, 503, 503, 503, 13750, void, D2Storm503, (DWORD, DWORD, DWORD));
|
||||
F8(STD, Storm, 511, 511, 511, 511, 511, 511, 511, 511, 20290, void, D2FreeWinMessage, (sWinMessage* msg));
|
||||
//F8(STD, Storm, 253, 253, 253, 253, 253, 253, 000, 000,00000, void, D2StormMPQCloseFile, (void* mpqfile));
|
||||
F8(STD, Storm, 268, 268, 268, 268, 268, 268, 268, 268, 192F0, DWORD, D2StormMPQOpenFile, (DWORD zero, LPCSTR fileName, DWORD dwSearchScope, void** buffer))
|
||||
F8(STD, Storm, 503, 503, 503, 503, 503, 503, 503, 503, 13750, void, D2Storm503, (DWORD, DWORD, DWORD));
|
||||
F8(STD, Storm, 511, 511, 511, 511, 511, 511, 511, 511, 20290, void, D2FreeWinMessage, (sWinMessage* msg));
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -515,12 +521,12 @@ F8(STD, Storm, 511, 511, 511, 511, 511, 511, 511, 511, 20290, void, D
|
||||
//D2S(D2gfx,10000, void, D2FillArea,(DWORD x1, DWORD y1, DWORD x2, DWORD y2, DWORD color, DWORD transTbl));//ONLY 1.11b
|
||||
//D2S(D2gfx,10044, void, D2PrintImage,(sDrawImageInfo* data, DWORD x, DWORD y, DWORD p4, DWORD p5, DWORD p6) );//ONLY 1.11b
|
||||
|
||||
F8(STD, D2gfx, 10005,10005,10005,10000,10063,10043,10031,10012, F5160, DWORD, D2GetResolution,() );
|
||||
//F7,STD, D2gfx, 10023,10023,10023,00000,00000,00000,00000,00000, DWORD, D2CreateMainWindow,(DWORD,DWORD) );
|
||||
//F7(STD, D2gfx, 10026,10026,10026,00000,00000,00000,00000,00000, DWORD, D2ShowWindow,() );
|
||||
//F7,STD, D2gfx, 10027,10027,10027,00000,00000,00000,00000,00000, HWND, D2GetWindowHandle,() );//6FA749C0
|
||||
F8(STD, D2gfx, 10055,10055,10055,10028,10000,10062,10014,10028, F6300, void, D2FillArea,(DWORD x1, DWORD y1, DWORD x2, DWORD y2, DWORD color, DWORD transTbl));
|
||||
F8(STD, D2gfx, 10072,10072,10072,10047,10044,10024,10041,10042, F6480, void, D2PrintImage,(sDrawImageInfo* data, DWORD x, DWORD y, DWORD p4, DWORD p5, DWORD p6) );
|
||||
F8(STD, D2gfx, 10005,10005,10005,10000,10063,10043,10031,10012,F5160, DWORD, D2GetResolution,() );
|
||||
//F8,STD, D2gfx, 10023,10023,10023,00000,00000,00000,00000,00000,00000, DWORD, D2CreateMainWindow,(DWORD,DWORD) );
|
||||
//F8(STD, D2gfx, 10026,10026,10026,00000,00000,00000,00000,00000,00000, DWORD, D2ShowWindow,() );
|
||||
//F8,STD, D2gfx, 10027,10027,10027,00000,00000,00000,00000,00000,00000, HWND, D2GetWindowHandle,() );//6FA749C0
|
||||
F8(STD, D2gfx, 10055,10055,10055,10028,10000,10062,10014,10028,F6300, void, D2FillArea,(DWORD x1, DWORD y1, DWORD x2, DWORD y2, DWORD color, DWORD transTbl));
|
||||
F8(STD, D2gfx, 10072,10072,10072,10047,10044,10024,10041,10042,F6480, void, D2PrintImage,(sDrawImageInfo* data, DWORD x, DWORD y, DWORD p4, DWORD p5, DWORD p6) );
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -534,36 +540,36 @@ F8(STD, D2gfx, 10072,10072,10072,10047,10044,10024,10041,10042, F6480, void, D
|
||||
//D2F(D2Win,10132, DWORD, D2PrintTextPopup,(LPWSTR s, DWORD x, DWORD y, DWORD uk, DWORD type, DWORD color) );//6F8AB080
|
||||
//D2S(D2Win,10113, void*, D2CreateTextBox,(DWORD* data) );//ONLY 1.11b
|
||||
|
||||
F8(FAST, D2Win, 10046,10046,10046,10061,10075,10015,10022,10051, FCFF0, void, D2PrintLineOnTextBox,(void* screen, char* s, DWORD color) );
|
||||
F8(FAST, D2Win, 10117,10117,10117,10020,10064,10001,10150,10076, 102320, void, D2PrintString,(LPWSTR s, DWORD x, DWORD y, DWORD color, DWORD bfalse) );
|
||||
F8(FAST, D2Win, 10121,10121,10121,10034,10128,10132,10028,10150, 101820, DWORD, D2GetPixelLen,(LPWSTR s) );
|
||||
F8(FAST, D2Win, 10127,10127,10127,10141,10170,10010,10184,10047, 102EF0, DWORD, D2SetFont,(DWORD fontID) );
|
||||
F8(FAST, D2Win, 10129,10129,10129,10118,10039,10031,10085,10137, 102280, void, D2PrintPopup,(LPWSTR s, DWORD x, DWORD y, DWORD color, DWORD center) );
|
||||
F8(FAST, D2Win, 10131,10131,10131,00000,00000,00000,00000,00000, 00000, void, D2GetPixelRect,(LPWSTR s, DWORD* x, DWORD* y) );//6F8AB260
|
||||
F8(FAST, D2Win, 10132,10132,10132,00000,00000,00000,00000,00000, 00000, DWORD, D2PrintTextPopup,(LPWSTR s, DWORD x, DWORD y, DWORD uk, DWORD type, DWORD color) );//6F8AB080
|
||||
F8(STD, D2Win, 10017,10017,10017,10147,10113,10098,10098,10164, F93C0, void*, D2CreateTextBox,(DWORD* data) );
|
||||
F8(FAST, D2Win, 10046,10046,10046,10061,10075,10015,10022,10051,FCFF0, void, D2PrintLineOnTextBox,(void* screen, char* s, DWORD color) );
|
||||
F8(FAST, D2Win, 10117,10117,10117,10020,10064,10001,10150,10076,102320, void, D2PrintString,(LPWSTR s, DWORD x, DWORD y, DWORD color, DWORD bfalse) );
|
||||
F8(FAST, D2Win, 10121,10121,10121,10034,10128,10132,10028,10150,101820, DWORD, D2GetPixelLen,(LPWSTR s) );
|
||||
F8(FAST, D2Win, 10127,10127,10127,10141,10170,10010,10184,10047,102EF0, DWORD, D2SetFont,(DWORD fontID) );
|
||||
F8(FAST, D2Win, 10129,10129,10129,10118,10039,10031,10085,10137,102280, void, D2PrintPopup,(LPWSTR s, DWORD x, DWORD y, DWORD color, DWORD center) );
|
||||
F8(FAST, D2Win, 10131,10131,10131,00000,00000,00000,00000,00000,00000, void, D2GetPixelRect,(LPWSTR s, DWORD* x, DWORD* y) );//6F8AB260
|
||||
F8(FAST, D2Win, 10132,10132,10132,00000,00000,00000,00000,00000,00000, DWORD, D2PrintTextPopup,(LPWSTR s, DWORD x, DWORD y, DWORD uk, DWORD type, DWORD color) );//6F8AB080
|
||||
F8(STD, D2Win, 10017,10017,10017,10147,10113,10098,10098,10164,F93C0, void*, D2CreateTextBox,(DWORD* data) );
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//D2CMP : ????0000
|
||||
//D2S(D2CMP,10014, DWORD, D2CMP10014, (void* image) );//ONLY 1.11
|
||||
|
||||
F8(STD, D2CMP, 10032,10032,10032,10021,10014,10106,10065,10020, 201A50, DWORD, D2CMP10014, (void* image) );
|
||||
F8(STD, D2CMP, 10032,10032,10032,10021,10014,10106,10065,10020,201A50, DWORD, D2CMP10014, (void* image) );
|
||||
|
||||
|
||||
//ONLY UNTIL 1.10 :
|
||||
A8(FAST, D2Client, BA00, B9F0, C080,00000,00000,00000,00000,00000, 00000, DWORD, D2isLODGame, ());//6FAAC080
|
||||
A8(FAST, D2Client, 00000,00000, C090,00000,00000,00000,00000,00000, 00000, BYTE, D2GetDifficultyLevel, ());//6FAAC090 1.09 should be BA10 (b) BA00 (d)
|
||||
A8(STD, D2Client, B6670,B59F0,B7BC0,00000,00000,00000,00000,00000, 00000, DWORD, D2GetMouseX, ());//6FB57BC0
|
||||
A8(STD, D2Client, B6680,B5A00,B7BD0,00000,00000,00000,00000,00000, 00000, DWORD, D2GetMouseY, ());//6FB57BD0
|
||||
A8(STD, D2Client, 8DC40,8CFC0,883D0,00000,00000,00000,00000,00000, 00000, Unit*, D2GetClientPlayer, ());//6FB283D0
|
||||
A8(FAST, D2Client, B920, B910, BF60,00000,00000,00000,00000,00000, 00000, void, D2CleanStatMouseUp, ());//6FAABF60
|
||||
A8(FAST, D2Client, D210, D200, D990,00000,00000,00000,00000,00000, 00000, void, D2SendToServer3, (BYTE type, WORD p));//6FAAD990
|
||||
//A7(FAST, D2Client, 00000,00000, DA20,00000,00000,00000,00000,00000, void, D2SendToServer5, (BYTE type, DWORD p));//6FAADA20
|
||||
//A7(FAST, D2Client, 00000,00000, D9E0,00000,00000,00000,00000,00000, void, D2SendToServer7, (BYTE type, WORD p1, WORD p2, WORD p3));//6FAAD9E0
|
||||
//A7(FAST, D2Client, 00000,00000, DA40,00000,00000,00000,00000,00000, void, D2SendToServer9, (BYTE type, DWORD p1, DWORD p2));//6FAADA40
|
||||
//A7(FAST, D2Client, 00000,00000, DA70,00000,00000,00000,00000,00000, void, D2SendToServer13,(BYTE type, DWORD p1, DWORD p2, DWORD p3));//6FAADA70
|
||||
A8(FAST, D2Game, 7C2C0,7C7B0,8C2E0,00000,00000,00000,00000,00000, 00000, NetClient*, D2GetClient, (Unit* ptUnit, char* lpszErrFile, DWORD ErrLine));//6FCBC2E0
|
||||
A8(FAST, D2Client, BA00, B9F0, C080,00000,00000,00000,00000,00000,00000, DWORD, D2isLODGame, ());//6FAAC080
|
||||
A8(FAST, D2Client, 00000,00000, C090,00000,00000,00000,00000,00000,00000, BYTE, D2GetDifficultyLevel, ());//6FAAC090 1.09 should be BA10 (b) BA00 (d)
|
||||
A8(STD, D2Client, B6670,B59F0,B7BC0,00000,00000,00000,00000,00000,00000, DWORD, D2GetMouseX, ());//6FB57BC0
|
||||
A8(STD, D2Client, B6680,B5A00,B7BD0,00000,00000,00000,00000,00000,00000, DWORD, D2GetMouseY, ());//6FB57BD0
|
||||
A8(STD, D2Client, 8DC40,8CFC0,883D0,00000,00000,00000,00000,00000,63DD0, Unit*, D2GetClientPlayer, ());//6FB283D0
|
||||
A8(FAST, D2Client, B920, B910, BF60,00000,00000,00000,00000,00000,4DA70, void, D2CleanStatMouseUp, ());//6FAABF60
|
||||
A8(FAST, D2Client, D210, D200, D990,00000,00000,00000,00000,00000,00000, void, D2SendToServer3, (BYTE type, WORD p));//6FAAD990
|
||||
//A8(FAST, D2Client, 00000,00000, DA20,00000,00000,00000,00000,00000,00000, void, D2SendToServer5, (BYTE type, DWORD p));//6FAADA20
|
||||
//A8(FAST, D2Client, 00000,00000, D9E0,00000,00000,00000,00000,00000,00000, void, D2SendToServer7, (BYTE type, WORD p1, WORD p2, WORD p3));//6FAAD9E0
|
||||
//A8(FAST, D2Client, 00000,00000, DA40,00000,00000,00000,00000,00000,00000, void, D2SendToServer9, (BYTE type, DWORD p1, DWORD p2));//6FAADA40
|
||||
//A8(FAST, D2Client, 00000,00000, DA70,00000,00000,00000,00000,00000,00000, void, D2SendToServer13,(BYTE type, DWORD p1, DWORD p2, DWORD p3));//6FAADA70
|
||||
A8(FAST, D2Game, 7C2C0,7C7B0,8C2E0,00000,00000,00000,00000,00000,1531C0, NetClient*, D2GetClient, (Unit* ptUnit, char* lpszErrFile, DWORD ErrLine));//6FCBC2E0
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//////// VARIABLES ////////
|
||||
@@ -584,24 +590,25 @@ A8(FAST, D2Game, 7C2C0,7C7B0,8C2E0,00000,00000,00000,00000,00000, 00000, NetClie
|
||||
//E2C(D2Client,11B418,DWORD, MouseX);//0x320 = 800 //1.11b
|
||||
//E2C(D2Client,11C1E0,Unit*, ptClientChar);//1.11b
|
||||
|
||||
//C7(D2Common,000000,000000, 96A20, 9B74C, 9EE8C, 9B500, 99E1C, DataTables*,SgptDataTables); //03836A20 - 037A0000 //01EE6A20
|
||||
C8(D2Client, D50E8, D40E0, D40F0, F5C60, F4FC8, DC6E4, DBC4C, F7038, 311470, DWORD, ResolutionY);//0x258 = 600
|
||||
C8(D2Client, D50EC, D40E4, D40F4, F5C5C, F4FC4, DC6E0, DBC48, F7034, 31146C, DWORD, ResolutionX);//0x320 = 800
|
||||
C8(D2Client,125AD8,124958,11A74C,11BD28,11BEFC,11BD2C,11B9A4,11D358, 3A285C, DWORD, NegWindowStartY);//0xFFFFFFC4 = -60
|
||||
C8(D2Client,125AD4,124954,11A748,11BD24,11BEF8,11BD28,11B9A0,11D354, 3A2858, DWORD, WindowStartX);//0x50 = 80
|
||||
//C7(D2Launch, 55818, 56088, 2CD5C,000000, 2CD5C,000000,000000,00000, DWORD, GameTypeMode);//0x50 = 80 //6FA3CD5C-6FA10000
|
||||
C8(D2Game, F2A80, F2918,113FB8,111718,1115E0,1105E0,1107B8,1105E0, 4842A8, NetClient*, ClientTable);
|
||||
//C7(D2Client,000000,000000,000000,000000,104225,000000,000000,00000, DWORD, CurrentNPCNum);
|
||||
C8(D2Client,000000,000000,000000, FB3F4,11A2F4,10330C,119854,1087B4, 3A04F4, DWORD, IsLodGame);
|
||||
C8(D2Client,000000,000000,10795C,11BFB8,11C2A8,11BFF4,000000,000000, 000000, BYTE, DifficultyLevel);
|
||||
//C7(D2Client,000000,000000,10795C,11BFB8,11C2A8,11BFF4,000000,11D1D8, BYTE, DifficultyLevel);
|
||||
C8(D2Client,000000,000000,000000,10A40C,11B414,101634,11B824,11C94C, 3A6AAC, DWORD, MouseY);//0x258 = 600
|
||||
C8(D2Client,000000,000000,000000,10A410,11B418,101638,11B828,11C950, 3A6AB0, DWORD, MouseX);//0x320 = 800
|
||||
C8(D2Client,000000,000000,000000,11C4F0,11C1E0,11C3D0,11BBFC,11D050, 3A6A70, Unit*, ptClientChar);
|
||||
//C8(D2Common,000000,000000, 96A20, 9B74C, 9EE8C, 9B500, 99E1C,000000,000000, DataTables*,SgptDataTables); //03836A20 - 037A0000 //01EE6A20
|
||||
C8(D2Client, D50E8, D40E0, D40F0, F5C60, F4FC8, DC6E4, DBC4C, F7038,311470, DWORD, ResolutionY);//0x258 = 600
|
||||
C8(D2Client, D50EC, D40E4, D40F4, F5C5C, F4FC4, DC6E0, DBC48, F7034,31146C, DWORD, ResolutionX);//0x320 = 800
|
||||
C8(D2Client,125AD8,124958,11A74C,11BD28,11BEFC,11BD2C,11B9A4,11D358,3A285C, DWORD, NegWindowStartY);//0xFFFFFFC4 = -60
|
||||
C8(D2Client,125AD4,124954,11A748,11BD24,11BEF8,11BD28,11B9A0,11D354,3A2858, DWORD, WindowStartX);//0x50 = 80
|
||||
//C8(D2Launch, 55818, 56088, 2CD5C,000000, 2CD5C,000000,000000,00000,000000, DWORD, GameTypeMode);//0x50 = 80 //6FA3CD5C-6FA10000
|
||||
C8(D2Game, F2A80, F2918,113FB8,111718,1115E0,1105E0,1107B8,1105E0,4842A8, NetClient*, ClientTable);
|
||||
//C8(D2Client,000000,000000,000000,000000,104225,000000,000000,00000,000000, DWORD, CurrentNPCNum);
|
||||
C8(D2Client,000000,000000,000000, FB3F4,11A2F4,10330C,119854,1087B4,3A04F4, DWORD, IsLodGame);
|
||||
C8(D2Client,000000,000000,10795C,11BFB8,11C2A8,11BFF4,000000,000000,000000, BYTE, DifficultyLevel);
|
||||
//C8(D2Client,000000,000000,10795C,11BFB8,11C2A8,11BFF4,000000,11D1D8,000000, BYTE, DifficultyLevel);
|
||||
C8(D2Client,000000,000000,000000,10A40C,11B414,101634,11B824,11C94C,3A6AAC, DWORD, MouseY);//0x258 = 600
|
||||
C8(D2Client,000000,000000,000000,10A410,11B418,101638,11B828,11C950,3A6AB0, DWORD, MouseX);//0x320 = 800
|
||||
C8(D2Client,000000,000000,000000,11C4F0,11C1E0,11C3D0,11BBFC,11D050,3A6A70, Unit*, ptClientChar);
|
||||
C8(D2Client,11E0F4,11CF54,112D04,11B9A8,11BB30,11BF48,11C028,11CAA4,3BB5E8, DWORD, InputCommandLen);
|
||||
C8(D2Client,11CE50,11BCB0,111A58,11C590,11D590,11FC40,11EC80,11D650,3BB638, WCHAR, InputCommand);
|
||||
|
||||
|
||||
C8(D2Client, DB918, DA828,000000,000000,000000,000000,000000,000000, 000000, DWORD, NbStatDesc);
|
||||
C8(D2Client, DAF98, D9EA8,000000,000000,000000,000000,000000,000000, 000000, DWORD, StatDescTable);
|
||||
C8(D2Client, DB918, DA828,000000,000000,000000,000000,000000,000000,000000, DWORD, NbStatDesc);
|
||||
C8(D2Client, DAF98, D9EA8,000000,000000,000000,000000,000000,000000,000000, DWORD, StatDescTable);
|
||||
|
||||
/* NEXT NOT TESTED IN 1.10 (1.09b fct)
|
||||
D2_STD(D2Common10066, void, D2RemoveFromRoom, (DrlgRoom1* hRoom, DWORD untitype, DWORD unitID), 0x6FD7CFD0);
|
||||
@@ -659,69 +666,69 @@ D2_FST(D2Client6FB30470,void, D2ClientUpdatePlayer, (Unit* ptChar, DWORD nUnitT
|
||||
|
||||
|
||||
Storm 1.09:
|
||||
251 SFileAuthenticateArchive
|
||||
252 SFileCloseArchive
|
||||
253 SFileCloseFile
|
||||
254 SFileDdaBegin
|
||||
255 SFileDdaBeginEx
|
||||
256 SFileDdaDestroy
|
||||
257 SFileDdaEnd
|
||||
258 SFileDdaGetPos
|
||||
259 SFileDdaGetVolume
|
||||
260 SFileDdaInitialize
|
||||
261 SFileDdaSetVolume
|
||||
262 SFileDestroy
|
||||
263 SFileEnableDirectAccess
|
||||
264 SFileGetFileArchive
|
||||
265 SFileGetFileSize
|
||||
266 SFileOpenArchive
|
||||
267 SFileOpenFile
|
||||
268 SFileOpenFileEx
|
||||
269 SFileReadFile
|
||||
270 SFileSetBasePath
|
||||
271 SFileSetFilePointer
|
||||
272 SFileSetLocale
|
||||
273 SFileGetBasePath
|
||||
274 SFileSetIoErrorMode
|
||||
275 SFileGetArchiveName
|
||||
276 SFileGetFileName
|
||||
277 SFileGetArchiveInfo
|
||||
278 SFileSetPlatform
|
||||
279 SFileLoadFile
|
||||
280 SFileUnloadFile
|
||||
281 SFileLoadFileEx
|
||||
282 SFilePrioritizeRequest
|
||||
283 SFile_CancelRequest
|
||||
284 SFileSetAsyncBudget
|
||||
285 SFileSetDataChunkSize
|
||||
286 SFileEnableSeekOptimization
|
||||
287 SFileReadFileEx
|
||||
288 SFile_CancelRequestEx
|
||||
289 SFileReadFileEx2
|
||||
290 SFileLoadFileEx2
|
||||
251 SFileAuthenticateArchive
|
||||
252 SFileCloseArchive
|
||||
253 SFileCloseFile
|
||||
254 SFileDdaBegin
|
||||
255 SFileDdaBeginEx
|
||||
256 SFileDdaDestroy
|
||||
257 SFileDdaEnd
|
||||
258 SFileDdaGetPos
|
||||
259 SFileDdaGetVolume
|
||||
260 SFileDdaInitialize
|
||||
261 SFileDdaSetVolume
|
||||
262 SFileDestroy
|
||||
263 SFileEnableDirectAccess
|
||||
264 SFileGetFileArchive
|
||||
265 SFileGetFileSize
|
||||
266 SFileOpenArchive
|
||||
267 SFileOpenFile
|
||||
268 SFileOpenFileEx
|
||||
269 SFileReadFile
|
||||
270 SFileSetBasePath
|
||||
271 SFileSetFilePointer
|
||||
272 SFileSetLocale
|
||||
273 SFileGetBasePath
|
||||
274 SFileSetIoErrorMode
|
||||
275 SFileGetArchiveName
|
||||
276 SFileGetFileName
|
||||
277 SFileGetArchiveInfo
|
||||
278 SFileSetPlatform
|
||||
279 SFileLoadFile
|
||||
280 SFileUnloadFile
|
||||
281 SFileLoadFileEx
|
||||
282 SFilePrioritizeRequest
|
||||
283 SFile_CancelRequest
|
||||
284 SFileSetAsyncBudget
|
||||
285 SFileSetDataChunkSize
|
||||
286 SFileEnableSeekOptimization
|
||||
287 SFileReadFileEx
|
||||
288 SFile_CancelRequestEx
|
||||
289 SFileReadFileEx2
|
||||
290 SFileLoadFileEx2
|
||||
|
||||
Storm1.08
|
||||
401 SMemAlloc
|
||||
403 SMemFree
|
||||
404 SMemGetSize
|
||||
405 SMemReAlloc
|
||||
481 SMemFindNextBlock
|
||||
482 SMemFindNextHeap
|
||||
483 SMemGetHeapByCaller
|
||||
484 SMemGetHeapByPtr
|
||||
485 SMemHeapAlloc
|
||||
486 SMemHeapCreate
|
||||
487 SMemHeapDestroy
|
||||
488 SMemHeapFree
|
||||
489 SMemHeapReAlloc
|
||||
490 SMemHeapSize
|
||||
491 SMemCopy
|
||||
492 SMemFill
|
||||
493 SMemMove
|
||||
494 SMemZero
|
||||
495 SMemCmp
|
||||
496 SMemSetDebugFlags
|
||||
497 SMemDumpState
|
||||
401 SMemAlloc
|
||||
403 SMemFree
|
||||
404 SMemGetSize
|
||||
405 SMemReAlloc
|
||||
481 SMemFindNextBlock
|
||||
482 SMemFindNextHeap
|
||||
483 SMemGetHeapByCaller
|
||||
484 SMemGetHeapByPtr
|
||||
485 SMemHeapAlloc
|
||||
486 SMemHeapCreate
|
||||
487 SMemHeapDestroy
|
||||
488 SMemHeapFree
|
||||
489 SMemHeapReAlloc
|
||||
490 SMemHeapSize
|
||||
491 SMemCopy
|
||||
492 SMemFill
|
||||
493 SMemMove
|
||||
494 SMemZero
|
||||
495 SMemCmp
|
||||
496 SMemSetDebugFlags
|
||||
497 SMemDumpState
|
||||
*/
|
||||
//Kingpin: D2Common #10027 is used to get dest unit (used for get type5 object in next room)
|
||||
//D2Common10247, (ptInventory, ptItem, x,y,0xC,void*,void*,BYTE page) verif if items can be put in inventory
|
||||
@@ -741,9 +748,9 @@ Storm1.08
|
||||
/*
|
||||
Kingpin: d2common #11270
|
||||
Kingpin: Check MonType.txt line to see if it match (returns a boolan)
|
||||
Kingpin: arg1 = unknown
|
||||
arg2 = damage_vs_montype (stat from intestatscost.txt)
|
||||
arg3 = ptUnit
|
||||
Kingpin: arg1 = unknown
|
||||
arg2 = damage_vs_montype (stat from intestatscost.txt)
|
||||
arg3 = ptUnit
|
||||
arg4 = 80 (maxline maybe, but is only guessing)
|
||||
|
||||
//d2game.6FD1D660 reverse player name :P
|
||||
@@ -763,42 +770,42 @@ Kingpin: D2Client.6FB18770 returns a boolean if you have enough mana for skill
|
||||
Kingpin: D2Client.6FB18AC0 sets it to selectable or not
|
||||
D2Common #10480 Return ptState arg1 = ptUnit, arg2 = state_id
|
||||
D2Common #10479 Get State_ID from ptState+14
|
||||
D2Common #11265 Get Skill_ID from ptState+1C Arg1 = ptState
|
||||
D2Common #11265 Get Skill_ID from ptState+1C Arg1 = ptState
|
||||
|
||||
Kingpin: D2Common #10497 Get Duration of State
|
||||
Kingpin: D2Common #10497 Get Duration of State
|
||||
Kingpin: arg1 = state_id
|
||||
|
||||
|
||||
D2Client.6FB5B0F0
|
||||
Function: Draw Filled Rectangle
|
||||
D2Client.6FB5B0F0
|
||||
Function: Draw Filled Rectangle
|
||||
void FASTCALL D2ClientFillRect(int x, int y, int Width, int Height, ULONG ulColor, ULONG transTbl);
|
||||
D2_FST(D2Client6FB5B0F0,void, D2ClientFillRect,(int x, int y, int Width, int Height, DWORD col, DWORD transTbl), offset_D2Client + 0xBB0F0);//6FB5B0F0-6FAA0000
|
||||
D2Gfx.#10055
|
||||
Function: Draw Filled Rectangle
|
||||
D2Gfx.#10055
|
||||
Function: Draw Filled Rectangle
|
||||
void STDCALL D2GfxFillRect(int left, int top, int right, int bottom, ULONG ulColor, ULONG transTbl);
|
||||
NOTES:
|
||||
color = Palette index.
|
||||
transTbl = pl2 transform table index ...
|
||||
0 = 75% transparent
|
||||
1 = 50% transparent
|
||||
2 = 25% transparent
|
||||
3 = color blend 1 //white is transparent black is solid
|
||||
4 = color blend 2 //black is transparent white is solid
|
||||
5 = normal draw
|
||||
6 = color blend 3 // screen + color
|
||||
7 = hilight
|
||||
NOTES:
|
||||
color = Palette index.
|
||||
transTbl = pl2 transform table index ...
|
||||
0 = 75% transparent
|
||||
1 = 50% transparent
|
||||
2 = 25% transparent
|
||||
3 = color blend 1 //white is transparent black is solid
|
||||
4 = color blend 2 //black is transparent white is solid
|
||||
5 = normal draw
|
||||
6 = color blend 3 // screen + color
|
||||
7 = hilight
|
||||
|
||||
|
||||
6FAE7831 E8 9A380800 CALL <JMP.&D2Common.#10252> ; click inventory
|
||||
6FAE8D44 E8 87230800 CALL <JMP.&D2Common.#10252> ; Right click inventory
|
||||
6FAE7831 E8 9A380800 CALL <JMP.&D2Common.#10252> ; click inventory
|
||||
6FAE8D44 E8 87230800 CALL <JMP.&D2Common.#10252> ; Right click inventory
|
||||
6FAE8972 E8 59270800 CALL <JMP.&D2Common.#10252> ; mouse over
|
||||
|
||||
|
||||
D2Client.6FACFCD0 then that set color for the text (it calls in this function #10121 and 10117)
|
||||
Kingpin: and the position
|
||||
Kingpin: arg1 = Xpos
|
||||
arg2 = Ypos
|
||||
arg3 = Pointer to Unicode String
|
||||
Kingpin: arg1 = Xpos
|
||||
arg2 = Ypos
|
||||
arg3 = Pointer to Unicode String
|
||||
arg4 = Color
|
||||
|
||||
Kingpin: 10470 has as first arg ptGame +1C (memory alloc thing)
|
||||
@@ -808,51 +815,51 @@ Kingpin: arg4 = 4 (same here, no idea)
|
||||
Kingpin: arg5 = uniqueID
|
||||
|
||||
Kingpin: 10868 SetMod
|
||||
arg1 = ptItem
|
||||
arg2 = ItemMod
|
||||
arg1 = ptItem
|
||||
arg2 = ItemMod
|
||||
arg3 = 1
|
||||
Kingpin: 11232 Get Cube Recipe Record (Line) from Cubemain.bin Address in memory
|
||||
Kingpin: 11232 Get Cube Recipe Record (Line) from Cubemain.bin Address in memory
|
||||
Kingpin: i have no parameters for 11232
|
||||
Kingpin: 11233 Get Number of Cube Recipes
|
||||
|
||||
Kingpin: edi contains target unit
|
||||
Kingpin: edi contains target unit
|
||||
Kingpin: 10342 get ptRoom from target unit
|
||||
Kingpin: ecx = unique unit id
|
||||
Kingpin: ebx = unit type
|
||||
Kingpin: eax = ptRoom
|
||||
Kingpin: 10066 remove unit from room
|
||||
|
||||
D2Game.6FCBC900 ; Get Target Unit
|
||||
D2Game.6FCBC900 ; Get Target Unit
|
||||
Arg1 = ptPlayer (ptUnit)
|
||||
Arg2 = ptGame
|
||||
|
||||
|
||||
|
||||
#10962 Add skill to player
|
||||
Kingpin: arg1 ptPlayer
|
||||
#10962 Add skill to player
|
||||
Kingpin: arg1 ptPlayer
|
||||
arg2 SkillID
|
||||
Kingpin: arg3 Skill Level
|
||||
|
||||
10602 Gets an item ID # from an item code
|
||||
10602 Gets an item ID # from an item code
|
||||
|
||||
Kingpin: get Prefix/suffix
|
||||
Kingpin: #10699 arg1 = ptItem, arg2 = prefix Index
|
||||
Kingpin: #10701 arg1 = ptItem, arg2 = suffix index
|
||||
|
||||
|
||||
D2EquipUnit STDCALL_FUNCTION(int, D2Common280D, (Inventory* ptInventory, Unit* ptItem, int bodylocation));
|
||||
D2AddItemToInventory STDCALL_FUNCTION(int, D2Common2802, (Inventory* ptInventory, Unit* ptItem, int nodePage));
|
||||
D2EquipUnit STDCALL_FUNCTION(int, D2Common280D, (Inventory* ptInventory, Unit* ptItem, int bodylocation));
|
||||
D2AddItemToInventory STDCALL_FUNCTION(int, D2Common2802, (Inventory* ptInventory, Unit* ptItem, int nodePage));
|
||||
Kingpin: in my notes it should start here
|
||||
Kingpin: 6FC51360 /$ 55 PUSH EBP
|
||||
|
||||
D2DropTC FASTCALL_FUNCTION(void, D2Game6FC51360, (D2Game* ptGame, Unit* ptChar, Unit* ptNPC, void* ptTC, DWORD z5, DWORD ilvl, DWORD z1, DWORD z2, DWORD z3, DWORD z4));
|
||||
D2DropTC FASTCALL_FUNCTION(void, D2Game6FC51360, (D2Game* ptGame, Unit* ptChar, Unit* ptNPC, void* ptTC, DWORD z5, DWORD ilvl, DWORD z1, DWORD z2, DWORD z3, DWORD z4));
|
||||
|
||||
Kingpin: D2CreateItemUnit FASTCALL_FUNCTION(Unit*, D2Game6FC501A0, (Unit* ptPlayer, DWORD itemCode, D2Game* ptGame, DWORD uk1, DWORD quality, DWORD uk3, DWORD uk4, DWORD Lvl, DWORD uk5, DWORD uk6, DWORD uk7));
|
||||
ptItem = D2CreateItemUnit(ptPlayer, D2GetItemIDfromCode(CharstatTXT->Item1), PCGame, 4, 2, 1, 1, D2GetUnitStat(ptPlayer,STATS_LEVEL,0), 0, 0, 0);
|
||||
Kingpin: D2CreateItemUnit FASTCALL_FUNCTION(Unit*, D2Game6FC501A0, (Unit* ptPlayer, DWORD itemCode, D2Game* ptGame, DWORD uk1, DWORD quality, DWORD uk3, DWORD uk4, DWORD Lvl, DWORD uk5, DWORD uk6, DWORD uk7));
|
||||
ptItem = D2CreateItemUnit(ptPlayer, D2GetItemIDfromCode(CharstatTXT->Item1), PCGame, 4, 2, 1, 1, D2GetUnitStat(ptPlayer,STATS_LEVEL,0), 0, 0, 0);
|
||||
|
||||
Kingpin: monsterData +28 holds ptGame
|
||||
Kingpin: ptGame +2C UniqueID (owner ID)
|
||||
Kingpin: ptGame +30 UnitType
|
||||
Kingpin: ptGame +30 UnitType
|
||||
srvDoFunc 15 adds temporarly a stat
|
||||
|
||||
Kingpin: we have 10041 that get ptRoom from ptAct, XOffset&Yoffset
|
||||
|
@@ -1,10 +1,10 @@
|
||||
/*=================================================================
|
||||
File created by Yohann NICOLAS.
|
||||
|
||||
@brief Diablo II Unit Structures definitions.
|
||||
@brief Diablo II Unit Structures definitions.
|
||||
|
||||
NOT TESTED IN 1.10 (1.09b)
|
||||
|
||||
NOT TESTED IN 1.10 (1.09b)
|
||||
|
||||
=================================================================*/
|
||||
|
||||
#pragma once
|
||||
@@ -16,6 +16,14 @@ struct Unit;
|
||||
struct SkillsBIN;
|
||||
struct SkillData;
|
||||
struct ObjectsBIN;
|
||||
struct NetClient;
|
||||
|
||||
struct Game;
|
||||
struct ActMap;
|
||||
struct ActData;
|
||||
struct Level;
|
||||
struct RoomEx;
|
||||
struct Room;
|
||||
|
||||
/*=================================================================*/
|
||||
/* Skill Structure. */
|
||||
@@ -59,7 +67,7 @@ struct Position
|
||||
DWORD y;
|
||||
};
|
||||
|
||||
struct Room//size=0x80
|
||||
/*struct Room//size=0x80
|
||||
{
|
||||
//ptRoom +48 0 = spawn new units (monster, objects e.tc), 1 = don't spawn any new units
|
||||
DWORD seed1; //+00
|
||||
@@ -79,23 +87,113 @@ struct Room//size=0x80
|
||||
BYTE isGenerated2:1;//???
|
||||
};
|
||||
};
|
||||
};
|
||||
};*/
|
||||
|
||||
struct ActMap//ptGame+BC size=0x60
|
||||
struct RoomEx //size=5C
|
||||
{
|
||||
DWORD isNotManaged;
|
||||
DWORD uk4;
|
||||
DWORD uk8;//size = 0x488
|
||||
Room* ptFirstRoom;
|
||||
DWORD __00[2]; //0x00
|
||||
RoomEx** roomExNear; //0x08
|
||||
DWORD __0C[5]; //0x0C
|
||||
struct {
|
||||
INT32 roomNumber; //0x00
|
||||
void* __04; //0x04
|
||||
PINT32 subNumber; //0x08
|
||||
} *pType2Info; //0x20
|
||||
RoomEx* ptNextRoomEx; //0x24
|
||||
UINT32 roomFlags; //0x28
|
||||
UINT32 roomsNearCount; //0x2C
|
||||
Room* ptRoom; //0x30
|
||||
INT32 posX; //0x34
|
||||
INT32 posY; //0x38
|
||||
INT32 sizeX; //0x3C
|
||||
INT32 sizeY; //0x40
|
||||
DWORD __44; //0x44
|
||||
UINT32 presetType; //0x48
|
||||
void* ptWarpTiles; //0x4C
|
||||
DWORD __50[2]; //0x50
|
||||
Level* ptLevel; //0x58
|
||||
};
|
||||
|
||||
struct Room //size=0x80
|
||||
{
|
||||
Room** ptNearRooms; //0x00
|
||||
DWORD __04[3]; //0x04
|
||||
RoomEx* ptRoomEx; //0x10
|
||||
DWORD __14[3]; //0x14
|
||||
void* coll; //0x20
|
||||
INT32 nbNearRooms; //0x24
|
||||
DWORD __28[9]; //0x28
|
||||
DWORD startX; //0x4C
|
||||
DWORD startY; //0x50
|
||||
DWORD sizeX; //0x54
|
||||
DWORD sizeY; //0x58
|
||||
DWORD __5C[6]; //0x5C
|
||||
Unit* ptFirstUnit; //0x74
|
||||
DWORD __78; //0x78
|
||||
Room* ptNextRoom; //0x7C
|
||||
};
|
||||
|
||||
struct Level //size=0x234
|
||||
{
|
||||
DWORD type; //+000
|
||||
DWORD flags; //+004
|
||||
DWORD __004_010[2]; //+008
|
||||
RoomEx* ptFirstRoomEx; //+010
|
||||
DWORD __014_01C[2]; //+014
|
||||
INT32 posX; //+01C
|
||||
INT32 posY; //+020
|
||||
INT32 sizeX; //+024
|
||||
INT32 sizeY; //+028
|
||||
DWORD __0C2_1AC[96]; //+02C
|
||||
Level* ptNextLevel; //+1AC
|
||||
DWORD __1B0; //+1B0
|
||||
ActData* ptActData; //+1B4
|
||||
DWORD __1B8_1C0[2]; //+1B8
|
||||
DWORD levelType; //+1C0
|
||||
DWORD seed1; //+1C4
|
||||
DWORD seed2; //+1C8
|
||||
DWORD uk_1CC; //+1CC
|
||||
UINT32 levelNo; //+1D0
|
||||
DWORD __1D4_234[96]; //+1D4
|
||||
};
|
||||
|
||||
struct ActData //size=0x488
|
||||
{
|
||||
DWORD seed1; //+000
|
||||
DWORD seed2; //+004
|
||||
DWORD nbRooms; //+008
|
||||
DWORD __00C_0094[34]; //+00C
|
||||
DWORD nTalRashaTombLevel; //094
|
||||
DWORD __098; //+098
|
||||
Game* ptGame; //+09C
|
||||
DWORD __0A0_450[237]; //+0A0
|
||||
BYTE difficulty; //+450
|
||||
BYTE __451_46C[27]; //+451
|
||||
ActMap* ptActMap; //+46C
|
||||
DWORD __470_484[5]; //+470
|
||||
DWORD nBossMummyTombLevel;//+484
|
||||
};
|
||||
|
||||
struct ActMap //size=0x60
|
||||
{
|
||||
DWORD isNotManaged; //+00
|
||||
DWORD __04; //+04
|
||||
DWORD townLevel; //+08
|
||||
DWORD seed; //+0C
|
||||
Room* ptFirstRoom; //+10
|
||||
DWORD actNumber; //+14
|
||||
DWORD __18_48[12]; //+18
|
||||
ActData* ptActData; //+48
|
||||
DWORD __50_5C[4]; //+4C
|
||||
void* ptMemoryPool; //+5C
|
||||
};
|
||||
|
||||
struct NetClient;
|
||||
//ptGame : 04E4007C
|
||||
struct Game
|
||||
{ //Offset from Code.
|
||||
{ //Offset from Code.
|
||||
BYTE uk1[0x18]; //+00
|
||||
DWORD _ptLock; //+18 Unknown
|
||||
DWORD memoryPool; //+1C Memory Pool (??)
|
||||
DWORD _ptLock; //+18 Unknown
|
||||
DWORD memoryPool; //+1C Memory Pool (??)
|
||||
BYTE uk2[0x4D]; //+20
|
||||
BYTE difficultyLevel; //+6D (Difficulty 0,1 or 2)
|
||||
WORD unknown1; //+6E Cube puts 4 here
|
||||
@@ -104,7 +202,9 @@ struct Game
|
||||
WORD unknown2; //+78
|
||||
BYTE uk4[0x0E]; //+7A
|
||||
NetClient* ptClient; //+88
|
||||
BYTE uk8C[0x30]; //+8C
|
||||
BYTE __8C[0x1C]; //+8C
|
||||
DWORD gameFrame; //+A8
|
||||
BYTE __AC[0x10]; //+AC
|
||||
ActMap* mapAct[5]; //+BC
|
||||
BYTE ukD0[0x1024]; //+D0
|
||||
DWORD* game10F4; //+10F4
|
||||
@@ -117,7 +217,7 @@ struct Game
|
||||
|
||||
|
||||
struct Path //(8 dword)
|
||||
{ //Offset from Code. Size: 20
|
||||
{ //Offset from Code. Size: 20
|
||||
WORD uk1; //+00
|
||||
WORD mapx; //+02
|
||||
WORD uk2; //+04
|
||||
@@ -132,7 +232,7 @@ struct Path //(8 dword)
|
||||
|
||||
|
||||
struct Inventory
|
||||
{ //Offset from Code. Size: 30 <EFBFBD> 40
|
||||
{ //Offset from Code. Size: 30 to 40
|
||||
DWORD tag; //+00 = 0x01020304
|
||||
BYTE uk1[0x04]; //+04 =? 0
|
||||
Unit* ptChar; //+08
|
||||
@@ -200,24 +300,49 @@ struct Stats //sizeof(Stats)=0x64
|
||||
DWORD unknow2; //+60 (=0)
|
||||
};
|
||||
|
||||
struct AIControl
|
||||
{
|
||||
DWORD specialState; // +00 SpecialState - stuff like terror, confusion goes here
|
||||
void* aiFunction; // +04 fpAiFunction(); - the primary ai function to call (void * __fastcall)(pGame,pUnit,pAiTickArgs);
|
||||
DWORD aiFlags; // +08 AiFlags
|
||||
DWORD ownerGUID; // +0C OwnerGUID - the global unique identifier of the boss or minion owner
|
||||
DWORD ownerType; // +10 eOwnerType - the unit type of the boss or minion owner
|
||||
DWORD args[3]; // +14 dwArgs[3] - three dwords holding custom data used by ai func to store counters (etc)
|
||||
void* cmdCurrent; // +20 pCmdCurrents
|
||||
void* cmdLast; // +24 pCmdLast
|
||||
Game* ptGame; // +28 pGame
|
||||
DWORD ownerGUID2; // +2C OwnerGUID - the same as +008
|
||||
DWORD ownerType2; // +30 eOwnerType - the same as +00C
|
||||
void* minionList; // +34 pMinionList - list of all minions, for boss units (SetBoss in MonStats, Unique, SuperUnique etc)
|
||||
DWORD trapNo; // +3C eTrapNo - used by shadows for summoning traps (so they stick to one type usually)
|
||||
};
|
||||
|
||||
struct MonsterData // sizeof(MonsterData)=0x60
|
||||
{ //Offset from Code.
|
||||
BYTE uk[0x16]; //+00
|
||||
union {
|
||||
WORD flags; //+16
|
||||
struct {
|
||||
WORD fuk1:1;
|
||||
WORD isSuperUnique:1;
|
||||
WORD isChampion:1;
|
||||
WORD isUnique:1;
|
||||
WORD fuk2:13;
|
||||
MonStatsBIN* ptMonStats; //+000 - pMonStats - record in monstats.txt
|
||||
BYTE components[0x10]; //+004 - Components[16] - bytes holding the component Ids for each component; Order: HD, TR, LG, RA, LA, RH, LH, SH, S1, S2, S3, S4, S5, S6, S7, S8
|
||||
WORD seed; //+014 - NameSeed
|
||||
union
|
||||
{
|
||||
BYTE flags; //+016 - TypeFlags
|
||||
struct
|
||||
{
|
||||
BYTE isOther:1; // MONTYPE_OTHER(set for some champs, uniques)
|
||||
BYTE isSuperUnique:1; // MONTYPE_SUPERUNIQUE
|
||||
BYTE isChampion:1; // MONTYPE_CHAMPION
|
||||
BYTE isUnique:1; // MONTYPE_UNIQUE
|
||||
BYTE isMinion:1; // MONTYPE_MINION
|
||||
BYTE isPossessed:1; // MONTYPE_POSSESSED
|
||||
BYTE isGhostly:1; // MONTYPE_GHOSTLY
|
||||
BYTE isMultishot:1; // MONTYPE_MULTISHOT
|
||||
};
|
||||
};
|
||||
BYTE uk1[0x0E]; //+18
|
||||
WORD superUniqueID; //+26
|
||||
void* unknow1; //+28
|
||||
BYTE uk2[0x38]; //+28
|
||||
BYTE lastMode; //+017 - eLastMode
|
||||
DWORD duriel; //+018 - dwDuriel - set only for duriel
|
||||
BYTE monUModList[10]; //+01C - MonUModList[9] - nine bytes holding the Ids for each MonUMod assigned to the unit
|
||||
DWORD superUniqueID; //+026
|
||||
AIControl* ptAiGeneral; //+02A
|
||||
BYTE uk2[0x32]; //+02E
|
||||
};
|
||||
|
||||
struct ObjectData
|
||||
@@ -226,15 +351,15 @@ struct ObjectData
|
||||
BYTE levelID;
|
||||
};
|
||||
/*
|
||||
Kingpin: struct MonsterData
|
||||
{
|
||||
BYTE uk1[0x13]; // +00
|
||||
DWORD Flags; // +14
|
||||
DWORD uk2; // +18
|
||||
DWORD MinionOwnerID; // +1C
|
||||
BYTE uk3[0x5]; // +20
|
||||
WORD SuperUniqueID; // +26 Superunique ID of monster
|
||||
D2Game* ptGame; // +28 ptGame
|
||||
Kingpin: struct MonsterData
|
||||
{
|
||||
BYTE uk1[0x13]; // +00
|
||||
DWORD Flags; // +14
|
||||
DWORD uk2; // +18
|
||||
DWORD MinionOwnerID; // +1C
|
||||
BYTE uk3[0x5]; // +20
|
||||
WORD SuperUniqueID; // +26 Superunique ID of monster
|
||||
D2Game* ptGame; // +28 ptGame
|
||||
};
|
||||
*/
|
||||
|
||||
@@ -269,27 +394,27 @@ struct ItemData//size=0x74
|
||||
};
|
||||
};
|
||||
/*
|
||||
ITEMFLAG_NEWITEM = 0x00000001,
|
||||
ITEMFLAG_TAGETING = 0x00000004,
|
||||
ITEMFLAG_UNIDENTIFIED = 0x00000010,
|
||||
ITEMFLAG_QUANTITY = 0x00000020,
|
||||
ITEMFLAG_Durability = 0x00000100,
|
||||
ITEMFLAG_NEWITEM = 0x00000001,
|
||||
ITEMFLAG_TAGETING = 0x00000004,
|
||||
ITEMFLAG_UNIDENTIFIED = 0x00000010,
|
||||
ITEMFLAG_QUANTITY = 0x00000020,
|
||||
ITEMFLAG_Durability = 0x00000100,
|
||||
ITEMFLAG_UNKNOWN2 = 0x00000400,
|
||||
ITEMFLAG_SOCKETED = 0x00000800,
|
||||
ITEMFLAG_NON_SELLABLE = 0x00001000,
|
||||
ITEMFLAG_NEWITEM2 = 0x00002000,
|
||||
ITEMFLAG_SOCKETED = 0x00000800,
|
||||
ITEMFLAG_NON_SELLABLE = 0x00001000,
|
||||
ITEMFLAG_NEWITEM2 = 0x00002000,
|
||||
ITEMFLAG_UNKNOWN3 = 0x00004000,
|
||||
ITEMFLAG_CHECKSECPRICE = 0x00010000,
|
||||
ITEMFLAG_CHECKGAMBLEPRICE = 0x00020000,
|
||||
ITEMFLAG_CHECKSECPRICE = 0x00010000,
|
||||
ITEMFLAG_CHECKGAMBLEPRICE = 0x00020000,
|
||||
ITEMFLAG_UNKNOWN4 = 0x00080000,
|
||||
ITEMFLAG_INDESTRUCTIBLE(ETHERAL) = 0x00400000,
|
||||
ITEMFLAG_INDESTRUCTIBLE(ETHERAL) = 0x00400000,
|
||||
ITEMFLAG_UNKNOWN5 = 0x00800000,
|
||||
ITEMFLAG_FROMPLAYER = 0x01000000,
|
||||
ITEMFLAG_FROMPLAYER = 0x01000000,
|
||||
ITEMFLAG_RUNEWORD = 0x04000000
|
||||
*/
|
||||
DWORD guid1; //+1C Global Unique ID 1
|
||||
DWORD guid2; //+20 Global Unique ID 2
|
||||
DWORD guid3; //+24 Global Unique ID 3
|
||||
DWORD guid1; //+1C Global Unique ID 1
|
||||
DWORD guid2; //+20 Global Unique ID 2
|
||||
DWORD guid3; //+24 Global Unique ID 3
|
||||
DWORD uniqueID; //+28
|
||||
BYTE ilvl; //+2C
|
||||
BYTE uk1[0x03]; //+2D
|
||||
@@ -300,7 +425,7 @@ ITEMFLAG_RUNEWORD = 0x04000000
|
||||
WORD prefix[3]; //+38
|
||||
WORD suffix[3]; //+3E
|
||||
BYTE equipLoc; //+44
|
||||
/* emplacement si <20>quip<EFBFBD>
|
||||
/* location if equipped
|
||||
* 00 = noequip/inBelt
|
||||
* 01 = head
|
||||
* 02 = neck
|
||||
@@ -326,7 +451,7 @@ ITEMFLAG_RUNEWORD = 0x04000000
|
||||
BYTE ItemData3; //+47 //D2Common10854 D2Common10853
|
||||
BYTE pEarLevel; //+48
|
||||
BYTE varGfx; //+49
|
||||
char IName[0x12]; //+4A //inscribed/ear name
|
||||
char IName[0x12]; //+4A //inscribed/ear name
|
||||
Inventory* ptInventory; //+5C
|
||||
Unit* ptPrevItem; //+60
|
||||
Unit* ptNextItem; //+64
|
||||
@@ -360,12 +485,12 @@ struct NetClient
|
||||
//+1A8 is ptGame
|
||||
//+4A8 ptNextClient
|
||||
/*
|
||||
Kingpin: ptPclient
|
||||
+16C is either act or unit type
|
||||
+170 Active UniqueID for player
|
||||
+174 Active ptPlayer on Client
|
||||
+1a8 ptGame
|
||||
+1b4 Current or next ptRoom
|
||||
Kingpin: ptPclient
|
||||
+16C is either act or unit type
|
||||
+170 Active UniqueID for player
|
||||
+174 Active ptPlayer on Client
|
||||
+1a8 ptGame
|
||||
+1b4 Current or next ptRoom
|
||||
*/
|
||||
};
|
||||
/*
|
||||
@@ -376,20 +501,20 @@ struct PlayerData
|
||||
NetClient* ptNetClient; //+9C
|
||||
};
|
||||
*/
|
||||
struct PlayerData
|
||||
{
|
||||
char name[0x10]; //+00 Player Name
|
||||
void* ptQuest[3]; //+10 Quest Pointers for each difficulty
|
||||
struct PlayerData
|
||||
{
|
||||
char name[0x10]; //+00 Player Name
|
||||
void* ptQuest[3]; //+10 Quest Pointers for each difficulty
|
||||
BYTE uk1[0x18]; //+1C //before : 0x14
|
||||
void* ptArenaUnit; //+34 ptArena for the Unit
|
||||
void* ptArenaUnit; //+34 ptArena for the Unit
|
||||
BYTE uk2[0x4]; //+38 //before : 0x7
|
||||
WORD MPSourcePortalUniqueID; //+3C Source Portal Unique_ID
|
||||
WORD MPSourcePortalUniqueID; //+3C Source Portal Unique_ID
|
||||
BYTE uk3[0x2]; //+3E
|
||||
WORD MPDestPortalUniqueID; //+40 Destination Portal Unique_ID
|
||||
BYTE uk4[0x06]; //+42
|
||||
BYTE ptObjectUnID; //+48 Object UniqueID for TownPortals
|
||||
BYTE uk5[0x53]; //+49
|
||||
NetClient* ptNetClient; //+9C ptClient
|
||||
WORD MPDestPortalUniqueID; //+40 Destination Portal Unique_ID
|
||||
BYTE uk4[0x06]; //+42
|
||||
BYTE ptObjectUnID; //+48 Object UniqueID for TownPortals
|
||||
BYTE uk5[0x53]; //+49
|
||||
NetClient* ptNetClient; //+9C ptClient
|
||||
};
|
||||
|
||||
|
||||
@@ -400,11 +525,11 @@ struct Unit
|
||||
DWORD nUnitType; //+00
|
||||
union{
|
||||
DWORD nPlayerClass;
|
||||
DWORD nTxtFileNo;
|
||||
DWORD nTxtFileNo;
|
||||
}; //+04
|
||||
DWORD nUnitId; //+08
|
||||
DWORD nItemNum; //+0C
|
||||
DWORD CurrentAnim; //+10
|
||||
DWORD mode; //+10
|
||||
union{
|
||||
MonsterData* ptMonsterData;
|
||||
ObjectData* ptObjectData;
|
||||
@@ -452,7 +577,7 @@ struct Unit
|
||||
BYTE uk10[0x0C]; //+D4
|
||||
Unit* ptFirstMonster; //+E0
|
||||
Unit* Unit1; //+E4
|
||||
Unit* Unit2; //+E8
|
||||
Unit* ptNextUnitInRoom; //+E8
|
||||
BYTE uk11[0x08]; //+EC
|
||||
union{
|
||||
CBPlayerData* ptCBPlayerData;
|
||||
@@ -480,60 +605,60 @@ struct ItemMod
|
||||
|
||||
struct AIStruct
|
||||
{
|
||||
DWORD mSpawn; // +00
|
||||
void* mAIFunc; // +04
|
||||
DWORD mUnknown1[8]; // +08
|
||||
D2Game* mGame; // +28
|
||||
DWORD mMinionOwner; // +2C
|
||||
DWORD mOwnerType; // +30
|
||||
DWORD mSpawn; // +00
|
||||
void* mAIFunc; // +04
|
||||
DWORD mUnknown1[8]; // +08
|
||||
D2Game* mGame; // +28
|
||||
DWORD mMinionOwner; // +2C
|
||||
DWORD mOwnerType; // +30
|
||||
};
|
||||
|
||||
|
||||
struct LocInfo
|
||||
{ //Offset from Code
|
||||
Unit* noneLoc; //+00
|
||||
Unit* headLoc; //+04
|
||||
Unit* neckLoc; //+08
|
||||
Unit* torsoLoc; //+0c
|
||||
Unit* rightArmLoc; //+10
|
||||
Unit* leftArmLoc; //+14
|
||||
Unit* rightRingLoc; //+18
|
||||
Unit* leftRingLoc; //+1c
|
||||
Unit* beltLoc; //+20
|
||||
Unit* feetLoc; //+24
|
||||
Unit* glovesLoc; //+28
|
||||
Unit* noneLoc; //+00
|
||||
Unit* headLoc; //+04
|
||||
Unit* neckLoc; //+08
|
||||
Unit* torsoLoc; //+0c
|
||||
Unit* rightArmLoc; //+10
|
||||
Unit* leftArmLoc; //+14
|
||||
Unit* rightRingLoc; //+18
|
||||
Unit* leftRingLoc; //+1c
|
||||
Unit* beltLoc; //+20
|
||||
Unit* feetLoc; //+24
|
||||
Unit* glovesLoc; //+28
|
||||
};
|
||||
|
||||
struct ItemData
|
||||
struct ItemData
|
||||
{ // Offset from Code
|
||||
DWORD quality; // +00.
|
||||
DWORD lowSeed; // +04.
|
||||
DWORD highSeed; // +08.
|
||||
DWORD unknown1; // +0c.
|
||||
DWORD startLowSeed; // +10.
|
||||
DWORD cmdFlags; // +14.
|
||||
DWORD flags; // +18.
|
||||
DWORD unknown2[2]; // +1C
|
||||
DWORD originID; // +24.
|
||||
DWORD iLvl; // +28.
|
||||
WORD version; // +2C.
|
||||
WORD prefix; // +2E.
|
||||
WORD suffix; // +30.
|
||||
WORD autoPrefix; // +32.
|
||||
WORD prefix1; // +34.
|
||||
WORD prefix2; // +36.
|
||||
WORD prefix3; // +38.
|
||||
WORD suffix1; // +3A.
|
||||
WORD suffix2; // +3C.
|
||||
WORD suffix3; // +3E.
|
||||
BYTE bodyLoc; // +40. // 0=inv/stash 4=gaucheS 5=droiteS
|
||||
BYTE inPage; // +41. // FF=equip 00=inv 04=stash
|
||||
BYTE unknown3[3]; // +42
|
||||
BYTE picture[8]; // +45
|
||||
DWORD ilvl; // +4C
|
||||
DWORD lowSeed; // +04.
|
||||
DWORD highSeed; // +08.
|
||||
DWORD unknown1; // +0c.
|
||||
DWORD startLowSeed; // +10.
|
||||
DWORD cmdFlags; // +14.
|
||||
DWORD flags; // +18.
|
||||
DWORD unknown2[2]; // +1C
|
||||
DWORD originID; // +24.
|
||||
DWORD iLvl; // +28.
|
||||
WORD version; // +2C.
|
||||
WORD prefix; // +2E.
|
||||
WORD suffix; // +30.
|
||||
WORD autoPrefix; // +32.
|
||||
WORD prefix1; // +34.
|
||||
WORD prefix2; // +36.
|
||||
WORD prefix3; // +38.
|
||||
WORD suffix1; // +3A.
|
||||
WORD suffix2; // +3C.
|
||||
WORD suffix3; // +3E.
|
||||
BYTE bodyLoc; // +40. // 0=inv/stash 4=gaucheS 5=droiteS
|
||||
BYTE inPage; // +41. // FF=equip 00=inv 04=stash
|
||||
BYTE unknown3[3]; // +42
|
||||
BYTE picture[8]; // +45
|
||||
DWORD ilvl; // +4C
|
||||
};
|
||||
|
||||
struct PresetUnit
|
||||
struct PresetUnit
|
||||
{ //Offset from Code
|
||||
DWORD unitType; //+00
|
||||
DWORD txtFileNo; //+04
|
||||
@@ -546,128 +671,128 @@ struct PresetUnit
|
||||
|
||||
struct MissileData
|
||||
{
|
||||
+04 flags
|
||||
+08 0 on start
|
||||
+0c -1 on start
|
||||
+20 nDirection
|
||||
+28 range?
|
||||
+2c range?
|
||||
+30 level
|
||||
+34 number of pierces (byte)
|
||||
+35 (byte)
|
||||
+36 (byte)
|
||||
+37 (byte)
|
||||
+38 range-activate
|
||||
+04 flags
|
||||
+08 0 on start
|
||||
+0c -1 on start
|
||||
+20 nDirection
|
||||
+28 range?
|
||||
+2c range?
|
||||
+30 level
|
||||
+34 number of pierces (byte)
|
||||
+35 (byte)
|
||||
+36 (byte)
|
||||
+37 (byte)
|
||||
+38 range-activate
|
||||
};
|
||||
|
||||
|
||||
struct Combat
|
||||
struct Combat
|
||||
{
|
||||
DWORD mHeader; // +00 : Always 0x32
|
||||
DWORD mHeader; // +00 : Always 0x32
|
||||
DWORD mDisplayFlag; // +04 : Affect critical hit etc ...
|
||||
DWORD mPhysicalDmg; // +08 : Values are << 8
|
||||
DWORD mUnknown1; // +0C
|
||||
DWORD mFireDmg; // +10 : Values are << 8
|
||||
DWORD mUnknown2; // +14
|
||||
DWORD mBurnLeng; // +18
|
||||
DWORD mLtngDmg; // +1C : values are << 8
|
||||
DWORD mMagDmg; // +20 : values are << 8
|
||||
DWORD mColdDmg; // +24 : values are << 8
|
||||
DWORD mPoisDmg; // +28 : ??
|
||||
DWORD mPoisLeng; // +2C
|
||||
DWORD mColdLeng; // +30
|
||||
DWORD mFreezeLeng; // +34
|
||||
DWORD mLifeSteal; // +38
|
||||
DWORD mManaSteal; // +3C
|
||||
DWORD mUnknwon3; // +40
|
||||
DWORD mStunLeng; // +44
|
||||
DWORD mUnknown4; // +48
|
||||
DWORD mTotalDamage; // +4C
|
||||
DWORD mUnknown5[6]; // +50
|
||||
DWORD mOverlay; // +68
|
||||
DWORD mUnknwon6; // +6C
|
||||
DWORD mBurnLeng; // +18
|
||||
DWORD mLtngDmg; // +1C : values are << 8
|
||||
DWORD mMagDmg; // +20 : values are << 8
|
||||
DWORD mColdDmg; // +24 : values are << 8
|
||||
DWORD mPoisDmg; // +28 : ??
|
||||
DWORD mPoisLeng; // +2C
|
||||
DWORD mColdLeng; // +30
|
||||
DWORD mFreezeLeng; // +34
|
||||
DWORD mLifeSteal; // +38
|
||||
DWORD mManaSteal; // +3C
|
||||
DWORD mUnknwon3; // +40
|
||||
DWORD mStunLeng; // +44
|
||||
DWORD mUnknown4; // +48
|
||||
DWORD mTotalDamage; // +4C
|
||||
DWORD mUnknown5[6]; // +50
|
||||
DWORD mOverlay; // +68
|
||||
DWORD mUnknwon6; // +6C
|
||||
};
|
||||
|
||||
|
||||
struct Node
|
||||
{ //Offset from Code.
|
||||
DWORD flag; //+00 //Yoh : null->flag
|
||||
Unit* ptItem; //+04 //Yoh : ItemData=>Unit
|
||||
DWORD unID; //+08
|
||||
DWORD page; //+0c //Yoh plutot etat : inventory/stash=1; inv-belt=2; equip=3
|
||||
Node* nextNode; //+10
|
||||
DWORD flag; //+00 //Yoh : null->flag
|
||||
Unit* ptItem; //+04 //Yoh : ItemData=>Unit
|
||||
DWORD unID; //+08
|
||||
DWORD page; //+0c //Yoh plutot etat : inventory/stash=1; inv-belt=2; equip=3
|
||||
Node* nextNode; //+10
|
||||
};
|
||||
|
||||
|
||||
|
||||
struct MonsterData // size110 : 60
|
||||
{
|
||||
AIStruct* AIPtr;
|
||||
void* unkonwPtr1;
|
||||
void* uniqueInfo;
|
||||
void* spawnInfo;
|
||||
void* unknownPtr2;
|
||||
DWORD unkown[8];
|
||||
void* lvlPtr;
|
||||
MonStatTxt* monstatPtr;
|
||||
AIStruct* AIPtr;
|
||||
void* unkonwPtr1;
|
||||
void* uniqueInfo;
|
||||
void* spawnInfo;
|
||||
void* unknownPtr2;
|
||||
DWORD unkown[8];
|
||||
void* lvlPtr;
|
||||
MonStatTxt* monstatPtr;
|
||||
};
|
||||
|
||||
|
||||
struct Unit
|
||||
struct Unit
|
||||
{ //Offset from Code.
|
||||
DWORD nUnitType; //+00
|
||||
union
|
||||
{
|
||||
DWORD nTxtFileNo;
|
||||
DWORD nPlayerClass;
|
||||
}; //+04
|
||||
union
|
||||
{
|
||||
DWORD nTxtFileNo;
|
||||
DWORD nPlayerClass;
|
||||
}; //+04
|
||||
|
||||
DWORD nUnitId; //+08
|
||||
DWORD eMode; //+0c
|
||||
DWORD* unknow1; //+10
|
||||
DWORD nAct; //+14
|
||||
DWORD pActRelated; //+18
|
||||
DWORD unknown2[4]; //Unknown Data at +1C
|
||||
D2Seed nSeed; //+2C
|
||||
DWORD startSeed; //+34
|
||||
Path* pPos; //+38
|
||||
DWORD* unknow1; //+10
|
||||
DWORD nAct; //+14
|
||||
DWORD pActRelated; //+18
|
||||
DWORD unknown2[4]; //Unknown Data at +1C
|
||||
D2Seed nSeed; //+2C
|
||||
DWORD startSeed; //+34
|
||||
Path* pPos; //+38
|
||||
DWORD unknown3[6]; //Unknown Data at +3C
|
||||
DWORD animSpeed; //+54
|
||||
DWORD unknown32[2]; //+58
|
||||
BYTE COFString[12]; //+60
|
||||
Stats* ptStats; //+6C
|
||||
|
||||
union
|
||||
{
|
||||
DWORD animSpeed; //+54
|
||||
DWORD unknown32[2]; //+58
|
||||
BYTE COFString[12]; //+60
|
||||
Stats* ptStats; //+6C
|
||||
|
||||
union
|
||||
{
|
||||
PlayerData* pPlayerData;
|
||||
MonsterData* pMonsterData;
|
||||
ItemData* pItemData;
|
||||
MissileData* pMissile;
|
||||
MissileData* pMissile;
|
||||
ObjectData* pObjectData;
|
||||
}; //+70
|
||||
|
||||
DWORD unknown5[2]; //+74
|
||||
BYTE unknown6[2]; //+7C
|
||||
BYTE rndDmg[2]; //+7e
|
||||
DWORD unknown7; //+80
|
||||
BYTE unknown6[2]; //+7C
|
||||
BYTE rndDmg[2]; //+7e
|
||||
DWORD unknown7; //+80
|
||||
Inventory* ptInventory; //+84
|
||||
DWORD unknown8[4]; //+88
|
||||
DWORD startNull; //+98
|
||||
DWORD unknown9[2]; //+9c
|
||||
D2Game* ptGame; //+a4
|
||||
DWORD unknown10[4]; //+a8
|
||||
DWORD startNull; //+98
|
||||
DWORD unknown9[2]; //+9c
|
||||
D2Game* ptGame; //+a4
|
||||
DWORD unknown10[4]; //+a8
|
||||
DWORD nOwnerType; //+b8
|
||||
DWORD nOwnerId; //+bc
|
||||
DWORD unknown11[3]; //+c0
|
||||
D2Info* ptInfo; //+cc
|
||||
Combat* ptCombat; //+d0
|
||||
DWORD unknown12[5]; //+d4
|
||||
DWORD flags; //+e8
|
||||
DWORD LODflag; //+ec
|
||||
DWORD unknown11[3]; //+c0
|
||||
D2Info* ptInfo; //+cc
|
||||
Combat* ptCombat; //+d0
|
||||
DWORD unknown12[5]; //+d4
|
||||
DWORD flags; //+e8
|
||||
DWORD LODflag; //+ec
|
||||
DWORD unknown13[7]; //+f0
|
||||
Unit* pNext; //+10c
|
||||
DWORD unknown14[2]; //+110 //YOH
|
||||
union
|
||||
union
|
||||
{
|
||||
ItemData* ptItemData;
|
||||
void* ptData;
|
||||
|
1061
Commons/d2BinFile.h
1061
Commons/d2BinFile.h
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
/*=================================================================
|
||||
File created by Yohann NICOLAS.
|
||||
|
||||
@brief Diablo II Tbl Structures definitions.
|
||||
@brief Diablo II Tbl Structures definitions.
|
||||
|
||||
=================================================================*/
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/*=================================================================
|
||||
File created by Yohann NICOLAS.
|
||||
|
||||
NOT TESTED IN 1.10 (1.09b)
|
||||
NOT TESTED IN 1.10 (1.09b)
|
||||
|
||||
=================================================================*/
|
||||
|
||||
@@ -15,15 +15,15 @@ struct Room;
|
||||
#pragma pack(1)
|
||||
struct sWinMessage
|
||||
{
|
||||
void* msg;
|
||||
DWORD msg;
|
||||
DWORD type;
|
||||
DWORD uk1;
|
||||
DWORD key;
|
||||
WORD x;
|
||||
WORD y;
|
||||
DWORD uk3;
|
||||
DWORD uk4;
|
||||
DWORD managed;
|
||||
DWORD unmanaged;
|
||||
DWORD unmanaged;
|
||||
};
|
||||
#pragma pack()
|
||||
|
||||
@@ -60,11 +60,11 @@ struct saveBitField
|
||||
|
||||
struct BINField
|
||||
{
|
||||
char* fieldName;
|
||||
int type;
|
||||
DWORD strLength;
|
||||
DWORD offset;
|
||||
void* lookup;
|
||||
char* fieldName;
|
||||
int type;
|
||||
DWORD strLength;
|
||||
DWORD offset;
|
||||
void* lookup;
|
||||
};
|
||||
|
||||
struct ItemGenerationData //size=0x84
|
||||
@@ -95,6 +95,17 @@ struct ItemGenerationData //size=0x84
|
||||
};
|
||||
};
|
||||
|
||||
struct AIParam {
|
||||
void* control; //+0x00
|
||||
void* u_0x04; //+0x04
|
||||
Unit* target; //+0x08
|
||||
void* u_0x0C; //+0x0C
|
||||
void* u_0x10; //+0x10
|
||||
DWORD distanceToTarget; //+0x14
|
||||
BOOL engagedInCombat; //+0x18
|
||||
MonStatsBIN* ptMonStatsBIN; //+0x1C
|
||||
void* ptMonStats2BIN; //+0x20
|
||||
};
|
||||
|
||||
/*=================================================================*/
|
||||
/* Data Structure to Update Client */
|
||||
|
@@ -1,15 +1,15 @@
|
||||
/*=================================================================
|
||||
File created by Yohann NICOLAS.
|
||||
|
||||
Constants of D2
|
||||
NOT TESTED IN 1.10 (from 1.09b)
|
||||
Constants of D2
|
||||
NOT TESTED IN 1.10 (from 1.09b)
|
||||
|
||||
=================================================================*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/*==================================================================================*/
|
||||
/*
|
||||
/*
|
||||
* Constants & Enumerations.
|
||||
*/
|
||||
/*==================================================================================*/
|
||||
@@ -18,29 +18,29 @@ enum D2TypeSize { D2TS_UNITSIZE = 0x011C };
|
||||
enum D2DifficultyModes { D2DM_NORMAL, D2DM_NIGHTMARE, D2DM_HELL };
|
||||
enum D2PlayerClass { D2PC_AMAZON, D2PC_SORCERESS, D2PC_NECROMANCER, D2PC_PALADIN, D2PC_BARBARIAN, D2PC_DRUID, D2PC_ASSASSIN };
|
||||
|
||||
// add the prefix "<22>c" before the number directly in the text.
|
||||
enum D2Color
|
||||
{
|
||||
BLACK=6,
|
||||
// BLACK_BIS=14,
|
||||
DARK_GRAY=5,
|
||||
GRAY=16,
|
||||
LIGHT_GRAY=15,
|
||||
// WHITE_BIS=13,
|
||||
WHITE=0,
|
||||
RED=1,
|
||||
BRIGHT_WHITE=18,
|
||||
GOLD=4,
|
||||
DARK_YELLOW=7,
|
||||
YELLOW=9,
|
||||
ORANGE=8,
|
||||
DARKEST_GREEN=10,
|
||||
DARK_GREEN=12,
|
||||
GREEN=2,
|
||||
BLUE=3,
|
||||
GOLD=4,
|
||||
DARK_GRAY=5,
|
||||
// INVISIBLE=6,
|
||||
DARK_YELLOW=7,
|
||||
ORANGE=8,
|
||||
YELLOW=9,
|
||||
DARKEST_GREEN=0xA,
|
||||
PURPLE=0xB,
|
||||
DARK_GREEN=0xC,
|
||||
// WHITE_BIS=0xD,
|
||||
// INVISIBLE2=0xE,
|
||||
LIGHT_GRAY=0xF,
|
||||
GRAY=0x10,
|
||||
// VERY_WIERD=0x11,
|
||||
BRIGHT_WHITE=0x12,
|
||||
CRYSTAL_RED=0x13,
|
||||
// WIERD_YELLOW=0x14
|
||||
PURPLE=11,
|
||||
RED=1,
|
||||
CRYSTAL_RED=19,
|
||||
// VERY_WIERD=17,
|
||||
};
|
||||
|
||||
enum D2Lang
|
||||
@@ -52,8 +52,8 @@ enum D2Lang
|
||||
LNG_POR,// Portuguese
|
||||
LNG_ITA,// Italian
|
||||
LNG_JPN,// Japanese
|
||||
LNG_KOR,// Korean
|
||||
LNG_SIN,//
|
||||
LNG_KOR,// Korean
|
||||
LNG_SIN,//
|
||||
LNG_CHI,// Chinese
|
||||
LNG_POL,// Polish
|
||||
LNG_RUS,// Russian
|
||||
@@ -445,7 +445,7 @@ enum D2Mod
|
||||
DEXTERITY,
|
||||
VITALITY,
|
||||
ENERGY,
|
||||
MAXMANA,
|
||||
MAXMANA,
|
||||
MAXMANA_PERCENT,
|
||||
MAXHP,
|
||||
MAXHP_PERCENT,
|
||||
@@ -824,6 +824,30 @@ enum D2UnitType
|
||||
UNIT_ROOMTILE
|
||||
};
|
||||
|
||||
enum D2UnitMode
|
||||
{
|
||||
UNIT_MODE_DEATH = 0,
|
||||
UNIT_MODE_NEUTRAL,
|
||||
UNIT_MODE_WALK,
|
||||
UNIT_MODE_RUN,
|
||||
UNIT_MODE_GET_HIT,
|
||||
UNIT_MODE_TOWN_NEUTRAL,
|
||||
UNIT_MODE_TOWN_WALK,
|
||||
UNIT_MODE_ATTACK1,
|
||||
UNIT_MODE_ATTACK2,
|
||||
UNIT_MODE_BLOCK,
|
||||
UNIT_MODE_CAST,
|
||||
UNIT_MODE_THROW,
|
||||
UNIT_MODE_KICK,
|
||||
UNIT_MODE_SKILL1,
|
||||
UNIT_MODE_SKILL2,
|
||||
UNIT_MODE_SKILL3,
|
||||
UNIT_MODE_SKILL4,
|
||||
UNIT_MODE_DEAD,
|
||||
UNIT_MODE_SEQUENCE,
|
||||
UNIT_MODE_KNOCK_BACK
|
||||
};
|
||||
|
||||
enum D2BodyLoc
|
||||
{
|
||||
LOC_HEAD =1,
|
||||
|
Reference in New Issue
Block a user