The online racing simulator
LFSLapper insim4 Release
(2101 posts, closed, started )
Hello,

To open Database, you can also use sqlite manager for Firefox

https://addons.mozilla.org/fr/firefox/addon/5817


New beta version : 5.832

Quote :+----------------------------+
|Changes from v5.830 to 5.832|
+----------------------------+
This new version is a test version with managing change to facilitate Lapper installation for
hosting provider like 500Servers.com. The philosophy is one LFSLapper for one or more LFS. Each LFS can have
a working directory containing configuration file and database file. If you want synchronize your's lapper, you need to have
only one Lapper working dir for different LFS server. In this case you use the same database.

1. Change LFSServers.cfg file
Now you have to specify the working dir used by LFSLapper for the managed lfs server
and the ini file used.
one dir can be used for one or more server
example:
# Configuration of LFSServer to be Managed with LFSLapper
# One line per server
#Unique ID|Ip|Port|WorkDir|IniFile
DEMO 1|94.23.7.62|30211|./demo|demo_1.ini
DEMO 2|94.23.7.62|30212|./demo|demo_2.ini

2. Added ini file containing information needed by LFSLapper to
manage one LFS server. this is the content of this file

$password = "yourpass"; # Password of the managed LFS server
$configFile = "LFSLapper.lpr"; # Config file used in this server, without password
$superUsersFile = "superusers.txt"; # File containing user who can stop or start Lapper in LFS, one entry per line

This ini file must be in working directory.

When you start Lapper, you need to start an instance of Lapper for a specified LFS server like the previous version
But now this instance is in stand by mode. Waiting command in LFS chat to start Lapper working mode
To put Lapper in working mode. Go into LFS and type !start in LFS chat.
To put lapper in stand by mode when it is in working mode. type !stop in LFS chat

Each !start reload config file.

3. new command
!status -> Give the Lapper Status
stand bye mode
working mode
!start -> To put Lapper in working mode
!reload -> To reload config file and restart instance
!stop -> To put Lapper in stand bye mode

4. When LFS stop, Now Lapper don't crash and try every minute to reconnect to the server in stand by mode

5. Add config var in LFSServers.cfg
Fix the issue when you start more than one Lapper on same computer

Remote port is the port used to manage LFSLapper remotely, future extension
One remote port per LFSLapper on one machine
Example :
remotePort=3000;

6. Fix some error when username is not in lowercase -> in top, stats, posabs, etc..

7. Add new GLScript command
PrivDelayedCommand( second, callbackfunction );
Backcall command is executed after second for the current Player ( to use only in player event )

8. New arg for events
Event OnRaceStart( $NumP ) # Lapper event
Event OnQualStart( $NumP ) # Lapper event

$NumP = Number of player at the beginning of the race

9. LFSLapper test is the connection pass is wrong and display message on console box

10 - Add new GLScript command
RegisterNodeAction( trackname, node, callbackfunction );
Backcall command is executed when a node is reached by a player
Example
RegisterNodeAction( "BL1" , 140 , DisplaySpeed );
On track BL1, When Node 140 is Reached the Sub DisplaySpped is executed. To have the node of a specified portion of track.
Go to this place and type !node ( if you are admin ))

Thanks Gai-Luron I start testing tonight, good job
Hello,

Small update in Release, index update

load the LFSLapper5.832beta2.zip

Bye

PS: and a little improvement you can type in console LFS command. This command are sended to all LFS connected
example
/msg hello boys
/cars all

etc..
Hi Gai,
This looks nice but jury is still out on what we discussed. Thanks for SpeedTraps and $NumP already using them locally .

I have come across a problem straight away. I do not have console access on my hosts server. If I upload LFSLapper.exe and start it I cannot get it to go into Standby Mode as cannot type "start 0" "start 1" etc etc into the console. I have been running it locally to test it this evening and am happy to upload but no point as I cannot start it.

