The online racing simulator
Bug Reports
(207 posts, closed, started )
Hello,


it's a bug, Sorted

Download corrected release. Replace only exe file.


Bye

Gai-Luron
Quote from Gai-Luron :it's not visual basic you need to use but visual c#

Hi there, i downloaded and installed visual C# and open the project. But after pushing F6 nothing happens again
Quote from fireb0llch :Hi there, i downloaded and installed visual C# and open the project. But after pushing F6 nothing happens again

To compile is F5
Quote from revolucio :To compile is F5

Thank you! Ok I got the new exe file, but there's still the same error:

-----------------------------------------------------------------------------
7/7/2009 6:09:25 PM

Lapper Instance 85.25.152.158/29999 abort!

Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)
Mono.Data.SqliteClient
bei Mono.Data.SqliteClient.Sqlite.sqlite3_open16(String dbname, IntPtr& handle)
bei Mono.Data.SqliteClient.SqliteConnection.Open()
bei LFSDbs.DbsAccess..ctor(Debug pmyDebug, String DbName)
bei LFSDbs.gripDbs..ctor(Debug pmyDebug, String puniqueConnectionId, String DbName, Int32 LapTimeUsedForPbPar, String FtpServer, String FtpLogin, String FtpPasswd, String FtpRemotePath, String dateFormat)
bei LFSLapper.LFSClient.init(String pip, Int32 pport, String pWorkingDir, String pIniFile, String pSuperUsers)
bei LFSLapper.LFSClient..ctor(String pip, Int32 pport, String pWorkingDir, String pInifile, String pSuperUsers)
bei LFSLapper.LFSListen.Listen.goWorkMode()
bei LFSLapper.LFSListen.Listen.startStbMode()
Int32 sqlite3_open16(System.String, IntPtr ByRef)
Closing Instance...
-----------------------------------------------------------------------------

Is there any other possibilitys?
Hello,

Mono.Data.SqliteClient.dll won't work in Vista. I am not the writer of this DLL and i don't have vista to try another solution. I can't do anything for you,

sorry!
Quote from Gai-Luron :Hello,

Mono.Data.SqliteClient.dll won't work in Vista. I am not the writer of this DLL and i don't have vista to try another solution. I can't do anything for you,

sorry!

Ok, then I will stay at the old Release I will try to install VMware on Vista and run XP, hope this will work.

Again, Thanks for your help.
Ok I got it worked now, Lapper is on Workingmode, but if you drive a time, no time will saved.

What's the problem?
Do you have your base created. Extension is .dbs. If yes, do you have set the default car with your current car

Gai-Luron
Quote from Gai-Luron :Do you have your base created. Extension is .dbs. If yes, do you have set the default car with your current car

Gai-Luron

lol right sry, my fault

But I have then next problem now, see Screenshot plz.

What problem is this? I only modified the Welcome window from Yisc I think.
Attached images
lfs_00000026.png
Coordonate of pit windows or pitboard overlap i think. Try to start with a fresh config
Bug in my config i have seen this in 843 too

it says show spliting info =/

(see bug.jpg)
Attached images
bug.jpg
Drifting Options Section of Lapper

Not really bugs, as just a bit of housekeeping required.

Event OnDriftPB() # Player event
globalRcm( langEngine( "%{main_newdriftpb}%" , GetCurrentPlayerVar("Nickname"),GetCurrentPlayerVar("DriftScore") . " ^3pts!") );
EndEvent

At the end of this code, you have ^3pts! But under the language engine, you have main_newdriftpb = "{0}^3 made new PB: ^7{1} ^3pts!";

This is duplicating the pts!

Also.

You have some slight duplication with this Event OnDriftPB() coding. First (as above) is a globalRcm, but then this is followed with same code but with globalMsg.

If both required, then surely could have:

