|==============================================================================|
|=================(|>  VoidShell Framework - Version 2.55s <|)=================|
|=========================(|> Created by Cyber.x64 <|)=========================|
|==============================================================================|
A general-purpose library for M.U.G.E.N Engine that allows characters to 
protect their main PlayerCache while providing them a simple but vast toolkit
interface to use in said engine.
Characters loaded through this library will have their primary data remotely
protected besides providing basic contingency plans against certain enemies.

Most of the engine code improvements or bugfixes have already been implemented
in the first versions of VoidShell.

|==============================================================================|
|====(|> How does it work ? <|)================================================|
|==============================================================================|
When the VoidShell library is loaded for the first time in a target process, 
it starts initializing their main data while retriving primary information
of your computer, before adjusting itself to the current engine version.

The following background threadworkers are created afterwards:
VoidShell's Soulcore
Foreground Engine Image Restorer
Background System Hooks Restorer
Background Players Enhancer
Background Windows Handler
Enviroment Control Watcher

Note:
The first 4 system threadworkers have a high priority in the engine process,
which requires a lot of CPU power, while the ECWatcher and BWHandler 
threadworkers usually have a low priority.

Detailed information about each threadworker do can be found in the following
blog entry:
https://cyber-x64.blogspot.com/2025/10/the-voidshell-library.html

|==============================================================================|
|====(|> Requirements <|)======================================================|
|==============================================================================|
This new version of VoidShell is CPU intensive when a character is loaded
through this library, as the latter creates a unique threadpool for each 
character to support, so a processor with more than 16 cores is recommended,  
the engine and your computer may suffer performance drops over time otherwise.

Minumum Model: Intel® Core™ i7 10700 / AMD Ryzen 7 3700X
Recommend    : Intel® Core™ i5 13500 / AMD Ryzen 5 7600X

Warning:
Trying to run VSC powered characters without keeping into account this 
requirement may cause your computer to stop respoding properly.
A sudden hang might occur in the worst-case sceneario

|==============================================================================|
|====(|> Versions Log <|)======================================================|
|==============================================================================|
V2.55 - 05/Mar/26: "Remote Defense"
1A.-	Reworked Registry Interaction
	The library is able to save primary data information about their engine
	processes in order to facilitate certains features.
1B.-	Remote Escort Guard
	Affiliated characters can now use the VSEGuard program in order to 
	get remote defense prior to full engine initialization.
	Note:
	Most important code sections of the library had to be updated to 
	make it compatible with this mode
1C.-	Miscellaneous
	Several bugs were fixed in order to improve engine stability while
	the code of some routines have been reworked as well.

V2.54 - 31/Dec/25: "More speed!"
1A.-	Data Structure Optimization:
	The main Backup Handle Data structure for PlayerCaches and 
	PlayerHandles have been updated in order to save memory and improve
	stability.
	The maximum limit of Backup Data Handles for PlayerCache has been 
	reduced to 16, as only a few authors will use this library for
	their characters, and cases of powered characters fighting each other
	at battle are expected to be very unlikely.  

2A.-	Improved CNS and AIR Data Restoration:
	Affiliated characters will have those main PlayerCache data handles
	remotely protected by their VSC threads.
2B.-	Optimized VoidShell code execution speed from ATC controllers:
	DTC/ATC controllers that use the module's special return address
	to execute code will have a faster processing speed.
2C.-	Reworked Variable Expansion Code Section:
	They have been reworked in order to improve stability from characters
	who use their code area to execute their own data.
2D.-	Win State and Text Display control seize:
 	Powered characters can now seize control of the match result in order 
	to win the round regardless of the enemy trying to override it.  
2E.-	Data Redirection mode for the States Data Handle processor:
	Powered characters will have their State Data Handle redirected to 
	an isolated version if available, which will allow them to withstand 
	heavy CNS Obliteration attacks, while trying to counterattack the 
	enemy.

3A.-	EIP Redirection Counterattack:
	If a powered character is unable to reset the watchdog timer 
	assigned by their main soul thread, the latter will trigger a 
	contingency plan that tries halting the engine's main thread
	before abruptly reloading the match state.
	Currently unstable and has to be manually enabled by the author.

V2.53 - 20/Nov/25: "Slight code fixes???"
1A.-    A high-resolution timer has been implemented in the module, which run
	at 60 frames per second regardless of the engine workload, so this
	will be useful for future features (Such like Dynamic Potrait with
	sound effect or Successful Character Load notification).

1B.-	Some engine restoration codes have been added to prevent unexpected if
	a VSH character is not selected first 

1C.- 	The Exception Control Handler function has been improved to display 
	more detailed debug information when a critical exception occurs while 
	executing a VSH.Shellcode.

1D.-	New VSH functions have been added:
	SetPlayerReversalTimer
	Allows your characters to trigger a reversal attack in case they
	have been defeated through external method.
	The module's main timer runs at 60 fps by default and is executed 
	regardless of the engine's current framerate, so it is required to set 
	a slightly higher time value in order to prevent desynchronization.
	Must be disabled while debugging your 
	...
	SetPlayerMainDataHandler
	Self-explanatory, but in order to improve code reliability, it is
	advised to use these functions instead of setting them directly.
	...
	Nothing for now!

1E.-	Target Polymorphism usage expansion
	Can now be used in Remote Arts or Reversal Timers.
	Instantly disabled after successful usage.

|==============================================================================|
|===============================(|> Closure! <|)===============================|
|==============================================================================|
I want to thank the following authors, as they were actively using this 
general-purpose library against other characters, for testing the defensive/
offensive capabilities of VoidShell:

Choon(bsky.app/profile/choon.bsky.social):
Thank you for having actively provided some feedbacks of VoidShell being used 
on a character (Ner'zhul in this case), as a result, I could strengthen said
library in order to withstand more enemies.

If you happen to find any glitch or bug and want to let me know it, do not 
hesitate to contact me through Discord or X.

This library is not affiliated/associated to Digital Extreme and their
Warframe game
...
Cyber.x64 / 2021 ~ 2026