Maybe you could allow |start at the end of each server line in LFSServers.cfg like we had AutoStart in previous release. Then starting the LFSLapper.exe would then start each server in LFSServer.cfg into StandBy Mode which then enables me to type !start into chat box on each LFS Server to get Lapper running.

As it stands I cannot upload and get it running on any of my servers.

Hope this makes sense.

Update 1: I have downloaded the databases from v5.8.3.1 to my local machine to run with v5.8.3.2 but there seems to be an issue with capitalised letters in Username for Stored Values. If I try to display anyones points info and their name has capitalised letters like mine "Andy King" it shows nothing. If I change my Username to andy king in database all info is shown correctly. If you need more info gai contact me via MSN. All stored values are saved with UserName in lowercase so when a driver tries to see any data and his UserName has capitalised letters in it he doesn't see the data as his UserName doesn't correspond with any UserName in database. Hope this helps.

Update 2: Would it be possible to add !msa and !rca so we can send Admin Messages and Race Control Messages to all servers connected to Lapper.exe similar to what you added through console as thats no use to anyone who has thier servers hosted.

Update 3: Got the same problem I had in previous version, I cannot connect a locally running Lapper to my Servers on my host. I tried $TCPmode = false/true but neither will connect.

Right I am off to get my Racing Points system to adjust points dependant on how many drivers start the race
Quote from Andy King :
Maybe you could allow |start at the end of each server line in LFSServers.cfg like we had AutoStart in previous release. Then starting the LFSLapper.exe would then start each server in LFSServer.cfg into StandBy Mode which then enables me to type !start into chat box on each LFS Server to get Lapper running.

It's on todo list...

Quote from Andy King :
Update 1: I have downloaded the databases from v5.8.3.1 to my local machine to run with v5.8.3.2 but there seems to be an issue with capitalised letters in Username for Stored Values...

Yes it's for this thas $PosAbs don't work sometimes in previous Release.

You can update your stored value wiith this SQL STATEMENT in storedvalue.dbs
UPDATE fi_stored SET key = LOWER(key)

if fail, try to remove duplicate values and retry


Quote from Andy King :
Update 2: Would it be possible to add !msa and !rca so we can send Admin Messages..

it's already on todo list, but i have to do some update to specify group of server in LFSServer.cfg to avoid send command to not owned server, but only on server who have the same group.

Quote from Andy King :
Update 3: Got the same problem I had in previous version, I cannot connect a locally running Lapper to my Servers on my host. I tried $TCPmode = false/true but neither will connect.

Does your host have a firewal for external incoming packet? Try to ask to an 500Servers Admin
Hi Gai,
Quote :You can update your stored value wiith this SQL STATEMENT in storedvalue.dbs

Code:
UPDATE fi_stored SET key = LOWER(key)

How does a driver with a UserName like mine "Andy King" show Stored Values then. Coss using this...
SetCurrentPlayerVar("Points_Laps",GetStoredValue($UserName . "_Points_Laps"));
because the stored value is andy king_Points_Laps and $UserName = GetCurrentPlayerVar("UserName"); = Andy King so its searching the database for Andy King_Points_Laps which it will never find coss Lapper saved it as andy king_Points_Laps. The UserName has to be stored as Driver has it written to make it unique surely.

Quote :Update 3: Got the same problem I had in previous version, I cannot connect a locally running Lapper to my Servers on my host. I tried $TCPmode = false/true but neither will connect.

Does your host have a firewal for external incoming packet? Try to ask to an 500Servers Admin

I can connect other stuff like Event Calendar, Lapper v5.8.3.0 but not this version.

Thanks for your time, fire up MSN please
It's for that you have in previous version problem with $posabs, !stats, etc... In fact you can unlock your LFS with andy king or ANDY KING or AnDY KinG or another combination of upper and lowercase. But the player for LFS is the same. The username LFSLapper retreive from LFS is that you have entered to the unlock process and this can cause disfunction in Lapper because userName is case sensitive in sqlite.
it's better to lowerise all because with that you can't have this kind of issue. Now in GetCurrentPlayerVar("UserName");is in lowercase = andy king. With previous version you cvan have multiple entry in stored values for the same player due to the unlock process, not very good!


