Skip to content

Able to successfully hook Starcraft 2's graphics functions to draw overlays. Inspired by the similar Stanford project.

Notifications You must be signed in to change notification settings

jasonpang/Starcraft2Hook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Starcraft 2 Hook

Description

Hooks Starcraft 2's DirectX APIs to draw overlays and read information. Inspired by the similar Stanford project.

The Stanford project, written in C++, hooks into the game's DirectX drawing to read text and model data so that it can play the game. My program, written in C#, is able to hook into the game and display an FPS counter and colorize textures. The transition from managed to unmanaged code (C# is managed, DirectX is unmanaged) slows down the frame rate to around 2 FPS even on a fast quad-core computer.

Tech Stack

  • C#
    • EasyHook for DirectX API interception
    • SharpDX for a managed implementation of DirectX
    • NLog for logging

Interesting tidbits

  • Of the 118 DirectX API functions, almost all are intercepted with proper marshalling between unmanaged and managed data types and structs
  • Extensive program architecture, multiple library projects with an Injector to inject the DLL into the target process

About

Able to successfully hook Starcraft 2's graphics functions to draw overlays. Inspired by the similar Stanford project.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages