Good day. Today I’d like to talk about what I’ve been up to lately. After all, this website is technically a blog, haha.
It’s been… how low long now since I’ve started this blog? 2 months? I have to admit, there hasn’t been a whole lot of activity since then, and to be honest, there’s been a few reasons for that. I’ll list them below:
- I don’t really have much knowledge to share (Or the things I want to talk about have better resources out there already)
- I’ve been occupied with other things that have caught my attention recently
Let’s talk about the first reason. Quite frankly, I don’t like doing useless things. There’s no need to reinvent the wheel and keep regurgitating things that people have done before you, and better than you. It’s just a waste of time.
I don’t do things just for the sake of it. I do things because I see value in it. I’m not the kind of person who enjoys exploring new technologies and tech stacks just for the heck of it. To me, that screams overly passionate. But then again, I suppose that’s a good thing for some people. After all, who doesn’t like someone with passion? It’s like getting a value pack from the store, or a “2 for the price of 1”.
A boring person like myself could never hope to compete with such passionate individuals in the job market.
Well, I’ve gotten a bit off track there. what it all boils down to is that I just don’t have much to share. Actually, speaking of which, Something that comes to mind is how some people (devs) have have these bios that sound super passionate about their work and/or a certain technology, and it baffles me.
I mean, it’s respectable and I can see why they’d be attractive for employers, but I just can’t relate.to that kind of mindset. It just feels alien to me. Because to me, it feels like getting excited about the hammer and nails you’re using to build things, or maybe saying that you love being a cog in the machine… Hmm, that last one actually doesn’t sound all that bad.
Well, it looks like I’ve gotten off topic again. But I guess it’s fine. This isn’t a formal guide post or tutorial after all, so I will allow myself to ramble a bit.
It’s okay, me. You are forgiven.
Now, onto the second thing I wanted to talk about.
Game Modding

This is related to the second reason I listed above. I’ve recently been dabbling in a bit of game modding. I’m a bit of a gamer, you see. Well, not a hardcore one or anything. Just a casual one. A filthy casual gacha gamer, I am ashamed to admit.
Anywho, the game in question is built on Unreal Engine 4, And a couple of guys in the modding community have put together a simple guide and tools for modding the game, So I figured I’d have a crack at it and see what I could do.
And that quickly led into a crash course into 3D modelling, weight painting, rigging, texture mapping, UV mapping, colour channels, UE4 materials, and more.
Here’s a basic rundown of the terms based on my understanding:
- 3D Modelling
- The process of creating a 3D model. They are usually composed of the mesh, textures, and armature (skeleton)
 
- Rigging
- The process of creating a skeleton for the 3D model so that it can be moved and animated
 
- Weight painting
- The process of setting and adjusting how much each part of the model will deform and move to follow the skeleton movements. A higher weight will deform more to follow the skeleton, while a lower weight will not be affected by the skeleton movements much.
 
- Texture Mapping
- The process of applying a texture to the 3D model. Think of it as colouring and adding detail to the model.
 
- UV Mapping
- The process of “projecting a 3D” object onto a 2D image (texture map). Think of it as cutting apart a 3D object’s faces and laying them down on a flat surface. Whatever area of the 2d image that the faces end up covering will be what appears on that face on the 3D model. This is probably something best described with a diagram.
 
- Colour channels
- The layers of colour which combine to form the final image. You’ve likely heard of the RGB model, which is composed of the red, blue, and green colour channels. When channels viewed separately, they are only greyscale images. This is a term that I’ve included here because the game I’ve been looking at stores roughness map, light map mask, and specular map onto it’s own colour channel in a single image. I’m not sure if that’s the standard in game development, but I’ve needed to split the image into it’s colour channels to properly edit the maps to fit the new model I was modding.
 
- Material (UE4)
- There’s an description in the official UE4 documentation about what a material is1, but personally, I think of them as an object which has a bunch functions and properties that controls how a mesh looks and appears in-game.
 
So these days, I’ve been tinkering around with modding certain character models into the game and it’s actually quite difficult. Generally, I’m trying to align the new model with the old model to make it easy to transfer weights and keep it moving as it normally would. There’s a few reason I’m transferring weights rather than doing it from scratch:
- I’m totally inexperienced with any kind of 3D modelling, rigging, and weight painting.
- I actually cannot see the skeleton of the existing model, well, not very well anyway, so it’s difficult to align or modify the skeleton to fit the new model I’m trying to mod into the game. While the bones do exist when I extract the model from the game, the orientations are all over the place when imported into Blender2, so it’s difficult to locate the right bones and move them. From the discussions I’ve seen so far, there’s no easy solution for this problem.
As of right now, I’m actually still struggling with it. I’m currently looking at ways to possibly get an intact skeleton into Blender so I can adjust the skeleton more easily to fit the new model, but I’m not sure if it’s possible. Will probably need to look into it a bit more…
At any rate, what I’ve found is that game modding is a combination of reverse engineering and game dev. You need reverse engineering knowledge to access and extract data from the game, especially if there’s encryption involved. And on top of that, you need the game dev knowledge or 3D modelling knowledge to be able to make the modifications and adjustments you want to the game.
All in all, it’s been interesting tinkering around with the stuff.
Other News
In other news, I’ve been recovering from a neck injury I got around New Year’s that left me bedridden for about a week and unable to sleep because of the constant pain even when lying down.
It’s better now, but my sleep schedule has been twisted a lot from it.
I’ve also been considering starting on a new personal project soon. Considering something using C# & ASP.NET or maybe something related to machine learning and sentiment analysis. Well, it’s a bit early for the specifics, but the reasons for considering C# is only because there seem to be a lot of jobs which require it, while sentiment analysis is something that’s related to a personal curiosity of mine. It’s a bit embarrassing to talk about so I’ll just leave it at that, lest I expose my naivete and ignorance, haha!
- See the documentation for UE4 materials here: https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/Materials/ ↩︎
- Blender: A commonly used free and open source 3D modelling software ↩︎