-
Posts
656 -
Joined
-
Last visited
-
Days Won
187 -
Feedback
100%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by VegaS™
-
-
6 minutes ago, Ikarus_ said:
are you trying to freeze the game? xd
He's trying to call some API functions for making a DLL injectable to metin2 client = cheat/hack.
We don't support this here, topic closed.
- 1
- 2
-
-
Change your password.
-
Ok, we'll find a day and i'll merge all of your topics with resources into one (per category) and the thread title will be?
"3D Resources" and "2D Resources" ?
- 2
-
I've a question for you, wouldn't be better to add all of your resources into a single thread, instead of making unlimited threads for a simple resource?
Would be better for you to update it and for users to find many things faster.
We can talk here, the topic isn't approved yet, just you and the staff can see the messages.
- 2
- 1
-
On 6/20/2020 at 8:49 PM, Denis said:
You are just wasting your time, he wont be able to do it.
On 6/20/2020 at 9:00 PM, Denis said:Common, if he had some knowledge of these stuff he would be able to debug it by himself without asking for help. But since he posted such a simple bug im guessing he cant do the stuff you told him.
On 6/21/2020 at 7:58 PM, Denis said:Gia tetoia bugs den tha ebena kan sto kopo na kano post, einai apta pio eukola fixes efoson kseris pos dulevoun ta system pou exis. Alla na fantasto auta pou exeis einai kapoio leaked version. Oso gia to clean, den einai apo tin stigmi pou exis auta ta bugs. Kali tixi
On 6/21/2020 at 9:00 PM, Denis said:pia 2020 bug
22 hours ago, Denis said:Asteri eisai bravo ekanes fix to 2020 bug
22 hours ago, Denis said:ela vre pitsirko isixase mia plaka se kaname thimoses, an isoun toso kalos den tha zituses edo voithia .
boris na pistevis oti thelis, den me kses apo xtes na les tetia pragmata gia mena, isos kseris ta sourgela tou ellinikou metin2 emena den me kses aha
22 hours ago, Denis said:klew
If you think that your reactions as a former staff, are fine just because this:
- he's greek
- he's using a public system
- he doesn't know english
- he's new on this forum
- he isn't a 'dev' and don't know anything about coding
then, you're the bad person, not him, go and solve your problems in other parts and let'me show you the rules.
Edit: Apparently Denis didn't understand what I wanted to say with the "bad person, so he take it wrong. I apologize.
Rules
(1.1) Language
The language in this board is english. If you want to post something in your own language always add an english translation. The only exception for this rule is this section: Private Servers
(1.2) Behaviour
Don't flame at other users. We want this board to be the best possible experience. You maybe want help and everybody started with no or little knowledge. So help and don't flame! Also we don't want to see any racism or sexism.
(1.3) Spamming
Do not spam in this board. Posting a topic or a question once is enough. If you don't get an answer maybe your question needs more description. Or nobody is able to help you there. Double post aswell as double threads will be punished with an infraction.
^+
(2.2) Bumping
Allowed bumping times: Q&A - 48 hours
(2.5) Questions & Answers specific rules
Don't modify your thread (or reply to it) to mark it solved, and not explain the solution to the issue.
@Denis +2 infractions
@perfect +3 infractions
Topic closed.
- 1
- 2
-
Please:
- Stop using bit.ly links.
- Remove the exe and put the whole content into an archive + virus total link.
Send me a PM when you've finished and i'll show/update again your resource.
- 2
-
Thanks for release, already i did something like this in a topic from 2019, so here's:
- locale/en/locale_game.txt
ATTR_6TH_7TH_POSSIBILITY You can add an additional bonus.
- root/uiToolTip.py
- 26
- 7
- 22
-
Thanks for the fix, for those who wondering from where's the formula: void CPythonPlayer::__RunCoolTime(DWORD dwSkillSlotIndex)
- 2
- 1
- 6
-
On 6/6/2020 at 2:02 AM, CristianDragan said:
I tried your method few minutes ago, and I get " need more than 1 value to unpack " at " (accountName, accountPassword) = content.split(':') ". Thank you in advance.
Shouldn't be like (accountName, accountPassword) = content.split('Value1', 'Value2'')
Fixed, the function didn't allowed you to login with the normal method, just with the saved account from acp.py, now will work both of them.
- 15
- 1
- 6
- 12
-
On 6/5/2020 at 5:48 PM, CristianDragan said:
Hi! I have a small problem. Hope that you can help me.
Everything works, but if I'm not selecting any account from the list and I use the login button instead of enter, I get https://pastebin.com/raw/XSv9k8Fz in syserr.
intrologin.py: https://pastebin.com/kKuYbCJd
Thank you!
def __OnClickLoginAutoButton(self): file_object = open("LIB//acp.pyc", "r") credentials = file_object.readline() credentials = credentials.split(";") file_object.close() self.Connect("{}".format(credentials[0]), "{}".format(self.decode(self.__ReadSavedPassword(),credentials[1]))) return
Change the function __OnClickLoginAutoButton with:
- 18
- 5
- 21
-
Quote
(2.4) Content
- No posting (whether to sell or give away for free) anything that involves cheating or stealing from people's clients or servers.
You got the information related about what programs you should use, but what you want is just to put users to unpack files from another client, we don't support this, don't try to fool people again, thanks.
- 1
-
Because you commented this:
# self.ClearToolTip()
-
24 minutes ago, Sevence™ said:
Please, close this topic, fucking fraud.
The author have the report button, he can report it and give us proofs that's his system.
We can't close a topic just because we see this:
QuoteuiSwitchbot.py line 14: import cPickle as pickle
Until there's no report from the seller, we could consider this as a normal topic, how can we know that's a public system or a sale system?
-
Topic closed + you won a warning.
(2.5) Questions & Answers specific rules
- Don't modify your thread (or reply to it) to mark it solved, and not explain the solution to the issue.
- 2
-
- component.py
Spoiler- game.py
Search for:
Spoilerdef __ProcessPreservedServerCommand(self): def __WarBoard(self, input): constInfo.wndWarBoard.Handle(input) def CanOpenWarBoard(self): constInfo.CanOpen = 1 def CantOpenWarBoard(self): constInfo.CanOpen = 0 try: command = net.GetPreservedServerCommand() while command: print " __ProcessPreservedServerCommand", command self.serverCommander.Run(command) command = net.GetPreservedServerCommand() except RuntimeError, msg: dbg.TraceError(msg) return 0
Replace with:
- 29
- 1
- 3
- 13
-
-
@Arkane2 Check my first reply, i added it too.
- 1
-
Thanks for the remark, but I never used this command in game as a player, this should be active just for debug as GM's, no sense for players.
About the fix, could be done directly from here too:
File: cmd_general.cpp
- costume
Search for:
snprintf(buf, bufferSize, FN_point_string(attr.bType), attr.sValue);
Replace it with:
- hair
Search for:
offset = snprintf(buf, bufsiz, FN_point_string(aff->bApplyOn), aff->lApplyValue);
Replace it with:
const char * cPointString = FN_point_string(aff->bApplyOn); if (!*cPointString) return false; offset = snprintf(buf, bufsiz, cPointString, aff->lApplyValue);
There's no sense for showing to a player 'UNK... 23%' since he don't know what it's..
I think it's better just to ignore the type if doesn't exist and don't show it in the chat.
If you really want to do something like this, you can add a sys_log as an error to see the bonus missing and add it into the function.
- 19
- 5
- 37
-
Good idea, the part of GetCompareIndex could be improved for better customization, by that people can add easily new types/subtypes.
Quotedef SetCompareItem(self, itemVnum): item.SelectItem(itemVnum) if not self.CompareTooltip: self.CompareTooltip = ItemToolTip() self.CompareTooltip.IsCompare = True self.CompareTooltip.Hide() idx = item.GetCompareIndex() if idx: self.CompareTooltip.SetInventoryItem(idx, player.INVENTORY, False) self.CompareTooltip.AutoAppendTextLine("{}Equipped".format("|cffADFF2F")) self.CompareTooltip.ResizeToolTip()
To:
Quote#if defined(__COMPARE_TOOLTIP__) PyObject* itemGetCompareIndex(PyObject* poSelf, PyObject* poArgs) { CItemData* pItemData = CItemManager::Instance().GetSelectedItemDataPointer(); if (!pItemData) return Py_BuildException("no selected item data"); DWORD idx = 0; const BYTE Type = pItemData->GetType(); const BYTE SubType = pItemData->GetSubType(); if (Type == CItemData::ITEM_TYPE_ARMOR) { switch (SubType) { case CItemData::ARMOR_BODY: idx = c_Equipment_Body; break; case CItemData::ARMOR_HEAD: idx = c_Equipment_Head; break; case CItemData::ARMOR_SHIELD: idx = c_Equipment_Shield; break; case CItemData::ARMOR_WRIST: idx = c_Equipment_Wrist; break; case CItemData::ARMOR_FOOTS: idx = c_Equipment_Shoes; break; case CItemData::ARMOR_NECK: idx = c_Equipment_Neck; break; case CItemData::ARMOR_EAR: idx = c_Equipment_Ear; break; } } else if (Type == CItemData::ITEM_TYPE_WEAPON) { idx = c_Equipment_Weapon; } else if (Type == CItemData::ITEM_TYPE_COSTUME) { switch (SubType) { case CItemData::COSTUME_BODY: idx = c_Costume_Slot_Body; break; case CItemData::COSTUME_HAIR: idx = c_Costume_Slot_Hair; break; #if defined(ENABLE_SASH_SYSTEM) case CItemData::COSTUME_SASH: idx = c_Costume_Slot_Sash; break; #endif } } #if defined(ENABLE_NEW_EQUIPMENT_SYSTEM) else if (Type == CItemData::ITEM_TYPE_BELT) { idx = c_Equipment_Belt; } #endif return Py_BuildValue("i", idx); } #endif
To:
- 21
- 1
- 1
- 9
- 1
- 26
-
Search for:
if (!kTextFileLoader.SplitLineByTab(i, &kTokenVector)) continue;
Add after:
if (kTokenVector.size() != MONSTER_CARD_MAX_NUM) { Tracef("CPythonPlayer::LoadMonsterCard(%s) - Strange Token Count [Line:%d / TokenCount:%d]\n", c_szFileName, i, kTokenVector.size()); continue; } for (auto & token : kTokenVector) token.erase(std::remove_if(token.begin(), token.end(), isspace), token.end());
Search for:
int pkGroup = std::stoi(kTokenVector[MONSTER_CARD_GROUP]); int pkIndex = std::stoi(kTokenVector[MONSTER_CARD_INDEX]); int pkVnum = std::stoi(kTokenVector[MONSTER_CARD_VNUM]); int pkType = std::stoi(kTokenVector[MONSTER_CARD_TYPE]); int pkMap1 = std::stoi(kTokenVector[MONSTER_CARD_MAP1]); pkMap2 = std::stoi(kTokenVector[MONSTER_CARD_MAP2]); pkMap3 = std::stoi(kTokenVector[MONSTER_CARD_MAP3]);
Replace with:
And change # to ## from .txt file or delete them.
- 2
- 1
- 3
-
Quote
Edited 1 hour ago by xHeaven
fixed speed hack detection, added simpler python solution and fast cloud fix (see edit history)There's no 'fast cloud' related about increasing fps.
So, are useless those modifications and if we talk about fix clipping what @Nirray release, that's another subject.
About speed hack fix detection you didn't mentioned the source of fix.
- 2
-
On 4/9/2020 at 2:40 AM, xHeaven said:Spoiler
Client\pack\root\ui.py
Find:
def SetDelay(self, delay):
def SetDelay(self, delay):
Replace with:
def SetDelay(self, delay = 13):
def SetDelay(self, delay = 13):
If you did this tutorial before, then in Client\pack\root\uitaskbar.py replace all .SetDelay(13) with .SetDelay().
If you did not, then simply write .SetDelay() instead of .SetDelay(13).
Btw, instead of adding a .SetDelay() to all objects, you could do do a simple change. for all visual ani_image from screen.
- root/ui.py
Search for:
if True == value.has_key("delay"): window.SetDelay(value["delay"])
Replace with:
So, you don't have to any part of python from tutorial, just this.
- 101
- 2
- 3
- 1
- 2
- 1
- 1
- 2
- 34
- 4
- 85
-
root/uiTaskBar.py, search for this and replace with your code.
net.SendChatPacket("/in_game_mall")
- 2
C++ Fix Config
in Bug Fixes
Posted · Edited by VegaS™
This feature already was there since beginning, but just for Japan.
PythonSystem.cpp, just remove the preprocessor directive and set the bWindowed to true.
For the music just change the music_volume to 0.0f, you don't have to mute the voice volume.
Also, maybe I'm wrong, but why you're doing this:
When you can simply change:
To: