Hello.
I created a small application for LFS patch X that displays a virtual pitboard using LFS's new button interface.
The application will display some relevant race information (lap, position, pit-instruction, gap forward, gap backwards, laptime) on the left hand side of the screen when you pass the start/finish line. The pitboard will always contain the information from the last time you crossed the finish line. That means the second time you cross the finish line the pitboard will display the position you had after lap 1, the gaps after lap 1 and the laptime you did in lap 1. That is because I can't predict the time the car behinds you needs to finish the lap, but I need that time to calculate the gap between you and the car behind you.
View the attached screenshot if you still can't imagin what this program is supposed to do. On the screenshot I finished the second lap and recieved information about lap 1 of 5. I finished lap 1 in position 1 and had a drive-through (D/T) penalty (there is also Stop & Go 'S&G' and 'PIT' which tells you that you didn't yet serve the mandatory pit). Being first there was no gap to any car in front, but the gap to the car behind was +4.04 seconds. I did a laptime 1:54.38 in lap 1.
The purpose of this program is to replace the top-right part of the LFS hud. If you don't need any other on-screen information you can now hit shift+f and you will still have all necessary information since the pitboard will still be displayed. That way you can race without the HUD.
To install LFSpitboard extract the attached archive into any folder. The default configuration expects that you extract it into the LFS folder so LFSpitboard's poath is .../LFS/LFSpitboard/LFSpitboard.exe.
To run the program follow these steps:
1. Start LFSpitboard.exe
LFS should be starting now.
2. After having loaded LFS should now report that LFSpitboard connected in the top left corner. LFSpitboard will state that has connected to LFS.
3. Start a race or qualification or join a host.
Note: If the above procedure doesn't work or you want to disable it for any other reason you can open cfg.xml in LFSpitboard's folder and search for the value "start" in the line "LFSExec" and set start="0". LFSpitboard won't attempt to start LFS.exe anymore then. You will have to start LFS manually and manually type "/insim=12500" (12500 being the configured InSim-port in cfg.xml) into a chatbox to allow LFSpitboard to connect.
LFSpitboard will only work in a race or qualification. It won't work in practice mode. If you join a host mid-race LFSpitboard's data won't be reliable. It will only work properly after a restart has occured.
Later releases will hopefully have an improved behaviour regarding this.
The pitboard will be displayed each time the viewed car crosses the finish line if it has already finished more than one lap. It will disappear if you switch the view to another car, hit shift+b, cross a sector-time or more than 15 seconds have passed. The program will stop to track the race if a car has done more laps than necessary to finish the race.
The purpose of this release is to test the program on a wider userbase. It is an early release and is expected to fail once in a while. For this purpose it displays a lot of debugging information. I didn't remove the debug-messages so if you run into any problems you can send me its logged data.
Later down the line I'd like to improve LFSpitboard's behaviour for situations like mid-race join and practice, add customizable pitboard-layouts and a editable fuel and tyre strategy.
Please report any issues with running the program so I can fix them. Also report all questions and suggestions you can come up with.
Update to R4
Changelog for R4:
- Recompiled for InSim v5.
- No other changes.
Update to R3
Changelog for R3:
- Added basic qualification functionality.
LFSpitboard tracks the best times of all cars and shows the position of the viewed car. It calculates the gaps from the viewed car's best time and the best time of the car in front and behind on the laptimes-table. It also displays the last done laptime by the viewed player.
- In a race LFSpitboard will now calculate the amount of fuel you need to finish the race and automatically set it if you are running out of fuel (this only works if you don't have the F12 menu displayed while crossing the s/f line). This feature currently only makes sense if you need less than 100% fuel to finish the race. More in-depth functionality like editable strategy and tyre-advice will come later.
- LFSpitboard can now start LFS by itself. In cfg.xml under the category "LFSExec" there is the option "start" which determins wether LFSpitboard attempts to start LFS (can be 1 or 0). If 1 LFSpitboard will try to load "LFS.exe" which is expected to be located in the path given by the location-variable (which is relative to the position of LFSpitboard.exe). The standard configuration is set up so it works if LFSpitboard.exe resides in .../LFS/LFSpitboard. If "InvokeInSim" is 1 LFSpitboard will set the "/insim="-parameter to its InSimport so LFS automatically initializes InSim.
- During a race the pitboards now use color-coding to inform you about the development of the displayed values. Position and gaps are colored if they get worse or improve. The pit-instructions are colored red if you ran over them once.
- There is now an additional fourth line on the pitboard that is displayed if LFSpitboards has additional information, like the amount of fuel the driver should set before pitting. In this line LFSpitboard will also anounce the last lap.
- Fixed a bug in the laptime-lookup function that could cause negative fuel usage to incur.
- Removed some debug output from code-sections that seem to work properly.
Update to R2
New features:
- The pitboards now disappear after a user specified amount of time. Default is 15 seconds. They still disappear if you cross a sector time before that, hit shift+b or switch the view to another car.
- LFSpitboard can now load some data from a config-file (cfg.xml). It can now read the InSim-port, OutGauge-port, admin-pass (only important when you are hosting) and the maximum lifespan of pitboards.
- LFSpitboard now tracks the fuel in the tank of the viewed car. From the last two fuel readings at the start/finish line it will predict your current fuel and fuel usage per lap. If you don't have enough fuel to complete 2 more laps it will display the "PIT"-instruction. That means if you wish to do so you can ignore the PIT-instruction once. If you don't pit after that you'll run out of fuel.
Please note that this feature only works properly if the view stays with the viewed car for several laps.
Vain