1.2. Advanced menu

1.2. Advanced menu


1. Speedhack
The speedhack injects code into the game and when a timer function is called, it will return a modified time.
This lets you take control over the game speed. The formula is based from Dark Byte's method: basetime+((currenttime-basetime)*speed).
To use the speedhack, first select the game window/process (otherwise this menu is hidden).
Then open the menu and click on 'Enable Speedhack'
This will inject the code.
To modify the game speed once speedhack is enabled, uses the 'Speed' editor below.
A value of 1 means the game is running at normal speed. Set it to 2 and the game runs twice as fast.
Set it to 0.5 and it runs half as fast.
You can also use hotkeys to enable speedhack and modify the speed.


2. Mono
This feature is automatically active when it's supported by the target game.
This feature becomes available when you attached to a game which uses mono (Unity Engine).
The mono jitter injects code to take control over the internal JIT process.
Once it's injected you can force the just-in-time compiler to compile a mono function or retreive the address in memory where the function is located.
This also works with nested classes.
Use a '+' delimiter in this case, for example: SuffocationMonitor+Instance:GetBreath
Because the injected code in the target process and CoSMOS are communicating via a managed pipe you should be aware of two things:
  • Debugger
The mono jitter has to be disabled when using a debugger (otherwise CoSMOS freezes).
This is done automatically and once the debugger isn't used anymore, CoSMOS will also activate the mono jitter again.
  • Target process is about to close
The mono jitter has to be disabled when closing the target otherwise the target stays frozen.
This is done automatically. But there might be rare cases where the mono jitter is disabled although the target is not about to close (i.e. target stays unresponding for example on synchronous loading).