12Sky Web Tool Project by DOS

01/19/2020 03:57 lnwnuyhodd#1
12Sky Web Tool Project by DOS

data type support : char,int,define,structure,array[]
file support :
12Sky2 File format 005_00001.IMG - 005_00006.IMG & *.WREGION

for 12Sky1, edit something with load and save at function Compress and Uncompress in index.html file.

url : [Only registered and activated users can see links. Click Here To Register...]

How to use:
1.download 12SkyWebTool.rar and extract into web server folder, open browser with your server url

2. Click the Edit Structure button and paste the C ++ structure. Click Save when done.
[Only registered and activated users can see links. Click Here To Register...]

3.Click the Choose File button, select a file and click Open.
[Only registered and activated users can see links. Click Here To Register...]

4.Click the Save button when you're finished editing.
[Only registered and activated users can see links. Click Here To Register...]

5.
[Only registered and activated users can see links. Click Here To Register...]

6.V2 : CSV function
[Only registered and activated users can see links. Click Here To Register...]

Credit :
pako.js for zlib compress/uncompress
webix.com for ui framework
and Me for coding :)

Code:
typedef struct
{
	int mVALUE01;
	int mVALUE02;
	int mVALUE03;
	int mVALUE04;
	int mCENTER[3];
	int mRADIUS;
}
WORLD_REGION_INFO;
//*.WREGION file format structure

typedef struct
{
	int lIndex;
	int lRangeInfo[3];
	int lAttackPower;
	int lDefensePower;
	int lAttackSuccess;
	int lAttackBlock;
	int lElementAttack;
	int lLife;
	int lMana;
}
LEVEL_INFO;
//005_00001.IMG file format structure

#define ITEM_INFO_NAME_NUM		50
#define ITEM_INFO_DESC_NUM		6
#define ITEM_INFO_DESC_LENGTH	101
typedef struct
{
	int iIndex;
	char iName[ITEM_INFO_NAME_NUM];
	char iDescription[ITEM_INFO_DESC_NUM][ITEM_INFO_DESC_LENGTH];
	int iType;
	int iSort;
	int iDataNumber2D;
	int iDataNumber3D;
	int iAddDataNumber3D;
	int iLevel;
	int iMartialLevel;
	int iEquipInfo[2];
	int iBuyCost;
	int iSellCost;
	int iBuyCPCost;
	int iLevelLimit;
	int iMartialLevelLimit;
	int iCheckMonsterDrop;
	int iCheckNPCSell;
	int iCheckNPCShop;
	int iCheckAvatarDrop;
	int iCheckAvatarTrade;
	int iCheckAvatarShop;
	int iCheckImprove;
	int iCheckHighImprove;
	int iCheckHighItem;
	int iCheckLowItem;
	int iCheckExchange;
	int iCheckItemSet;
	int iCheckExpire;
	int iStrength;
	int iWisdom;
	int iVitality;
	int iKi;
	int iLuck;
	int iAttackPower;
	int iDefensePower;
	int iAttackSucess;
	int iAttackBlock;
	int iElementAttackPower;
	int iElementDefensePower;
	int iCritical;
	int iPotionType[2];
	int iGainSkillNumber;
	int iLastAttackBonusInfo[2];
	int iCapeInfo[3];
	int iBonusSkillInfo[8][2];
	int iUnk[10];
	int iBonusHP;
	int iBonusMP;
	int iunk115_8[8][2];
}
ITEM_INFO;
//005_00002.IMG file format structure

typedef struct
{
	int sManaUse;
	int sRecoverInfo[2];
	int sStunAttack;
	int sStunDefense;
	int sFastRunSpeed;
	int sAttackInfo[3];
	int sRunTime;
	int sChargingDamageUp;
	int sAttackPowerUp;
	int sDefensePowerUp;
	int sAttackSuccessUp;
	int sAttackBlockUp;
	int sElementAttackUp;
	int sElementDefenseUp;
	int sAttackSpeedUp;
	int sRunSpeedUp;
	int sShieldLifeUp;
	int sLuckUp;
	int sCriticalUp;
	int sReturnSuccessUp;
	int sStunDefenseUp;
	int sDestroySuccessUp;
}
GRADE_INFO_FOR_SKILL;
//structure for SKILL_INFO

typedef struct
{
	int sIndex;
	char sName[25];
	char sDescription[10][51];
        char padd;
	int sType;
	int sAttackType;
	int sDataNumber2D;
	int sTribeInfo[2];
	int sLearnSkillPoint;
	int sMaxUpgradePoint;
	int sTotalHitNumber;
	int sValidRadius;
	GRADE_INFO_FOR_SKILL sGradeInfo[2];
}
SKILL_INFO;
//005_00003.IMG file format structure

