summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt2
-rw-r--r--conf-tmpl/login_athena.conf4
-rw-r--r--src/char/char.c16
3 files changed, 12 insertions, 10 deletions
diff --git a/Changelog.txt b/Changelog.txt
index 09b15be74..57e41d8ee 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,5 +1,7 @@
Date Added
01/07
+ * Enabled login server 'anti-freeze' by default as a temporary solution
+ to char-login disconnection [celest]
* The TXT char server was rejecting login's "i'm alive" packet and disconnecting
it... fixed [celest]
* Stall_time wasn't being read in login_athena at all (not by the login server,
diff --git a/conf-tmpl/login_athena.conf b/conf-tmpl/login_athena.conf
index 5b4395b28..1c915dbbe 100644
--- a/conf-tmpl/login_athena.conf
+++ b/conf-tmpl/login_athena.conf
@@ -138,9 +138,9 @@ dynamic_account_ban: 1
dynamic_account_ban_class: 0
// Anti-freeze system enable
-anti_freeze_enable: 0
+anti_freeze_enable: 1
// Anti-freeze system interval (in seconds)
-anti_freeze_interval: 15
+anti_freeze_interval: 30
// Enable I'm Alive?
imalive_on: 0
diff --git a/src/char/char.c b/src/char/char.c
index cdef7bc8b..6aaae27b0 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -1696,6 +1696,14 @@ int parse_tologin(int fd) {
RFIFOSKIP(fd,50);
break;
+ // login-server alive packet
+ case 0x2718:
+ if (RFIFOREST(fd) < 2)
+ return 0;
+ // do whatever it's supposed to do here?
+ RFIFOSKIP(fd,2);
+ break;
+
case 0x2721: // gm reply
if (RFIFOREST(fd) < 10)
return 0;
@@ -1958,14 +1966,6 @@ int parse_tologin(int fd) {
RFIFOSKIP(fd,RFIFOW(fd,2));
break;
- // login-server alive packet
- case 0x2718:
- if (RFIFOREST(fd) < 2)
- return 0;
- // do whatever it's supposed to do here
- RFIFOSKIP(fd,2);
- break;
-
default:
printf("parse_tologin: unknown packet %x! \n", RFIFOW(fd,0));
session[fd]->eof = 1;