The online racing simulator
Replay Fast Forward To Mark functionality
This is a function that would be extremely useful to those of us doing judiciary work (and probably those doing vids) that involves reviewing incidents from multiple angles etc. It appreciates the fact that replays are physics based and provides an elegant solution to being able to view a specific event multiple times.
  • Add a button that records the timestamp when pressed.
  • Add another that restarts the replay and fast forwards at highest possible pace until the mark is reached, then pauses the playback after switching to slowest or half speed playback mode.
We could then continue from that point on again, with a different angle etc.

This simple solution would go a long way to redress the biggest issues we currently have with the replay system --- and would be greatly appreciated.

We'll be able to view an incident multiple times this way.

Alternatively, allow for the entry of a time stamp at the replay selection screen. The replay fast forwards at best possible pace and then pauses.

Many thanks,
Funkdancer
Mondaynightracing.com
+1
+1 I'd like to see a plain rewind function.
(rewind is a substantially more difficult thing to achieve)
+1
simple, but effective
+1 anything to rewind a replay would be great, but i THINK the replay system is done based on AI's copying the 100% exact movement of the cars what was racing in a server when you save the replay..

I think thats how its done anyway but im just guessing, so it would be hard to create a function to rewind a car going backwards based on that type of replay function.

but if thats not how its done and it is possible to rewind replays then +1 +1 +1

allso i think a possibiblty of holding a key to bring up a slider like a timeline to skip to a cirtain point in the replay would be good aswell.
@Jimmy: Scawen's said it's impossible to do literal rewinding given the fact that the replay is a physics replay and not a video replay.

However, it has been discussed many times that there could be "bookmarks" every X seconds to let you "step" backwards. No word from Scawen as far as I know as to whether that's actually possible.

+1 for the OP, btw.
I did a quick and dirty insim tool that can do the fast forwarding part and called it LFS fast forward. Downloadable at http://www.theblacklion.org/LF ... %20forward%200.5V-0.1.zip

So far working for Patch V, because it uses jinsim-0.3. But since Brilwing has just finished the new jinsim for patch X, I sure can soon do a version working on X too. I also plan to do a mod of jinsim-0.3 to work for Patch W, because I think, some movie creators would also like to have this tool for older replays. And Patch W already has better sounds and can play replays starting from Patch S.

Currently, it's in proof of concept quality, but it does the job.

kr
Lion
You dont need any special mod to fast forward, the feature is builtin to LFS.
Quote from wheel4hummer :You dont need any special mod to fast forward, the feature is builtin to LFS.

But can you tell the build in fast forward to stop at 35 minutes and 30 seconds of the replay and pause the game?
I thought LFS sends out position information in packets as well as driver input. Replays are built from driver input but possibly you could create a rough replay search / rewind option by just using the position data and then when playing the replay returning to the physics based calculations?
looking forward to the patch x version TBL
#14 - FL!P
It's great that you are developing an InSim tool to do this! Can it restart the replay too?

