Dieses Programm startet ARK: Survival Evolved oder ARK: Survival Ascended und ändert das Verhalten bestimmter Steam-API- und EOS-SDK-Methoden, ohne die Dateien des Spiels zu ändern.
Was es für beide Spiele ändert:
Was es für ARK: Survival Evolved ändert:
......Mods
relativ zu ShooterGame.exe), was das Erkennen und Verwenden von Mods ermöglicht, auch wenn das Spiel dies nicht tut Eigentum des aktuellen Steam-Kontos und keine Abonnements möglich, solange Dateien verfügbar sindWas es für ARK: Survival Ascended ändert:
Außerdem verfügt TEK Injector über eine spezielle Behandlung für das Befehlszeilenargument -high
, wodurch das Spiel mit einer hohen Prozessprioritätsklasse ausgeführt wird.
Das Befehlszeilenargument -noadmin
kann verwendet werden, um den Spielprozess ohne Administratorrechte zu starten (TEK Injector selbst muss mit diesen ausgeführt werden).
Standalone: Laden Sie tek-injector.exe von Releases herunter, legen Sie es im Verzeichnis ShooterGameBinariesWin64
Ihres Spiels ab und führen Sie es aus. Alle Befehlszeilenargumente, die an TEK Injector übergeben werden, werden an das Spiel weitergeleitet.
Eingebettet (für App-Entwickler): Sie können TEK Injector direkt in Ihrem Prozess verwenden, wenn Sie sein PE-Image ordnungsgemäß laden (mit entleerenden Abschnitten und füllender Importtabelle). tek-injector.exe exportiert zwei Funktionen, die über GetProcAddress abgerufen werden können:
void launch_asa ( const wchar_t * exePath , int argc , const wchar_t * * argv );
void launch_ase ( const wchar_t * exePath , int argc , const wchar_t * * argv );
Dabei ist exePath
der Pfad zur ausführbaren Datei des Spiels (ArkAscended.exe bzw. ShooterGame.exe) und argc
und argv
stellen die Befehlszeilenargumente für den Spielprozess bereit. Denken Sie daran, dass Sie das erste Argument nicht auf den ausführbaren Pfad setzen müssen. TEK Injector erledigt dies selbstständig und hängt danach Argumente von argv
an. Außerdem können diese Funktionen bis zu 10 Sekunden lang blockieren, um sicherzustellen, dass der Spielprozess dies nicht tut Gibt nach dem Start einen Fehler zurück.
TEK Injector erstellt einen Spielprozess im angehaltenen Zustand, weist ihm dann Speicher zu und kopiert sich selbst hinein. Anschließend ändert er den Kontext des Hauptthreads, sodass er einen benutzerdefinierten Einstiegspunkt aus dem Bild von TEK Injector ausführt, der die Importadresstabellen der ausführbaren Spieldatei ändert, um seine eigenen Funktions-Wrapper zu verwenden wo es nötig ist, und übergibt die Ausführungen dann an den echten Einstiegspunkt des Spiels, der nicht einmal weiß, dass etwas davor passiert ist. Das Ausführen von TEK Injector innerhalb des Spielprozesses nach dem einfachen Kopieren ist möglich, da spielseitiger Code nur auf dem basiert, was im Image und der kernel32.dll (die sich in allen Prozessen an derselben virtuellen Adresse befindet) gebündelt ist, ohne dass andere externe Abhängigkeiten bestehen.