The online racing simulator
Searching in All forums
(969 results)
Gai-Luron
S3 licensed
New version, 5.702

Fix issue if config file is not ansi type. Now this file can be UTF-8 or Ansi

Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
What's the name of your event?????


Gai-Luron
Gai-Luron
S3 licensed
Quote from Tim NL :Hi,

Is it posible to goto a sub from a closePrivButton?
So i can close a multiline Privbutton and open a new one.

Something like this.
Example:

Sub Gotohelp()
closePrivButton("welc&clos");
cmdLFS("MA_help");
EndSub

Sub MA_help
..
..

And How to load PubStatIdk?
When i use the folling line i get a syntax error
PubStatIdk = xxxxxxxxxxxxxxxx;

ps: i using Lapper version 5.701

For now no, but in the future Yes! I change config file also for this .

In next stage i planned to add
- control flow
IF ... THEN ... ELSE ... ENDIF

- Loop methods
WHILE ... ENDWHILE
FOR ... STEP ... NEXT

Now In event and sub you can use +-/* in expression or attribution to local var
Exemple
$toto = (12 + 3)*4 + $OtherVar;

Many thank's for your tests men. I look it quickly.
Today i construct my barbecue and i have no time to look for your request. But don't worry i fix the bugs

Pubstat is a string! Quote it!

$PubStatIdk = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";



Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Quote from lysergic :I agree... THANKYOU

A question... I dont remeber if I can use the same file #QualUsers = &./your_file.flt; also for Auth drivers... (it would be very useful)

I look later if i can put this option in more vars.

Next stage. Now config file it's more easy to manage for me in prog.


Gai-Luron
Gai-Luron
S3 licensed
Hello,


Many thank's for the debugging. When you dev you can't see all. Thank's


Quote :

# Idle timeout for OnIdleAction1 in 1/10 seconds.
$OnIdleTimeout1 = 200;

# Idle timeout for OnIdleAction2 in 1/10 seconds.
$OnIdleTimeout2 = 300;

Time isn't meassured in 10th of seconds but in whole seconds, so the default value of 200 and 300 is equal to 3m20sec and to 5m00sec

Fixed

Quote :

[edit]
Second bug:

When driving a new pb you receive the message: New PB by {nickname} (Car): (unknown)
according to the config-file a laptime should be shown instead of unknown


Fixed

Quote :

Fourth bug:

typing !top xfg when default car is set to FBM, only shows list of FBM instead of XFG. So the cartype after !top is completely ignored.

you will put car in uppercase, now you can do in lower and upper
Fixed

Quote :

[/edit 2]

Fifth bug:

Event OnEndPit()
cmdLFS( "msg " . $Nickname . "^8 quit pit in " . $PitTime );
privMsg( "Pit finished in " . $PitTime ." - Total Pit: " . $TotalPitTime . "!" );
EndEvent

msg should be /msg
$PitTime is displayed as (unknown)


Fixed

Quote :



[edit 5]
Sixth bug:

When driving a new pb you receive the message: Average speed: (unknown) Km/h
So $AvgSpeed isn't displayed correctly
[/edit 5]


Fixed

New release 5.701
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Hello,

New beta version of Lapper, with new config file with more detailed syntax error. If someone can help me to do a tutorial for config file
You can't use your old LFSLapper and trackInfo cfg file.

Quote :+----------------------------+
|Changes from v5.641 to 5.700|
+----------------------------+
1. Change config file, new version, it's more easy to create and read. I create a little scripting language, i upgrade it in the future

2. Change in trackinfo file for the split actions. Now split action reference to sub in config file

3. You can search specific user with !nearqual and !near
without arg, you can view you nearqual position
with arg you can view nearqual position for a player
arg can be a partial name !nearqual gai-lu

Example config file

#########################################################################
# Connect messages #
#########################################################################
# Message that is shown to players when they connect to the server.
#-----------------------------------------------------------------


Event OnConnect()
openPrivButton( "welc",25,50,150,15,12,-1,0,"^7Welcome " . $Nickname . " to ^1LFSLapper ^7powered server !&^2Type ^7!help ^2after leaving garage to see commands." );
openPrivButton( "pos",25,80,150,10,8,-1,0,"^7Your actual friendly Position (all visitors) : ^7" . $Posabs
. "&^2Your actual League prequalify Position : " . $Posqual . " ^6Estimate Pool : " . $Groupqual
. "&Don't use swearwords on this server"
. "&respect other player"
. "&otherwise you can be banned "
);
openPrivButton( "clos",78,120,20,10,10,-1,32,"Accept",OnConnectClose );
openPrivButton( "ref",103,120,20,10,10,-1,32,"Deny",OnConnectCloseKick );
http("http://www.frh-team.net/reglapper/getserver2.php" );
EndEvent
Sub OnConnectClose()
closePrivButton("welc&pos&clos&ref");
EndSub
Sub OnConnectCloseKick()
closePrivButton("welc&pos&clos&ref");
cmdLFS("/kick " . $Username );
EndSub

#########################################################################
# Scheduled actions #
#########################################################################
# Actions that are executed on schedule. Use '|' for next schedule/action pair and to separate schedule from action.
# If more schedules or actions, separate them with ':'.
#
# ss mm hh dd MM YYYY
#-------------------------------------------------------------------


Register ScheduleAction( "0 0 0 * * *", SA_mid );
Sub SA_mid()
cmdLFS("/rcm Midnight warning to all working men!");
cmdLFS("/rcm_all");
EndSub

#########################################################################
# Action #
#########################################################################
# Action to do on special command typed in message line
# $allow is optional if you wish to specify users, that are allowed to execute action
# You can specify more user separated by ','
# If ! before a name, force nickName authentification if UseUsernameForAuthentication=true
# If ! before a name, force userName authentification if UseUsernameForAuthentication=false
# You can use regexp expression in userName pattern, type regex=your regular expression
# Exemple : if UseUsernameForAuthentication=treu
# !regex=^\[COP\].*
# Find all user who nickname begin with [COP]
# regex=^Gai.*
# Find all user who username begin with Gai
# See regular expression on web for more info how it work
# Use & sign at end of patterns, if you wish to specify a file containing users, that are allowed to execute action. users separate by \n
#-------------------------------------------------------------------

$UseUsernameForAuthentication = true;

Register MsgAction("!test",MA_test);
Sub MA_test()
$allow = "Gai-Luron,lagamel";
cmdLFS("/rcm " . $Nickname . " is testing...");
cmdLFS("/rcm_ply " . $Nickname );
EndSub

Register MsgAction("!license",MA_license);
Sub MA_license()
$allow = "Gai-Luron,lagamel";
setLicense( $argv );
EndSub

Little explanation of the new config file

/*
List of All variable who can be used in Players event

$Nickname -> Nickname
$Username -> UserName
$Laps -> Number of Lap done on current track and current Car
$SessLaps -> Session Number of Lap done on current track and current Car
$TotalPitTime -> Total Time stop in pit place
$Car -> Current car of Player
$Posabs -> Current absolute position
$Posqual -> Current qualification position
$Groupqual -> Current group qualification
$SwearWordsRem -> Remaining retry before SwearWordsAction2 triggered
$H_Mass -> User mass required on this server
$H_TRes -> User intake restriction required on this server
$P_Mass -> Current Player Mass
$P_TRes -> Current player restriction
$SplitTime -> Last Split time do by player
$CurSplit -> Split duration for the last sector
$BestSplit -> Best Split duration for the last sector
$DiffSplit -> CurSplit - BestSplit
$BestSpeed -> Best Speed do on this combo by player
$UnitSpeed -> Unit of the Speed of the current player
$Tpb -> Theorical PB
$DriftScore -> Drift score
$typ -> {typ} - = "Sess" if split PB for Session "PB" if split PB for PB file;
$AngleVelocity -> Last Angle velocity in degrees
$LastDriftScore -> Last drift score
$AccelerationStartSpeed -> Starting speed
$AccelerationEndSpeed -> Ending speed
$AccelerationTime -> Acceleration time achieved from start to end speed
$MaxAllowedLapTime1 -> Max Allowed Time before trigger Event OnMaxAllowedLapTime1
$MaxAllowedLapTime2 -> Max Allowed Time before trigger Event OnMaxAllowedLapTime2
$Dist -> Distance done on current combo/track by player
$SessDist -> Distance done on current combo/track by player on current session

List of All variable who can be used in all events

$ShortTime -> Server Time in short format
$LongTime -> Server Time in long format
$ShortDate -> Datein short format
$LongDate -> Datein long format

Additionnal Variable can be used in lapTimeAction. See trackInfo.cfg

$LapTime -> Current Lap Time


Additionnal Variable can be used in OnSpbLastLow or OnSpbLastUp.

$AvgSpeed -> Current Lap Time


Additionnal Variable can be used in OnBeginPit.

$Work -> Work do on current car player after Pit


Additionnal Variable can be used in votation.
$Vote -> Number player who have voted to restart, qualify or end
$Players -> Number player can vote ( player on track )
$Remain -> How many vote remain after votation conclude
$Need -> How many vote to do action qualify, restart or end


Additionnal Variable can be used in OnNotMatchFlags.

$RequiredFlags -> Flag required on this server
$PlayerFlags -> Flag for the current player


Additionnal Variable can be used in OnFastDriveOnPitL1 or OnFastDriveOnPitL2.
$RemainFDIP -> Remain count for fast drive in pit

Additionnal Variable can be used in OnAuthReached .
$auth -> Authorization reached

*/