Event OnDriftPB() # Player event
globalRcm( langEngine( "%{main_newdriftpb}%" , GetCurrentPlayerVar("Nickname"),GetCurrentPlayerVar("DriftScore")));
globalMsg( langEngine( "%{main_newdriftpb}%" , GetCurrentPlayerVar("Nickname"),GetCurrentPlayerVar("DriftScore")));
EndEvent

IS_MTC - could not find destination
I get the same message as Yisc[NL]; IS_MTC - could not find destination.
But I don't get this message when i stop LFSLapper.. but I get it when a player leaves the server..

I can see this in the server:
player disconnected << lfs host message
IS_MTC - could not find destination << lfs host message
player left the server << main_left_server message from lapper

I don't understand what you said to Yisc[NL], could you explain this to me? It is not a hard error, but I like to know why it is and if I can fix this?

Thx

Tim


Quote from Gai-Luron :
@Yisc[NL]
this msg is because i cut a little hardly Lapper server, but this no cause problem.
Do you take a look to the translation mode. If you have time to add it to your Scripts . Then i wrote french translation. Translation section must be in you script file it's better. Prefix each key with your own prefix to avoid conflict to other translation.
Ex: if you need a not allowed message in your pitboard script

notallowed = "You are not allowed";
better with
pitboard_notallowed = "You are not allowed";

bye

Gai-Luron

edit:
Maybe I have found the reason of the message..
After that a player disconnects the server, the host says something like 'player disconnected'.
Thereafter lapper says 'player has left'.

From an other programmer I heard this message is something like; lapper wants to say something about the person who left, but he is allready gone..
I think thats why the error message is there.

I think i put a # before the lines that are meaned for the 'has left messages', because it only says again what the host allready said.
(host says 'player disconnected' and lapper says 'player has left'.. so the 2 messages are exactly the same meaning i think)

If I'm wrong with my thoughts about the error messages, I'd like to hear it from you

Sorry if my English isn't that good btw!

Tim - Sinsanity racing team
Hi,
I found a small bug in 5.844
The new LapperVar's in release 5.844 will not work so fine.

RaceLaps = number or laps for a race
QalMins = number or minute in a qual
racelapsleft = Race lap left before end of race

getLapperVar( "RaceLaps" );
getLapperVar( "QalMins" );

The number of race laps are only show when you in a race and the QualMins don't show anything.

I tested white the next script.
Type !test in a qual session gives RaceLaps :0 and QalMins :
Type !test in a race session gives RaceLaps :6 (OK,is number of racelaps ) and QalMins :
After a race or when race is not started ( nobody on the track) the number of race laps will stay on 0.
The getLapperVar( "QalMins" ) stay always empty.

CASE "!test":
cmdLFS( "/msg RaceLaps :" . getLapperVar( "RaceLaps" ));
cmdLFS( "/msg QalMins :" . getLapperVar( "QalMins" ));
BREAK;

Quote from Tim NL :Hi,
I found a small bug in 5.844
The new LapperVar's in release 5.844 will not work so fine.

RaceLaps = number or laps for a race
QalMins = number or minute in a qual
racelapsleft = Race lap left before end of race

getLapperVar( "RaceLaps" );
getLapperVar( "QalMins" );

The number of race laps are only show when you in a race and the QualMins don't show anything.

I tested white the next script.
Type !test in a qual session gives RaceLaps :0 and QalMins :
Type !test in a race session gives RaceLaps :6 (OK,is number of racelaps ) and QalMins :
After a race or when race is not started ( nobody on the track) the number of race laps will stay on 0.
The getLapperVar( "QalMins" ) stay always empty.

CASE "!test":
cmdLFS( "/msg RaceLaps :" . getLapperVar( "RaceLaps" ));
cmdLFS( "/msg QalMins :" . getLapperVar( "QalMins" ));
BREAK;


Hey there Tim,

I think you have a spelling mistake, in that the var is "qualMins", with a "u" in it.

Here's a summary of how it works after the modifications to the code for the Car Reset functions:

When you start a qual or race, InSim sends an RST packet. If its a qual session, then the QualMins variable is set to the number of minutes, and RaceLaps will be 0. These vars are transposed into the currRace object and can be used to determine if a race is in progress. The qual session will run until the time runs out.

