Load times have always been a factor in Shenmue (for example, my Shenmue any% WR is not as much of an improvement over puri's as it seems - my Dreamcast loads a little faster than his).
However, with a PC version now being available, differing load times are more significant than ever. To make matters worse, it's possible to run the Xbox version of Shenmue II from the hard drive of a modded Xbox, resulting in differences in loads of several minutes.
As such, we need a method of removing loads. Generic load removers that rely on video simply don't work, as loading starts before the load screen appears, and ends before the load screen fades out (and the load screen fading out is a problem too). Relying on memory addresses is more effective, but unfortunately will only work for the PC version.
I suggest a compromise; although the load screen start/endpoints are not discrete, the UI appearing/disappearing is. For loads bookended by gameplay, we can use the time between the UI disappearing and the UI reappearing (perhaps minus two seconds to account for the fade out/fade in) as "loading time".
For loads involving exiting to the menu, there's no fade out - so we can time these accurately using only the black screen as loading time. For loads from menu to game, we can go from black screen to UI appearing (again, perhaps minus a second to account for the fade in).
For loads with a cutscene on either end, we'll have to ignore them - there's no reliable timing point.
Pros/cons:
-
it helps level the playing field, so that having a PC that takes longer to load isn't a disadvantage, and running the game from the hard drive on the Xbox isn't an advantage.
-
it's consistent across both games and all platforms, both old and new.
-
depending on how it affects the route taken (remains to be seen), it may mean that Dreamcast, Xbox, and Re-release runs are comparable, so we can recombine them into one - at least for some categories.
-
it has to be done manually; this would take a while (especially bringing old runs up to date) and require verification.
-
it doesn't remove all load times, only most of them.
It's important we get this sorted, so let me know what you think of the above solution, as well as bringing up any other potential solutions.
It seems the load removal for other platforms is going to take much more time and effort than the PC version. The current load remover provided for Shenmue is working, from what I've tested so far. I believe Shanz mentioned it stops and starts based on the In-Game clock. I think it would be wise to separate PC from the other HD versions for this reason. PS4 and Xbox One versions can still match up to PC, but without load removal, it is simply not the same.
Here's a solution until console load removal is available.
- Sub Categories change to PC, HD Console, and Dreamcast.
- Don't add another column for timing.
- PC runners submit load removal time under "Time", but list Real Time in the description/comment.
- Console runs still submit their Real Time under "Time", until a Load Removal method is applied.
- Once console load remover is up to speed with PC, add a new timing column and switch them so that ranking is based on LRT.
From what I've seen of the load remover (at least in Odyssic's Shenmue II runs) it misses a lot of the actual loading and catches only a small amount of it. Unless there's something else I don't know about.
As I mentioned before, the PC and modern console versions are otherwise exactly the same run - it doesn't make sense to have two separate leaderboards that differ just by timing method.
Not only that, but should an effective console load remover come about, the previously split categories would then have to be recombined - which then leaves the question of why bother splitting them in the first place?
What would make more sense to me (while still keeping your general idea) would be to keep the leaderboards on an RTA basis, add an optional LRT column that PC runs can use (and compare, using the filter option if necessary); once we have a console load remover, make LRT mandatory and use ranking based on LRT.
That's also another good solution without having to split versions. I've tested it out on Shenmue I in a few areas. The loading is very short and it stops before the game fades, as you've mentioned before. I think that it accurately eliminates loads, but the fades aren't really during the loads, right? I could imagine having the timer stop and start based on the fades is going to be a lot of work. The current PC load remover should work just fine, for now.
I'd say this is a good temporary solution. I think it should be stated in the rules so that everyone knows they may already be at a disadvantage by not using load removal, as it will eventually be a mandatory thing.