Dear LFS Racers,



Since the release of Z28 there have been various fixes and improvements that were not related to the new physics. Some of them were already added into my Z28 compatible version as well as the new version. But until now there weren't enough significant updates to release a new version, while Z28 was so stable.



NOTE : This patch is mainly compatible with Z28, so does NOT have the new tyre physics, the VW Scirocco or any S3 content. It is an intermediate update with some interesting improvements for LFS while I continue with the tyre physics. The new version can connect to Z28 hosts, but Z28 cannot connect to the new version's hosts.



The main things in this patch :



- New free view in SHIFT+U mode - not bounded by the path

- Improved collisions with unmovable objects (e.g. red barriers)

- Number of autocross objects increased to 800 (was 512)

- Open track configurations allowing you to drive anywhere

- Collision detection and reporting system (via InSim)

- Graphical optimisations improving frame rates

- Many other fixes and improvements



The story behind the new patch :



A few weeks ago I was working on some track editor improvements that Eric had requested, when I came across a fix that could possibly affect key presses in multi byte languages. An LFS user in Japan kindly tested the change, to make sure the fix didn't break the text input. I added a few updates from the new version into the patch before sending it to him.



Talking to Victor about possibly releasing the updates in a patch, he asked if it was possible to do a quick fix in SHIFT+U mode to help with his LFS Record program. I have long been a little frustrated in SHIFT+U mode so I got a bit carried away with that and rewrote all the camera control. It took a few weeks (that made me nervous as I really want to finish the new physics) but the result is a lot nicer to use. You can move the camera around freely, not bounded to the track path. The editor is fully aware of where your mouse is pointing and that helps with mouse movement and object positioning.



Because the new view is not locked to the path of the track, LFS does not know which objects are visible, so the whole track must be drawn. I managed to find several optimisations that improved the frame rate in this situation, and that gave me a thought : if you can be in SHIFT+U mode and draw everything, then how about allowing "open configurations" where you can drive around anywhere in a track area, with the barriers removed? I thought that would make the patch more interesting, and managed to get it done in a few days.



To make the open configurations useful, you need to put barriers up using the autocross system. But the unmovable barriers were famously troublesome, often throwing your car several metres in the air if you touched a red and white barrier. Looking into this, I found that I was able to improve these collisions a lot without any major changes. It doesn't seem to affect the hotlap replays (tested on all the world records).



Over last weekend I added a collision detection system, that can send information about collisions to InSim. And today I've increased the maximum length of message packets, which will be helpful for InSim programmers.



If all goes well, it should be possible to release this as a test patch within one to two weeks. There are a few things left on my list, including VOB mod protection and some small InSim updates. I am aiming for one week - I do want to get back to the physics - but I know that finishing things off sometimes takes longer than expected.



Here is the full list of updates :



SHIFT+U mode :



New free view mode replaces the old "low" and "high" path modes

Object or ground targeted by the mouse pointer is now detected

Left mouse button moves view point by "dragging" target point

Double click to move view point directly towards target point

Mouse wheel moves view point towards or away from target point

Left + Right mouse buttons rotate view point around the target

Arrow key movement follows ground below view point when possible

Store up to 10 views per track configuration with SHIFT+NUMBER

Recall a stored view with CTRL+NUMBER (or click on the button)

Click on a car to follow it / move away to stop following



Autocross editor :



Maximum number of autocross objects is now 800 on all tracks

Object positioning is much better - using mouse target detection

Less CPU / better checks when adding / moving / deleting objects

FIX : Could click on invisible replay slider when buttons visible

FIX : Could add marshall circles out of bounds then undeletable

FIX : N key in SHIFT+U with options on caused overlapping text



Open configurations :



New "drive anywhere" open configs (CTRL in track select screen)

Open configs can be selected with text command like /track=SO1X

Open configs can be used as racing circuits by adding checkpoints

Checkpoints can now be up to 62 metres wide to include pit lane



Optimisations :



Removed continual small memory leaks (materials list corruption)

Number plate generation is much faster - reducing pit-out glitch

Frame rate increased - drawing most world objects is much faster



Interface :



Unlock screen now renames unnamed player to user name on exit

Clicking selected track loads that track (like pressing ENTER)

Windows messages processed in a cleaner way (affects key presses)

Mouse movements are processed more efficiently (drag / slide)

FIX : Mouse look info could go off screen in some languages

FIX : An invalid view could be selected when no cars in race

FIX : Meeting room scroll bar was invisible in recent versions

FIX : Text commands could be used to load layout in hotlap mode



Graphics / Audio :



Improved display of help text / lesson text / welcome messages

F9 tyre diagram and SHIFT+L suspension diagrams now antialiased

Improved tyre optimisation - no missing parts of deflected tyres

Entry screen logo and frame are now drawn if a dialog box is open

FIX : In Driver Options the driver intersected with world objects

FIX : Reset from behind a barrier at South City could stop sound

FIX : Missing shadow on ground near fences at Autocross track



Multiplayer :



List of hosts can now show hosts you are not licensed to join

Host name is displayed in task bar and window title (if Latin)

Host options are now readable when opened from game setup screen

Default host IP address is now 127.0.0.1 (address of local host)

CTRL+SHIFT now displays time and date in all multiplayer replays

Removed TCP filter that allowed old versions in the list of hosts

FIX : Some problems resulting from multiple requests to join race

FIX : Pit stop did not end if car was knocked out of the pit lane

FIX : Some crashes that could result from an invalid unlock state

FIX : Some missing images (e.g. track select) caused LFS to crash

FIX : Suspension could incorrectly stay broken on remote computer



InSim :



NLP / MCI minimum time interval reduced to 40 ms (was 50 ms)

New collision packet gives details of contact between two cars

Longer IS_MST now up to 128 chars / specify sound / send to all



Misc :



Misc options : F9 / F10 accelerometer can be shown as one value

Improved detection of invalid window positions when starting LFS

URL command is now case insensitive - LFS:// or lfs:// both work

Security : InSim can no longer be initialised from a URL command

Cruise : no need to drive a lap before serving DT / SG penalty

Cruise : current lap is not displayed if lap timing is disabled

FIX : Improved collisions with unmovable objects (red barriers)

FIX : InSim camera with vertical pitch would cause LFS to crash

FIX : OutGaugePack ID was always zero regardless of ID in cfg.txt