Threads
LithuaniaBlantas5 years ago

Any plans to add ILs for every mission?

LithuaniaBlantas5 years ago

So, as the title says, I'm unable to post runs via API. Server returns 500. Either the run data I'm submitting contains something that breaks it, or there might be some internal problems in the API (hopefully, not).

Here's the json object with the run data: https://pastebin.com/raw/RzeCqktc

LithuaniaBlantas7 years ago

So, since there were no script for livesplit to remove loading times for the game, I thought it's a good idea to make one.

Basically, the script is based on gameplay timer, which means, whenever it stops game is trying to load something (like various models, animations, other stuff). The most noticeable loads are before cutscenes and loading game worlds.

I recorded a short video with the script running if anyone is interested:

Currently it should work for 1.0/1.01/3.00 and current steam versions. German versions and 2.0 aren't supported (I didn't have a chance to play with those yet).

Download link: https://github.com/Blantas/san-andreas-loadremoval-for-livesplit

If you see any bugs or want to say something else related to the script, feel free to leave a reply here.

EDIT:

The game gets paused when game suspends game timer (uses CTimer::Suspend()) or other loads happen by directly calling CStreaming::LoadAllRequestedModels() function. The load removal component detects both ways of game getting paused. Game suspends game timer while: ¤ Loading IPL files. ¤ Loading collision data. ¤ Updating world after using EntryExit. ¤ Handling Trip Skip process. ¤ Loading path data. ¤ Handling 038B opcode (loads any requested models). ¤ Loading mission script (probably unused?). ¤ Handling 0417 opcode (loads mission script). ¤ Loading item prices from shopping.dat file. ¤ Loading ped's models. ¤ Blending ped's textures. ¤ Reducing ped's palette size. ¤ Loading cutscene data from cuts.img file. ¤ Deleting cutscene data. ¤ Loading cutscene data. ¤ Loading mission text. ¤ Loading mission pack text (probably unused). ¤ Saving taken photo into drive.

So all tasks mentioned above get detected as well as all loads which are done by using CStreaming::LoadAllRequestedModels function (loading collisions, models, textures, text, scripts, etc.).

The priority of detecting loads in this component is checking if CStreaming::LoadAllRequestedModels function is active. If script doesn't detect any loads, then it checks if game timer is paused (game might be doing one of the tasks from the list above).

darkgeorge12, Reset and 7 others like this
LithuaniaBlantas8 years ago

Hello everyone. Why aren't there any individual level categories? I.e. races or vehicle challenges? I'd like to submit some runs into such categories.

Derpeth likes this
About Blantas
Joined
8 years ago
Online
1 year ago
Runs
116
Games run
Grand Theft Auto: San Andreas
Grand Theft Auto: San Andreas
Last run 5 years ago
113
Runs
Grand Theft Auto Category Extensions
2
Runs
Devastation
Devastation
Last run 7 years ago
1
Run
Games followed
Grand Theft Auto: San Andreas
Grand Theft Auto: San Andreas
Last visit 1 year ago
10,621
visits
Grand Theft Auto: Vice City
Grand Theft Auto: Vice City
Last visit 2 years ago
1,270
visits
Grand Theft Auto III
Grand Theft Auto III
Last visit 3 years ago
487
visits
Grand Theft Auto: Liberty City Stories
89
visits
Grand Theft Auto: Vice City Stories
172
visits
Grand Theft Auto IV
Grand Theft Auto IV
Last visit 2 years ago
105
visits
Grand Theft Auto Category Extensions
1,163
visits
Bully: Scholarship Edition
Bully: Scholarship Edition
Last visit 4 years ago
50
visits