/*
Command block to run when a LFS Special event is triggered
Event EventId()
...
EndEvent

Command block used by backcall command like button or scheduled action or when receive a command by player
Sub SubId()
...
EndSub

Register MsgAction("!test",MA_test);
You can register à sub function tu call when player type special text
Firts arg = text typed in
Second arg = Sub to call when player type this text

Register ScheduleAction( "0 0 0 * * *", SA_mid );
You can register à sub function to call when time is reached
Firts arg = cron format ss mm hh dd MM YYYY
Second arg = Sub to call when player type this text

Command allowed on Event and Sub

cmdLFS("Command_text");
To send a command to Lapper, see command.txt in LFS Doc

privMsg( "Message_text");
Tosend a private Message to the player who have triggered Event

openPrivButton( "help",25,28,150,10,5,-1,0,"^2Commands list" );
openPrivButton( "help",25,28,150,10,5,-1,0,"^2Commands list", backcall );
Open a button for the current player
1 - Unique id for this button
2 - Left coordinate for this button ( 0-200 )
3 - Top coordinate for this button ( 0-200 )
4 - Weigth this button ( 0-200 )
5 - Heigth this button ( 0-200 )
6 - Space between line in multiline button
7 - Duration in Second of the display button, -1 -> Don't automatically close
8 - Format of the button, look at insim.txt for value
9 - Button caption, for multiline, separate each line with &
10 - Option name of the backcalled sub

closePrivButton("welc&pos&clos&ref");
Close one or more button, you specify id of the button to close, multiple id separated by &

openGlobalButton( "bargr1",60,1,10,6,6,30,96,"Restart:" );
Same as openPrivButton, but open button for all player connected

closePrivButton("welc&pos&clos&ref");
Same as closePrivButton, but close button for all player connected

There are another function, look in config file

*/

