-
Posts
920 -
Joined
-
Days Won
890 -
Feedback
100%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Everything posted by Mali
-
Thanks but I don't do these things for money. Have a good day
-
Discord SDK implementation
Mali replied to Speachless's topic in Paid Support / Searching / Recruiting
wtf? I shared it for free, and you want to pay for implementation. what a nice forum -
M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) Non Stackable(6) Stackable(625) **Added /book command update
-
For libs: [Hidden Content]
- 58 replies
-
- 37
-
I don't know Game SDK or ban. I am not responsible for what might happen.?
-
Yes we can make a lot of things, this is so basic example. Also we can use visualizer:
-
M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) Create app at here:[Hidden Content] Copy CLIENT ID Then change Discord.h/DiscordClientID Add images at here: example my image's name is image1 You can also use smallImageKey and smallImageText
- 58 replies
-
- 835
-
There's not much difference. [Hidden Content] TEST
-
because you add the code to the wrong side ++ **Added code for SubTypes, you can prefer that.
-
M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) There is already drop sounds. Here is for pick up: **Added code for SubTypes, you can prefer that.
-
you can use lower instead of replace moneyString.lower()
-
I know what they mean.We are talking about wrong codes, not efficient
-
C++ version [Hidden Content]
- 6 replies
-
- 143
-
use my tool String Builder
-
official Pendant System - Elemental Talismans with Bonus
Mali replied to Rakancito's topic in Features & Metin2 Systems
You should give via for @metin2-factory -
M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) You don't need to use getcurrentquestindex anymore. Do not forget: when info or button begin Edit: I do not recommend using it. It can create a security vulnerability.
-
I'm not author of this topic. I just edited some bad codes
-
thanks for topic here is auto adaptable codes and some improvings.. #ifdef ENABLE_SHOW_CHEST_DROP #include "../../libgame/include/grid.h" void ITEM_MANAGER::GetChestItemList(DWORD dwChestVnum, std::vector<TChestDropInfoTable>& vec_item, int& sizee) { const auto pGroup = GetSpecialItemGroup(dwChestVnum); if (!pGroup) return; std::vector<std::unique_ptr<CGrid>> pGrids; pGrids.emplace_back(std::make_unique<CGrid>(15, 5)); for (int i = 0; i < pGroup->GetGroupSize(); i++) { const auto itemTable = GetTable(pGroup->GetVnum(i)); //pass if exp, yang or duplicate item if (!itemTable || !itemTable->dwVnum || itemTable->dwVnum < 3 || std::find_if(vec_item.begin(), vec_item.end(), [&pGroup, &i](const TChestDropInfoTable& data) -> bool { return static_cast<DWORD>(pGroup->GetVnum(i)) == data.dwItemVnum; }) != vec_item.end()) continue; bool PushNewGrid = true; for (size_t iPage = 0; iPage < pGrids.size(); iPage++) { const auto iPos = pGrids.at(iPage)->FindBlank(1, static_cast<int>(itemTable->bSize)); if (iPos >= 0) { pGrids.at(iPage)->Put(iPos, 1, static_cast<int>(itemTable->bSize)); vec_item.push_back({ static_cast<BYTE>(iPage+1), static_cast<BYTE>(iPos), static_cast<DWORD>(pGroup->GetVnum(i)), static_cast<BYTE>(pGroup->GetCount(i)) }); PushNewGrid = false; break; } } if (PushNewGrid) { pGrids.emplace_back(std::make_unique<CGrid>(15, 5)); i--;//again } } } #endif
-
For old introselect Find in introselect.py / def OnKeyDown(self, key): if 28 == key: Change: if 28 == key or key == app.DIK_NUMPADENTER:
- 1 reply
-
- 1
-
Separating dots in bonuses
Mali replied to maniek19's topic in Community Support - Questions & Answers
I said you need to change bonus names. Not only hp. That was just an example. Change all of them -
Separating dots in bonuses
Mali replied to maniek19's topic in Community Support - Questions & Answers
Find in uitooltip.py: return self.AFFECT_DICT[affectType](affectValue) Change: return self.AFFECT_DICT[affectType]("{:0,.0f}".format(affectValue).replace(',', '.')) Code generated from this post Also you need to change bonus names from locale_game.txt. Because value has been converted to string... example: TOOLTIP_MAX_HP Max. HP +%d SA to: TOOLTIP_MAX_HP Max. HP +%s SA -
[Help] How to disable stamina
Mali replied to Cripplez's topic in Community Support - Questions & Answers
char.h void SetStamina(int stamina) { m_points.stamina = stamina; } to void SetStamina(int stamina) { m_points.stamina = m_pointsInstant.iMaxStamina; }