// about

Self-taught, 20, and building in the open.

I'm Ahmad Zaim Aiman bin Ahmad Azam — Zaim for short. I model 3D environments in Blender and write the Lua systems that make them work. No bootcamp and no CS degree yet: I learned by building, breaking, and reading other people's code until it made sense.

Right now I'm deliberately widening my range. Lua is home, but I'm studying HTML, CSS, JavaScript and TypeScript by rebuilding examples in VS Code and shipping small projects — the same way I learned everything else. Long term, I want to be properly full-stack: web tools built alongside the 3D and game work.

Skills, honestly rated.

“Working knowledge” means I can build with it and still Google things daily — I'd rather label it accurately than oversell.

Scripting

Where I spend most of my time — making worlds respond to the player.

  • Luadaily driver
  • Game systems (checkpoints, shops, interactions)strong
  • Save systems & player dataworking knowledge
  • Game UI wiringworking knowledge
  • Debugging by reading errorsstrong

3D modeling

Making the environments and assets that go into a build.

  • Blenderdaily driver
  • Environment / level modelingstrong
  • Props & hard-surface modelsworking knowledge
  • Lighting & renderingworking knowledge
  • Real-time export & optimisationstrong

Currently learning

Studying other people's code, testing it in VS Code, then rebuilding my own version until it's mine.

  • HTML & CSSworking knowledge
  • JavaScriptworking knowledge
  • TypeScriptworking knowledge
  • Git & GitHub basicsworking knowledge
  • Pythonworking knowledge

Work habits

The parts that matter when you build something with other people.

  • Reading & adapting unfamiliar codedaily driver
  • Finishing what I startstrong
  • Taking feedback without egostrong
  • Collaborating on shared projectsworking knowledge
  • Bahasa Malaysia & Englishdaily driver

Workshops & training.

Where it started — structured introductions to programming and animation that turned curiosity into a direction.

Programming workshop

Bengkel Programming with Blockly

My first structured taste of programming: logic, loops and events built by snapping blocks together — before touching written code. It demystified how programs actually work.

BlocklyLogic & flowProblem solving

Animation workshop

Bengkel Animasi — “Animate Your Story”

Storytelling through animation — planning scenes, timing, and taking a short idea from storyboard to moving frames. This is where the visual side of my work started.

StoryboardingAnimation basicsStorytelling

The path so far.

  1. Workshops lit the fuse

    First steps

    A Blockly programming workshop and an animation workshop (“Animate Your Story”) were my first structured taste of building logic and telling stories on a screen. Everything since grew from those two rooms.

    BlocklyAnimation
  2. Curiosity, then obsession

    Start

    Started building worlds out of curiosity and never really stopped. Learned the basics by rebuilding things I liked from the games I played.

    Level building
  3. Scripts, not just scenery

    Getting serious

    Moved from placing objects to writing Lua — doors, checkpoints, shops, saving. Googling one error message fifty times a day, and slowly needing it less.

    LuaGame systems
  4. Maps in Blender, systems in Lua

    Now

    Currently modeling 3D environments in Blender and writing the scripts that make them playable. This combination — art plus logic in the same project — is what I enjoy most.

    BlenderLua
  5. Learning the web properly

    Next

    Studying HTML, CSS, JavaScript and TypeScript by reading code, testing it in VS Code, and rebuilding my own versions. Long-term: web tools that support the games I build.

    JavaScriptTypeScriptVS Code

Rules I build by.

Finish things

A finished small project beats an abandoned ambitious one. Publishing something teaches you more in a week than planning teaches you in a month.

Read code, then rewrite it

Studying other people's code is how I learn fastest — bring it into VS Code, test it, break it, then rebuild my own version until I actually understand it.

Art and logic together

The projects I'm proudest of had the map and the systems designed by the same person. Understanding both makes each one better.

Be honest about the gap

Lua is home. Web development is where I'm still learning. I'd rather show real progress than pretend to be further along than I am.

Uses

Tools and habits, as of today.

Scripting
Lua — systems, saving, UI logic
Modeling
Blender — environments, props, hard-surface models
Code
VS Code for reading, testing and editing code
Versioning
Git & GitHub — learning proper branching habits
Learning
Reading source code on GitHub, testing it, rewriting my own version
Community
Developer forums and Discord servers
Languages
Bahasa Malaysia (native), English (working)
Setup
Whatever runs Blender and my code editor smoothly

Work with me

Open to junior opportunities, freelance scripting and 3D modeling work.

  • Malaysia · GMT+8 · remote-friendly
  • Commissions, trials and junior roles
  • Bahasa Malaysia & English