April 23, 2017 — by aixxe
This time we’re diving into the world of tool assisted speedrunning – also known as ‘TASing’. Simply put, the process of creating a speedrun using third-party tools. In this post, we’ll build the core recording & playback logic, add the ability to re-record and finally, replay the recording on a live server.
March 15, 2017 — by aixxe
Welcome back to another instalment of the ‘alternative approaches’ series! This time we’re revisiting one of the fundamentals of internal game hacking on the Source Engine: the CreateInterface function, or more specifically, the underlying list of version strings and pointers that you should be using instead.
February 7, 2017 — by aixxe
As I hastily hacked various code together to get Chameleon NG running on Linux I came across a signature scan that needed replacing. Before I knew it, the solution had gone from pretty bad, to decent, and finally, better than its Windows counterpart.
January 12, 2017 — by aixxe
We're going to take a look at the ever so popular glow outline effect present in various Source games. This has well and truly been done to death but with the most prominent public code being horribly written and the users of it having no idea how it works I thought I'd simplify things and post my own take on it.
December 31, 2016 — by aixxe
In this post I'll be covering some of my methods for debugging and testing internal Source projects. This is the first part where we'll mainly focus on setting up a dedicated game server for online testing. Later on we'll dive into the game libraries where I'll show you how to find various classes and pointers with gdb.
December 13, 2016 — by aixxe
Making a graphical interface in-game from scratch has never interested me. I'm always a little surprised when people say writing the interface code is their favorite part. I'd rather use console commands, config files or straight up re-compile with different settings. Well.. that was true until I started using ImGui.
November 13, 2016 — by aixxe
As promised, here's the first in a series of follow-up posts on my initial 'introduction to Source hacking' post. This time we'll be adding the crucial missing feature from our skin changer: the ability to set custom knives.
October 28, 2016 — by aixxe
This time we'll be taking a look at osu! and more specifically the Relax modifier in the Standard gamemode. First off, we'll build a beatmap parser and then we'll use it to implement basic input automation externally. I'll be using C++ but any language that can read files and use Windows APIs should work just fine.
October 16, 2016 — by aixxe
Clan tags in Counter-Strike: Global Offensive are tied to groups you've joined in the Steam Community. These groups can either be public or require an invitation to join, on top of this, the tags are unique to each group so if you're not a member you won't be able to use that tag, right? Well.. not exactly.
September 28, 2016 — by aixxe
In this tutorial we'll be looking at CreateMove - the function of choice for anyone looking to manipulate player input. Specifically, we'll be looking at the CreateMove function defined in the IClientMode interface. I'll be going through one of the simpler methods of finding it, hooking it and finally creating a signature that should persist through game updates.