Project thumbnail image
College of Engineering Unit: 
Electrical Engineering and Computer Science
Project Team Member(s): 
Srikar Valluri, Bradley Gore and Ethan Ng
Physical Location at Expo: 
Kelley Engineering Center
Project ID: 
CS.094
Project Description: 

Our project is focused on creating an AI-based aimbot detection system. This project includes a parser that automatically extracts 1-second combat clips from gameplay, a neural network that extracts features from those clips, and a neural network that is trained on those features and predicts whether a user is cheating or not. The gameplay data used for the project was collected from Counter-Strike: Global Offensive (CS:GO). 

To determine if a kill in CS: GO is done using aimbot, we must first be able to detect kills. Instead of looking through and trimming dozens of hours of gameplay by hand, a parser was made to create 1-second clips of kills automatically. The parser does this by watching the area of the screen where CS:GO reports kills. When the parser sees a new red box it knows the player got a kill. This triggers the parser to save the last 60 frames (1 second) of the video. Once a video is parsed the clips are sent to a Convolutional Neural Network (CNN) for feature extraction.

The most important features must be extracted for each set of frames in a clip. We use a pre-trained CNN to perform this extraction, as it has already been trained to distinguish features from a large set of images. The CNN then processes the frames of each clip, and stores quantitative information in the form of 3D tensors. This information is then passed to a predictive model or labeled as “aimbot” or “non-aimbot,” to be used to train a predictive model.

Once a clip has had its features extracted it can then be input into a Recurrent Neural Network (RNN) to predict if the clip used aimbot. A Long-Short Term Memory (LSTM) RNN is used to keep track of time-series context during training. The RNN learns from each sequential set of frames and outputs a binary prediction as to whether that particular set of data uses an aimbot or not. A small set of data is kept aside to validate the accuracy of the model.

Our model was trained with around 1,800 CS:GO clips. When it was shown 192 clips it had never seen before it was able to accurately predict if the clip used aimbot 97.9% of the time.
 

Opportunities: 
This team is open to networking
This team is open to collaboration opportunities
This team is open to employment offers