Hello, everyone! This is my first time posting a table, and includes some of my first (admittedly very basic) auto-assembler work. It's for the Steam version of Super Time Force Ultra, or STFU for short (hehe).
Scripts
* Unlimited TimeOuts
Exactly what it looks like. Enable this, and TimeOuts - whether regular, or Ultra - shouldn't decrease.
* Unlimited Timeslow and UltraForcer Lifespan (buggy)
While this script is enabled, ultraforcer lifespan and duration of timeslow (from shards) should not decrease. However, it causes other bugs. It prevents spawning of entities from destroyed objects (like when a glorb is inside a box). Disable the script for a little while, and items should spawn as needed.
Pointers
* Timeouts Total
The total number of normal timeouts you can use in the current level. Starts at 30, increases with each collected glorb, does not decrease when you time out.
* Ultra Timeouts Total
As above, but for ultraforcers. Starts at 5.
* Timeouts Used
The number of normal timeouts you've used in the current level. Starts at zero, and increments each time you time out as a normal forcer. If you freeze it at zero, you never count as having used a timeout, so they're effectively infinite.
* Ultra Timeouts Used
As above, but for ultraforcers, again.
* Timeups
The count of the number of clocks you've picked up in the current level. Starting at 60 seconds, each clock adds 10 to your available time. So, set this value to 24, and you'll have a total of 5 minutes to do the level. This may cause bugs when you get very long times, and you try to timeout and rewind back to the start.
* Displayed Timeouts
This is the number of available timeouts, as displayed in the top left. This one does go down as you use timeouts, unlike the total, above. It's useful primarily because it's easy to find.
I can't guarantee the pointers; this game has given me significant trouble with them. However, I can make it reasonably easy to find them for yourselves.
1. Search for "Displayed Timeouts" as a 4-byte variable. Collect glorbs; use timeouts; swap between normal and ultra; whatever you need to do.
2. Once you find it, copy that address, and adjust it by the following for the different addresses:
2a. Timeouts Total: -34
2b. Ultra Timeouts Total: -30
2c. Timeouts Used: -2C
2d. Ultra Timeouts Used: -28
2e. Timeups: -24
There are another couple of things I haven't been able to find static, usable pointers for.
Timeslow
This is a 4-byte variable. When time is going at normal speeds, it's 4171510507 exactly. When you collect or shoot a shard, it sets to 120 and starts counting down. When it hits zero, it goes back to 4171510507 again.
It you freeze it while it's 0-120, then you'll keep the timeslow until you need to time out. If you set it to 0-120 through Cheat Engine instead of a shard, weird stuff happens. Time does slow, but the sound doesn't change, and it makes replays behave strangely, not quite doing as they had when you were controlling them.
Ultraforcer Lifespan
When you select an Ultraforcer, this 4-byte variable starts at 600 and counts down. When it hits zero, you die. If you freeze it above zero, the Ultraforcer will never die of natural causes.
Notably, this is always +158 from Timeslow's address. I haven't been able to narrow down a static pointer, but you can use them to find each other.
Hope this table and post helps people! Kookabunga, bros!
How to use this cheat table?
- Install Cheat Engine
- Double-click the .CT file in order to open it.
- Click the PC icon in Cheat Engine in order to select the game process.
- Keep the list.
- Activate the trainer options by checking boxes or setting values from 0 to 1