A Brief Update

A brief update on WTF I have been doing.

Woah? A blog post? There hasn’t been one of these in nearly two years! What does it mean?

It means I’m back to writing. I’ve simply got too much on my mind to be quiet. Expect some content to come out in the next few weeks (and months).

Reverse Engineering

Over the past two years I’ve done of a lot of stuff. But I’ll post whatever I legally can on the internet.

HIDMSR

I started reverse engineering the USB control protocol for the MSR605X magnetic stripe card reader. The code is on GitHub and works on Windows (so far). The ultimate plan is when I get back to security related stuff, I’ll finish the rest of the functionality. Right now, it only supports reading from the card reader. In the future, I will add write support for cards.

Most of the code is already there, but I just need to actually test it out and make it user-friendly.

SSX 3

SSX 3 is probably the game of my childhood. I remember playing it for hours on end on the GameCube. I’ve started reverse engineering the game’s format, and the bulk of the assets are stored in EA BIG file archives. The software used to examine these archives is quite old, so I took the time to port some existing code from Python 2 to Python 3. As always, the source is available.

I’ll have a bigger write-up on this later, but right now I’m just stuck on figuring out how the hell the world’s terrain is stored! So far, I’ve ruled out heightmaps (it’s not square) and voxels (GCN is too slow) because of how the game “glitches” whenever you go out-of-bounds of the actual map. So far I haven’t found any 3D file format that corresponds to the format used in the game! All I have been able to find so far is that there is a frequently repeating magic bytes header CBXS in the largest file inside data/worlds/bam.big.

Setup

My computer setup has changed as well. For one, I have a way bigger secondary monitor now. I also have a way newer Windows laptop that I use to play vidya games (i.e. SSX 3 on Dolphin).

On the Thinkpad I run Debian (I’m about to switch to either Gentoo or Void Linux though).

Editors

I’ve committed the ultimate act of heresy and converted to using Emacs with Spacemacs and Evil Mode. It’s pretty /comfy/ not having to leave the home row on the keyboard. I use it to edit everything on Linux.

What other editors do I use? Well, I use Visual Studio 2017 on my Windows maching for *gasp* Windows development. I use IDEA for Java projects at my internship.

Hardware

As I alluded to earlier, I now have two daily driver laptops. I use the Thinkpad for old and personal stuff. I use the Windows laptop for work, games, and Windows-specific stuff (or things my puny X200 can’t handle).

I’m about to upgrade the RAM and hard drive in my X200. It’s going to be pretty rad having a whole TB of storage and 8 GB of memory in this thing. I’m also going to try and install Libreboot/Coreboot on it this summer. If I can get a full open-source stack underneath my workstation, that would be great.

Vidya

Inspired by playing SSX 3, Team Fortress 2, and quite a few other games recently, I decided to start some small game projects. Right now, I’m not confortable releasing them, but I do plan on making them copyleft at some point. Right now I’m using Godot for each game.

Concept 1: Snowboarding

This game is inspired by SSX 3. It’s in deep pre-alpha right now, as I can’t even figure out how I should represent the terrain of the game. I plan on adopting the same arcade racing format that made SSX fun. It’s sad that a great SSX game hasn’t come out since SSX 3 (no, SSX 2012 was not great).

I like the direction that Ubisoft’s Steep goes in, but I think it’s too realistic. Part of what made SSX fun was its ridiculousness.

(If you are a lawyer from Electronic Arts and are reading this: No, I have not used any of the code or art assets of EA or any of its subsidiaries or parters for this game.)

Concept 2: Troll Farm

Another concept I’m working on is a troll farm type game, where you build up an internet community and try to build influence and grow. I came up with this idea as a way to mock liberals’ and neoconservatives’ Russian Troll narrative regarding the 2016 US Presidential Elections.

I plan on poking quite a bit of fun at online communities in this game. I expect to get a lot of crap from >plebbitors should I release this game.

What Am I Playing?

I got a little back into gaming now that I have a capable computer. I also picked up a Steam controller on sale. It’s very nice for emulation.

Right now I’m playing a mix of SSX 3, TF2, CS:GO, Natural Selection 2, and a few other games.


If you have any suggestions on what I should do or want to help me out, my email is publicly available.