neusoftbaby / csgo-dma-overlay

A basic CS:GO ESP utilising DMA and HDMI-Overlay

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CSGO DMA Overlay

This project creates a basic CS:GO ESP using Direct Memory Access. It reads player positions and view angles from memory computes a view matrix1 and then draws this on screen. This is tested to work with ESEA as of this release 27/04/2020.

It uses pattern scanning to find the offsets to use so should work between game updates. Uses the MemProcFS API to interface with windows. This was tested with a SP605 and NETV2, but would probably work with any compatible pcieleech compatible FPGA and generic HDMI overlay device.

1 The pointer to the original is not in the process page tables and I chose not to use offsets

Videos

Bots demo

bots

ESEA demo

esea

Components

There are three components to this project: The DMA Client and the Overlay client.

DMA Client

This reads the csgo process using pcieleech then creates a websocket for the overlay client to connect to on port 9002.

output

Overlay Client

This is a webpage that connects to the DMA client via a websocket and then draws the output to screen using p5.js

overlay

HDMI Combining

I use a NETV2 which overlays the two HDMI streams to create the output which can then be plugged into any monitor this supports 1080p @ 60Hz

hdmi

Security

VAC:

Lol no chance VAC is too advanced.

ESEA:

There are some reports of pcileech being detected. I highly doubt this as scanning of the pci bus is highly intensive and would impact performance of a CPU bound game such as CS:GO, anyway use at your own risk. Just change your vendor ids I spoofed a realtek ethernet card and it works fine.

FACEIT:

Untested

Known issues:

Overlay and stream don't line up

The HDMI overlay and stream do not allign have fun fixing this, probably best done in software. More Info

ESEA Instability

ESEA place some weird patterns in memory specifically to trip up pattern scanners. If you can't find valid patterns try skipping/not skipping specific patterns.

Overlay Latency

Could very likely be sped up. Ideas:

  • Use MemReadScatter (Most likely to help)
  • Stop using a web based overlay lmao

General Instability

Doesn't work well between games never bothered to look at this

Resolution awareness

Didnt bother to look at supporting multiple resolutions only supports 1920x1080 (16:9)

Creditz

  • Me :)
  • Ulf Frisk for pcieleech and MemProcFS. One word: AMAZING
  • Bunnie for creating the NETV2.
  • Flaw for listening to me ramble
  • bi0phaz3 good memes

About

A basic CS:GO ESP utilising DMA and HDMI-Overlay

License:GNU General Public License v3.0


Languages

Language:C++ 50.3%Language:HTML 47.5%Language:C 0.7%Language:Python 0.4%Language:JavaScript 0.3%Language:XSLT 0.2%Language:CSS 0.1%Language:Shell 0.1%Language:Makefile 0.1%Language:Assembly 0.1%Language:CMake 0.1%Language:CWeb 0.0%Language:Cuda 0.0%Language:PHP 0.0%Language:Batchfile 0.0%Language:Objective-C 0.0%Language:C# 0.0%Language:Max 0.0%Language:Perl 0.0%Language:TeX 0.0%Language:M4 0.0%Language:Yacc 0.0%Language:QMake 0.0%Language:DIGITAL Command Language 0.0%Language:Ruby 0.0%Language:Roff 0.0%Language:Eiffel 0.0%Language:Fortran 0.0%Language:Lex 0.0%Language:TSQL 0.0%Language:Tcl 0.0%Language:Objective-C++ 0.0%Language:D 0.0%Language:QML 0.0%Language:Rebol 0.0%Language:IDL 0.0%