diff options
-rw-r--r-- | Changelog.txt | 2 | ||||
-rw-r--r-- | conf-tmpl/login_athena.conf | 4 | ||||
-rw-r--r-- | src/char/char.c | 16 |
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; |