-
Posts
683 -
Joined
-
Last visited
-
Days Won
8 -
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Everything posted by Speachless
-
Open char _state.cpp and search: if (fDist >= 4000.0f) Add before if (fDist >= 100.0f) { int boss_no_follow[] = {3391, 3591, 3791, 3091, 3191, 3891, 3691, 1191, 1901, 5163, 1304}; for (int i = 0; i < _countof(boss_no_follow); i++) { if (m_pkMobData->m_table.dwVnum == boss_no_follow[i]) { SetVictim(NULL); return; } } } The difference between mob_proto NOMOVE flag is that c++ part allow the mob to use his walk motion when it's not attacked. Open char_state.cpp and search: if (victim && !victim->IsDead()) Replace with if (victim && !victim->IsDead()) { SECTREE *tree = victim->GetSectree(); if (tree && tree->IsAttr(victim->GetX(), victim->GetY(), ATTR_BANPK)) return; if (CanBeginFight()) BeginFight(victim); return; } In char.cpp search void CHARACTER::OnMove(bool bIsAttack) After add SECTREE * sectree = GetSectree(); if (sectree && sectree->IsAttr(GetX(), GetY(), ATTR_BANPK) && IsMonster()) Return(); After you go out of safezone the mob will go for you. I haven't got a solution for that yet. Frist method needs something more. Open ActorInstanceBattle.cpp and create a bool with boss vnum bool NO_MOVE_WHEN_ATTACK(unsigned int vnum) { switch (vnum) { case 2493: case 2091: case 2092: case 1903: case 2492: case 1191: case 2598: case 3091: case 3191: case 3591: case 3691: case 3791: case 3891: case 3391: case 6091: return true; } return false; } Search bool CActorInstance::__CanPushDestActor(CActorInstance& rkActorDst) Add if (NO_MOVE_WHEN_ATTACK(rkActorDst.GetRace())) return false;
-
We better work on a official ++ topic for the future members to be able to find faster.
-
AA i see now, it happens when you hit them, not if you use bravely cape. I will search for a fix.
-
If you teleport before mobs come nears to you in safezone, the mob will stay there so i think lent's code need to be used because it's on OnMove. Tested, works. SECTREE * sectree = GetSectree(); if (sectree && sectree->IsAttr(GetX(), GetY(), ATTR_BANPK) && IsMonster()) { SetVictim(NULL); Return(); }
-
Move the code to char_state.cpp Follow/Move. Search 2493 (ctrl+f) and you will add the code before it.
-
Put it before if (Return())
-
SetVictim(NULL);
-
Help me, but i think that you cant.
Speachless replied to WeedHex's topic in Community Support - Questions & Answers
No, the edit also solves a kick problem that generally occurs on the mainline source. The problem occurs when you have hundreds of online players. I do not know if I made any other changes, because it was a long time ago, but the above function has solved my problem for sure. There is no need to get out the whole sequence code, just that little change is enough. -
Help me, but i think that you cant.
Speachless replied to WeedHex's topic in Community Support - Questions & Answers
Just stop. I use that replace since 2 years. You wanted for help, i told you what to do. It's not just a syserr. It's a kick characters from game. You will see after you get players on server. -
game core advanced duel system
Speachless replied to prody's topic in Community Support - Questions & Answers
When people will understand that if you want help you have to post your code ? Check pvp_check_disconnect There is a null pointer in GetQuestFlag . Fix the pvp code or make a return if null there. -
Help me, but i think that you cant.
Speachless replied to WeedHex's topic in Community Support - Questions & Answers
Edit like this //if (bHeader == HEADER_CG_PONG) //sys_log(0, "PONG! %u %u", m_pPacketInfo->IsSequence(bHeader), *(BYTE *) (c_pData + iPacketLen - sizeof(BYTE))); if (m_pPacketInfo->IsSequence(bHeader)) { BYTE bSeq = lpDesc->GetSequence(); BYTE bSeqReceived = *(BYTE *) (c_pData + iPacketLen - sizeof(BYTE)); if (bSeq != bSeqReceived) return true; else { lpDesc->push_seq(bHeader, bSeq); lpDesc->SetNextSequence(); } } -
official Official Block System - Messenger
Speachless replied to Mali's topic in Features & Metin2 Systems
I wasn't talking about you. I appreciate that there are people who post free systems. I am taking about owner of server who download a system, but don't look in code. Every code can be improved. I know people who used systems from internet and got their servers f.up. It's not about who created the system, it's about who use it. Please accept my apologies, I didn't mean to upset you. -
official Official Block System - Messenger
Speachless replied to Mali's topic in Features & Metin2 Systems
Yes, but i saw others using it without the fix. And i was like " what the hell man, people just don't want to learn from the past " -
Drop for fish/clam ?
Speachless replied to DeYaN.'s topic in Community Support - Questions & Answers
Serverfile/fishing.txt -
Inventory sidebar bug after teleport
Speachless replied to anonim55's topic in Community Support - Questions & Answers
Do you have any python error in syser.txt ? -
official Official Block System - Messenger
Speachless replied to Mali's topic in Features & Metin2 Systems
void MessengerManager::RemoveFromBlockList(MessengerManager::keyA account, MessengerManager::keyA companion) You have to escape it. Haven't you learned anything from the past sql exploit ? -
SEARCHING GOOD EXPERT OF PACKETS!
Speachless replied to Metin2 Dev's topic in Paid Support / Searching / Recruiting
Your ACMD(do_user_horse_ride) it's not normal. You are not normal too. -
My server it's 3 old old and have hundreds of players online. A 3 old server has also a huge database right ? so more memory to read/write. And i don't have problems. Just stop telling people that loop timers are bad performance because are not. EVERYTHING ON METIN2 IT'S BASED ON TIMERS. You want to optimise the game ? Start with python part.
-
Talk about performance when you have a server. ( and ps: It's not normal that a game run out of memory). I have 10 loop_timers to all connected players and the game doesn't even feel them. It's about data you put that loop to read/write. But most loops writes/read just some lines of code. Just stop
-
Game performance can't be affected by a loop_timer.
-
Urgent Arial font problem client
Speachless replied to Speachless's topic in Community Support - Questions & Answers
I still have this problem. -
fix Fix Affect Weaponry Sura's Dispel and Healing Power Shaman's Heal Lag Bug
Speachless replied to Syreldar's topic in Bug Fixes
Try my fix. -
Get skill count - New Pet System
Speachless replied to Metin2 Dev's topic in Community Support - Questions & Answers
You already have a python code, on that mini interface. Use it. -
python mall in inventory
Speachless replied to amosth's topic in Community Support - Questions & Answers
This tutorial may help you But in 2018 you can't get a source ? -
You have to compile the quest, with ./qc name.quest