Please return me bugs !


Bye Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Look, at /spec command if any change do on LFS. Maybe now /spec need username instead NickName.

Gai-Luron

PS: 5.6.4 it's discontinued, wait for the 5.7.0.
Gai-Luron
S3 licensed
Quote : DefGroup:5:5:1
Andy King:FXR
John Doe:FXR
John Doe:FZR
John Doe:FZR
John Doe:FXR
John Doe:XRR

Yes this work in file

Quote :Request: Is it possible Gai that Lapper can do something similar to this LFS 2008-07-02 03-32-01-03.jpg as it looks really neat and professional. Sorry Conedodgers but I like the logo onscreen lol.

Use 2 buttons overlapped but with little diff in coord and colour



Gai-Luron
Gai-Luron
S3 licensed
For now in gbut command use gbut with timer set instead /rcm if /rcm_all don't work in button.
I don't think i fix it because change in config file for the next release

Gai-Luron
Gai-Luron
S3 licensed
Hello,

To broadcast use gpbut

Gai-Luron
Gai-Luron
S3 licensed
Hello lysergic,

Open source
LFSLapper is Open source ( i haved some problem in past in reason of this choice )! For now, there is not a Dev Team, i am alone and I have no idea how to manage a dev Team! At this time i try to completely change the cfg file for future extensions and it's a hard work with many internal change in LFSLapper. I have solved a part of problems, but there is much work. ( i hope this change don't benefit to other dev without care of the initial developper )

Manage system league
I think that is not a work for lapper to manage league system. I think this function will be done by an external automated programm like this ( www.liguesfr.com ). Lapper have sufficient functionnality for now to help an external programm to manage League.
I made this PHP/SQL league programm for FRH Team, PLFS Team and LFS France , but for now i don't want release source because i can't maintain this for more than one or 2 users. I haven't time to do tutorial, automated install, etc... sorry

Request Feature
I add requested feature if i think that feature are a good idea and if it's possible to do this on Lapper due to Lapper or LFS restrictions.

Next version
Please, be patient! i do my possible

Bye

Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
The two file are Sync, only one need to be send to ftp. Put # before ftp setting.

Edit : more Quick than me Yisc[NL]
Gai-Luron
S3 licensed
it's not possible
Gai-Luron
S3 licensed
Hello,

