errantSquam / guitarcade-speedup

Mods for speeding up Rocksmith's Guitarcade
3 stars 0 forks source link

String Skip Bullet Refresh issue #3

Open errantSquam opened 4 days ago

errantSquam commented 4 days ago

See Reddit thread: https://www.reddit.com/r/rocksmith/comments/1gatico/rs2014_got_tired_of_waiting_for_the_guitarcade/ltlffxt/

Going to use this issue to liveblog/write documentation, because why not. Sure beats Discord

errantSquam commented 4 days ago

Can't seem to replicate 'unable to exit' problem but can confirm the bullets don't refresh and become completely useless after a few attempts. May just disable the game over screen for String Skip and see if that works better

errantSquam commented 4 days ago

Managed to figure out how to skip outro, I think the key is in how the game manages its states. Going to see if I can skip leaderboard or make it faster. Will push outro fix for now.

image

errantSquam commented 4 days ago

Still trying to find the relevant leaderboard code

Relevant functions appear to be:

errantSquam commented 4 days ago

So I THINK I got around this while preserving all the logic, but I've changed so many variables my String Skip got reset back to baby difficulty (lol) and I'll need to see what pieces of code are the ones to be changed

image

Changing the state to 'PressStart' here and removing all the ActionScript calls (and the initial Flash call from ChangeStateEndGame) seems to let you just mash through the leaderboard before it finishes. I think just switching it to PressStart might just work! Or maybe even Intro...

errantSquam commented 4 days ago

Hmm, no luck skipping back to Intro. Might just have to let players mash back to PressStart for now. I guess visual feedback isn't necessarily a bad thing if players are getting high scores?

errantSquam commented 4 days ago

Restored functionality, the bandits' speeds are now back to normal...now trying to figure out what parts should be commented out to maximize speed... Also, I don't know how to feel about the fact that debugging this has a side effect of making me REALLY good at String Skip. Hooray for practice!

errantSquam commented 4 days ago

Hmm, seems like it's not easy to mash through with the ActionScripts intact (?) May have to get rid of the scripts one by one and see which one controls the dynamic difficulty

Also had one weird instance when Infinite Replay had the bullets stuck glitch again, but I can't seem to reliably replicate it.

I assume "Guitarcade.FreezeParticleSystem(false)" unfreezes the bullets, but skipping through too fast might cause states to desync...or something?!

Wish I knew where the ActionScript files were...

errantSquam commented 4 days ago

I should go sleep but last idea is to go directly into the stringskipsaloon folder within behavior... It seems to have a lot of game specific logic and maybe I can check if I can get it to refresh the bullet state more than once (since stuff is getting mashed through)

errantSquam commented 4 days ago

Okay, will test fix tomorrow: image

React dev paranoia: Updating state everywhere

errantSquam commented 4 days ago

Okay, mashing functionality is back, difficulty seems to be preserved, and things are a bit more stable. I think I went about 20 minutes without issues before the bullets started acting up

Seems like the glitch tends to happen when you do really well in the game? Wonder how that affects the state...

Not sure if placebo but I'll put g_gameover = false directly into StartGame too, just in case

Will probably push an xdelta patch for the mash build

errantSquam commented 4 days ago

Mash build has a patch now, going to test the same code functionality on the other games (since I think mission behavior/seeing scores is still nice, and mashing becomes optional)

Going to take a break from string skip for now since it's playable enough even with the bullet glitch.

errantSquam commented 4 days ago

Okay, I lied I added an extra gameover = false state, did a quick test, somehow got a new high score (amazing how repeating this game quickly gives you so much more practice), and...no bullet glitch.

I think it's stable ENOUGH that it should be playable (at least on my build, not sure about mac or other versions of Rocksmith), so I'll push that fix :)))