Jamie Holding

Jamie Holding's Blog. Video Game Development, Web Application Security, Theme Parks, and Food.

  • Home
  • Portfolio
Singleton Pattern in JavaScript

Singleton Pattern in JavaScript

A simple singleton pattern for JavaScript classes. class Instances = {}; class MyClass { static get() { if (Instances[this.name] === undefined) { Instances[this.name] = new this(); } return Instances[this.name]; } }Call ```MyClass.get()``` to get a

  • Jamie Holding
    Jamie Holding
1 min read
Unreal Engine 4 - Custom Log Categories

Unreal Engine 4 - Custom Log Categories

Don't use LogTemp for everything! It is trivial to setup a new log category in C++. First, in a header in your project add a line like so: DECLARE_LOG_CATEGORY_EXTERN(LogMyAwesomeGame,

  • Jamie Holding
    Jamie Holding
2 min read
Unreal Engine 4 - Object & Actor Iterators

Unreal Engine 4 - Object & Actor Iterators

How to iterate over Actors and other UObjects in Unreal Engine 4. Note: You should be careful using this regularly! You do not want to be iterating over every single object in your

  • Jamie Holding
    Jamie Holding
1 min read
Unreal Engine 4 - Change Folder Colours In Version Control

Unreal Engine 4 - Change Folder Colours In Version Control

In Unreal Engine 4 you can change the colour of your Content folder directories to make it easy to identify parts of your project. However, by default, this is only stored locally, and

  • Jamie Holding
    Jamie Holding
1 min read
2019 - Last Year's Resolution

2019 - Last Year's Resolution

Last year my resolution was to complete something every month. I liked the sound of this resolution because I have a heap of random projects I wanted to get done, and hopefully this

  • Jamie Holding
    Jamie Holding
5 min read
nDreams in the Opening Titles of BBC South News

nDreams in the Opening Titles of BBC South News

The other week I had to walk up and down the office for 20 minutes so the BBC could get a shot of our studio for the opening titles of the local news.

  • Jamie Holding
    Jamie Holding
1 min read
Weekend Project 2012 - Pokemon Clone

Weekend Project 2012 - Pokemon Clone

I found this old project kicking about, and as best I can tell it is from 2012. I remember building this over a weekend when trying to learn how HTML canvases worked. This

  • Jamie Holding
    Jamie Holding
1 min read
Debug Shipping Builds In Unreal Engine 4.23

Debug Shipping Builds In Unreal Engine 4.23

Recently I've upgraded a personal project to Unreal 4.23 and found that we had a crash in Shipping-only! So I needed to figure out how to debug this. The error I was

  • Jamie Holding
    Jamie Holding
2 min read
Taking Screenshots In-Game In Unreal Engine 4.23

Taking Screenshots In-Game In Unreal Engine 4.23

This is a simple method to take screenshots in-game using Unreal Engine 4.23. Execute this code somewhere in your project and it will generate a PNG screenshot at the same resolution your

  • Jamie Holding
    Jamie Holding
1 min read
I Got Married!

I Got Married!

I am now husband to my amazing wife. I can't want to continue exploring the world and life together with her forever.

  • Jamie Holding
    Jamie Holding
1 min read
Reverse Engineering AES Keys From Unreal Engine 4 Projects

Reverse Engineering AES Keys From Unreal Engine 4 Projects

This post is designed for Windows builds of Unreal Engine 4 titles made with 4.21. This will likely work with previous versions, and maybe even future versions of the engine. Your mileage

  • Jamie Holding
    Jamie Holding
11 min read
Lego Roller Coaster Build

Lego Roller Coaster Build

I recently took a day off work to put this thing together. When I was a kid, I had a plastic model set of a Pirate Ship flat ride. I loved this thing.

  • Jamie Holding
    Jamie Holding
1 min read
Advanced Certificate Bypassing in Android with Frida

Advanced Certificate Bypassing in Android with Frida

Last year I published a blog post about bypassing certificate pinning using a tool called Objection. https://blog.jamie.holdings/2018/09/05/bypass-certificate-pinning-on-android/ Since then I have encountered Android research opportunities with

  • Jamie Holding
    Jamie Holding
3 min read
Want to make games? Make games

Want to make games? Make games

A few months ago I gave a talk at Solent University in Southampton about getting a job in the Games Industry. While I was writing my presentation, I found I was re-treading a

  • Jamie Holding
    Jamie Holding
1 min read
Bypass Certificate Pinning on Android

Bypass Certificate Pinning on Android

Update: This blog post has gotten a lot more attention than anything else I have written, so I have also written up an advanced guide for more complex SSL pinning bypass techniques: https:

  • Jamie Holding
    Jamie Holding
2 min read
NodeJS Recursive mkdir with Promises

NodeJS Recursive mkdir with Promises

This is a simple example using Promises in a reduce call to execute mkdir commands in sequence. I'm using the util.promisify utility to automatically convert the standard fs functions into Promises. Because

  • Jamie Holding
    Jamie Holding
1 min read
nDreams - A Day in the Life of Me

nDreams - A Day in the Life of Me

I recently was asked to write a blog post about my job at nDreams, where I'm currently a Senior Programmer. I was asked to not go too deep into the nitty gritty and

  • Jamie Holding
    Jamie Holding
7 min read
Add Custom Map Templates to Unreal Engine 4

Add Custom Map Templates to Unreal Engine 4

Often on a project it's handy to have a "template level" which you can use to start building new maps from. Unreal already comes with a few template levels for you to pick

  • Jamie Holding
    Jamie Holding
2 min read
How To Download APK From Phone Using ADB

How To Download APK From Phone Using ADB

This was something I wanted to figure out recently, as I don't want to be relying on (dodgy?) third-party sites to grab APKs when researching. Here is how you fetch an APK off

  • Jamie Holding
    Jamie Holding
1 min read
Somnai: Immersive Theatre Security Vulnerability

Somnai: Immersive Theatre Security Vulnerability

Immersive Theatre Meets TechnologyI love immersive theatre and I work in VR Game Development. So when an immersive theatre production using VR arrived in London, I had to go check it out! Somnai

  • Jamie Holding
    Jamie Holding
8 min read
Featured in 100 Rising Stars of the UK Games Industry

Featured in 100 Rising Stars of the UK Games Industry

I'm a rising star! https://www.gamesindustry.biz/top100/2018/i-k (Mirror #1) I was asked a few questions via email, but somebody also appears to have spied on my Twitter and LinkedIn,

  • Jamie Holding
    Jamie Holding
1 min read
Hello World! Again!

Hello World! Again!

Previously I've been using Jekyll for my blog (see https://blog.jamie.holdings/2016/10/15/hello-jekyll/) - however I was finding the publishing and maintenance (oh what, the bundle dependencies have changed

  • Jamie Holding
    Jamie Holding
1 min read
California 2017

California 2017

Last December we went to Los Angeles for a few weeks to escape the freezing cold temperatures of the United Kingdom! We checked out the local sights, and popped into all the local

  • Jamie Holding
    Jamie Holding
2 min read
When Should I Ride Pirates of the Caribbean?

When Should I Ride Pirates of the Caribbean?

I have long had an obsession with data. Just the idea of having to collect vast amounts of data to plot a graph gets me jumping with excitment. Using data I can potentially

  • Jamie Holding
    Jamie Holding
6 min read
New York 2017

New York 2017

I recently went to New York for the week! I had the pleasure of experiencing the phenomenal Sleep No More and also VoidVR's GhostBusters VR experience. During our stay, we also experienced a

  • Jamie Holding
    Jamie Holding
2 min read
Jamie Holding © 2021
Latest Posts Twitter