Edit : For msn, i can't, i am at work
Gai-Luron
-
(Andy King) DELETED by Andy King : Didn't read Gai's Post Properly
Hi Gai,
You need to make $argv change UserName to lowercase coss if I do what most drivers do and right click Drivers Username in connections box then type !Show_Points infront of it it doesn't work.
Hello,

Use tolower function to avoid this issue in the portion of code you need to lowerize your argv. This function exist for this.

argv = tolower( argv );

Gai-Luron
Sorry Gai,
Can you explain more as not used this function as didn't even know it existed.

CASE "!Show_Points":
$DriverName = (GetStoredValue($argv . "NickName"));
$Lap_Show = (GetStoredValue($argv . "_Points_Laps"));
$Race_Show = (GetStoredValue($argv . "_Points_Race"));
$Champ_Show = (GetStoredValue($argv . "_Points_Champ"));
BREAK;

Where do I add argv = tolower( argv ); please as getting lots of errors when executing !Show_Points Andy King

Thanks
if argv contain username

CASE "!Show_Points":
$argv = toLower( $argv );
$DriverName = (GetStoredValue($argv . "NickName"));
$Lap_Show = (GetStoredValue($argv . "_Points_Laps"));
$Race_Show = (GetStoredValue($argv . "_Points_Race"));
$Champ_Show = (GetStoredValue($argv . "_Points_Champ"));
BREAK;

Edit : it's not a forum, it's a chat !!!

Edit 2: you have a lot of function in Lapper
another example
split
in previous post a guy want to have multiple data in argv.
example:
!myFunction arg1 arg2 arg3

in your function $argv contain "arg1 arg2 arg3"
you can retreive arg1 with
$arg1 = split( $argv," ",0 );
$arg2 = split( $argv," ",1 );
$arg3 = split( $argv," ",2 );

Take a look at reference doc, all function are present
Hi Gai,
Quote :in previous post a guy want to have multiple data in argv.

That GUY was me LMAO

Thanks everything working locally except I still cannot connect to my servers on host or if I upload cannot start Lapper. Thanks for your time, I had to manually go through StoredValueDbs and lowercase all UserNames to enable me to continue using my original database. Anyway its done.

How long till you can add |start to LFSServer.cfg as itching to get this uploaded and running on AKM Servers?

Thanks again
Hello,

New beta version

Gai-Luron

Quote :
----------------------------+
|Changes from v5.832 to 5.833|
+----------------------------+
1. You can type in console LFS command who are sended to all LFS instance
where LFSLapper is in working mode
example:
>/msg Hello everybody to our server
>/end
>
...
you can use also
>cmdLfs Hello eveybody
>cmdLfs /end

2. Fix Bug on GetHost in C# when the network of the LFS host server
isn't properly configured ( windows 2003 server )
using another C# call

3. Add groupID and autostart option in LFSServers.cfg, to start the specified
instance in stand by mode at LFSLapper start
#Unique ID|GroupId|Ip|Port|WorkDir|IniFile|autoStart
DEMO 1|Gr1|94.23.7.62|30211|./demo|demo_1.ini|autoStart
DEMO 2|Gr1|94.23.7.62|30212|./demo|demo_2.ini
DEMO 3|Gr2|94.23.7.62|30213|./demo|demo_3.ini
DEMO 1 is automaticaly started

4. Add new GLscript command
groupCmdLfs( cmd );
Same command as cmdLfs but send this LFS command to all server having
the same group id.
DEMO 1|Gr1|94.23.7.62|30211|./demo|demo_1.ini|autoStart
DEMO 2|Gr1|94.23.7.62|30212|./demo|demo_2.ini
DEMO 3|Gr2|94.23.7.62|30213|./demo|demo_3.ini
if you are on server DEMO 1 or DEMO 2
groupCmdLfs("/msg Hello"); display Hello on DEMO 1 and DEMO 2, not on DEMO 3
if you are on server DEMO 3
groupCmdLfs("/msg Hello"); display Hello on DEMO 3 not on DEMO 1 and not on DEMO 2

