-
Posts
43 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by .colossus.
-
-
maybe you just don´t have enough ram for your game cores
- 1
-
you missunderstood me.
seems like i got it frome rubinum source, but as i said i implemented it in my files for ages.
-
-
Hey guys,
with this snippet, the absorption chance is calculated nearly correctly using discrete distribution.
I quickly picked out the Lennt system and "adapted" it to it.
With other systems this shouldn't be too difficult eitherin char_item.cpp
below #include "threeway_war.h"
#include <random>
replace
switch (lVal) { case 2: { lVal = SASH_GRADE_2_ABS; } break; case 3: { lVal = SASH_GRADE_3_ABS; } break; case 4: { lVal = number(SASH_GRADE_4_ABS_MIN, SASH_GRADE_4_ABS_MAX_COMB); } break; default: { lVal = SASH_GRADE_1_ABS; } break; } SetSocket(SASH_ABSORPTION_SOCKET, lVal);
with
long percentageAdd = 0; std::random_device rd; std::mt19937 gen(rd()); std::discrete_distribution<> d({ 200, 100, 20, 10, 5, 1 }); percentageAdd = d(gen); SetSocket(SASH_ABSORPTION_SOCKET, lVal + percentageAdd);
Absorption is possible from 0-5%.
You can adjust or expand the distribution here:
d({ 200, 100, 20, 10, 5, 1 });
- 2
-
#update
SKILL_KWANKYEOK and SKILL_HORSE_WILDATTACK_RANGE are sending more than one packet.
maximum of possible packets which are computed is now calculated properly.
and yeah it could probably be solved better without using bSkillCD
- 1
- 1
- 3
-
41 minutes ago, flexio said:
good idea but you forgot to archer skills with multiple hits. Example Arrow Shower will shot only once
yeah you´re right.
i had this case not in my mind. i will adapt it in next days when i have some free time.
-
exactly, when you attack you don´t move, so there is no downside using this.
when you are sending attack packets like you do on those waithacks and move
it won´t be processed because of that simple check.
-
Hey guys,
I noticed while the character was moving, attack packets are processed.
It´s nothing special and just a small improvementin battle.cpp
below:int battle_hit(LPCHARACTER pkAttacker, LPCHARACTER pkVictim, int & iRetDam) {
add:
if (pkAttacker->IsStateMove()) return (BATTLE_DAMAGE);
- 1
- 8
- 2
-
Hey guys,
maybe you heard already about a new waithack method with poisonous cloud and some other stuff.
i don´t want to go into details and just share a potential fix for that
(i could not test it completly so some feedback is appreciated)in char.h
// below bool bUsed;
bool bSkillCD; DWORD dwHitCount;
// add after bUsed(false),
bSkillCD(false), dwHitCount(0),
// below bool HitOnce(DWORD dwVnum = 0);
bool IsSkillCooldown(DWORD dwVnum, float fSkillPower);
// above void ResetSkill();
bool IsSkillCooldown(DWORD dwVnum, float fSkillPower) { return m_SkillUseInfo[dwVnum].IsSkillCooldown(dwVnum, fSkillPower) ? true : false; }
in char_skill.cpp
// above bool TSkillUseInfo::UseSkill(bool isGrandMaster, DWORD vid, DWORD dwCooltime, int splashcount, int hitcount, int range)
bool TSkillUseInfo::IsSkillCooldown(DWORD dwVnum, float fSkillPower) { DWORD maxHitCount = 0; if (dwVnum == SKILL_KWANKYEOK || dwVnum == SKILL_HORSE_WILDATTACK_RANGE) { if (dwVnum == SKILL_KWANKYEOK) maxHitCount = static_cast<DWORD>(2 + floor(6 * fSkillPower)); else if (dwVnum == SKILL_HORSE_WILDATTACK_RANGE) maxHitCount = 5; dwHitCount++; if (dwHitCount > maxHitCount) return true; return false; } if (!bSkillCD) return true; bSkillCD = false; return bSkillCD; }
// below bUsed = true;
bSkillCD = true; dwHitCount = 0;
in char_battle.cpp
// above LPITEM pkBow, pkArrow;
if (m_bType > 0 && m_me->IsSkillCooldown(m_bType, static_cast<float> (m_me->GetSkillPower(m_bType) / 100.0f))) return;
- 1
- 2
- 3
- 2
-
6 minutes ago, MLens said:
#ifdef ENABLE_PORT_SECURITY
if (IsEmptyAdminPage() || !IsAdminPage(inet_ntoa(d->GetAddr().sin_addr))) // block if adminpage is not set or if not admin
{
sys_log(0, "SOCKET_CMD: BLOCK FROM(%s)", d->GetHostName());
return -1;
}
#endifi can remove all from #ifdef ENABLE_PORT_SECURITY ? this delete #ifdef ENABLE_PORT_SECURITY why
read my thread again
--> in marty files its already fixed because only localhost has access as far as i remember.
so you just need to enable ENABLE_PORT_SECURITY or delete everything because its not used
-
Hey guys,
i noticed a core crash "exploit" someone is currently using with HEADER_CG_TEXT.
its a simple buffer overflow in the HEADER_CG_TEXT packet.
because the packet is not used you can just remove it.
in marty files its already fixed because only localhost has access as far as i remember.packet.h
HEADER_CG_TEXT = 64,
packet_info.cpp
Set(HEADER_CG_TEXT, sizeof(TPacketCGText), "Text", false);
input.cpp
if (bHeader == HEADER_CG_TEXT) ( [...] )
- 1
- 1
- 7
-
Hey guys,
after i noticed some positive rule changes on the forum i will start to
release some of my stuff i already published on an other forum.In the past I often had problems with the Exp/Yang/Drops of group members were also shared on different maps.
The simplest solution was to just put the maps further apart, however I took a closer look why this is and fixed it accordingly.in char_battle.cpp
// below FPartyAlignmentCompute f(-20000, pkKiller->GetX(), pkKiller->GetY());
// replace pkKiller->GetParty()->ForEachOnlineMember(f);pkKiller->GetParty()->ForEachOnMapMember(f, pkKiller->GetMapIndex());
// below f.m_iStep = 1;
// replace pkKiller->GetParty()->ForEachOnlineMember(f);pkKiller->GetParty()->ForEachOnMapMember(f, pkKiller->GetMapIndex());
// below NPartyExpDistribute::FPartyTotaler f(ch);
// replace pParty->ForEachOnlineMember(f);pParty->ForEachOnMapMember(f, ch->GetMapIndex());
// below NPartyExpDistribute::FPartyDistributor fDist(ch, f.member_count, f.total, iExp, pParty->GetExpDistributionMode());
// replace pParty->ForEachOnlineMember(fDist);pParty->ForEachOnMapMember(fDist, ch->GetMapIndex());
in char_item.cpp
// below NPartyPickupDistribute::FCountNearMember funcCountNearMember(this);
// replace pParty->ForEachOnlineMember(funcCountNearMember);pParty->ForEachOnMapMember(funcCountNearMember, GetMapIndex());
// below NPartyPickupDistribute::FMoneyDistributor funcMoneyDist(this, dwShare);
// replace pParty->ForEachOnlineMember(funcMoneyDist);pParty->ForEachOnMapMember(funcMoneyDist, GetMapIndex());
// below NPartyPickupDistribute::FFindOwnership funcFindOwnership(item);
// replace GetParty()->ForEachOnlineMember(funcFindOwnership);GetParty()->ForEachOnMapMember(funcFindOwnership, GetMapIndex());
- 2
- 5
- 5
-
3 hours ago, VegaS™ said:
That's right, it's totally not worth the effort.
You're a member on m2dev for 7 years, you've not even one post in Releases or helping other people in Q&A, you just searched for help, resources, and 'up, push' to your service topic, nothing more.
Metin2Dev is not a marketplace, as @ASIKOOsaid, has to be a win-win.
Also, I wouldn't talk about your content of those services here, since it's another subject.
I know it's easy to blame the rules and the person who implemented them instead of fulfilling them, since people just want fast incomes and no "effort'.
That's why we're different than any other community, if we wanted to have over 500+ online, we could do it easily, we know the method of being "successful", but we won't apply it here, we prefer quality and 'high' rules.
Not like the community where you're actively mostly, that you can have even 10 topics in services and no one would care, you can sell everything you want, no one will do any check to you even if your account was created a few seconds ago + [....].
Then it's ok, we prefer to be blamed instead of having a forum like this.
Yeah we also discussed that topic and i´m fine with that if this are the rules.
But i also want to mention that many people doesn´t have the requirements to sell here but they still do because they know the staff.
Just my opignion that maybe the staff consider changing something.
- 1
-
On 2/22/2021 at 8:41 AM, FlasH said:
- Do you think the forum lacks something?
- i'm not sure
- Do you want to see new things?
-Yes
Make a Trade request features how M2D have, if they want to buy, buy through forum and if the seller will try to scam, he will be banned.
- What i'm meaning through forum?
After the payment was made the seller will accept his Trade request and give him the files link (https://file.io/) which after download is removed.
Or to be safe the buyer have 24h time to download the content ,after 24h the link will be removed even wasn't downloaded. But for that features u have to use their API (https://file.io/#api)
In case of chargeback idk...how many trade request u have that's mean u are a Trusted seller / buyer.
- What do you want to see on Metin2 Dev?
Let ppl selling metin2 stuffs. many of them are interested in the sell/buy systems , and bcoz of new "rules" many of them leave the community.
And unbanned unfair ban..
totally agree with that.
why should i even release something when my sales thread got closed and i "need to be active for more than 6 months".
its not worth the effort.
- 1
-
Am 7.4.2019 um 10:51 schrieb Morpheus™:
Hey all!
Can anyone help?
https://metin2.download/picture/VC8vbA1Ku8uC7k6X06zCO9sZGv4dR4WY/.gif
If there are monsters nearby, the render goes wrong o.O
Thanks!
Got the same poblem...found no solution
- 1
-
Did you check your
stl_algo.h
or
where it´s using aiEmpireUserCount
- 1
-
Hello,
I recognized a hughe slow down of the game after i increadsed the maximum yang.
The gamecore takes around 2 minutes to initalize (load all quests, mobs ,etc)
Any ideas whats wrong?
PTS:
Spoiler[ 20] event 0/4052 idle 751 event 1 heartbeat 0 I/O 154674 chrUpate 0 | WRITE: 644 | PULSE: 769
[ 10] event 2671/4052 idle 348 event 6 heartbeat 0 I/O 5 chrUpate 0 | WRITE: 428 | PULSE: 1528
[ 25] event 131/4052 idle 996 event 2 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1553
[ 25] event 105/4052 idle 996 event 2 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1578
[ 25] event 104/4052 idle 997 event 2 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1603
[ 25] event 116/4052 idle 994 event 2 heartbeat 0 I/O 2 chrUpate 0 | WRITE: 13 | PULSE: 1628
[ 25] event 132/4052 idle 991 event 2 heartbeat 0 I/O 0 chrUpate 1 | WRITE: 13 | PULSE: 1653
[ 25] event 129/4052 idle 996 event 2 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1678
[ 25] event 139/4052 idle 996 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1703
[ 25] event 138/4052 idle 997 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1728
[ 25] event 173/4052 idle 996 event 4 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1753
[ 25] event 152/4052 idle 996 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1778
[ 25] event 145/4052 idle 994 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1803
[ 25] event 139/4052 idle 996 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1828
[ 25] event 158/4052 idle 995 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1853
[ 25] event 132/4052 idle 996 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1878
[ 25] event 175/4052 idle 994 event 3 heartbeat 0 I/O 2 chrUpate 0 | WRITE: 13 | PULSE: 1903
[ 25] event 166/4052 idle 995 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1928
[ 25] event 139/4052 idle 992 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 1953
[ 25] event 147/4052 idle 994 event 2 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 1978
[ 25] event 140/4052 idle 994 event 2 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2003
[ 25] event 135/4052 idle 996 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 2028
[ 25] event 189/4052 idle 995 event 4 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2053
[ 25] event 115/4052 idle 994 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2078
[ 25] event 118/4052 idle 996 event 1 heartbeat 0 I/O 2 chrUpate 0 | WRITE: 13 | PULSE: 2103
[ 25] event 117/4052 idle 995 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 2128
[ 25] event 119/4052 idle 995 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2153
[ 25] event 108/4052 idle 993 event 1 heartbeat 0 I/O 0 chrUpate 1 | WRITE: 13 | PULSE: 2178
[ 25] event 92/4052 idle 993 event 2 heartbeat 0 I/O 2 chrUpate 0 | WRITE: 13 | PULSE: 2203
[ 25] event 108/4052 idle 997 event 1 heartbeat 0 I/O 0 chrUpate 1 | WRITE: 13 | PULSE: 2228
[ 25] event 92/4052 idle 995 event 2 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2253
[ 25] event 273/4052 idle 997 event 1 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2278
[ 25] event 266/4052 idle 994 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 2303
[ 25] event 250/4052 idle 997 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2328
[ 25] event 264/4052 idle 996 event 4 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2353
[ 25] event 251/4052 idle 994 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 2378
[ 25] event 264/4052 idle 996 event 3 heartbeat 0 I/O 0 chrUpate 0 | WRITE: 13 | PULSE: 2403
[ 25] event 244/4052 idle 993 event 3 heartbeat 0 I/O 2 chrUpate 0 | WRITE: 13 | PULSE: 2428
[ 25] event 246/4052 idle 995 event 3 heartbeat 0 I/O 1 chrUpate 0 | WRITE: 13 | PULSE: 2453ProfileLog:
Spoiler# Profile Start: Fri Feb 6 19:10:21 2015
Total traffic: 4386 bytes
Total used packet: 20
------------------ Input ------------------
Packet Count Total Size Average
1 2 72 36
2 2 52 26
9 4 16 4
100 5 45 9
101 3 966 322
104 3 3 1
109 3 159 53
206 4 4 1
251 3 783 261
255 6 78 13
------------------ Output -----------------
Packet Count Total Size Average
9 2 8 4
32 3 987 329
90 3 6 2
100 3 30 10
102 3 33 11
210 4 108 27
250 3 12 4
251 3 783 261
253 23 46 2
255 15 195 13
------------------ Output -----------------
# Profile End(Flush): Wed Feb 11 18:02:41 2015
-
when i click on a mount it doesn´t go in any slot.
any ideas what is wrong?
-
Has anyone the new 2 runs unpacked?
-
Would be nice if someone can reupload it or send me the link with a private message.
-
Hello,
Got a small error on the characterselect.
The character on the 5th slot is invisible and the syserr doen´t have any related output which helps me to solve this error.
Hope you have some tips.
-
Perfect...was too fool to search for it.
-
Hello,
I compiled myself the binary and game. I followed the tutorial http://metin2dev.org/board/index.php/topic/791-metin2-4-inventory-page/
and the 4 Inventory slots are working without any Problem.
I just got 1 weired error:
As u can see the Equipment slots don´t show the equiped items.
What do you think causes this error?
- 1
-
Hey, the archive is damaged.
Can you reupload it?
Official Like Absorbtion Calculation for Sash Combination
in Programming & Scripts
Posted · Edited by Metin2 Dev
Core X - External 2 Internal
this depends on your system.