It is currently Thu Nov 20, 2008 3:33 am

All times are UTC - 8 hours




Post new topic Reply to topic  [ 10 posts ] 
Author Message
 Post subject: Character stays logged in (POL 97 RC2 & RC3, WinXP)
PostPosted: Sat Jun 30, 2007 6:47 am 
Offline
User avatar

Joined: Fri Feb 10, 2006 12:15 am
Posts: 225
Problem: after logging out with client, character stays online. Console prints Disconnecting client 0x080a57d8(ncrsn/ncrsn), but logoff scripts do not activate. Character is still listed in EnumerateOnlineCharacters function. Also mobile.connected property is 1.

What has been done: I have triplechecked logoff and logofftest scripts, added prints to see if those are run (not!). I wrote a script that activates on logon, which printed "character.name is online" as long as .connected was true. After 30 minutes of logoff text still keeps printing. Various clients, accounts and characters are used. Config files are set to same as on the Real Shard (mine is just for developing), where I and others -AFAIK- have no issue of this kind. I even created realms again, just to be sure. And now I'm running out of ideas. Probably this is just a small option somewhere, because other servers with the same POL, scripts and settings have no problem at all.

I tried both POL 97 RC2 and RC3, no difference. I assume this started when moving from 96 to 97, but, because of the great difference in scripts, I cannot move back to 96 to test that out.

If I ever manage to fix another computer I have, I'll try this on it. (Edit: tried using exactly the same set on another XP machine, no use).

Have anyone ran onto same problem, and if, how did you get it fixed? Ideas?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 01, 2007 2:40 am 
Offline
Certified POL Expert
User avatar

Joined: Sat Feb 04, 2006 6:26 pm
Posts: 575
Never heard of this one before!

I'd be looking in the logofftest.src file. It's function is to return a value in seconds before the core logoff process starts. Maybe it's just looping or returning a huge number or a non integer.

Try putting in a print statement to show the value it is returning. At least you wil see it's setting an integer value.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 01, 2007 3:01 am 
Offline
User avatar

Joined: Fri Feb 10, 2006 12:15 am
Posts: 225
Code:
// scripts/misc/logofftest.src

program logofftest( who )

    print("Logofftest");
   
    return 0;

endprogram


I tested with above logofftest. Recompiled script and restarted POL. Logged in and out. "Logofftest" never shows up on the console.

Also tried setting option LogLevel 20 in pol.cfg. No new information is printed.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 01, 2007 4:18 pm 
Offline

Joined: Thu May 03, 2007 2:23 pm
Posts: 13
Are any of your other 'standard' scripts in /scripts/misc being run? Try putting debug messages in the logon.src there, as well as chrdeath, death; Also, is your script compiled? For the right version of POL? Perhaps you have a different POL core version than is on the production shard? Maybe check out your pol.cfg; something seems to be preventing your logofftest.ecl from running, and perhaps it's also preventing other similar scripts to triggering?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 01, 2007 4:47 pm 
Offline
User avatar

Joined: Fri Feb 10, 2006 12:15 am
Posts: 225
My logon.src is following:
Code:
program logon( who )

    Start_Script("misc/connected", who);

    [...]

endprogram


And connected.src:
Code:
program connected( who )

    while (who.connected)
        print("Online: " + who.name);
        sleep(30);
    endwhile

endprogram


"Online: ncrsn" shows up on console even when there's no client connected to server. So, yeah, logon script activates like it should. So does chrdeath and death. But, you made a valid point, reconnect is never activated either. Didn't notice this myself before. Surely it's because of character never dropping out from server.

Scripts are compiled and POL (and ecompile and modules) are from 97-2007-04-15 RC3 zip.

I toggled some options in pol.cfg, again. No difference. I cannot see a thing in there that should make the trick, so I was just trying my luck. Anyhow, thank you both.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 01, 2007 5:11 pm 
Offline
Certified POL Expert
User avatar

Joined: Sat Feb 04, 2006 6:26 pm
Posts: 575
Incidently, I seem to recall that character.connected has some problems. The distro uses character.ip as it seems to be more dependable.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 02, 2007 4:36 am 
Offline
POL Developer
User avatar

Joined: Wed Jan 25, 2006 2:30 am
Posts: 428
Location: San Diego, California
OldnGrey wrote:
Incidently, I seem to recall that character.connected has some problems. The distro uses character.ip as it seems to be more dependable.


mobile.connected is 'true' when the character is logged in and active.
On logout, mobile.connected is set to 'false' and logofftest runs. When the number of seconds logofftest returned have passed, then mobile.ip becomes blank.

_________________
-Austin


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 08, 2007 11:20 am 
Offline
User avatar

Joined: Fri Feb 10, 2006 12:15 am
Posts: 225
OldnGrey wrote:
Incidently, I seem to recall that character.connected has some problems. The distro uses character.ip as it seems to be more dependable.

Even if it does, error remains. As it is not just the print, but the whole unable to logout -mystery.

Austin wrote:
On logout, mobile.connected is set to 'false' and logofftest runs.

Any ideas why this would not happen?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 08, 2007 2:33 pm 
Offline

Joined: Tue Feb 07, 2006 10:36 am
Posts: 52
Location: Rome, Italy
Austin wrote:
OldnGrey wrote:
Incidently, I seem to recall that character.connected has some problems. The distro uses character.ip as it seems to be more dependable.


mobile.connected is 'true' when the character is logged in and active.
On logout, mobile.connected is set to 'false' and logofftest runs. When the number of seconds logofftest returned have passed, then mobile.ip becomes blank.


some times connected is true but ip is blank (the character is no more connected).

_________________
VenuS Admin Scripter on M4D

http://www.uovenus.net


Top
 Profile  
 
 Post subject:
PostPosted: Mon Oct 15, 2007 5:54 am 
Offline
POL Developer
User avatar

Joined: Sun Feb 12, 2006 9:50 pm
Posts: 836
Location: Indiana, USA
Appears this is happening when clients do not acknowledge with a logout packet, or otherwise "disconnect without notice", and core does a cleanup of disconnected clients.

The key to this was the "Disconnecting client " blah blah. That's only used in one function, which is this cleanup function, so it narrows down the search for what I am looking for.

Will have to see what we can do here.

_________________
POL Developer - The Penguin Scripter


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC - 8 hours


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Style based on FI Subice by phpBBservice.nl