The online racing simulator
Quote :Yes, checkpoints and circles are only detected if you drive above them.

How does LFS manage InSim checkpoints with same x,y,h but different z? When you drive above them is there a max height you can be above them for the detection to work?

Quote :A question about IS_PLC - I'm considering trying to update its function today. It has been requested to make it as strong as the /cars command.

1) It would force you to spectate if you were driving a car that you are no longer allowed.

2) A disallowed car could not be 'already selected' so that means you wouldn't be able to join with it.

Would there be any problems with this?

This would be a welcome improvement although I try to think of situations where it could be useful to "overwrite" IS_PLC with /cars. Would /cars be ignored by IS_PLC so that you can actually select a car which is not enabled by /cars as that sounds like a bad idea. IS_PLC should remain less powerful than /cars but this will still be the case or did I miss the point?

Other observations:

• Is it intentional that a race car spawned by IS_JRR has pit speed limiter turned on by default?

• I always found it annoying that you can't force a player to click GO when you did /end and changed to a new /track. Is there no way to force the track to show so that you don't have to wait for the players who clicked "join race" to click "GO"? (It would be useful for automatic track rotations)

EDIT:
One more suggestion. When /canreset=no you get "Car reset is not allowed on this host" and no IS_CRS reply is sent. If instead you still send it, with IS_JRR it would be easy to decide if the player who wanted to reset is allowed to reset or not but you would have to remove the "Car reset is not allowed on this host" message.
Can I get some clarification on how the IS_OCO packet is supposed to work, as I can't get it to change the AutoX start lights. The main start lights work OK.

I set the Data to the bulb bits I want to show, I set the Index to AXO_START_LIGHTS (149), I set the Identifier to whatever its set to in the editor, and I set the Action to OCO_LIGHTS_SET (5). However I cannot get the AutoX lights to change. If I set the Index to OCO_INDEX_MAIN then the main start lights change fine.

Can else someone else check that they can get the AutoX lights to work?
..
Yes, I meant those little portable start light things.

Anyway, I figured out the problem, you need to add the AXO_START_LIGHTS objects to a layout, save the layout and then reload it for them to start working. Maybe this was common knowledge, I don't know much about AutoX or the layout editor.
Quote from DarkTimes :Yes, I meant those little portable start light things.

Anyway, I figured out the problem, you need to add the AXO_START_LIGHTS objects to a layout, save the layout and then reload it for them to start working. Maybe this was common knowledge, I don't know much about AutoX or the layout editor.

You don't have to reload, just press the optimise button (or set the flag if loading via insim). That was mentioned a few posts ago.
Quote from Degats :You don't have to reload, just press the optimise button (or set the flag if loading via insim). That was mentioned a few posts ago.

OK sorry, I didn't understand that bit.
I'm about to upload another programmer one here before I do the export and upload of the big patch. First I'll answer a few questions.

Quote from sicotange :How does LFS manage InSim checkpoints with same x,y,h but different z? When you drive above them is there a max height you can be above them for the detection to work?

No, you just have to be above them, it doesn't matter how far above. So in a multi layered track you can put high checkpoints that you must be high up to cross (e.g. on concrete). However if you have some on the ground level and don't want a high car to trigger those checkpoints, you should make sure the high track doesn't cross those checkpoints. It was the safest way to implement it, even with this limitation.

Quote from sicotange :This would be a welcome improvement although I try to think of situations where it could be useful to "overwrite" IS_PLC with /cars. Would /cars be ignored by IS_PLC so that you can actually select a car which is not enabled by /cars as that sounds like a bad idea. IS_PLC should remain less powerful than /cars but this will still be the case or did I miss the point?

Well it would be equally powerful, but limited to one player. It would not enable cars that were not allowed on the host anyway. You would be allowed the subset of host allow cars and PLC allowed cars. The only change would be that if PLC disallowed a car, you would spectate and couldn't rejoin with it.

Quote from sicotange :• Is it intentional that a race car spawned by IS_JRR has pit speed limiter turned on by default?

Good find, now fixed.

I've also added a new IS_SLC packet containing the 3 letter car name of the selected car, when a connection first joins and if he ever changes car after that point. So you know if he has a car selected or not. This is helpful for when you try to make a remote player join, and want to know what car he would have, or he can't be made to join because he doesn't have a selected car.

It is not useful for players who are already in the race, and should only be considered for spectating players.

This has a side benefit that Flame requested. Now the host knows what car a connection has selected, so when you use the Admin "add connection to grid" PLUS button it gives you a message if the connection has no car selected.

Quote from sicotange :• I always found it annoying that you can't force a player to click GO when you did /end and changed to a new /track. Is there no way to force the track to show so that you don't have to wait for the players who clicked "join race" to click "GO"? (It would be useful for automatic track rotations)

That would be a big discussion. People do like the ready system. For now if a player has gone AWOL it's probably better just to spectate him, so he doesn't end up on the grid while he's away.

Quote from DarkTimes :OK sorry, I didn't understand that bit.

Pleased you've got that going.