use charset utf-8


look here : http://www.liguesfr.com/gcomp/ . this will be work!

gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Hello,

I put here an exemple of the new format for the cfg file. For now the reader work and give a complete infos about error in this file. The parsing is done by 'lex'. Lex is a lexical analyser writed for Linux. You can put here your ideas about syntax!
Next i will have to write lexical and grammatical parsing for event code with lex/yacc tools. The new configuration file will be easier to write and maintain. Be patient


$SwearWordsList = "****,asholes,bastard,idiot";
#$SwearWordsList = "&./swear.txt";
$SwearWordsMax = 2;

Event SwearWordsAction1(){
privMsg( "^1Don't use this words on this server, banned on ^2" . $SwearWordsRem . " ^1retry!"" );
}

Event SwearWordsAction2(){
privMsg( "Too many swearwords, spectated" );
cmdLFS( "/spec " . $UserName );
}

$InRaceLapsVoteMinMax = "-";

$VoteRestart = -1;

Event onVoteRestartChange(){
globalButton( "bargr1",60,1,10,6,6,30,96,"Restart:" );
globalButton( "bargr2",70,1,20,6,6,30,96,"(" . $Vote ."/" . $Players . ") Need " . $Need );
}
Event onVoteRestartReach(){
closeGlobalButton( "bargr1&bargr2" );
cmdLFS("/restart");
}
Event onVoteRestartZero(){
closeGlobalButton( "bargr1&bargr2" );
}

$VoteQualify = -1;
Event onVoteQualifyChange(){
globalButton( "bargq1",90,1,10,6,6,30,96,"Qualify" );
globalButton( "bargq2",100,1,20,6,6,30,96,"(" . $Vote . "/" . $Players . ") Need " . $Need );
}
Event onVoteQualifyReach(){
closeGlobalButton("bargq1&bargq2" );
cmdLFS("/qualify" );
}
Event onVoteQualifyZero(){
closeGlobalButton("bargq1&bargq2" );
}

$VoteEnd = -1;
Event onVoteEndChange(){
globalButton( "barge1",120,1,10,6,6,30,96,"End:" );
globalButton( "barge2",130,1,20,6,6,30,96,"(" . $Vote . "/" . $Players . ") Need " . $Need );
}
Event onVoteEndReach(){
closeGlobalButton( "barge1&barge2" );
cmdLFS("/end");
}
Event onVoteEndZero(){
closeGlobalButton( "barge1&barge2" );
}

$VoteLifeSec = 30;

$AutoRestartRaceMn = 0;

$EnableRotation = false;
$RotateTracks = "SO6R,BL1,FE3";
$RotateEveryNbRaces = 4;
$RotateCars = "XFG+UF1,TBO,XFR+UFR";

Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Quote from mikey_G :WHy should I see a therapist while you're the one who is claiming that this software, which is approved by the mods, is a hack?
Maybe YOU should find some mental help as you keep preferring to make a fool of yourself

Heps mikey_G :twirl:, LFSRelax have also a digital speedo

Gai-Luron
Gai-Luron
S3 licensed
Mpr stat is stopped. With new LFS ( Y22 ) version, no need to use this software. Use LFSStat

Gai-Luron
Gai-Luron
S3 licensed
I have Updated Readme file, zip file with removed tor cfg available (sorry)!

Quote :PB.txt (created by program if not present)
------------------------------------------
Database of best personal lap times, players and their cars

Format of file is as follows:
Line 1 of the file = Identification of PB file version

Next Lines

line 1 - Player userName
line 2 - Player NickName
line 3 - Laps Done in this Combo Car/track
line 4 - Date when PB Done
line 5 - Time when PB Done
line 6 - Car Name
line 7 - Lap Time in format MM.SS.HH
line 8 - Track Name
line 9 - 1st Split Time
line 10 - 2nd Split Time
line 11 - 3rd Split Time
line 12 - 1rd Spb Split Time
line 13 - 2nd Spb Split Time
line 14 - 3rd Spb Split Time
line 15 - Last sector Spb Split Time


line 16 - Player username
line 17 - ...
...

Gai-Luron
Gai-Luron
S3 licensed
I remove your PB filename .

I write this post to inform you that I plain to do major changes to the syntax of the configuration file. For now, this file is not very clear. The syntax is sometimes different depending on variables.

Sorry, but i need to do this. for next releases

Gai-Luron
Gai-Luron
S3 licensed
Quote from Max Torque :now 2 minutes after lapper crash (same cfg)

http://img152.imageshack.us/img152/2161/zzgb3.jpg

Do you have modified tracinfo.cfg file?. if yes check it or put a standart trackinfo.cfg file

@Andy King, impossible to do this with lapper!

@by.corner : i take a look if it's possible.

Gai-Luron
Gai-Luron
S3 licensed
oups!

file temporary removed

Gai-Luron
Gai-Luron
S3 licensed
Minor version: 6.4.1

Quote :+----------------------------+
|Changes from v5.640 to 5.641|
+----------------------------+
1. Fix bug on button ( Max Torque reporting )

2. Fix bug on OnIdleTimeout1 et OnIdleTimeout2. Now in second

!razsbp or !cleanspb work only on session SPB, not on saved SPB. To have session SPB, you can press shift+I ans select session SPB.

SPB are splitted on two line! it's strange what's you say. Do you edit file in editor using UTF-8 format or ansi?

Thank's for your contribution, i put this new file in LFSLapper


Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Hello,

No i look ASAP, i have only 2 licenses, for testing it's not the best way . I need to find another players to test it better.

Gai-Luron
Gai-Luron
S3 licensed
"Pas Idle" is a remaining debug trace for excludeIdle option, this don't block prog

Now Separation between command is '|' and not ':'

replace
Quote :/pbut clos,74,140,25,10,10,-1,32,I Agree,"/top GTR:/cpbut welc&pos&clos&ref"|

with

Quote :/pbut clos,74,140,25,10,10,-1,32,I Agree,"/top GTR|/cpbut welc&pos&clos&ref"|

Gai-Luron
Last edited by Gai-Luron, .
Gai-Luron
S3 licensed
Your syntax is some lines is wrong, cmd separator is '|' and not ':'

Replace

Quote :/pbut clos,55,180,35,10,10,-1,16,^4Accept,"/cpbut clos&pos&pos2&pos3&pos4&pos5&pos6&pos7&pos8&pos9&pos10&pos11&pos12&pos13&pos14&pos15&pos16&pos17&pos18&pos19&pos20&pos21&pos22&pos23&pos24&pos25&pos26&pos27&clos":/msg WARNING{colon} DO NOT REMOVE OTHER DRIVERS FROM THE START GRID.|

with

- if you want DO NOT REMOVE OTHER DRIVERS FROM THE START GRID. appear when you click on accept . In this case command in quoted string is for the button

Quote :/pbut clos,55,180,35,10,10,-1,16,^4Accept,"/cpbut clos&pos&pos2&pos3&pos4&pos5&pos6&pos7&pos8&pos9&pos10&pos11&pos12&pos13&pos14&pos15&pos16&pos17&pos18&pos19&pos20&pos21&pos22&pos23&pos24&pos25&pos26&pos27&clos|/msg WARNING{colon} DO NOT REMOVE OTHER DRIVERS FROM THE START GRID."|

or

if you want DO NOT REMOVE OTHER DRIVERS FROM THE START GRID. appear when you connect. In this case command is not in quoted string and it's not a command for the button but for the onConnect var

Quote :/pbut clos,55,180,35,10,10,-1,16,^4Accept,"/cpbut clos&pos&pos2&pos3&pos4&pos5&pos6&pos7&pos8&pos9&pos10&pos11&pos12&pos13&pos14&pos15&pos16&pos17&pos18&pos19&pos20&pos21&pos22&pos23&pos24&pos25&pos26&pos27&clos"|/msg WARNING{colon} DO NOT REMOVE OTHER DRIVERS FROM THE START GRID.|

Replace ' with "

Quote :addCmd('!blue") = <blue>;

with

Quote :addCmd("!blue") = <blue>;

Replace close with close1 if you want to close your closebutton
Quote : /pbut close1,95,135,35,10,8,-1,16,^4OK,"/cpbut help&rules&rules2&about&about2&blue&blue2&track&track2&team&team2&result&result2&grid&grid2&servers&servers2&cars&cars2&credits&credits2&prefs&prefs2&help2&auth&auth2&notes&notes2&top&top2&stats&stats2&password&password2&help3&admin&admin2&rep&rep2&close"

with

Quote :/pbut close1,95,135,35,10,8,-1,16,^4OK,"/cpbut help&rules&rules2&about&about2&blue&blue2&track&track2&team&team2&result&result2&grid&grid2&servers&servers2&cars&cars2&credits&credits2&prefs&prefs2&help2&auth&auth2&notes&notes2&top&top2&stats&stats2&password&password2&help3&admin&admin2&rep&rep2&close1"


Gai-Luron
Last edited by Gai-Luron, .
FGED GREDG RDFGDR GSFDG