#define MONSTER_INFO_NAME_NUM		50
#define MONSTER_INFO_CHAT_NUM		2
#define MONSTER_INFO_CHAT_LENGTH	101
typedef struct
{
	int mIndex;
	char mName[MONSTER_INFO_NAME_NUM];
	char mChatInfo[MONSTER_INFO_CHAT_NUM][MONSTER_INFO_CHAT_LENGTH];
	int mType;
	int mSpecialType;
	int mDamageType;
	int mDataSortNumber;
	int mSize[4];
	int mSizeCategory;
	int mCheckCollision;
	int mFrameInfo[6];
	int mTotalHitNum;
	int mHitFrame[3];
	int mTotalSkillHitNum;
	int mSkillHitFrame[3];
	int mBulletInfo[2];
	int mSummonTime[2];
	int mItemLevel;
	int mMartialItemLevel;
	int mRealLevel;
	int mMartialRealLevel;
	int mGeneralExperience;
	int mPatExperience;
	int mLife;
	int mAttackType;
	int mRadiusInfo[2];
	int mWalkSpeed;
	int mRunSpeed;
	int mDeathSpeed;
	int mAttackPower;
	int mDefensePower;
	int mAttackSuccess;
	int mAttackBlock;
	int mElementAttackPower;
	int mElementDefensePower;
	int mCritical;
	int mFollowInfo[2];
	int mDropMoneyInfo[3];
	int mDropPotionInfo[5][2];
	int mDropItemInfo[12];
	int mDropQuestItemInfo[2];
	int mDropExtraItemInfo[50][2];
	int munk115_7[10];
}
MONSTER_INFO;
//005_00004.IMG file format structure

#define MAX_NPC_NAME_LENGTH	50
#define MAX_NPC_SPEECH_NUM 5
#define MAX_NPC_SPEECH_LENGTH 101
typedef struct
{
	int nIndex;
	char nName[MAX_NPC_NAME_LENGTH];
        char nPadd2[2];
	int nSpeechNum;
	char nSpeech[MAX_NPC_SPEECH_NUM][MAX_NPC_SPEECH_NUM][MAX_NPC_SPEECH_LENGTH];
        char nPadd3[3];
	int nTribe;
	int nType;
	int nDataSortNumber2D;
	int nDataSortNumber3D;
	int nSize[3];
	int nMenu[101];
	int nShopInfo[3][28];
	int nSkillInfo1[3][8];
	int nSkillInfo2[3][3][3][8];
	int nGambleCostInfo[145][15];
}
NPC_INFO;
//005_00005.IMG file format structure

typedef struct
{
}
QUEST_INFO;
//005_00006.IMG file format structure

typedef struct
{
}
HELP_INFO;
//005_00007.IMG file format structure

typedef struct
{
int a[10];
}
PET_INFO;
//005_00008.IMG file format structure

typedef struct
{
int a[23];
}
COSTUME_INFO;
//005_00009.IMG file format structure

typedef struct
{
int a[19];
}
TITLE_INFO;
//005_00010.IMG file format structure

