Jump to content

Search the Community

Showing results for tags 'c++' in content posted in Programming & Development.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Metin2 Dev
    • Announcements
  • Community
    • Member Representations
    • Off Topic
  • Miscellaneous
    • Metin2
    • Showcase
    • File Requests
    • Community Support - Questions & Answers
    • Paid Support / Searching / Recruiting
  • Metin2 Development
  • Metin2 Development
    • Basic Tutorials / Beginners
    • Guides & HowTo
    • Binaries
    • Programming & Development
    • Web Development & Scripts / Systems
    • Tools & Programs
    • Maps
    • Quests
    • 3D Models
    • 2D Graphics
    • Operating Systems
    • Miscellaneous
  • Private Servers
    • Private Servers
  • Uncategorized
    • Drafts
    • Trash
    • Archive
    • Temporary
    • Metin2 Download

Product Groups

  • Small Advertisement
  • Large Advertisement
  • Advertising

Categories

  • Third Party - Providers Directory

Categories

  • Overview
  • Pages
    • Overview
    • File Formats
    • Network
    • Extensions

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Pillory


Marketplace


Game Server


Country


Nationality


Github


Gitlab


Discord


Skype


Website

Found 9 results

  1. Hi, By pressing SHIFT + RIGHT CLICK on the items eligible for sale, an interface will appear showing you how much money you will receive and how many items you have selected. The selected items will have a special icon indicating that they have been selected. More information can be found in the README. [Hidden Content] [Hidden Content]
  2. Hello! Today I found that in lua the modification of item.set_socket(0, value) does not work. Fixed: int item_set_socket(lua_State* L) { CQuestManager& q = CQuestManager::instance(); if (q.GetCurrentItem() && lua_isnumber(L, 1) && lua_isnumber(L, 2)) { int idx = (int)lua_tonumber(L, 1); int value = (int)lua_tonumber(L, 2); if (idx >= 0 && idx < ITEM_SOCKET_MAX_NUM) q.GetCurrentItem()->SetSocket(idx, value); } return 0; } Original: int item_set_socket(lua_State* L) { CQuestManager& q = CQuestManager::instance(); if (&q == NULL) return 0; LPITEM item = q.GetCurrentItem(); if (item == NULL) return 0; if (item && lua_isnumber(L, 1) && lua_isnumber(L, 2)) { int idx = (int) lua_tonumber(L, 1); int value = (int) lua_tonumber(L, 2); if (idx == NULL) return 0; if (value == NULL) return 0; if (idx >=0 && idx < ITEM_SOCKET_MAX_NUM) item->SetSocket(idx, value); } return 0; } Explanation: If the socket index is 0, it returns and does not run the code... fck logic. if (idx == NULL) return 0;
  3. Hello Metin2 Dev Community. I'm here to present a function to check and return the monster rank. I'm creating my biolog that's why i had to create this function, i know there are other ways to do this but i decided to do it this way. I'm sharing in case someone needs. With best regards, Doose.
  4. Hello metin2 Dev. I'm here to present a method on how to create a new passive skill. the design of my own passive won't be shared so i recommend you to create a new one. Here is a gif. So, let's go to the tutorial. And this is how you create a new support skill. Anything you need help with, don't hesitate to write here or to contact. With best regards, Doose.
  5. A simple code that you can configure in the vector to add the maps where you do not want any boss or mob to drop their items. service.h #define ENABLE_BLOCK_DROP_MAP utils.h search: extern void set_global_time(time_t t); add: #ifdef ENABLE_BLOCK_DROP_MAP extern bool is_drop_item(int map_index); #endif utils.cpp add: #ifdef ENABLE_BLOCK_DROP_MAP bool is_drop_item(int map_index){ vector<int> DropMap {41}; // -- add index the map (41 == jinno map) //dungeon for (int i=180000; i<190000; i++) DropMap.push_back(i); return std::find(DropMap.begin(), DropMap.end(), map_index) != DropMap.end(); } #endif char_battle.cpp search: else if (IsRevive() == true) { Reward(false); } else { Reward(true); // Drops gold, item, etc.. } replace: else if (IsRevive() == true) { Reward(false); } else { #ifdef ENABLE_BLOCK_DROP_MAP if (is_drop_item(GetMapIndex())){ Reward(false);} else { Reward(true); } } #else Reward(true); } #endif
  6. NEW FLAG NOMOVE_AFTER_SPAWM service.h #define ENABLE_NOMOVE_AFTER_SPAWM length.h search : AIFLAG_REVIVE = (1 << 11), add: #ifdef ENABLE_NOMOVE_AFTER_SPAWM AIFLAG_NOMOVE_AFTER_SPAWM = (1 << 12), #endif protoreader.cpp search int get_Mob_AIFlag_Value(string inputString) add in string arAIFlag[] #ifdef ENABLE_NOMOVE_AFTER_SPAWM "NOMOVE_AFTER_SPAWM", #endif char.cpp search bool CHARACTER::SetSyncOwner(LPCHARACTER ch, bool bRemoveFromList) add: #ifdef ENABLE_NOMOVE_AFTER_SPAWM if (IS_SET(m_pointsInstant.dwAIFlag, AIFLAG_NOMOVE_AFTER_SPAWM)) return false; #endif char_skill.cpp search if (IS_SET(m_pkSk->dwFlag, SKILL_FLAG_CRUSH | SKILL_FLAG_CRUSH_LONG) add: #ifdef ENABLE_NOMOVE_AFTER_SPAWM && !IS_SET(pkChrVictim->GetAIFlag(), AIFLAG_NOMOVE_AFTER_SPAWM) #endif char_state.cpp search void CHARACTER::__StateIdle_Monster() in if (!no_wander && !IS_SET(m_pointsInstant.dwAIFlag, AIFLAG_NOMOVE) add: #ifdef ENABLE_NOMOVE_AFTER_SPAWM && !IS_SET(m_pointsInstant.dwAIFlag, AIFLAG_NOMOVE_AFTER_SPAWM) #endif src client locale_inc.h #define ENABLE_NOMOVE_AFTER_SPAWM search in pythonnonplayer.h AIFLAG_REVIVE = (1 << 11), add: #if defined ENABLE_NOMOVE_AFTER_SPAWM AIFLAG_NOMOVE_AFTER_SPAWM = (1 << 12), #endif 991 ????? S_KNIGHT MONSTER MELEE 59 SMALL AGGR,NOMOVE example a small flag so that the mobs always have their location, so that when searching for a player they are always in the same position [Hidden Content]
  7. Download Alternative download links → Mega Hello Metin2 Dev. I'm here to present a Portable Shop System. How does it work? Players get a panel when click F7 with several options. This system exists to make players able to buy items while farming. In case of any problem, contact me or write here. With best regards, Doose.
  8. Download Merry Christmas to everyone, I saw that here is not the best option, so I want to offer you the official system, it is not a complicated system, but maybe someone needs it.
  9. Hello, Today I will present you two new features for affect. Real time affects: Long time ago a client of mine wanted some of his affects to be real time. As you may know the affects in metin2 are consumed only if you are online (except premium, but that is another story). The easier way to achieve this was to create a new variable inside the affect called bIsRealTime, set it to 1 and store the duration as unix time instead of seconds. You can use this new functionality by adding True at the end of the AddAffect function call and everything will work automaticaly. Update affect: In a version some time ago the official servers added this new functionality to only update an affect. This is used for the Summer Event Roulette minigame to update the collected souls count in real time in client. I didn't create a easy way to use this because it depends on what you update for the affect. Here is an example of how I used it on this event to update lApplyValue: CAffect * pAffect = pkChar->FindAffect(AFFECT_LATE_SUMMER_EVENT_BUFF); if(pAffect) { pAffect->lApplyValue += 1; pAffect->bIsUpdate = true; // Update the client SendAffectAddPacket(pkChar->GetDesc(), pAffect); } Download link: [Hidden Content]
×
×
  • 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.