Jump to content

Dalí

Banned
  • Posts

    32
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

Everything posted by Dalí

  1. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) This feature allows you to drop items only on a certain map
  2. Battle.cpp search for case WEAPON_CLAW: iDam = iDam * (100 - pkVictim->GetPoint(POINT_RESIST_CLAW)) / 100; break; and replace it with case WEAPON_CLAW: iDam = iDam * (100 - pkVictim->GetPoint(POINT_RESIST_DAGGER)) / 100; break; char_skill.cpp search for case WEAPON_CLAW: iDam = iDam * (100 - pkChrVictim->GetPoint(POINT_RESIST_CLAW)) / 100; break; and replace it with case WEAPON_CLAW: iDam = iDam * (100 - pkChrVictim->GetPoint(POINT_RESIST_DAGGER)) / 100; break; INSERT INTO `skill_proto` VALUES ('170', 'Shred', '7', '1', '1', '0', 'HP', '-(1.1*atk+(0.3*atk+1.5*str)*k)', '40+100*k', '', '', '12', '-(1.1*atk+(0.3*atk+1.5*str)*k)', '', 'ATTACK,USE_MELEE_DAMAGE,SPLASH,ATTACK_BLEEDING', '', 'NONE', '60*k', '5+25*k', '', '', '', '', '40+100*k', '0', '0', 'MELEE', '5', '1', '300', '200'); INSERT INTO `skill_proto` VALUES ('171', 'Wolf s Breath', '7', '1', '1', '0', 'HP', '-(2*atk+(atk+dex*3+str*5+con)*k)', '40+120*k', '', '', '20', '-(2*atk+(atk+dex*3+str*5+con)*k)', '', 'ATTACK,USE_MELEE_DAMAGE,SPLASH,ATTACK_STUN,CRUSH', '', 'NONE', '100+k*1000/6', '2', '', '', '', '', '40+120*k', '0', '0', 'MELEE', '10', '0.5', '1000', '200'); INSERT INTO `skill_proto` VALUES ('172', 'Wolf Pounce', '7', '1', '1', '0', 'HP', '-(atk+(1.6*atk+200+dex*7+str*7)*k)', '40+100*k', '', '', '12', '-(atk+(1.6*atk+200+dex*7+str*7)*k)', '', 'ATTACK,USE_MELEE_DAMAGE', '', 'NONE', '', '', '', '', '', '', '40+100*k', '0', '0', 'MELEE', '5', '1', '800', '100'); INSERT INTO `skill_proto` VALUES ('173', 'Wolf s Claw', '7', '1', '1', '0', 'HP', '-(3*atk+(0.8*atk+str*6+dex*2+con)*k)', '40+100*k', '', '', '12', '-(3*atk+(0.8*atk+str*6+dex*2+con)*k)', '', 'ATTACK,USE_MELEE_DAMAGE', '', 'DEF_GRADE', '-30*k', '5', '', '', '', '', '40+100*k', '0', '0', 'MELEE', '10', '1', '800', '100'); INSERT INTO `skill_proto` VALUES ('174', 'Crimson Wolf', '7', '1', '1', '0', 'ATT_GRADE', '7+(5*iq+13)*k', '20+240*k', '50+100*k', '2+23*k', '2', '7+(5*iq+13)*k', '', 'SELFONLY,TOGGLE', 'RED_POSSESSION', 'DEF_GRADE', '-30*k', '50+100*k', '', '', '', '', '20+240*k', '0', '0', 'NORMAL', '1', '1', '0', '0'); INSERT INTO `skill_proto` VALUES ('175', 'Indigo Wolf Soul', '7', '1', '1', '0', 'ATT_SPEED', '20*k', '80+220*k', '200', '', '300', '20*k', '', 'PARTY', 'BLUE_POSSESSION', 'DODGE', '1+10*k', '200', '', '', '', '', '80+220*k', '0', '0', 'NORMAL', '1', '1', '1000', '0');
  3. PythonApplicationModule.cpp #ifdef ENABLE_VIEW_TARGET_DECIMAL_HP PyModule_AddIntConstant(poModule, "ENABLE_VIEW_TARGET_DECIMAL_HP", 1); #else PyModule_AddIntConstant(poModule, "ENABLE_VIEW_TARGET_DECIMAL_HP", 0); #endif
  4. Party.cpp Search for EVENTINFO(party_update_event_info) after DWORD pid; add CParty *pParty; Bellow, after : pid( 0 ) add , pParty(NULL) Search void CParty::Link(LPCHARACTER pkChr) after info->pid = m_dwLeaderPID; add info->pParty = this; Search void CParty::Update() replace if (!l) return; with if (!l) { RemoveBonuses(); return; } At the end of the file add void CParty::RemoveBonuses() { bool bResendAll = false; int iNewExpBonus = ComputePartyBonusExpPercent(); if (m_iExpBonus != iNewExpBonus) { bResendAll = true; m_iExpBonus = iNewExpBonus; } if (bResendAll) { for (TMemberMap::iterator it = m_memberMap.begin(); it != m_memberMap.end(); ++it) { if (it->second.pCharacter) { ComputeRolePoint(it->second.pCharacter, 0, false); SendPartyInfoOneToAll(it->second.pCharacter); } } } } Party.h Search for bool IsPartyInDungeon(int mapIndex); add after this void RemoveBonuses(); Kind regards, Dalí
  5. Of those mentioned by you, great is the best option
  6. this happens when freelancers are better than "developers". Good job mate!
  7. The best are the ones made by you. Also, I recommend you to start on something clean like mainline/vanilla
  8. For cube.cpp ch->PointChange(POINT_GOLD, -static_cast<int>(cube_proto->gold), false);
  9. Yes because a horse can live between 25 and 30 years or your horse is immortal
  10. I don t say ” This code is mine ” so shut the fuck up 1, and 2 If we look in your activity , 90% of posts are in question and answer Nice Elijah or other kids wich you puth them to comment
  11. I think is a new version cause @M2BobFixed is older than @Player Unknown :-/
  12. If you use item_proto.sql you need vnum_range to be able to refine dragon soul
  13. Absolutely right bro, but if he want to block auto potions , we give him what he want
  14. I think its a bug when yo are polymorphed and you have auto potions enabled
  15. // Open service.h and add #define ENABLE_VNUMRANGE // 1. Open ClientManagerBoot.cpp and earch enum IProtoT and after , value5 add #ifdef ENABLE_VNUMRANGE , vnum_range #endif // 2. Search bool CClientManager::InitializeItemTableFromDB() and after , value5" add #ifdef ENABLE_VNUMRANGE " , vnum_range" #endif // or replace the function with bool CClientManager::InitializeItemTableFromDB() { char query[2048]; fprintf(stdout, "Loading item_proto from MySQL\n"); snprintf(query, sizeof(query), "SELECT vnum, type, subtype, name, %s, gold, shop_buy_price, weight, size," " flag, wearflag, antiflag, immuneflag+0, refined_vnum, refine_set, magic_pct," " socket_pct, addon_type, limittype0, limitvalue0, limittype1, limitvalue1," " applytype0, applyvalue0, applytype1, applyvalue1, applytype2, applyvalue2," " value0, value1, value2, value3, value4, value5" #ifdef ENABLE_VNUMRANGE " , vnum_range" #endif " FROM item_proto%s ORDER BY vnum;", g_stLocaleNameColumn.c_str(), GetTablePostfix() ); // 3. Search VERIFY_IFIELD(IProto::addon_type, item_table->sAddonType); and after add #ifdef ENABLE_VNUMRANGE VERIFY_IFIELD(IProto::vnum_range, item_table->dwVnumRange); #endif // 4. Open player.item_proto, select Design Table and add `vnum_range` tinyint(4) NOT NULL DEFAULT '0',
  16. You need to install gcc++49 pkg install gcc or put in your makefile g++ instead of g++49
×
×
  • 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.