If it is an actual race, then RaceLaps & RaceLapsLeft will be set based on the number of laps or time that is set out in the InSim.txt file (cut & pasted here), and QualMins is used slightly differently.
// RaceLaps (rl) : (various meanings depending on range)

// 0 : practice
// 1-99 : number of laps... laps = rl
// 100-190 : 100 to 1000 laps... laps = (rl - 100) * 10 + 100
// 191-238 : 1 to 48 hours... hours = rl - 190

Now if the race is lap dependant, currRace.raceLaps will contain the original value, and currRace.raceLapsLeft will contain the ACTUAL number of laps remaining (decreased when leader passes the finish line).

Things get tricky when it's a timed race. When that is started, currRace.raceLaps will contain the original value, currRace.qualMins will contain the ACTUAL time remaining (we could change that to a raceMins var easily enough), which again is decreased when the leader passes the line (in fact we should decrease it after anyone passes the line).

If the race time is LESS THAN 5 MINS, then raceLapsLeft is set to 1. This is due to the uncertainty of how long a given lap would take when accounting for last few lap crashes or other unforseen incidents.

Does that sort of explain it?
Quote from Krayy :Hey there Tim,

I think you have a spelling mistake, in that the var is "qualMins", with a "u" in it.

Hi,

Thanks for quick answer.
I tried qualMins , QualMins qualmins and Qualmins but the qualMins will stay empty.

I wanted to use this vars in the configGui to set automatic the nummer of laps and the qual time.
At the moment the number of laps and qual time is set in the configGui script so the configGui shows the correct values.

### SET THE FOLLOWING VAR'S TO SETUP YOUR SERVER WHEN LFSLAPPER (RE)START ####
[COLOR=royalblue] $GUI_Lap_hour_number = 5 ;[/COLOR] #Number of race laps
[COLOR=royalblue]$GUI_qual = 10 ;[/COLOR] #Number of qual minutes
$GUI_wind = 0 ; #0=no wind 1=low wind 2=hard wind
$GUI_weather = 1 ; #set type of wheather 0,1 or 2
$GUI_mustpit = "no" ; #need to pit yes or no
$GUI_fcv = "no" ; #Force cockpit view yes or no
$GUI_drift = "no" ; #Drift option yes or no ( see the part at end of this script)
$GUI_midrace = "yes" ; #Join midrace yes or no
$GUI_start = "finish" ; #Race start order : fixed/finish/reverse/random
$GUI_current_car = "?" ; #You can set here the default car. If not set,the first time when the config GUI start its show's a "?".
### END ###

Using getLapperVar( "RaceLaps" ) will not work for the configGui because the number of racelaps is not always the correct number ( sometimes 0 if there is a qual ).

So i dont change this in the configGui and leave it like it is.
I've just submitted a patch to Gai Luron for inclusion of the qualMins var, as well as changing the Car Reset and LapsLeft code to use a new raceMins var.
!drf table - multiple names in same cell if same score
Lapper v 5.844

The !drf table will overlay someone's name on top of another if both have same score.

x > EDIT

Have since found that 2 or more people with same score don't get overlaid.

Instead, someone has strange user- or nick-name.

[F
F]ROY[RP]


Somehow they've got their name to appear on 2 lines, so it's taking up 2 line/cell spaces, and the 2nd line is overlaying cell underneath.

Clever of them to do that with their name, but pain in the rear still the same!

At top of 2nd attachement, you will see that 2 people have same score, but names aren't overlaying.

Haven't looked, but I've probably got same issue with !top table.


=> Further edit

Checked database entry, and found that racer is ^2[F&F]^7ROY^1[RP]

Would appear that Lapper is treating the ampersand (&) symbol as a script item and putting everthing afterwords on new line!

At least I can now edit database to get rid of problem (change & to +).
Attached images
drf table.PNG
drf table 2.PNG
lol wow that must be a pain
Hi Gai-Luron,