5. Add !groupCmdLfs in LFSLapper.lpr default file to call
groupCmdLfs if you are admin. This add the ability to send command to
all instance having the same groupID using the LFS chat.


Hi Gai,
Uploaded last night and all working perfectly, nice update

Can you explain how I can pull PB Splits 1, 2, 3 and Last from Lapper. I am using NumToMSH(GetCurrentPlayerVar("BestSectorSplit1") but I can only see that data on my !stats1 after I have completed a full lap

Request 1: If I update an include file thats included on all 3 servers I then have to join each server seperatley to !reload the cfgs. It would be far easier if I could type !reload 0, !reload 1 and !reload 2 on the server I am on. Also the !start and !stop functions would be better this way also.

Request 2: Can we have a Blue Flag Event now we have Nodes so we can give automatic warnings using the difference between nodes to calculate how severe the warning is.

Request 3: Can we also have a Yelow Flag Event simliar to Blue Flag request.

Sorry Gai but pushing the boundaries as hard as I can.

Update: I have just had a nightmare trying to add another server, had to restart LFSLapper.exe to get it to re-read LFSServers.cfg, if it was hosted then how can the host add servers without restarting LFSLapper.exe, if the host restarts LFSLapper.exe then every instance of Lapper stops and has to be restarted manually by each Servers Admins. My suggestion is LFSLapper.exe reads LFSServers.cfg every minute to see if its changed, if it has it starts any line in cfg thats not already running. Another sugestion also can we have |Start and |AutoStart in LFSServers.cfg so we choose which we prefer. |Start just sets lapper in standby mode but |AutoStart actually starts Lapper fully on the line shown in LFSServers.cfg.
Hello,

New beta version 834

Quote :
+----------------------------+
|Changes from v5.833 to 5.834|
+----------------------------+
1. Fix bug in calculation of average PBtime, where more than one
PB is used for the final average PB time

2. Optimize access of hudge Drift DBS. Tested with 1000 entry for one track and one car

3. Completely rewrite votation system. To bee tested accurately
Event OnVoteQualifyChange($PlayerOnTrack, $Vote , $Need) # New args Vars
Event OnVoteRestartChange($PlayerOnTrack, $Vote , $Need) # New args Vars
Event OnVoteEndChange($PlayerOnTrack, $Vote , $Need) # New args Vars

Quote :Request 2: Can we have a Blue Flag Event now we have Nodes so we can give automatic warnings using the difference between nodes to calculate how severe the warning is.

I don't understand what do you want to do!

Bye

Gai-Luron


EDIT:: Litlle Update dowload 834beta2
Hi Gai,
Quote :Request 2: Can we have a Blue Flag Event now we have Nodes so we can give automatic warnings using the difference between nodes to calculate how severe the warning is.

I want a BLUE Flag Event so when a Driver gets a BLUE FLAG I can get Lapper to execute warnings to the Driver, like if Blue Driver <= $Blue_Warning_1 Then privMSG(""Please let $NIckName past")

$Blue_Warning_1 = Difference in Nodes or Time or Distance beteween the 2 drivers.

$Blue_Warning_2 = Difference in Nodes or Time or Distance beteween the 2 drivers and gives a 30 sec penatly

$Blue_Warning_3 = Difference in Nodes or Time or Distance beteween the 2 drivers and spectates the driver

I want to do a similar thing with Yellow Flags but this just sends a message dependant and what Node the yellow flag is shown in.

Hope you understand what I mean.

BUG Report: The UK £££ Sign doesn't work it displays as a ???? unless its used in another way and if so can we have it working please.

Request: Can we have the var $PlayersOnTrack available in any events like, GetLapperVar("DriversOnTrack") please as got a project for it.
LFSLapper crash sometimes
Hi,
LFSLapper crash sometimes.
There was only one lapper running and 2 Dedi's online.
On the demo was 14 people online ( 12 on track ) the S2 was empty.
I run the latest version of LFSLapper5.834beta2.
I had the same problem in the previous version.
Maybe its a problem in my server ( P-III 700Mhz 512Mb with win2003 server 32 bits ) it runs sometimes at 100% proccessor time.
This week i try to replace the server for a P-IV 2.4 Ghz 512Mb with win2003 server 32 bits.

List of servers:
RemotePort :3001
#0 ( CONNECT ) - Demo_Copper, 127.0.0.1, 29993, xxxxx, ./default, Dem
o_copper.ini
#1 ( STOP ) - Demo_Bronze, 127.0.0.1, 29992, xxxxxx, ./default, Demo_b
ronze.ini
#2 ( STOP ) - S2_Copper, 127.0.0.1, 29995, xxxxxx, ./default, S2_coppe
r.ini
>Parse config file...Ok
Loading WR...Ok
Loading swearwords...Ok
Connecting to 127.0.0.1 / 29993
Connection OK
Product: DEMO Version:0.5Z3 InSim Version:4
Ftp Upload grip DB Thread Started...
Ftp Upload drift DB Thread Started...
(&C:\Program Files\LFS\CommonFiles\QualUsers.txt)The given path's format is not
supported.
Web Commands Thread Started...
Register Web Thread Started...
LFSLapper is running...
Teleported to pit
Teleported to pit
Teleported to pit
Error OnPB InSim.Connect+ConnectException: Insim TCP Connection Lost on 127.0.0.
1 / 29993
at InSim.Connect.SendTCP(Byte[] outMsg, Int32 Length) in D:\Dev\DevInsim\lapp
er\LFSLapper5.832\LFSLapper\src\InSim4.cs:line 386
at InSim.Connect.Send(Byte[] outMsg, Int32 Length) in D:\Dev\DevInsim\lapper\
LFSLapper5.832\LFSLapper\src\InSim4.cs:line 374
at LFSLapper.LFSClient.SendMsgToConnection(Int32 UCID, String msg) in D:\Dev\
DevInsim\lapper\LFSLapper5.832\LFSLapper\src\LFSClient\loop.cs:line 392
at LFSLapper.LFSClient.execCmd(unionVal val, ArrayList args, infoPlayer currI
nfoPlayer) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\LFSClient\pars
eEvent.cs:line 689
at LFSLapper.LFSClient.myFunctions(unionVal val, ArrayList args) in D:\Dev\De
vInsim\lapper\LFSLapper5.832\LFSLapper\src\LFSClient\parseEvent.cs:line 561
at GLScript.GLApp.parseBackcall(SetOfVars GVAR, SetOfVars LVAR, unionVal val,
ArrayList args) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript
\GLScript.cs:line 1019
at GLScript.Parseur.getval(SetOfVars GVAR, SetOfVars LVAR, executeParsedFunct
ion BC) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript\ParseExp
r.cs:line 465
at GLScript.GLApp.retrieveEvalVar(String funcName, TokenParse tkparse, TokenB
uffer currTokenBuffer, SetOfVars GVAR, SetOfVars LVAR, Boolean breakFunc, Char&
breakCar) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript\GLScri
pt.cs:line 838
at GLScript.GLApp.privExecuteTokensPart(Int32 level, String funcName, SetOfVa
rs GCAR, SetOfVars LVAR, Boolean breakable, Boolean inSwitchCase, Int32 start, I
nt32 end) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript\GLScri
pt.cs:line 223
at GLScript.GLApp.executeTokensPart(String funcName, SetOfVars GVAR, SetOfVar
s LVAR, Int32 start, Int32 end) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapp
er\src\GLScript\GLScript.cs:line 154
at GLScript.GLApp.privExecuteFunction(String funcName, String[] argsVals) in
D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript\GLScript.cs:line 14
9
at GLScript.GLApp.executeFunction(String funcName, String[] argsVals) in D:\D
ev\DevInsim\lapper\LFSLapper5.832\LFSLapper\src\GLScript\GLScript.cs:line 119
at Configurator.lexConfigurator.executeFunction(String funcName, infoPlayer p
currInfoPlayer, String[] par) in D:\Dev\DevInsim\lapper\LFSLapper5.832\LFSLapper
\src\cfgParser\readCfg.cs:line 256
at LFSLapper.LFSClient.managePacket(LAP lapDec) in D:\Dev\DevInsim\lapper\LFS
Lapper5.832\LFSLapper\src\LFSClient\managePacket.cs:line 379

In the log file of the DEDI this was happen.

May 03 11:50:18 Connect : 87.171.69.25
May 03 11:50:18 A new guest is connecting
May 03 11:50:19 FaM^L connected (FaM^L)
May 03 11:50:27 Fastest lap : 1:14.50 by HUNJohnny™^L (FBM)
May 03 11:50:32 badchrisy^L joined the spectators
May 03 11:50:41 LFSW - new FBM PB by REISKARATTIMIES: 1:17.66 (-0:00.71)
May 03 11:50:46 Jamo999^L left the pits (FBM)
May 03 11:50:49 INSIM ERROR : WOULDBLOCK
May 03 11:50:50 INSIM : Cleared emergency store LFSLapper
May 03 11:50:55 /msg New PB by SYM^L (FBM): 1.17.66
May 03 11:50:55 New PB by SYM^L (FBM): 1.17.66
May 03 11:50:55 simonen : ^Lgood pass
May 03 11:50:56 InSim closed : LFSLapper
May 03 11:50:56 GuestSend : wrong mode
May 03 11:50:57 simonen : ^L
May 03 11:50:57 Send Track : 89.234.203.103


Second time after restart of LFSLapper.exe

LFSLapper Version=5.8.3.4 on GNU license
2005-2008 Janez Cufer and Robert BRACCAGNI ( Gai-Luron )
LFSLapper comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions. Read LICENSE for details.
Type LFSLapper -help to view usage
Started : 3/5/2009 11:57:44
Starting server
Connecting to 127.0.0.1 / 29993
Connection OK
Server started
>Parse config file...Ok
Loading WR...Ok
Loading swearwords...Ok
Connecting to 127.0.0.1 / 29993
Connection OK
Product: DEMO Version:0.5Z3 InSim Version:4
Ftp Upload grip DB Thread Started...
Ftp Upload drift DB Thread Started...
(&C:\Program Files\LFS\CommonFiles\QualUsers.txt)The given path's format is not
supported.
Web Commands Thread Started...
Register Web Thread Started...
LFSLapper is running...
Insim TCP Connection Lost on 127.0.0.1 / 29993
Connecting to 127.0.0.1 / 29993
Connection OK

In the DEDI i get this.

May 03 11:58:20 INSIM ERROR : WOULDBLOCK
May 03 11:58:23 InSim closed : LFSLapper
May 03 11:58:23 InSim - TCP : LFSLapper
Quote :Parse config file...Ok
Loading WR...Ok
Loading swearwords...Ok
Connecting to 127.0.0.1 / 25559
Connection OK
Product:S2 Version:0.5Z10 InSim Version:4
Ftp Upload grip DB Thread Started...
Ftp Upload drift DB Thread Started...
Web Commands Thread Started...
Register Web Thread Started...
LFSLapper is running...
Lapper Instance Aborted abnormally The following error occurred:
Object reference not set to an instance of an object.
LFSLapper
at GLScript.GLApp.privExecuteTokensPart(Int32 level, String funcName, SetOfVa
rs GCAR, SetOfVars LVAR, Boolean breakable, Boolean inSwitchCase, Int32 start, I
nt32 end)
at GLScript.GLApp.executeTokensPart(String funcName, SetOfVars GVAR, SetOfVar
s LVAR, Int32 start, Int32 end)
at GLScript.GLApp.privExecuteFunction(String funcName, String[] argsVals)
at GLScript.GLApp.executeFunction(String funcName, String[] argsVals)
at Configurator.lexConfigurator.executeFunction(String funcName, infoPlayer p
currInfoPlayer, String[] par)
at LFSLapper.LFSClient.managePacket(BTC btc)
at LFSLapper.LFSClient.Loop(Connect insimConnection)
at LFSLapper.LFSClient.doloop()
Int32 privExecuteTokensPart(Int32, System.String, GLScript.SetOfVars, GLScript.S
etOfVars, Boolean, Boolean, Int32, Int32)
Closing Instance...Connecting to 127.0.0.1 / 25559
Connection OK

Hi Gai, it is possible to crash Lapper and it not revert to Standby Mode. I updated a Lapper.lpr for server 7 and it had errors in it. I reloaded configs and lapper crashed saying Only Admins when I used !start so I had to restart Lapper.exe on my host then go through all 10 servers 1 by 1 to start each client.

I then ran a local host after getting them all restarted and the error above is what was produced.

Hope this helps

BUG Report: The UK £££ Sign doesn't work it displays as a ???? unless its used in another way and if so can we have it working please.

Request: Can we have the var $PlayersOnTrack available in any events like, GetLapperVar("DriversOnTrack") please as got a project for it.

Info Needed: How do I get a Drivers PB from a certain Track while he is on other track. Also the information thats stored in .dbs file how do I get that to show. I am after the var that pulls data from the .dbs file.
Hello,

New Beta version, some change in managing instances

bye

Gai-Luron

Quote :+----------------------------+
|Changes from v5.834 to 5.835|
+----------------------------+
1. LFSServers.cfg is scanned every 10 Second to look,if there is a modification
You can Add, remove line when Lapper is started.

2. Start Lapper's instance with the unique ID, not with the line position. No space in ID
d1|gr1|94.23.7.00|30211|./demo|demo_1.ini|autowork
d2|gr1|94.23.7.00|30212|./demo|demo_2.ini
d3|gr1|94.23.7.00|30212|./demo|demo_2.ini

To start the first instance type
>start d1

3. Add new option in LFSServers.cfg
autostart to start lapper's Instance in Stand bye mode
autowork to start lapper's instance in work mode
autonone don't start Lapper's instance

4. Fix wrong user in group when LFSLapper's instance crash

5. All messages or errors messages are redirect in log file ( not yet on the console )
For LFSLapper
./log/LFSLapper-ERR.log
./log/LFSLapper-MSS.log
For Each instance
./workingDir/LFSHostIp-port-ERR.log
./workingDir/LFSHostIp-port-MSS.log

xxx-ERR.log is for error logging
xxx-MSS.log is for infos logging

Each log file have a limit of +/- 2MB

Hi Gai,
Quote :5/10/2009 4:26:29 AM
Lapper Instance 127.0.0.1/25554 abort!
The database is locked.
LFSLapper
at LFSDbs.DbsAccess.executeNonQuery2(String _command)
at LFSDbs.DbsAccess.executeNonQuery(String _command)
at LFSDbs.storedDbs.updateRow(String key, String value)
at LFSLapper.LFSClient.execCmd(unionVal val, ArrayList args, infoPlayer currInfoPlayer)
at LFSLapper.LFSClient.myFunctions(unionVal val, ArrayList args)
at GLScript.GLApp.parseBackcall(SetOfVars GVAR, SetOfVars LVAR, unionVal val, ArrayList args)
at GLScript.Parseur.getval(SetOfVars GVAR, SetOfVars LVAR, executeParsedFunction BC)
at GLScript.GLApp.retrieveEvalVar(String funcName, TokenParse tkparse, TokenBuffer currTokenBuffer, SetOfVars GVAR, SetOfVars LVAR, Boolean breakFunc, Char& breakCar)
at GLScript.GLApp.privExecuteTokensPart(Int32 level, String funcName, SetOfVars GCAR, SetOfVars LVAR, Boolean breakable, Boolean inSwitchCase, Int32 start, Int32 end)
at GLScript.GLApp.executeTokensPart(String funcName, SetOfVars GVAR, SetOfVars LVAR, Int32 start, Int32 end)
at GLScript.GLApp.privExecuteFunction(String funcName, String[] argsVals)
at GLScript.GLApp.executeFunction(String funcName, String[] argsVals)
at Configurator.lexConfigurator.executeFunction(String funcName, infoPlayer pcurrInfoPlayer, String[] par)
at LFSLapper.LFSClient.managePacket(NCN newConnection)
at LFSLapper.LFSClient.Loop(Connect insimConnection)
at LFSLapper.LFSClient.doloop()
Int64 executeNonQuery2(System.String)
Closing Instance...
-----------------------------------------------------------------------------

Getting this error if I use autowork. I can get my servers to run if I use AutoStart but autowork works sometimes but most of the time I am getting the quoted error on any instance I run.
Minor change in 5.836

Quote :+----------------------------+
|Changes from v5.835 to 5.836|
+----------------------------+
1. Fix concurrent access issue on storedvalue DBS

2. Start with 5 sec between 2 instances in autoworkmode to solve putstat access restriction

Hi Gai,
Just got the update and run it locally and all seems fine. I am now going to update my dedibox with this version as it runs as a service within TCAdmin and will report back in a bit.

Thanks for update. I think the words Start and AutoStart are more descrptive than the way you have it from an English Language perspective.

Start - to start lapper's Instance in Standby mode
AutoStart - to start lapper's instance in working mode
Left Blank - don't start Lapper's instance

Quote :
autostart to start lapper's Instance in Stand bye mode
autowork to start lapper's instance in work mode
autonone don't start Lapper's instance

The error I had showing was due to an event missing in Authorisation, now sorted so removed the errors as was just taking up space on here.
Hello,

Here the last version and i think i'am near Release. No new features Added in next version, just debugging.

Bye

Gai-Luron

Quote :+----------------------------+
|Changes from v5.836 to 5.837|
+----------------------------+

1. Add GLScript command for User Event
setUserStoredValue( key, value )
This function store the value associated with key and username
You can use this to display a topUser
2. Add GLScript command for User Event
getUserStoredValue( key )
This function retreive the value associated with key and current username
You can use this to display a topUser

3. Add GLScript command for User Event.
topUser( title,key,mode,argv );
-> title = Title of the Top displayed
-> key = Key used to retreive corresponding values ( limited to 50 characters )
ex:
key = "Champ1Race1"; // Display top for the specified race
or
key = "Champ1Race%"; // Display top for the specified Champ
find all value and make a sum by player where key begin with Champ
you can also write it with key = "Champ1%";
'%' Replace a part of a string in retreiving values
You can make more complicated structure
key="2009Champ1Race1" // Find result for race one in Champ1 in year 2009
key="2009Champ1Race%" // Find result for all race in Champ1 in year 2009
key="2009Champ%" // Find result for all Champ in year 2009
key="%" // All cumulated result


-> mode = "DESC" or "ASC" Sort sum value descending or ascending
-> argv = same as Top
4. Add GLScript command for User Event.
nearUser( title,key,mode,argv );
Same as topUser but list is positionned on current username

Quote :The error I had showing was due to an event missing in Authorisation, now sorted so removed the errors as was just taking up space on here

Can you tell me more with example of code to catch this error before crash

Thank's

Gai-Luron
Quote from Gai-Luron :Hello,

Here the last version and i think i'am near Release. No new features Added in next version, just debugging.

Bye

Gai-Luron

Hi,
Sounds great Very good job. Very nice new options in ver 5.837

I only missing in the errorlog the name of the lpr file,the name of the Sub and linenumber where the fault is in the script. And a short error message like SYNTAX ERROR or MISSING something.
This thread is closed

LFSLapper insim4 Release
(2101 posts, closed, started )
FGED GREDG RDFGDR GSFDG