Jump to content

Damixxx0101

Inactive Member
  • Posts

    122
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by Damixxx0101

  1. using this vm i work in this and no have problem use only for compile game/db
  2. Hello i need info how to max lvl 300 or 255 need navi table and more information to change in src thanks for reply !
  3. ACMD(do_ban) Now time to add the complete code to ACMD(do_ban): ? // Args char arg1[256], arg2[256], arg3[256]; // Local variables const char* szName; const char* szReason; int iDuration; one_argument(two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3)); // Invalid syntax if (!*arg1 || !*arg2 || !*arg3) { ch->ChatPacket(CHAT_TYPE_INFO, "Invalid Syntax, usage: <player name> <time in hours> <reason> tip: don't use spaces in the reason, use _"); return; } szName = arg1; iDuration = atoi(arg2); szReason = arg3; if (iDuration <= 0) { ch->ChatPacket(CHAT_TYPE_INFO, "Duration can't be 0 or minus."); return; } LPCHARACTER tch = CHARACTER_MANAGER::instance().FindPC(szName); if (!tch) { ch->ChatPacket(CHAT_TYPE_INFO, "%s is not playing", szName); return; } if (!tch->GetDesc()) { ch->ChatPacket(CHAT_TYPE_INFO, "%s don't have desc", szName); return; } if (tch == ch) { ch->ChatPacket(CHAT_TYPE_INFO, "What's wrong with you? Don't ban yourself"); return; } if (tch->GetGMLevel() > GM_PLAYER) { ch->ChatPacket(CHAT_TYPE_INFO, "Do not ban GMs"); return; } std::auto_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("UPDATE account.account SET availDt = FROM_UNIXTIME(UNIX_TIMESTAMP(CURRENT_TIMESTAMP()) + %i), reason = '%s' WHERE id = %d", iDuration * 3600, szReason, tch->GetDesc()->GetAccountTable().id)); tch->GetDesc()->DelayedDisconnect(5); sys_log(0, "%s[%d] banned %s for %i hours with reason: %s", ch->GetName(), ch->GetPlayerID(), szName, iDuration, szReason); ch->ChatPacket(CHAT_TYPE_INFO, "%s has been banned for %i hours with reason: %s", szName, iDuration, szReason); not work for me spam fully error i have tab please give me this file cpp i look where is i create wrong
  4. i have this in belt_inventory_helper.h static const TGradeUnit* GetAvailableRuleTableByGrade() { /** 벨트는 총 +0 ~ +9 레벨을 가질 수 있으며, 레벨에 따라 7단계 등급으로 구분되어 인벤토리가 활성 화 된다. 벨트 레벨에 따른 사용 가능한 셀은 아래 그림과 같음. 현재 등급 >= 활성가능 등급이면 사용 가능. (단, 현재 레벨이 0이면 무조건 사용 불가, 괄호 안의 숫자는 등급) 2(1) 4(2) 6(4) 8(6) 5(3) 5(3) 6(4) 8(6) 7(5) 7(5) 7(5) 8(6) 9(7) 9(7) 9(7) 9(7) 벨트 인벤토리의 크기는 4x4 (16칸) */ static TGradeUnit availableRuleByGrade[BELT_INVENTORY_SLOT_COUNT] = { 1, 2, 4, 6, 3, 3, 4, 6, 5, 5, 5, 6, 7, 7, 7, 7 };
  5. not work i try this static TGradeUnit availableRuleByGrade[bELT_INVENTORY_SLOT_COUNT] = { 1, 2, 4, 6, 3, 3, 4, 6, 5; 5, 5, 6, 7, 7, 7, 7 } and have error ../../common/VnumHelper.h:59:32: warning: no newline at end of file compile char_item.cpp In file included from char_item.cpp:44: ../../common/VnumHelper.h:59:32: warning: no newline at end of file In file included from char_item.cpp:47: belt_inventory_helper.h:115:42: warning: no newline at end of file In file included from char_item.cpp:47: belt_inventory_helper.h: In static member function 'static BYTE CBeltInventoryHelper::GetBeltGradeByRefineLevel(int)': belt_inventory_helper.h:31: error: expected `}' before ';' token belt_inventory_helper.h:31: warning: left-hand operand of comma has no effect belt_inventory_helper.h:31: warning: right-hand operand of comma has no effect belt_inventory_helper.h:32: warning: right-hand operand of comma has no effect belt_inventory_helper.h:32: warning: right-hand operand of comma has no effect belt_inventory_helper.h:32: warning: right-hand operand of comma has no effect belt_inventory_helper.h:32: warning: right-hand operand of comma has no effect belt_inventory_helper.h:33: error: expected `;' before '}' token belt_inventory_helper.h:33: warning: right-hand operand of comma has no effect belt_inventory_helper.h:14: warning: unused variable 'beltGradeByLevelTable' belt_inventory_helper.h:27: warning: unused variable 'availableRuleByGrade' belt_inventory_helper.h:33: warning: no return statement in function returning non-void char_item.cpp: In member function 'bool CHARACTER::IsEmptyItemGrid(TItemPos, BYTE, int) const': char_item.cpp:640: warning: comparison is always false due to limited range of data type char_item.cpp:666: warning: comparison is always false due to limited range of data type char_item.cpp: In member function 'bool CHARACTER::UseItemEx(CItem*, TItemPos)': char_item.cpp:2387: warning: format '%d' expects type 'int', but argument 6 has type 'long int' char_item.cpp:2391: warning: format '%d' expects type 'int', but argument 6 has type 'long int' char_item.cpp:2403: warning: format '%d' expects type 'int', but argument 5 has type 'long int' char_item.cpp:2407: warning: format '%d' expects type 'int', but argument 5 has type 'long int' char_item.cpp:2434: warning: format '%d' expects type 'int', but argument 6 has type 'long int' char_item.cpp:2442: warning: format '%d' expects type 'int', but argument 5 has type 'long int' char_item.cpp:5088: warning: comparison between signed and unsigned integer expressions char_item.cpp: In member function 'bool CHARACTER::UseItem(TItemPos, TItemPos)': char_item.cpp:5160: warning: unused variable 'wDestCell' char_item.cpp:5161: warning: unused variable 'bDestInven' char_item.cpp: In member function 'bool CHARACTER::EquipItem(CItem*, int)': char_item.cpp:6164: warning: array subscript has type 'char' char_item.cpp: In member function 'void CHARACTER::BuffOnAttr_AddBuffsFromItem(CItem*)': char_item.cpp:6228: warning: comparison between signed and unsigned integer expressions char_item.cpp: In member function 'void CHARACTER::BuffOnAttr_RemoveBuffsFromItem(CItem*)': char_item.cpp:6240: warning: comparison between signed and unsigned integer expressions char_item.cpp: In member function 'bool CHARACTER::CanEquipNow(CItem*, const TItemPos&, const TItemPos&)': char_item.cpp:7426: warning: unused variable 'itemType' char_item.cpp:7427: warning: unused variable 'itemSubType' gmake: *** [OBJDIR/char_item.o] Error 1 root@Damian:/usr/src/mainline_sg/Srcs/Server/game/src #
  6. In file included from char_item.cpp:47: belt_inventory_helper.h: In static member function 'static BYTE CBeltInventoryHelper::GetBeltGradeByRefineLevel(int)': belt_inventory_helper.h:27: error: 'TGrandeUnit' does not name a type belt_inventory_helper.h:44: error: a function-definition is not allowed here before '{' token belt_inventory_helper.h:14: warning: unused variable 'beltGradeByLevelTable' belt_inventory_helper.h:111: error: expected `}' at end of input belt_inventory_helper.h:111: warning: no return statement in function returning non-void char_item.cpp: At global scope: char_item.cpp:1664: error: expected unqualified-id at end of input gmake: *** [OBJDIR/char_item.o] Error 1 root@Damian:/usr/src/mainline_sg/Srcs/Server/game/src #
  7. i check thanks 7, 7, 7, 7 "7" its good ? or "7,"
  8. hello i have problem add 5 slot inventory and my belt system not work how to with this ? and i have problem in my locale no see beltinventorywindow.py and where i find in forum trnslated **** 현재까지 할당 된 아이템 영역 정리 (DB상 Item Position) **** +------------------------------------------------------+ 0 | 캐릭터 기본 인벤토리 (45칸 * 2페이지) 90칸 | +------------------------------------------------------+ 90 = INVENTORY_MAX_NUM(90) | 캐릭터 장비 창 (착용중인 아이템) 32칸 | +------------------------------------------------------+ 122 = INVENTORY_MAX_NUM(90) + WEAR_MAX_NUM(32) | 용혼석 장비 창 (착용중인 용혼석) 12칸 | +------------------------------------------------------+ 134 = 122 + DS_SLOT_MAX(6) * DRAGON_SOUL_DECK_MAX_NUM(2) | 용혼석 장비 창 예약 (아직 미사용) 18칸 | +------------------------------------------------------+ 152 = 134 + DS_SLOT_MAX(6) * DRAGON_SOUL_DECK_RESERVED_MAX_NUM(3) | 벨트 인벤토리 (벨트 착용시에만 벨트 레벨에 따라 활성)| +------------------------------------------------------+ 168 = 152 + BELT_INVENTORY_SLOT_COUNT(16) = INVENTORY_AND_EQUIP_CELL_MAX | 미사용 | +------------------------------------------------------+ ?? my lenght.h #ifndef __INC_METIN_II_LENGTH_H__ #define __INC_METIN_II_LENGTH_H__ #define WORD_MAX 0xffff enum EMisc { MAX_HOST_LENGTH = 15, IP_ADDRESS_LENGTH = 15, LOGIN_MAX_LEN = 30, PASSWD_MAX_LEN = 16, PLAYER_PER_ACCOUNT = 4, ACCOUNT_STATUS_MAX_LEN = 8, CHARACTER_NAME_MAX_LEN = 24, SHOP_SIGN_MAX_LEN = 32, INVENTORY_MAX_NUM = 225, ABILITY_MAX_NUM = 50, EMPIRE_MAX_NUM = 4, BANWORD_MAX_LEN = 24, SMS_MAX_LEN = 80, MOBILE_MAX_LEN = 32, SOCIAL_ID_MAX_LEN = 18, GUILD_NAME_MAX_LEN = 12, SHOP_HOST_ITEM_MAX_NUM = 40, /* 호스트의 최대 아이템 개수 */ SHOP_GUEST_ITEM_MAX_NUM = 18, /* 게스트의 최대 아이템 개수 */ SHOP_PRICELIST_MAX_NUM = 40, ///< 개인상점 가격정보 리스트에서 유지할 가격정보의 최대 갯수 CHAT_MAX_LEN = 512, QUICKSLOT_MAX_NUM = 36, JOURNAL_MAX_NUM = 2, QUERY_MAX_LEN = 8192, FILE_MAX_LEN = 128, PLAYER_EXP_TABLE_MAX = 120, PLAYER_MAX_LEVEL_CONST = 120, GUILD_MAX_LEVEL = 20, MOB_MAX_LEVEL = 100, ATTRIBUTE_MAX_VALUE = 20, CHARACTER_PATH_MAX_NUM = 64, SKILL_MAX_NUM = 255, SKILLBOOK_DELAY_MIN = 64800, SKILLBOOK_DELAY_MAX = 108000, SKILL_MAX_LEVEL = 40, APPLY_NAME_MAX_LEN = 32, EVENT_FLAG_NAME_MAX_LEN = 32, MOB_SKILL_MAX_NUM = 5, POINT_MAX_NUM = 255, DRAGON_SOUL_BOX_SIZE = 32, DRAGON_SOUL_BOX_COLUMN_NUM = 8, DRAGON_SOUL_BOX_ROW_NUM = DRAGON_SOUL_BOX_SIZE / DRAGON_SOUL_BOX_COLUMN_NUM, DRAGON_SOUL_REFINE_GRID_SIZE = 15, MAX_AMOUNT_OF_MALL_BONUS = 20, WEAR_MAX_NUM = 32, //LIMIT_GOLD GOLD_MAX = 2000000000, MAX_PASSPOD = 8 , //END_LIMIT_GOLD OPENID_AUTHKEY_LEN = 32, SHOP_TAB_NAME_MAX = 32, SHOP_TAB_COUNT_MAX = 3, BELT_INVENTORY_SLOT_WIDTH = 4, BELT_INVENTORY_SLOT_HEIGHT= 4, BELT_INVENTORY_SLOT_COUNT = BELT_INVENTORY_SLOT_WIDTH * BELT_INVENTORY_SLOT_HEIGHT, /** **** 현재까지 할당 된 아이템 영역 정리 (DB상 Item Position) **** +------------------------------------------------------+ 0 | 캐릭터 기본 인벤토리 (45칸 * 2페이지) 90칸 | +------------------------------------------------------+ 90 = INVENTORY_MAX_NUM(90) | 캐릭터 장비 창 (착용중인 아이템) 32칸 | +------------------------------------------------------+ 122 = INVENTORY_MAX_NUM(90) + WEAR_MAX_NUM(32) | 용혼석 장비 창 (착용중인 용혼석) 12칸 | +------------------------------------------------------+ 134 = 122 + DS_SLOT_MAX(6) * DRAGON_SOUL_DECK_MAX_NUM(2) | 용혼석 장비 창 예약 (아직 미사용) 18칸 | +------------------------------------------------------+ 152 = 134 + DS_SLOT_MAX(6) * DRAGON_SOUL_DECK_RESERVED_MAX_NUM(3) | 벨트 인벤토리 (벨트 착용시에만 벨트 레벨에 따라 활성)| +------------------------------------------------------+ 168 = 152 + BELT_INVENTORY_SLOT_COUNT(16) = INVENTORY_AND_EQUIP_CELL_MAX | 미사용 | +------------------------------------------------------+ ?? */ }; enum EMatrixCard { MATRIX_CODE_MAX_LEN = 192, MATRIX_ANSWER_MAX_LEN = 8, }; enum EWearPositions { WEAR_BODY, // 0 WEAR_HEAD, // 1 WEAR_FOOTS, // 2 WEAR_WRIST, // 3 WEAR_WEAPON, // 4 WEAR_NECK, // 5 WEAR_EAR, // 6 WEAR_UNIQUE1, // 7 WEAR_UNIQUE2, // 8 WEAR_ARROW, // 9 WEAR_SHIELD, // 10 WEAR_ABILITY1, // 11 WEAR_ABILITY2, // 12 WEAR_ABILITY3, // 13 WEAR_ABILITY4, // 14 WEAR_ABILITY5, // 15 WEAR_ABILITY6, // 16 WEAR_ABILITY7, // 17 WEAR_ABILITY8, // 18 WEAR_COSTUME_BODY, // 19 WEAR_COSTUME_HAIR, // 20 WEAR_RING1, // 21 : 신규 반지슬롯1 (왼쪽) WEAR_RING2, // 22 : 신규 반지슬롯2 (오른쪽) WEAR_BELT, // 23 : 신규 벨트슬롯 WEAR_MAX = 32 // }; enum EDragonSoulDeckType { DRAGON_SOUL_DECK_0, DRAGON_SOUL_DECK_1, DRAGON_SOUL_DECK_MAX_NUM = 2, DRAGON_SOUL_DECK_RESERVED_MAX_NUM = 3, // NOTE: 중요! 아직 사용중이진 않지만, 3페이지 분량을 예약 해 둠. DS DECK을 늘릴 경우 반드시 그 수만큼 RESERVED에서 차감해야 함! }; enum ESex { SEX_MALE, SEX_FEMALE }; enum EDirection { DIR_NORTH, DIR_NORTHEAST, DIR_EAST, DIR_SOUTHEAST, DIR_SOUTH, DIR_SOUTHWEST, DIR_WEST, DIR_NORTHWEST, DIR_MAX_NUM }; #define ABILITY_MAX_LEVEL 10 /* 기술 최대 레벨 */ enum EAbilityDifficulty { DIFFICULTY_EASY, DIFFICULTY_NORMAL, DIFFICULTY_HARD, DIFFICULTY_VERY_HARD, DIFFICULTY_NUM_TYPES }; enum EAbilityCategory { CATEGORY_PHYSICAL, /* 신체적 어빌리티 */ CATEGORY_MENTAL, /* 정신적 어빌리티 */ CATEGORY_ATTRIBUTE, /* 능력 어빌리티 */ CATEGORY_NUM_TYPES }; enum EJobs { JOB_WARRIOR, JOB_ASSASSIN, JOB_SURA, JOB_SHAMAN, JOB_MAX_NUM }; enum ESkillGroups { SKILL_GROUP_MAX_NUM = 2, }; enum ERaceFlags { RACE_FLAG_ANIMAL = (1 << 0), RACE_FLAG_UNDEAD = (1 << 1), RACE_FLAG_DEVIL = (1 << 2), RACE_FLAG_HUMAN = (1 << 3), RACE_FLAG_ORC = (1 << 4), RACE_FLAG_MILGYO = (1 << 5), RACE_FLAG_INSECT = (1 << 6), RACE_FLAG_FIRE = (1 << 7), RACE_FLAG_ICE = (1 << 8), RACE_FLAG_DESERT = (1 << 9), RACE_FLAG_TREE = (1 << 10), RACE_FLAG_ATT_ELEC = (1 << 11), RACE_FLAG_ATT_FIRE = (1 << 12), RACE_FLAG_ATT_ICE = (1 << 13), RACE_FLAG_ATT_WIND = (1 << 14), RACE_FLAG_ATT_EARTH = (1 << 15), RACE_FLAG_ATT_DARK = (1 << 16), }; enum ELoads { LOAD_NONE, LOAD_LIGHT, LOAD_NORMAL, LOAD_HEAVY, LOAD_MASSIVE }; enum { QUICKSLOT_TYPE_NONE, QUICKSLOT_TYPE_ITEM, QUICKSLOT_TYPE_SKILL, QUICKSLOT_TYPE_COMMAND, QUICKSLOT_TYPE_MAX_NUM, }; enum EParts { PART_MAIN, PART_WEAPON, PART_HEAD, PART_HAIR, PART_MAX_NUM, PART_WEAPON_SUB, }; enum EChatType { CHAT_TYPE_TALKING, /* 그냥 채팅 */ CHAT_TYPE_INFO, /* 정보 (아이템을 집었다, 경험치를 얻었다. 등) */ CHAT_TYPE_NOTICE, /* 공지사항 */ CHAT_TYPE_PARTY, /* 파티말 */ CHAT_TYPE_GUILD, /* 길드말 */ CHAT_TYPE_COMMAND, /* 일반 명령 */ CHAT_TYPE_SHOUT, /* 외치기 */ CHAT_TYPE_WHISPER, CHAT_TYPE_BIG_NOTICE, CHAT_TYPE_MONARCH_NOTICE, CHAT_TYPE_MAX_NUM }; enum EWhisperType { WHISPER_TYPE_NORMAL = 0, WHISPER_TYPE_NOT_EXIST = 1, WHISPER_TYPE_TARGET_BLOCKED = 2, WHISPER_TYPE_SENDER_BLOCKED = 3, WHISPER_TYPE_ERROR = 4, WHISPER_TYPE_GM = 5, WHISPER_TYPE_SYSTEM = 0xFF }; enum ECharacterPosition { POSITION_GENERAL, POSITION_BATTLE, POSITION_DYING, POSITION_SITTING_CHAIR, POSITION_SITTING_GROUND, POSITION_INTRO, POSITION_MAX_NUM }; enum EGMLevels { GM_PLAYER, GM_LOW_WIZARD, GM_WIZARD, GM_HIGH_WIZARD, GM_GOD, GM_IMPLEMENTOR }; enum EMobRank { MOB_RANK_PAWN, MOB_RANK_S_PAWN, MOB_RANK_KNIGHT, MOB_RANK_S_KNIGHT, MOB_RANK_BOSS, MOB_RANK_KING, MOB_RANK_MAX_NUM }; enum ECharType { CHAR_TYPE_MONSTER, CHAR_TYPE_NPC, CHAR_TYPE_STONE, CHAR_TYPE_WARP, CHAR_TYPE_DOOR, CHAR_TYPE_BUILDING, CHAR_TYPE_PC, CHAR_TYPE_POLYMORPH_PC, CHAR_TYPE_HORSE, CHAR_TYPE_GOTO }; enum EBattleType { BATTLE_TYPE_MELEE, BATTLE_TYPE_RANGE, BATTLE_TYPE_MAGIC, BATTLE_TYPE_SPECIAL, BATTLE_TYPE_POWER, BATTLE_TYPE_TANKER, BATTLE_TYPE_SUPER_POWER, BATTLE_TYPE_SUPER_TANKER, BATTLE_TYPE_MAX_NUM }; enum EApplyTypes { APPLY_NONE, // 0 APPLY_MAX_HP, // 1 APPLY_MAX_SP, // 2 APPLY_CON, // 3 APPLY_INT, // 4 APPLY_STR, // 5 APPLY_DEX, // 6 APPLY_ATT_SPEED, // 7 APPLY_MOV_SPEED, // 8 APPLY_CAST_SPEED, // 9 APPLY_HP_REGEN, // 10 APPLY_SP_REGEN, // 11 APPLY_POISON_PCT, // 12 APPLY_STUN_PCT, // 13 APPLY_SLOW_PCT, // 14 APPLY_CRITICAL_PCT, // 15 APPLY_PENETRATE_PCT, // 16 APPLY_ATTBONUS_HUMAN, // 17 APPLY_ATTBONUS_ANIMAL, // 18 APPLY_ATTBONUS_ORC, // 19 APPLY_ATTBONUS_MILGYO, // 20 APPLY_ATTBONUS_UNDEAD, // 21 APPLY_ATTBONUS_DEVIL, // 22 APPLY_STEAL_HP, // 23 APPLY_STEAL_SP, // 24 APPLY_MANA_BURN_PCT, // 25 APPLY_DAMAGE_SP_RECOVER, // 26 APPLY_BLOCK, // 27 APPLY_DODGE, // 28 APPLY_RESIST_SWORD, // 29 APPLY_RESIST_TWOHAND, // 30 APPLY_RESIST_DAGGER, // 31 APPLY_RESIST_BELL, // 32 APPLY_RESIST_FAN, // 33 APPLY_RESIST_BOW, // 34 APPLY_RESIST_FIRE, // 35 APPLY_RESIST_ELEC, // 36 APPLY_RESIST_MAGIC, // 37 APPLY_RESIST_WIND, // 38 APPLY_REFLECT_MELEE, // 39 APPLY_REFLECT_CURSE, // 40 APPLY_POISON_REDUCE, // 41 APPLY_KILL_SP_RECOVER, // 42 APPLY_EXP_DOUBLE_BONUS, // 43 APPLY_GOLD_DOUBLE_BONUS, // 44 APPLY_ITEM_DROP_BONUS, // 45 APPLY_POTION_BONUS, // 46 APPLY_KILL_HP_RECOVER, // 47 APPLY_IMMUNE_STUN, // 48 APPLY_IMMUNE_SLOW, // 49 APPLY_IMMUNE_FALL, // 50 APPLY_SKILL, // 51 APPLY_BOW_DISTANCE, // 52 APPLY_ATT_GRADE_BONUS, // 53 APPLY_DEF_GRADE_BONUS, // 54 APPLY_MAGIC_ATT_GRADE, // 55 APPLY_MAGIC_DEF_GRADE, // 56 APPLY_CURSE_PCT, // 57 APPLY_MAX_STAMINA, // 58 APPLY_ATTBONUS_WARRIOR, // 59 APPLY_ATTBONUS_ASSASSIN, // 60 APPLY_ATTBONUS_SURA, // 61 APPLY_ATTBONUS_SHAMAN, // 62 APPLY_ATTBONUS_MONSTER, // 63 APPLY_MALL_ATTBONUS, // 64 공격력 +x% APPLY_MALL_DEFBONUS, // 65 방어력 +x% APPLY_MALL_EXPBONUS, // 66 경험치 +x% APPLY_MALL_ITEMBONUS, // 67 아이템 드롭율 x/10배 APPLY_MALL_GOLDBONUS, // 68 돈 드롭율 x/10배 APPLY_MAX_HP_PCT, // 69 최대 생명력 +x% APPLY_MAX_SP_PCT, // 70 최대 정신력 +x% APPLY_SKILL_DAMAGE_BONUS, // 71 스킬 데미지 * (100+x)% APPLY_NORMAL_HIT_DAMAGE_BONUS, // 72 평타 데미지 * (100+x)% APPLY_SKILL_DEFEND_BONUS, // 73 스킬 데미지 방어 * (100-x)% APPLY_NORMAL_HIT_DEFEND_BONUS, // 74 평타 데미지 방어 * (100-x)% APPLY_PC_BANG_EXP_BONUS, // 75 PC방 아이템 EXP 보너스 APPLY_PC_BANG_DROP_BONUS, // 76 PC방 아이템 드롭율 보너스 APPLY_EXTRACT_HP_PCT, // 77 사용시 HP 소모 APPLY_RESIST_WARRIOR, // 78 무사에게 저항 APPLY_RESIST_ASSASSIN, // 79 자객에게 저항 APPLY_RESIST_SURA, // 80 수라에게 저항 APPLY_RESIST_SHAMAN, // 81 무당에게 저항 APPLY_ENERGY, // 82 기력 APPLY_DEF_GRADE, // 83 방어력. DEF_GRADE_BONUS는 클라에서 두배로 보여지는 의도된 버그(...)가 있다. APPLY_COSTUME_ATTR_BONUS, // 84 코스튬 아이템에 붙은 속성치 보너스 APPLY_MAGIC_ATTBONUS_PER, // 85 마법 공격력 +x% APPLY_MELEE_MAGIC_ATTBONUS_PER, // 86 마법 + 밀리 공격력 +x% APPLY_RESIST_ICE, // 87 냉기 저항 APPLY_RESIST_EARTH, // 88 대지 저항 APPLY_RESIST_DARK, // 89 어둠 저항 APPLY_ANTI_CRITICAL_PCT, //90 크리티컬 저항 APPLY_ANTI_PENETRATE_PCT, //91 관통타격 저항 MAX_APPLY_NUM, // }; enum EOnClickEvents { ON_CLICK_NONE, ON_CLICK_SHOP, ON_CLICK_TALK, ON_CLICK_MAX_NUM }; enum EOnIdleEvents { ON_IDLE_NONE, ON_IDLE_GENERAL, ON_IDLE_MAX_NUM }; enum EWindows { RESERVED_WINDOW, INVENTORY, EQUIPMENT, SAFEBOX, MALL, DRAGON_SOUL_INVENTORY, BELT_INVENTORY, #ifdef __AUCTION__ AUCTION, #endif GROUND }; enum EMobSizes { MOBSIZE_RESERVED, MOBSIZE_SMALL, MOBSIZE_MEDIUM, MOBSIZE_BIG }; enum EAIFlags { AIFLAG_AGGRESSIVE = (1 << 0), AIFLAG_NOMOVE = (1 << 1), AIFLAG_COWARD = (1 << 2), AIFLAG_NOATTACKSHINSU = (1 << 3), AIFLAG_NOATTACKJINNO = (1 << 4), AIFLAG_NOATTACKCHUNJO = (1 << 5), AIFLAG_ATTACKMOB = (1 << 6 ), AIFLAG_BERSERK = (1 << 7), AIFLAG_STONESKIN = (1 << 8), AIFLAG_GODSPEED = (1 << 9), AIFLAG_DEATHBLOW = (1 << 10), AIFLAG_REVIVE = (1 << 11), }; enum EMobStatType { MOB_STATTYPE_POWER, MOB_STATTYPE_TANKER, MOB_STATTYPE_SUPER_POWER, MOB_STATTYPE_SUPER_TANKER, MOB_STATTYPE_RANGE, MOB_STATTYPE_MAGIC, MOB_STATTYPE_MAX_NUM }; enum EImmuneFlags { IMMUNE_STUN = (1 << 0), IMMUNE_SLOW = (1 << 1), IMMUNE_FALL = (1 << 2), IMMUNE_CURSE = (1 << 3), IMMUNE_POISON = (1 << 4), IMMUNE_TERROR = (1 << 5), IMMUNE_REFLECT = (1 << 6), }; enum EMobEnchants { MOB_ENCHANT_CURSE, MOB_ENCHANT_SLOW, MOB_ENCHANT_POISON, MOB_ENCHANT_STUN, MOB_ENCHANT_CRITICAL, MOB_ENCHANT_PENETRATE, MOB_ENCHANTS_MAX_NUM }; enum EMobResists { MOB_RESIST_SWORD, MOB_RESIST_TWOHAND, MOB_RESIST_DAGGER, MOB_RESIST_BELL, MOB_RESIST_FAN, MOB_RESIST_BOW, MOB_RESIST_FIRE, MOB_RESIST_ELECT, MOB_RESIST_MAGIC, MOB_RESIST_WIND, MOB_RESIST_POISON, MOB_RESISTS_MAX_NUM }; enum { SKILL_ATTR_TYPE_NORMAL = 1, SKILL_ATTR_TYPE_MELEE, SKILL_ATTR_TYPE_RANGE, SKILL_ATTR_TYPE_MAGIC /* SKILL_ATTR_TYPE_FIRE, SKILL_ATTR_TYPE_ICE, SKILL_ATTR_TYPE_ELEC, SKILL_ATTR_TYPE_DARK, */ }; enum { SKILL_NORMAL, SKILL_MASTER, SKILL_GRAND_MASTER, SKILL_PERFECT_MASTER, }; enum EGuildWarType { GUILD_WAR_TYPE_FIELD, GUILD_WAR_TYPE_BATTLE, GUILD_WAR_TYPE_FLAG, GUILD_WAR_TYPE_MAX_NUM }; enum EGuildWarState { GUILD_WAR_NONE, GUILD_WAR_SEND_DECLARE, GUILD_WAR_REFUSE, GUILD_WAR_RECV_DECLARE, GUILD_WAR_WAIT_START, GUILD_WAR_CANCEL, GUILD_WAR_ON_WAR, GUILD_WAR_END, GUILD_WAR_OVER, GUILD_WAR_RESERVE, GUILD_WAR_DURATION = 30*60, // 1시간 GUILD_WAR_WIN_POINT = 1000, GUILD_WAR_LADDER_HALF_PENALTY_TIME = 12*60*60, }; enum EAttributeSet { ATTRIBUTE_SET_WEAPON, ATTRIBUTE_SET_BODY, ATTRIBUTE_SET_WRIST, ATTRIBUTE_SET_FOOTS, ATTRIBUTE_SET_NECK, ATTRIBUTE_SET_HEAD, ATTRIBUTE_SET_SHIELD, ATTRIBUTE_SET_EAR, ATTRIBUTE_SET_MAX_NUM }; enum EPrivType { PRIV_NONE, PRIV_ITEM_DROP, PRIV_GOLD_DROP, PRIV_GOLD10_DROP, PRIV_EXP_PCT, MAX_PRIV_NUM, }; enum EMoneyLogType { MONEY_LOG_RESERVED, MONEY_LOG_MONSTER, MONEY_LOG_SHOP, MONEY_LOG_REFINE, MONEY_LOG_QUEST, MONEY_LOG_GUILD, MONEY_LOG_MISC, MONEY_LOG_MONSTER_KILL, MONEY_LOG_DROP, MONEY_LOG_TYPE_MAX_NUM, }; enum EPremiumTypes { PREMIUM_EXP, // 경험치가 1.2배 PREMIUM_ITEM, // 아이템 드롭율이 2배 PREMIUM_SAFEBOX, // 창고가 1칸에서 3칸 PREMIUM_AUTOLOOT, // 돈 자동 줍기 PREMIUM_FISH_MIND, // 고급 물고기 낚일 확률 상승 PREMIUM_MARRIAGE_FAST, // 금실 증가 양을 빠르게합니다. PREMIUM_GOLD, // 돈 드롭율이 1.5배 PREMIUM_MAX_NUM = 9 }; enum SPECIAL_EFFECT { SE_NONE, SE_HPUP_RED, SE_SPUP_BLUE, SE_SPEEDUP_GREEN, SE_DXUP_PURPLE, SE_CRITICAL, SE_PENETRATE, SE_BLOCK, SE_DODGE, SE_CHINA_FIREWORK, SE_SPIN_TOP, SE_SUCCESS, SE_FAIL, SE_FR_SUCCESS, SE_LEVELUP_ON_14_FOR_GERMANY, SE_LEVELUP_UNDER_15_FOR_GERMANY, SE_PERCENT_DAMAGE1, SE_PERCENT_DAMAGE2, SE_PERCENT_DAMAGE3, SE_AUTO_HPUP, SE_AUTO_SPUP, SE_EQUIP_RAMADAN_RING, // 라마단 초승달의 반지(71135) 착용할 때 이펙트 (발동이펙트임, 지속이펙트 아님) SE_EQUIP_HALLOWEEN_CANDY, // 할로윈 사탕을 착용(한 순간에 발동하는 이펙트 SE_EQUIP_HAPPINESS_RING, // 크리스마스 행복의 반지(71143) 착용할 때 이펙트 (발동이펙트임, 지속이펙트 아님) SE_EQUIP_LOVE_PENDANT, // 발렌타인 사랑의 팬던트(71145) 착용할 때 이펙트 (발동이펙트임, 지속이펙트 아님) } ; enum ETeenFlags { TEENFLAG_NONE = 0, TEENFLAG_1HOUR, TEENFLAG_2HOUR, TEENFLAG_3HOUR, TEENFLAG_4HOUR, TEENFLAG_5HOUR, }; #include "item_length.h" // inventory의 position을 나타내는 구조체 // int와의 암시적 형변환이 있는 이유는, // 인벤 관련된 모든 함수가 window_type은 받지 않고, cell 하나만 받았기 때문에,(기존에는 인벤이 하나 뿐이어서 inventory type이란게 필요없었기 때문에,) // 인벤 관련 모든 함수 호출부분을 수정하는 것이 난감하기 문이다. enum EDragonSoulRefineWindowSize { DRAGON_SOUL_REFINE_GRID_MAX = 15, }; enum EMisc2 { DRAGON_SOUL_EQUIP_SLOT_START = INVENTORY_MAX_NUM + WEAR_MAX_NUM, DRAGON_SOUL_EQUIP_SLOT_END = DRAGON_SOUL_EQUIP_SLOT_START + (DS_SLOT_MAX * DRAGON_SOUL_DECK_MAX_NUM), DRAGON_SOUL_EQUIP_RESERVED_SLOT_END = DRAGON_SOUL_EQUIP_SLOT_END + (DS_SLOT_MAX * DRAGON_SOUL_DECK_RESERVED_MAX_NUM), BELT_INVENTORY_SLOT_START = DRAGON_SOUL_EQUIP_RESERVED_SLOT_END, BELT_INVENTORY_SLOT_END = BELT_INVENTORY_SLOT_START + BELT_INVENTORY_SLOT_COUNT, INVENTORY_AND_EQUIP_SLOT_MAX = BELT_INVENTORY_SLOT_END, }; #pragma pack(push, 1) typedef struct SItemPos { BYTE window_type; WORD cell; SItemPos () { window_type = INVENTORY; cell = WORD_MAX; } SItemPos (BYTE _window_type, WORD _cell) { window_type = _window_type; cell = _cell; } bool IsValidItemPosition() const { switch (window_type) { case RESERVED_WINDOW: return false; case INVENTORY: case EQUIPMENT: case BELT_INVENTORY: return cell < INVENTORY_AND_EQUIP_SLOT_MAX; case DRAGON_SOUL_INVENTORY: return cell < (DRAGON_SOUL_INVENTORY_MAX_NUM); // 동적으로 크기가 정해지는 window는 valid 체크를 할 수가 없다. case SAFEBOX: case MALL: return false; default: return false; } return false; } bool IsEquipPosition() const { return ((INVENTORY == window_type || EQUIPMENT == window_type) && cell >= INVENTORY_MAX_NUM && cell < INVENTORY_MAX_NUM + WEAR_MAX_NUM) || IsDragonSoulEquipPosition(); } bool IsDragonSoulEquipPosition() const { return (DRAGON_SOUL_EQUIP_SLOT_START <= cell) && (DRAGON_SOUL_EQUIP_SLOT_END > cell); } bool IsBeltInventoryPosition() const { return (BELT_INVENTORY_SLOT_START <= cell) && (BELT_INVENTORY_SLOT_END > cell); } bool IsDefaultInventoryPosition() const { return INVENTORY == window_type && cell < INVENTORY_MAX_NUM; } bool operator==(const struct SItemPos& rhs) const { return (window_type == rhs.window_type) && (cell == rhs.cell); } bool operator<(const struct SItemPos& rhs) const { return (window_type < rhs.window_type) || ((window_type == rhs.window_type) && (cell < rhs.cell)); } } TItemPos; const TItemPos NPOS (RESERVED_WINDOW, WORD_MAX); typedef enum { SHOP_COIN_TYPE_GOLD, // DEFAULT VALUE SHOP_COIN_TYPE_SECONDARY_COIN, } EShopCoinType; #pragma pack(pop) #endif
  9. i am using this package [Hidden Content] hmm client load thansk why no see hackshield logo in loading ? all its right ? : ) in folder client automatic reate file name HsUserUtil.txt
  10. i use this client this client no have hackshield files how to i add fully work or what client its correct for this binary Sorry for my English
  11. okay compile done thanks i have last question i use test fur client how to get hackshield for client
  12. hackshield.cpp 6:#include <sprint> 16>.Hackshield.cpp(6) : fatal error C1083: Cannot open include file: 'sprint': No such file or directory
  13. now is this same error in hackshield.cpp line 8 : ( 6#:if defined(LOCALE_SERVICE_EUROPE) 7:#define METIN2HS_MONITORING_SERVER_ADDR "79.110.88.84" 8:#elif 9:#define METIN2HS_MONITORING_SERVER_ADDR "79.110.88.84" // GF 10:#endif 11://#define METIN2HS_MONITORING_SERVER_ADDR "119.192.130.160" //김용욱 pc
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.