Hi,
there seems to be a small bug in 'DirectConnection.pm' in latest svn. I think,
that after the map server has been connected, the wait timeout for the first data
to arrive from it is 0.
I noticed that when running a local 'eAthena' server, my bots most of the time
got a timeout when connecting to the map server.
The problem disappeared, when i put a message right after the '$messageSender->sendMapLogin'
call (see below). I think something like '$timeout{maplogin}{timeout} = 20;' is missing.
Btw., where the hell is this 'timeOut' function implemented, is it in 'start.exe' ? Because i can't find
it in the perl sources, and i have no dll's in my openkore folder.
.....
$messageSender->sendMapLogin($accountID, $charID, $sessionID, $accountSex2);
message(T("NORBERT #3\n"), "connection"); <--------------- this made the problem go away
$timeout_ex{master}{time} = time;
$timeout_ex{master}{timeout} = $timeout{reconnect}{timeout};
$timeout{maplogin}{time} = time;
} elsif ($conState == 4 && timeOut($timeout{maplogin})) {
message T("Timeout on Map Server, connecting to Account Server...\n"), "connection";
$timeout_ex{master}{timeout} = $timeout{reconnect}{timeout};
$self->serverDisconnect;
$self->setState(Network::NOT_CONNECTED);
undef $conState_tries;
.....
DirectConnection.pm, wait timeout for map login is zero
Moderator: Moderators
-
Nobbi128
- Noob

- Posts: 4
- Joined: 14 Feb 2009, 14:15
- Noob?: No
-
sli
- Perl Monk

- Posts: 810
- Joined: 04 Apr 2008, 17:26
- Noob?: No
Re: DirectConnection.pm, wait timeout for map login is zero
fastutils.xs
And in my timeouts.txt
I've never seen or had this problem at all, and I bot three accounts on an eAthena server 24/7.
Code: Select all
int
timeOut(r_time, compare_time = NULL)
SV *r_time
SV *compare_time
PREINIT:
NV current_time, v_time, v_timeout;
CODE:
if (compare_time) {
...snip...Code: Select all
maplogin 12cs : ee : realist
-
Nobbi128
- Noob

- Posts: 4
- Joined: 14 Feb 2009, 14:15
- Noob?: No
Re: DirectConnection.pm, wait timeout for map login is zero
I don't understand this problem either 
If i put in 'checkConnection' a small delay after '$messageSender->sendMapLogin',
it always works, i mean, the hook 'map_loaded' is called , and i am in game.
If i don't, most times, the maplogin timeout elapses without 'map_loaded'
being called.
Maybe something gets spoiled if 'checkConnection' returns, before
the server has put the map on the socket.
I am using latest eathena & openkore from svn, my server setting is
[Localhost]
ip 127.0.0.1
port 6900
version 20
charBlockSize 108
master_version 14
serverEncoding Western
serverType 8_4
and this works fine (if i get connected
)
If i put in 'checkConnection' a small delay after '$messageSender->sendMapLogin',
it always works, i mean, the hook 'map_loaded' is called , and i am in game.
If i don't, most times, the maplogin timeout elapses without 'map_loaded'
being called.
Maybe something gets spoiled if 'checkConnection' returns, before
the server has put the map on the socket.
I am using latest eathena & openkore from svn, my server setting is
[Localhost]
ip 127.0.0.1
port 6900
version 20
charBlockSize 108
master_version 14
serverEncoding Western
serverType 8_4
and this works fine (if i get connected
-
kali
- OpenKore Monk

- Posts: 457
- Joined: 04 Apr 2008, 10:10
Re: DirectConnection.pm, wait timeout for map login is zero
It could be that you are connecting to localhost, and you are connecting *too* fast for eathena.
Got your topic trashed by a mod?
Trashing topics is one click, and moving a topic to its proper forum is a lot harder. You expend the least effort in deciding where to post, mods expend the least effort by trashing.
Have a nice day.
Trashing topics is one click, and moving a topic to its proper forum is a lot harder. You expend the least effort in deciding where to post, mods expend the least effort by trashing.
Have a nice day.