I posted a very similar improvement suggestion a few months ago, and some very good suggestions were added by others. My idea was to let the user type the number of the lap where they want to "jump", and as wsinda suggested, being able to type a lap number earlier than the current one and having the replay restarting and fast forwarding automatically to that point would be roughly equivalent to have a rewind command. Could you please consider that?
@Storm_Cloud:
I thought about this too in a little different approach, but it just doesn't work because:
1. The InSim interface just delivers position information. It is not possible to set it (I coudl double check, but I'm quite sure). Means, I cannot put the cars somewhere on the track as needed.
2. Imagine the following: Someone crashed the car in lap 1 in a way, that he/she has to hold the wheel 45 degrees to the left to go straight but continues the race like this. And now imagine, we take a replay of this and skip directly to lap 5. When ignoring the physics, the car would show up without damage in lap 5 which is not correct anymore. And the damage would follow soon in a more unwanted way: Since the driver was steering 45 degrees to the left to go straight, the undamaged car would turn left immediately because it reacts differently to the steering input as the damaged car.
A whole bunch of things is needed to be stored in a different way and replicated, if no physics is used: tyre wear and temperatur, fuel level, wind, damage, tyre marks on the track, movement of other track objects (ramming a movable barrier) and wathever I've forgotten.

@FLIP:
Yes you can. Since I'm not experienced with GUIs, I did just a command line version. What you want, would work like this:
1. Start LFS and initiate insim (/insim=30000)
2. in the command line window, go to the lfsff folder and enter "lfsff 180 replayname", This would tell lfsff to load the replay "replayname" and forward 3 minutes (no lap counting included)
3. Anytime during the replay, you can gain go to the command line and type e.g. "lfsff 60 replayname". lfsff then loads the replay again and go to one minute.

If you configure the replay name in the config.xml, you don't even have to type that, just "lfsff 60".
I also will add some comments in your thread.
#16 - FL!P
Sounds very good. But it may not be the easiest program to use.

Any chance that it could detect the current replay itself? From the user's point of view, it'd be great if you could simply watch any replay and type lfsff 180 (or whatever), then when you're done close the replay, open another one, and use lfsff again without having to specifically identify the replay.

Yeah, I know, offer someone a hand and they take the arm.
Quote from FL!P :Any chance that it could detect the current replay itself? From the user's point of view, it'd be great if you could simply watch any replay and type lfsff 180 (or whatever), then when you're done close the replay, open another one, and use lfsff again without having to specifically identify the replay.

This works only partly. I did a new version 0.3, that now accepts in game commands, e.g.:
/mso skip 60 ... forwards one minute
/mso goto 300 ... forwards to five minute mark

The skip command would work on any replay that's currently on. Same for the goto, as long as you jump into the future. But if you go back in time, the replay needs to be reloaded. And unfortunately, there is no way to get the name of a replay currently on.

So, basically, you can use it the way you want. If you start lfsff, it will load it's defined default replay, but you can quit it and just load another one. Just take care to not specify a goto timestamp in the past or it will load it's defined default replay again.

Download v0.3: http://www.theblacklion.org/LF ... %20forward%200.5W-0.3.zip

kr
Lion

PS: Regarding the lap counting feature asked about in the other thread:
This is a little bit of a pain in the ass to do and that's why I won't do it. I'll explain.
The way how the forwarding I use works is simple. I just give one command to forward a specific time e.g. 60 secs. But I cannot stop LFS during the process and I don't know when LFS has finished forwarding. 3 possible solutions:
1. I always forward a little (e.g. 1 sec), guess when it's finished (or find a way to know) and ask at which lap we are. No nice solution, if it stays at guessing. If I find a way to know, I might give it a shot.
2. Scan the whole replay first and note down the time stamps of the laps. Takes a while to check the whole replay first. And also the "just load any replay and start forwarding" approach wouldn't work at all.
3. Find out how to controll the F2/F3 keys via program. I know how to use normal keys, but no clue yet on how to send function keys. But this way, I could stop the replay the moment, we are at the right lap. But also means, i have to do a "which lap? which lap? which lap?" loop to find the right lap. Also limits the speed to a maximum of 32x (in spr replays, I get 43x on my system with lfsff). And I also would need to check, which speed the system can handle on the replay. Depends usually on the number of cars on track and CPU power.

I might use solution 2 in combination with another tool I have in mind. But that's way down the road ...

PPS: Sorry no version X yet. Jinsim is not ready yet (or I use it wrong).
#18 - FL!P
Great progress!

Quote from TheBlackLion :The skip command would work on any replay that's currently on. Same for the goto, as long as you jump into the future. But if you go back in time, the replay needs to be reloaded. And unfortunately, there is no way to get the name of a replay currently on.

But is it necessary? Once the user selected a replay in LFS, it will remain selected. So if you could simply tell LFS to stop the current replay and start the selected one, it would restart it and you wouldn't need to know its name. Of course I have no idea if this is possible. But if it's not, maybe a feature request would help.

Quote :PS: Regarding the lap counting feature asked about in the other thread:
This is a little bit of a pain in the ass to do and that's why I won't do it. I'll explain.

Thanks for the detailed explanation! I understand the problem, now. Pity LFS doesn't have a goto_lap InSim command! (nudge nudge, Scawen )

About controlling the F2/F3 keys via program, maybe you could try using AutoKey, AutoIt, or something like these. Both allow to simulate key presses and to save your script as a standalone executable so the user doesn't have to install anything to use them.

Quote :PPS: Sorry no version X yet. Jinsim is not ready yet (or I use it wrong).

Can't wait to try it! Unfortunately I no longer have a W install.

Keep up the great work, Lion!
Quote from FL!P :Once the user selected a replay in LFS, it will remain selected. So if you could simply tell LFS to stop the current replay and start the selected one, it would restart it and you wouldn't need to know its name.

Close to a good idea again.
The problem is, that I cannot start a replay without providing it's name, except by clicking on the buttons with the mouse.

Quote from FL!P :About controlling the F2/F3 keys via program, maybe you could try using AutoKey, AutoIt, or something like these. Both allow to simulate key presses and to save your script as a standalone executable so the user doesn't have to install anything to use them.

It's possible to send keypresses using InSim. Just not sure, if special keys work somehow. And I know about this tools, but I want to stick with InSim only. For once this solutions are not that reliable as an API.

Second, it is currenty possible to have lfsff and LFS running on two different PCs and let them communicate over LAN. Won't work if I'm using anything else to interact with LFS. And comes in handy, when I want to run LFS in full screen. Otherwhise: shift-F4, find lfsff windows, start lfsff, go back to LFS screen, shift F4 again. I admit, with the new in-game command support not that big of a problem anymore.

Quote from FL!P :Can't wait to try it! Unfortunately I no longer have a W install.

The problem is, I have no documented version of jinsim for Patch X (Brilwing changed a lot). Tried to get the source code, but the on I got seems not to be the right one.
I have a phone conference with Brilwing tomorrow anyway, so with some luck, Patch X version will be available until tomorrow night.[/quote]

Got to go ...

kr
Lion
#20 - FL!P
Quote from TheBlackLion :Close to a good idea again.
The problem is, that I cannot start a replay without providing it's name, except by clicking on the buttons with the mouse.

Oh well, I'd better learn InSim, I guess. Sorry for wasting your time with silly suggestions.
New Version 0.4 for Patch W and Patch X available.

Download LFSFastForward 0.5X-0.4
Download LFSFastForward 0.5W-0.4

Main changes:
- Supports LFS with patch X
- Sound is disabled during forwarding to increase forwarding speed (about 10%)

I opend a thread in the addons section. All future conversation regarding my tool should be done there: 472261

kr
Lion

FGED GREDG RDFGDR GSFDG