Jump to content

xUniverse

Inactive Member
  • Posts

    31
  • Joined

  • Last visited

  • Days Won

    1
  • Feedback

    0%

Everything posted by xUniverse

  1. Do you try without deleting the defenses (sword, dagger, etc) but setting the prob as 0? (I know that it isn't a solution, but it's a way to avoid the problem and it works fine for me) SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for item_attr -- ---------------------------- DROP TABLE IF EXISTS `item_attr`; CREATE TABLE `item_attr` ( `apply` enum('MAX_HP','MAX_SP','CON','INT','STR','DEX','ATT_SPEED','MOV_SPEED','CAST_SPEED','HP_REGEN','SP_REGEN','POISON_PCT','STUN_PCT','SLOW_PCT','CRITICAL_PCT','PENETRATE_PCT','ATTBONUS_HUMAN','ATTBONUS_ANIMAL','ATTBONUS_ORC','ATTBONUS_MILGYO','ATTBONUS_UNDEAD','ATTBONUS_DEVIL','STEAL_HP','STEAL_SP','MANA_BURN_PCT','DAMAGE_SP_RECOVER','BLOCK','DODGE','RESIST_SWORD','RESIST_TWOHAND','RESIST_DAGGER','RESIST_BELL','RESIST_FAN','RESIST_BOW','RESIST_FIRE','RESIST_ELEC','RESIST_MAGIC','RESIST_WIND','REFLECT_MELEE','REFLECT_CURSE','POISON_REDUCE','KILL_SP_RECOVER','EXP_DOUBLE_BONUS','GOLD_DOUBLE_BONUS','ITEM_DROP_BONUS','POTION_BONUS','KILL_HP_RECOVER','IMMUNE_STUN','IMMUNE_SLOW','IMMUNE_FALL','SKILL','BOW_DISTANCE','ATT_GRADE_BONUS','DEF_GRADE_BONUS','MAGIC_ATT_GRADE','MAGIC_DEF_GRADE','CURSE_PCT','MAX_STAMINA','ATTBONUS_WARRIOR','ATTBONUS_ASSASSIN','ATTBONUS_SURA','ATTBONUS_SHAMAN','ATTBONUS_MONSTER','MALL_ATTBONUS','MALL_DEFBONUS','MALL_EXPBONUS','MALL_ITEMBONUS','MALL_GOLDBONUS','MAX_HP_PCT','MAX_SP_PCT','SKILL_DAMAGE_BONUS','NORMAL_HIT_DAMAGE_BONUS','SKILL_DEFEND_BONUS','NORMAL_HIT_DEFEND_BONUS','PC_BANG_EXP_BONUS','PC_BANG_DROP_BONUS','EXTRACT_HP_PCT','RESIST_WARRIOR','RESIST_ASSASSIN','RESIST_SURA','RESIST_SHAMAN','ENERGY','DEF_GRADE','COSTUME_ATTR_BONUS','MAGIC_ATTBONUS_PER','MELEE_MAGIC_ATTBONUS_PER','RESIST_ICE','RESIST_EARTH','RESIST_DARK','ANTI_CRITICAL_PCT','ANTI_PENETRATE_PCT','BLEEDING_REDUCE','BLEEDING_PCT','ATTBONUS_WOLFMAN','RESIST_WOLFMAN','RESIST_CLAW','ANTI_RESIST_MAGIC') NOT NULL DEFAULT 'MAX_HP', `prob` varchar(100) NOT NULL DEFAULT '', `value` varchar(100) NOT NULL DEFAULT '', `weapon` varchar(100) NOT NULL DEFAULT '', `body` varchar(100) NOT NULL DEFAULT '', `wrist` varchar(100) NOT NULL DEFAULT '', `foots` varchar(100) NOT NULL DEFAULT '', `neck` varchar(100) NOT NULL DEFAULT '', `head` varchar(100) NOT NULL DEFAULT '', `shield` varchar(100) NOT NULL DEFAULT '', `ear` varchar(100) NOT NULL DEFAULT '', `belt` varchar(100) NOT NULL DEFAULT '', PRIMARY KEY (`apply`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC; -- ---------------------------- -- Records of item_attr -- ---------------------------- INSERT INTO `item_attr` VALUES ('MAX_HP', '35', '3000', '0', '1', '1', '1', '1', '1', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('CON', '11', '15', '1', '0', '0', '0', '0', '0', '1', '0', '1'); INSERT INTO `item_attr` VALUES ('INT', '11', '15', '1', '0', '0', '0', '0', '0', '1', '0', '1'); INSERT INTO `item_attr` VALUES ('STR', '11', '15', '1', '0', '0', '0', '0', '0', '1', '0', '1'); INSERT INTO `item_attr` VALUES ('DEX', '11', '15', '1', '0', '0', '0', '0', '0', '1', '0', '1'); INSERT INTO `item_attr` VALUES ('ATT_SPEED', '8', '10', '0', '0', '0', '1', '0', '1', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('CAST_SPEED', '8', '30', '1', '1', '1', '0', '0', '1', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('HP_REGEN', '65', '50', '0', '0', '1', '0', '1', '1', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('POISON_PCT', '8', '10', '1', '0', '0', '0', '0', '1', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('CRITICAL_PCT', '18', '15', '1', '0', '0', '1', '1', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('PENETRATE_PCT', '30', '15', '1', '0', '1', '0', '1', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('ATTBONUS_HUMAN', '10', '20', '1', '0', '1', '0', '0', '1', '1', '1', '0'); INSERT INTO `item_attr` VALUES ('STEAL_HP', '50', '20', '0', '1', '1', '0', '0', '0', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('BLOCK', '10', '15', '0', '0', '0', '0', '0', '0', '1', '0', '0'); INSERT INTO `item_attr` VALUES ('DODGE', '10', '15', '0', '0', '0', '1', '0', '1', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('RESIST_WARRIOR', '18', '20', '0', '1', '0', '1', '1', '0', '0', '1', '1'); INSERT INTO `item_attr` VALUES ('RESIST_ASSASSIN', '18', '20', '0', '1', '0', '1', '1', '0', '0', '1', '1'); INSERT INTO `item_attr` VALUES ('RESIST_SURA', '18', '20', '0', '1', '0', '1', '1', '0', '0', '1', '1'); INSERT INTO `item_attr` VALUES ('RESIST_SHAMAN', '18', '20', '0', '1', '0', '1', '1', '0', '0', '1', '1'); INSERT INTO `item_attr` VALUES ('RESIST_MAGIC', '25', '20', '0', '1', '1', '0', '0', '1', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('REFLECT_MELEE', '18', '30', '0', '1', '0', '0', '0', '0', '1', '0', '1'); INSERT INTO `item_attr` VALUES ('RESIST_SWORD', '0', '15', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('RESIST_TWOHAND', '0', '15', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('RESIST_DAGGER', '0', '15', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('RESIST_BELL', '0', '15', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('RESIST_FAN', '0', '15', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `item_attr` VALUES ('MAGIC_ATT_GRADE', '9', '150', '0', '1', '0', '0', '0', '0', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('ATT_GRADE_BONUS', '9', '150', '0', '1', '0', '0', '0', '0', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('IMMUNE_STUN', '3', '100', '0', '0', '0', '0', '0', '0', '1', '0', '0'); INSERT INTO `item_attr` VALUES ('IMMUNE_SLOW', '3', '100', '0', '0', '0', '0', '0', '0', '0', '0', '1'); INSERT INTO `item_attr` VALUES ('IMMUNE_FALL', '3', '100', '0', '0', '0', '0', '0', '0', '0', '0', '1');
  2. Post your void CHARACTER::RefreshAffect() of char_affect.cpp
  3. InstanceBase.cpp Search: if (m_swordRefineEffectRight) m_swordRefineEffectRight = __AttachEffect(m_swordRefineEffectRight); if (m_swordRefineEffectLeft) m_swordRefineEffectLeft = __AttachEffect(m_swordRefineEffectLeft); break; After make a new line and add: case CItemData::ITEM_TYPE_COSTUME: if (pItem->GetSubType() == CItemData::COSTUME_WEAPON) { __ClearWeaponRefineEffect(); switch(pItem->GetValue(3)) { case CItemData::WEAPON_DAGGER: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_SMALLSWORD_REFINED8; m_swordRefineEffectLeft = EFFECT_REFINED + EFFECT_SMALLSWORD_REFINED8_LEFT; break; case CItemData::WEAPON_BOW: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_BOW_REFINED8; break; case CItemData::WEAPON_TWO_HANDED: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_SWORD_REFINED8; break; case CItemData::WEAPON_BELL: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_SMALLSWORD_REFINED8; break; case CItemData::WEAPON_FAN: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_FANBELL_REFINED8; break; default: __ClearWeaponRefineEffect(); m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_SWORD_REFINED8; } if (m_swordRefineEffectRight) m_swordRefineEffectRight = __AttachEffect(m_swordRefineEffectRight); if (m_swordRefineEffectLeft) m_swordRefineEffectLeft = __AttachEffect(m_swordRefineEffectLeft); break; }
  4. Hi, I wanna put different effects on weapons according to the linked stones. For example, if the weapon has a Stone against Warrior will have a red effect. I tried to do it only checking the socket0 with GetSocket(0) in the function __GetRefinedEffect of InstanceBase.cpp case CItemData::WEAPON_FAN: long stoneIdx0 = pItem->GetSocket(0); if (stoneIdx0 == VNUM_STONE_AGAINST_WARRIOR) { m_swordRefineEffectRight = EFFECT_REFINED+EFFECT_WEAPON_RED; } else { m_swordRefineEffectRight = EFFECT_REFINED+EFFECT_FANBELL_REFINED7+refine-7; } break; But when I tested the weapon looks with the normal effect: EFFECT_FANBELL_REFINED7+refine-7 How I can get the vnum of the socket0 in binary? is possible?
  5. Thanks, This part of my function was good, but I found the problem in: if (CItemData::WEAPON_ARROW == pItemData->GetSubType()). Solved. ### If someone has the same problem (and has NEW_ARROW_SYSTEM enabled), this is my fixed __HasEnoughArrow() function (in PythonPlayerSkill.cpp? bool CPythonPlayer::__HasEnoughArrow() { CItemData * pItemData; if (CItemManager::Instance().GetItemDataPointer(GetItemIndex(TItemPos(INVENTORY, c_Equipment_Arrow)), &pItemData)) if (CItemData::ITEM_TYPE_WEAPON == pItemData->GetType()) #ifdef ENABLE_NEW_ARROW_SYSTEM if (CItemData::WEAPON_ARROW == pItemData->GetSubType() || CItemData::WEAPON_UNLIMITED_ARROW == pItemData->GetSubType()) #else if (CItemData::WEAPON_ARROW == pItemData->GetSubType()) #endif { return true; } PyCallClassMemberFunc(m_ppyGameWindow, "OnCannotShotError", Py_BuildValue("(is)", GetMainCharacterIndex(), "EMPTY_ARROW")); return false; }
  6. Hi, I have a problem with my client, it crash when I click the left button to try to attack without enough arrows (it doesn't happen if I attack with the space bar) I checked the syserr of client and game, but nothing. I compiled my binary in debug mode to see what is wrong, but nothing again. Any idea?
×
×
  • 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.