I've made the middle light amber in the version I'm about to upload.
Quote from Scawen :
That would be a big discussion. People do like the ready system. For now if a player has gone AWOL it's probably better just to spectate him, so he doesn't end up on the grid while he's away.

In which case, would it be possible for insim to give some kind of notification of who is/isn't ready so this can be automated? (Or is it already possible and I've missed something?)
OK, the (incompatible) K22 version is up there on the first post.

Changes from 0.6K21 to 0.6K22 :

Layout editor :

Temporary start lights (in layout editor) middle light is now amber

Interface :

Message "Connection has no car selected" info adding remote driver

InSim :

New packet IS_SLC reports a connection's currently selected car
Packet TINY_SLC to request an IS_SLC for all connections

Fixes :

Racing car spawned outside pit lane had speed limiter enabled

https://www.lfs.net/forum/thread/88999

Quote from Degats :In which case, would it be possible for insim to give some kind of notification of who is/isn't ready so this can be automated? (Or is it already possible and I've missed something?)

Good point. The host does have that info so it should be possible to provide some info in a compatible version. I've added a note to consider it.
Quote from Scawen :Good point. The host does have that info so it should be possible to provide some info in a compatible version. I've added a note to consider it.

Thanks Smile


While we're still in incompatible mode, any news/thoughts on per-player forced handicaps? Would it be too complicated to do in this patch cycle? Perhaps IS_HCP.Zero could be re-purposed to be UCID/PLID?
-
(cargame.nl) DELETED by cargame.nl : OK stupid, ISF_REQ_JOIN simply wasnt set because I was on another server
Anyone else notice any issues with the DCon.exe in these test patches?

I had issues with K21 and older versions running with wine on Debian. When I left the DCon overnight the server would die overnight due to a stack overflow.

I'm not sure what the issue is because the server was completely empty when it happens.

I am testing K26 overnight now, will report what happens.

Didn't have any issues with 0.6K
I left a server "CESAV.es Test" with version K23 running since when it was released, on a CentOS with wine.

It´s still working since that, but I think none but me joined there, so I can´t say if with some ussage will fail or not
..
Doh! I realised the stack overflow happens when I replaced the DCon executable with a new version whilst the server is still running!

My bad Smile
-
(Bass-Driver) DELETED by Bass-Driver : LFSLapper is running the wrong version. I dont get data from UCO packet
..
Quote from cargame.nl :Why do I see this all the time in the deb log?

Feb 26 01:34:53 CG™» Dave^L left the pits (FXR)
Feb 26 01:34:53 IS_JRR - connection has no join request

I am sending a JRR to every NumP=0 and in this example there is a NumP=0, so there is a join request? Or is this message being generated because I send a JRRAction1 but empty StartPos? (sounds strange to me).

The log gets bigger then needed if every left the pits line is followed by this. Do others have this too?

Did you enable the JRR flag in the PRISM host configuration?
..
This error message is is only shown if the connection has no join request waiting for a reply.

Maybe you are sending two JRR packets, or another InSim program is connected that already sent a JRR. Or your program took 3 seconds to reply and the player joined already.

I see in your example, you already left the pits before the JRR. So it looks as if your JRR is arriving after a successful pit exit. But that should not be the case.
Quote from Scawen :
Maybe you are sending two JRR packets, or another InSim program is connected that already sent a JRR.

So, is it like with the first JRR response that LFS gets from any insim connection, car gets on track?

If so, I think that it should be explicitly stated somewhere in docs/InSim.txt, because one might expect that LFS will wait for 3 seconds to give every program chance to forbid a player to join.
About JRR. I noticed some servers that don't use insim, have a small delay after you click OK to exit pits. Is this needed(when there's no insim connected i repeat)?
A packet goes to the host, the host sends a player info packet to all guests including yours, your guest then sends a car info to the host, the host sends that to all guests.

So... yes, a delay is inevitable. Shouldn't be long though, and it's no longer than it ever was before.

If you have a 3 second delay then someone must have switched on join requests but is ignoring them.
Quote from Scawen :A packet goes to the host, the host sends a player info packet to all guests including yours, your guest then sends a car info to the host, the host sends that to all guests.

So... yes, a delay is inevitable. Shouldn't be long though, and it's no longer than it ever was before.

If you have a 3 second delay then someone must have switched on join requests but is ignoring them.

I've been curious, because before the menu was disappearing and now the button gets disabled till you spawn. Once again thanks for the detailed info.
Would it make sense to use one of the spare bytes in IS_NCI to report the licence of the user (Product : DEMO / S1 / S2 / S3)?

Now that S3 has been released it could be useful to have this information especially when the host changes track.
Quote from sicotange :Would it make sense to use one of the spare bytes in IS_NCI to report the licence of the user (Product : DEMO / S1 / S2 / S3)?

Now that S3 has been released it could be useful to have this information especially when the host changes track.

I don't have anything against the request itself.

Maybe I am a bit confused there...

But you can not connect to S3_host having only S2_license. And you can not change s1/s2/s3 host_mode while host is running (that would be actually pretty cool, but maybe too much effort).

Otherwise, license info might be useful to see how many people that come to your server have S3 already, so you can restart server in s3 mode Smile

FGED GREDG RDFGDR GSFDG