typedef struct
{
int a[6];
}
CHANGE_TRIBE_INFO;
//005_00011.IMG file format structure
01/21/2020 10:53 Dragons144#2
can un put again link download to img to csv convertor? thanks!
01/22/2020 15:23 thoyz#3
what is use of this tool.. is this cheat or hack?
02/10/2020 15:56 diaochuo#4
can un put again link download to img to csv convertor? thanks!
02/11/2020 00:44 lnwnuyhodd#5
Add export to CSV Function , parse string by '|'
link : [Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
04/18/2020 06:05 systemboss#6
Not found Structure of LEVEL_INFO or Structure size is 0.
04/19/2020 10:37 sdefref#7
Quote:
Originally Posted by lnwnuyhodd View Post
2. Click the Edit Structure button and paste the C ++ structure. Click Save when done.
Sure, it works with .WREGION file since you can see extra code from the picture.

What C++ code you were using for .IMG files since its empty...
Code:
typedef struct
{
}
ITEM_INFO;
//005_00002.IMG file format structure
Since you are not sharing that code and without this it doesn't work.

EDIT: I have figured out and can open .IMG files but what I see is nothing like your picture.
Mine is just 1 and 0 some longer numbers but no names.
Obviously I'm doing something wrong

[Only registered and activated users can see links. Click Here To Register...]

EDIT2: I don't understand why lnwnuyhodd wont share .IMG C++ code when he released this...
I can get item ID's from Hex editor anyway but this way would be easier and nicer...
All I got is this far that I can see some text.
Obviously I'm still doing something wrong... :(
[Only registered and activated users can see links. Click Here To Register...]
05/30/2020 17:26 Dragons144#8
did u find C++ code for 005_00002.IMG ?
05/30/2020 18:06 sdefref#9
Quote:
Originally Posted by Dragons144 View Post
did u find C++ code for 005_00002.IMG ?
No I have not.
06/01/2020 17:06 lnwnuyhodd#10
Code:
typedef struct
{
	int mVALUE01;
	int mVALUE02;
	int mVALUE03;
	int mVALUE04;
	int mCENTER[3];
	int mRADIUS;
}
WORLD_REGION_INFO;
//*.WREGION file format structure

typedef struct
{
	int lIndex;
	int lRangeInfo[3];
	int lAttackPower;
	int lDefensePower;
	int lAttackSuccess;
	int lAttackBlock;
	int lElementAttack;
	int lLife;
	int lMana;
}
LEVEL_INFO;
//005_00001.IMG file format structure

#define ITEM_INFO_NAME_NUM		50
#define ITEM_INFO_DESC_NUM		6
#define ITEM_INFO_DESC_LENGTH	101
typedef struct
{
	int iIndex;
	char iName[ITEM_INFO_NAME_NUM];
	char iDescription[ITEM_INFO_DESC_NUM][ITEM_INFO_DESC_LENGTH];
	int iType;
	int iSort;
	int iDataNumber2D;
	int iDataNumber3D;
	int iAddDataNumber3D;
	int iLevel;
	int iMartialLevel;
	int iEquipInfo[2];
	int iBuyCost;
	int iSellCost;
	int iBuyCPCost;
	int iLevelLimit;
	int iMartialLevelLimit;
	int iCheckMonsterDrop;
	int iCheckNPCSell;
	int iCheckNPCShop;
	int iCheckAvatarDrop;
	int iCheckAvatarTrade;
	int iCheckAvatarShop;
	int iCheckImprove;
	int iCheckHighImprove;
	int iCheckHighItem;
	int iCheckLowItem;
	int iCheckExchange;
	int iCheckItemSet;
	int iCheckExpire;
	int iStrength;
	int iWisdom;
	int iVitality;
	int iKi;
	int iLuck;
	int iAttackPower;
	int iDefensePower;
	int iAttackSucess;
	int iAttackBlock;
	int iElementAttackPower;
	int iElementDefensePower;
	int iCritical;
	int iPotionType[2];
	int iGainSkillNumber;
	int iLastAttackBonusInfo[2];
	int iCapeInfo[3];
	int iBonusSkillInfo[8][2];
	int iUnk[10];
	int iBonusHP;
	int iBonusMP;
	int iunk115_8[8][2];
}
ITEM_INFO;
//005_00002.IMG file format structure

typedef struct
{
	int sManaUse;
	int sRecoverInfo[2];
	int sStunAttack;
	int sStunDefense;
	int sFastRunSpeed;
	int sAttackInfo[3];
	int sRunTime;
	int sChargingDamageUp;
	int sAttackPowerUp;
	int sDefensePowerUp;
	int sAttackSuccessUp;
	int sAttackBlockUp;
	int sElementAttackUp;
	int sElementDefenseUp;
	int sAttackSpeedUp;
	int sRunSpeedUp;
	int sShieldLifeUp;
	int sLuckUp;
	int sCriticalUp;
	int sReturnSuccessUp;
	int sStunDefenseUp;
	int sDestroySuccessUp;
}
GRADE_INFO_FOR_SKILL;
//structure for SKILL_INFO

typedef struct
{
	int sIndex;
	char sName[25];
	char sDescription[10][51];
        char padd;
	int sType;
	int sAttackType;
	int sDataNumber2D;
	int sTribeInfo[2];
	int sLearnSkillPoint;
	int sMaxUpgradePoint;
	int sTotalHitNumber;
	int sValidRadius;
	GRADE_INFO_FOR_SKILL sGradeInfo[2];
}
SKILL_INFO;
//005_00003.IMG file format structure

#define MONSTER_INFO_NAME_NUM		50
#define MONSTER_INFO_CHAT_NUM		2
#define MONSTER_INFO_CHAT_LENGTH	101
typedef struct
{
	int mIndex;
	char mName[MONSTER_INFO_NAME_NUM];
	char mChatInfo[MONSTER_INFO_CHAT_NUM][MONSTER_INFO_CHAT_LENGTH];
	int mType;
	int mSpecialType;
	int mDamageType;
	int mDataSortNumber;
	int mSize[4];
	int mSizeCategory;
	int mCheckCollision;
	int mFrameInfo[6];
	int mTotalHitNum;
	int mHitFrame[3];
	int mTotalSkillHitNum;
	int mSkillHitFrame[3];
	int mBulletInfo[2];
	int mSummonTime[2];
	int mItemLevel;
	int mMartialItemLevel;
	int mRealLevel;
	int mMartialRealLevel;
	int mGeneralExperience;
	int mPatExperience;
	int mLife;
	int mAttackType;
	int mRadiusInfo[2];
	int mWalkSpeed;
	int mRunSpeed;
	int mDeathSpeed;
	int mAttackPower;
	int mDefensePower;
	int mAttackSuccess;
	int mAttackBlock;
	int mElementAttackPower;
	int mElementDefensePower;
	int mCritical;
	int mFollowInfo[2];
	int mDropMoneyInfo[3];
	int mDropPotionInfo[5][2];
	int mDropItemInfo[12];
	int mDropQuestItemInfo[2];
	int mDropExtraItemInfo[50][2];
	int munk115_7[10];
}
MONSTER_INFO;
//005_00004.IMG file format structure

#define MAX_NPC_NAME_LENGTH	50
#define MAX_NPC_SPEECH_NUM 5
#define MAX_NPC_SPEECH_LENGTH 101
typedef struct
{
	int nIndex;
	char nName[MAX_NPC_NAME_LENGTH];
        char nPadd2[2];
	int nSpeechNum;
	char nSpeech[MAX_NPC_SPEECH_NUM][MAX_NPC_SPEECH_NUM][MAX_NPC_SPEECH_LENGTH];
        char nPadd3[3];
	int nTribe;
	int nType;
	int nDataSortNumber2D;
	int nDataSortNumber3D;
	int nSize[3];
	int nMenu[101];
	int nShopInfo[3][28];
	int nSkillInfo1[3][8];
	int nSkillInfo2[3][3][3][8];
	int nGambleCostInfo[145][15];
}
NPC_INFO;
//005_00005.IMG file format structure

typedef struct
{
}
QUEST_INFO;
//005_00006.IMG file format structure

typedef struct
{
}
HELP_INFO;
//005_00007.IMG file format structure

typedef struct
{
int a[10];
}
PET_INFO;
//005_00008.IMG file format structure

typedef struct
{
int a[23];
}
COSTUME_INFO;
//005_00009.IMG file format structure

typedef struct
{
int a[19];
}
TITLE_INFO;
//005_00010.IMG file format structure

typedef struct
{
int a[6];
}
CHANGE_TRIBE_INFO;
//005_00011.IMG file format structure
06/01/2020 18:35 sdefref#11
Quote:
Originally Posted by lnwnuyhodd View Post
Thank you so much LoL!

EDIT1: For 005_00002.IMG it doesn't work, its like my previous image.
EDIT2: I realized what I did wrong, works perfectly
06/03/2020 00:12 Mikiyea#12
Quote:
Originally Posted by sdefref View Post
Thank you so much LoL!

EDIT1: For 005_00002.IMG it doesn't work, its like my previous image.
EDIT2: I realized what I did wrong, works perfectly
How did you get it to look like on his pic?
09/14/2020 01:16 migisenpai#13
Quote:
Originally Posted by sdefref View Post
Thank you so much LoL!

EDIT1: For 005_00002.IMG it doesn't work, its like my previous image.
EDIT2: I realized what I did wrong, works perfectly
i get the same as your pic in 002, can you help me what you did?
09/14/2020 12:15 kapgankaan#14
Quote:
Originally Posted by sdefref View Post
Thank you so much LoL!

EDIT1: For 005_00002.IMG it doesn't work, its like my previous image.
EDIT2: I realized what I did wrong, works perfectly
How did you get it to look like on his pic?
Could you help me please?
09/15/2020 18:57 sdefref#15
Quote:
Originally Posted by kapgankaan View Post
How did you get it to look like on his pic?
Could you help me please?
Quote:
Originally Posted by migisenpai View Post
i get the same as your pic in 002, can you help me what you did?
Use Hex editor. This webtool works for DOS Server 005_00002.IMG
not all .IMG files are identical, so thats why it doesnt work.