summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-07-30 00:31:26 -0300
committerJesusaves <cpntb1@ymail.com>2019-07-30 00:31:26 -0300
commit05d52cb0aef95759222ba522087eaf067eda9206 (patch)
tree97bf6f34dd4b318ffdc58361a4ce701aed1df392
parentf1f841a5a76d93d68a2ef1a9a35c41db55a0bf8b (diff)
downloadtools-05d52cb0aef95759222ba522087eaf067eda9206.tar.gz
tools-05d52cb0aef95759222ba522087eaf067eda9206.tar.bz2
tools-05d52cb0aef95759222ba522087eaf067eda9206.tar.xz
tools-05d52cb0aef95759222ba522087eaf067eda9206.zip
Add officially (and forcebly) beta patch2
It contains experimental anti-lag measures for Event Server
-rw-r--r--localserver/beta.patch235
1 files changed, 35 insertions, 0 deletions
diff --git a/localserver/beta.patch2 b/localserver/beta.patch2
new file mode 100644
index 0000000..23f921a
--- /dev/null
+++ b/localserver/beta.patch2
@@ -0,0 +1,35 @@
+diff --git a/src/map/clif.c b/src/map/clif.c
+index cd3131181..8b21f37c3 100644
+--- a/src/map/clif.c
++++ b/src/map/clif.c
+@@ -11052,7 +11052,7 @@ static void clif_parse_ActionRequest_sub(struct map_session_data *sd, int action
+ return;
+
+ if(action_type != 0x00 && action_type != 0x07)
+- pc_stop_walking(sd, STOPWALKING_FLAG_FIXPOS);
++ pc_stop_walking(sd, STOPWALKING_FLAG_FIXPOS|STOPWALKING_FLAG_NEXTCELL);
+ pc_stop_attack(sd);
+
+ if(target_id<0 && -target_id == sd->bl.id) // for disguises [Valaris]
+@@ -22234,7 +22234,7 @@ static int clif_parse(int fd)
+ //TODO apply delays or disconnect based on packet throughput [FlavioJS]
+ // Note: "click masters" can do 80+ clicks in 10 seconds
+
+- for( pnum = 0; pnum < 3; ++pnum ) { // Limit max packets per cycle to 3 (delay packet spammers) [FlavioJS] -- This actually aids packet spammers, but stuff like /str+ gets slow without it [Ai4rei]
++ for( pnum = 0; pnum < 6; ++pnum ) { // Limit max packets per cycle to 3 (delay packet spammers) [FlavioJS] -- This actually aids packet spammers, but stuff like /str+ gets slow without it [Ai4rei]
+ unsigned short (*parse_cmd_func)(int fd, struct map_session_data *sd);
+ // begin main client packet processing loop
+
+diff --git a/src/map/unit.c b/src/map/unit.c
+index 68e6aeec1..518b5a3ea 100644
+--- a/src/map/unit.c
++++ b/src/map/unit.c
+@@ -2216,7 +2216,7 @@ static int unit_attack_timer_sub(struct block_list *src, int tid, int64 tick)
+ ud->dir = map->calc_dir(src, target->x,target->y );
+ }
+ if(ud->walktimer != INVALID_TIMER)
+- unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS);
++ unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS|STOPWALKING_FLAG_NEXTCELL);
+ if(md) {
+ //First attack is always a normal attack
+ if(md->state.skillstate == MSS_ANGRY || md->state.skillstate == MSS_BERSERK) {