We run our FPRS Demoserver now with a huge swearlist that is located in an external file. We pointed to that file through the config and all works fine.

There only is a single problem:
In the swearlist we have the word 'bastard', just as an example. When someone shouts 'bastard', he gets kicked for swearing. But when someone shouts 'Bastard' of 'BASTARD', they don't get kicked. I think a simple .ToLower should do the trick here?
Quote from Silox :Hi Gai-Luron,

We run our FPRS Demoserver now with a huge swearlist that is located in an external file. We pointed to that file through the config and all works fine.

There only is a single problem:
In the swearlist we have the word 'bastard', just as an example. When someone shouts 'bastard', he gets kicked for swearing. But when someone shouts 'Bastard' of 'BASTARD', they don't get kicked. I think a simple .ToLower should do the trick here?

You also need to think about phone-like texting variations, such as
b4st4rd, p1ss, pr1ck, etc.
Quote from sinanju :You also need to think about phone-like texting variations, such as
b4st4rd, p1ss, pr1ck, etc.

Yeah, I had that in mind but if you get kicked for pr1ck, but not for PRI1CK I would have to add an immense list which would slow the lapper down a bit.

Gai-Luron, I also have a rather more annoying and important bug:

In the last week we found out that more then 9000 pb's got cleared from the PB.txt file. We started this month with over 13000 pb's but now there are only 4000 left. We haven't made any changes to the file or to the lapper. Is there a possibility that the lapper cleared them or that some bug has occured?
I've been playing around a lot recently with the countdown facility, and have noticed a problem.

Example coding for starting countdown, sub-routine after started and another subroutine at end.

CASE "!count":
openGlobalButton( "counter_text1",80,55,40,40,5,3,0,"^7( ^1READY ^7)", onfinishopenstart);
BREAK;

Sub onfinishopenstart($KeyFlags,$id)
closePrivButton("counter_text1");
openGlobalButton( "lone_counter",80,55,40,40,5,6,0,"^3> %cpt% <", endcounter );
EndSub

Sub endcounter($KeyFlags,$id)
closePrivButton("counter_text1&lone_counter");
openGlobalButton( "circle_GO",80,55,40,40,5,4,0,"^2! GO !");
EndSub

However I seem to do countdown, it always starts correctly, but misses 2nd number of countdown; i.e. if set to 6 (like above code) it goes
6
4
3
2
1

If I set it to 10, it goes - 10, 8, 7, 6....
Set it to 5, goes - 5, 3, 2...

Anyone else having this problem?
yep

EDIT: not any more

EDIT 2: oh now it does again seems that the first time it skips after that it dont idk
Quote from sinanju :<snip>
If I set it to 10, it goes - 10, 8, 7, 6....
Set it to 5, goes - 5, 3, 2...

Anyone else having this problem?

The problem that you are experiencing looks to me like its due to latency in the lapper code itself. The doCountDown function subtracts the current time in seconds from the predicted button visible time in seconds then updates the text. The problem is that when doing time subtractions in seconds, there is some rounding going on that may cause the function to skip a second. So if you open the button the first time at 3.9 second past the minute, the text wont update till at least 1 second has passed. If the code gets executed 1.2 seconds later, then you are now at 5.1 seconds past the minute. Second 4 has effectively disappeared. This time slip will be cumulative, so I would suspec that if you have a button counting down from 20 or 30, you would see 3 or 4 numbers missed. Give it a test if you can and see what the outcome is.

So the problem could occur at any time, not just for the second number. It also depends on several other factors, like how many buttons are visible, how many of them are countdowns, and if lapper is doing some other things as well.

One possible fix may be to do the time subtractions in milliseconds rather than seconds to make it more accurate. Other things we could is to go through the code and do some tuning to see if the number of system calls, functions and other bits around the countdown stuff can be made faster.
This thread is closed

Bug Reports
(207 posts, closed, started )
FGED GREDG RDFGDR GSFDG