Skip to content

Techniques & Technology

The clever tricks and deep system knowledge that made magic happen.

141
Articles
Showing all 141 entries

Active Time Battle

Time flows in combat

Active Time Battle added real-time urgency to turn-based combat through filling gauges, forcing faster decisions and creating tension that pure turn-based systems lacked.

AGI Engine

Sierra's Adventure Game Interpreter

Sierra's AGI engine powered early graphical adventures from King's Quest to Space Quest, defining the parser-based adventure game genre.

Analogue Control

Degrees of freedom

Analogue sticks replaced binary d-pads with pressure-sensitive input, enabling smooth 3D movement and camera control that became standard for console gaming.

Arbitrary Code Execution

Playing the game's memory

The most powerful speedrunning exploit - manipulating game memory through normal inputs to execute arbitrary code, enabling impossible shortcuts and instant wins.

Arpeggio

Chords from a single channel

Arpeggios rapidly cycled through notes of a chord, simulating polyphony on sound chips limited to single-note channels—a defining technique of chiptune music.

ASCII Art

Pictures from punctuation

ASCII art creates images using text characters, from simple emoticons to elaborate scenes that adorned BBS systems, demos, and NFO files.

Attract Mode

Arcade marketing display

Attract mode displayed automated gameplay demonstrations on idle arcade machines, enticing players to insert coins through flashy visuals, high score tables, and gameplay previews.

Attribute-Aware Design

Working with colour clash

Attribute-aware design on the ZX Spectrum embraced hardware limitations, using colour clash as aesthetic choice rather than fighting against it.

Audio Programming

Sound from code

Audio programming on vintage hardware demanded intimate knowledge of sound chips, precise timing, and clever techniques to achieve musical results.

Bank Switching

Expanding memory through hardware tricks

Bank switching allows systems with limited address space to access more memory by swapping different memory regions into the same address range.

Base Building

Construction strategy

Base building lets players construct and expand military installations, creating strategic depth through placement decisions, tech trees, and the tension between economy and defence.

BASIC Curricula

Teaching code in schools

BASIC curricula in schools introduced millions of students to programming concepts through hands-on coding on classroom computers.

BASIC V2 Reference

Complete command reference

Complete command reference for Commodore 64 BASIC V2

Battery Backup

Cartridge save memory

Battery backup used small batteries inside cartridges to maintain save RAM, enabling complex RPGs and adventure games to preserve player progress automatically.

Battery Save

Persistent progress

Battery-backed SRAM allowed cartridge games to save progress permanently, enabling longer adventures and collection games that passwords couldn't support.

Blast Processing

Marketing meets hardware

Blast Processing was Sega's marketing term for the Genesis/Mega Drive's faster processor speed, becoming both a console war weapon and a source of technical debate.

BOBs: Blitter Objects

Software sprites on the Amiga

BOBs used the Amiga's Blitter to draw sprites into the playfield—offering unlimited objects at the cost of CPU coordination and flicker-free rendering.

Branching Narrative

Your story, your choices

Branching narrative lets player decisions shape story outcomes, from minor dialogue variations to completely different endings, creating personalised experiences at massive development cost.

BSP Trees

3D rendering optimisation

Binary Space Partitioning trees enabled Doom's impossible 3D by pre-calculating visibility, determining which surfaces could see which others to eliminate overdraw.

Cel Shading

3D with cartoon style

Cel shading renders 3D graphics with flat colours and hard edges, mimicking hand-drawn animation and creating distinctive visual styles.

Character Graphics

Building worlds from 8×8 blocks

Character graphics used redefined text characters as game graphics, enabling colourful displays with minimal memory on systems designed primarily for text.

Client-Side Prediction

Making lag invisible

The networking technique pioneered in QuakeWorld (1996) that makes online games playable on high-latency connections by predicting movement locally before server confirmation.

Code Wheels

Analog DRM

The rotating cardboard discs used as copy protection in games like Monkey Island, requiring players to align symbols and read codes - creative but photocopiable.

Collision Detection

When objects meet

Collision detection determined when game objects touched, using techniques from simple bounding boxes to pixel-perfect checks, each trading accuracy for performance.

Colour Clash

The Spectrum's curse

Colour clash occurred when ZX Spectrum's attribute system forced entire 8×8 pixel blocks to share foreground and background colours, creating visual artifacts when sprites crossed block boundaries.

Copy Protection

The anti-piracy arms race

Copy protection evolved from simple disk tricks to elaborate physical manuals and hardware dongles, creating an ongoing battle between publishers and crackers.

Copylock

The protection standard

Rob Northen's disk protection system that became the industry standard on Amiga and Atari ST, using sophisticated techniques to detect original disks and resist cracking.

Crafting Systems

Making from materials

Crafting systems let players transform gathered resources into tools, weapons, and structures, creating gameplay loops that reward exploration and resource management.

Cycle Accuracy

Emulation perfection

Cycle-accurate emulation reproduces original hardware behaviour at the CPU cycle level, enabling perfect compatibility at the cost of performance.

Data Compression

Fitting more into less

Compression techniques allowed game developers to fit larger games into limited ROM and RAM by encoding data more efficiently, from simple RLE to sophisticated algorithms.

Destructible Terrain

Worms' secret weapon

The technique of modifying bitmap landscapes in real-time, famously used in Worms to create satisfying explosions that reshape the battlefield.

Dialogue Trees

Branching conversation

Dialogue trees structure interactive conversations as branching paths, letting players shape character relationships and story outcomes through accumulated choices.

Difficulty Design

Balancing challenge and accessibility

Difficulty design encompasses the techniques developers use to create appropriate challenge levels, from dynamic adjustment to accessibility options.

Digitised Sprites

Real actors, pixel form

Digitised sprites captured real actors and objects as pixel art, creating a realistic visual style that defined games like Mortal Kombat and Pit-Fighter.

Dirty Rectangles

Efficient screen updates

Dirty rectangle rendering optimised screen updates by tracking and redrawing only the areas that changed, saving CPU cycles when most of the display remained static.

Disk Fastloaders

Cutting load times on the Commodore 1541

Fastload cartridges and custom DOS routines slashed wait times, turning the C64’s pokey disk drive into an arcade-ready accessory.

Disk Protection

Copy prevention on floppy

Disk protection techniques prevented casual copying of floppy disks through intentional errors, non-standard formatting, and hardware tricks.

Dithering

More colours from fewer

Dithering created the illusion of additional colours by interleaving pixels of different shades, expanding limited palettes through optical mixing.

Double Buffering

Tear-free animation

Double buffering uses two screen areas—drawing to one while displaying the other—eliminating the visual tearing that occurs when updating the screen mid-display.

Double Buffering

Smooth, tear-free graphics

Double buffering drew to an off-screen buffer while displaying another, eliminating visual tearing and enabling smooth animation even on slow hardware.

Emulation Techniques

Software becoming hardware

Emulation techniques translate one computer architecture to another, preserving playable software when original hardware becomes scarce.

Enemy Design

Making meaningful opposition

Enemy design creates opponents that challenge, teach, and engage players through behaviour patterns, visual communication, and balanced difficulty.

Falling Block

Puzzle game foundation

Falling-block puzzles challenged players to manage descending pieces, creating a game format that Tetris defined and countless variations explored.

Fast Loaders

Beating the bottleneck

Fast loaders accelerated tape and disk loading on 8-bit computers, reducing frustrating wait times through optimised data transfer routines.

Fatalities

Finish them

Fatalities rewarded Mortal Kombat victories with gruesome finishing moves, creating controversy that led to game ratings while becoming the series' defining feature.

Filmation Engine

Isometric illusion

Ultimate Play the Game's Filmation engine created the isometric action-adventure genre, rendering 3D-like environments on 8-bit hardware through clever 2D techniques.

Filter Sweeps

Moving through the frequency spectrum

Filter sweeps create dynamic timbral changes by gradually adjusting filter cutoff frequency, a signature effect of the C64's SID chip.

First-Person Horror

Through terrified eyes

First-person horror leverages the perspective's intimacy to maximise vulnerability, using limited vision, spatial audio, and player embodiment to create inescapable dread.

Fixed-Point Maths

Smooth movement without floating point

Fixed-point arithmetic gives 8-bit systems sub-pixel precision for smooth movement, physics, and animation—all with fast integer operations.

FM Synthesis

Frequency modulation music

FM synthesis creates complex timbres by modulating one oscillator's frequency with another, powering the Yamaha sound chips in computers and consoles.

Fog of War

Strategic information hiding

Fog of war obscures unexplored areas and enemy movements in strategy games, forcing players to scout and making information as valuable as military might.

Force Feedback

Feel the game

The haptic technology that made controllers push back, letting players feel road surfaces, weapon recoil, and impacts through their hands.

Frame Animation

Sprite-based motion

Frame animation creates movement by displaying sequences of pre-drawn sprite images, with quality determined by frame count, timing, and artistic principles borrowed from traditional animation.

Full Motion Video

Live action in games

Full motion video brought filmed footage into games, promising Hollywood production values but often delivering awkward acting and limited interactivity during the CD-ROM era.

Game Design

The craft of creating play

Game design encompasses the rules, systems, and experiences that make games engaging, evolving from intuitive craft to studied discipline with established principles and vocabulary.

Ghost AI

Pac-Man's four personalities

The iconic AI system from Pac-Man where each ghost has distinct targeting behaviour, creating emergent gameplay through simple individual rules.

Hardware Scrolling

Smooth movement without moving data

Hardware scroll registers let the display shift smoothly pixel-by-pixel without copying memory—essential for fast, smooth side-scrolling games.

Havok

Physics middleware

Havok physics engine brought realistic rigid body dynamics to games, becoming the industry standard for physical simulation in the 2000s and beyond.

Hitboxes

Collision boundaries

Hitboxes define the invisible collision boundaries around game objects, determining when attacks connect, pickups are collected, and characters collide with the world.

How a Cassette Becomes a Game

From magnetic stripes to moving sprites

Cassettes were slow, cheap, and everywhere. Here’s how data marched from tape to RAM, one bit at a time.

Interrupt-Driven Music

Sound without blocking

Interrupt-driven music used timer interrupts to update sound chips at regular intervals, allowing music playback while the CPU handled game logic.

Isometric Projection

3D from 2D

Isometric projection created the illusion of three-dimensional space on 2D screens, enabling exploration games impossible with flat side-views.

KERNAL I/O Routines

The Commodore 64’s built-in service desk

The C64’s KERNAL ROM exposes a patchable API for keyboard, screen, tape, disk, and serial I/O—perfect for BASIC and assembly alike.

Lenslock

The hated prism

The physical copy protection device that required players to decode on-screen codes through a plastic prism - universally despised for inconvenience and failure-prone design.

Link Cable

Wired multiplayer

The Game Boy Link Cable enabled multiplayer gaming and data transfer between handhelds, becoming essential for Pokémon trading and competitive play.

Lookup Tables

Trading memory for speed

Lookup tables pre-calculated expensive operations like trigonometry and multiplication, storing results for instant retrieval on processors too slow for real-time maths.

Manual Protection

Look it up to play

Manual protection required players to consult physical documentation to play games, deterring piracy through information unavailable on copied disks.

Memory Banking

Exceeding address limits

Memory banking allowed systems to access more memory than their address buses could directly reach, swapping different banks of RAM or ROM into the same address range.

Memory Management

Making the most of limited RAM

Memory management techniques enabled complex games on hardware with kilobytes of RAM, from bank switching to compression to careful data structure design.

Memory Mapping

Addresses for everything

Memory-mapped I/O places hardware registers at specific addresses, allowing software to control graphics, sound, and input by reading and writing memory locations.

MOD Format

The tracker music revolution

The MOD format combined samples with pattern-based sequencing, becoming the standard for game music on the Amiga and beyond.

MOD Format Technical

Module file structure

The MOD file format stores sample data and pattern sequences in a self-contained file, enabling portable tracker music across platforms.

Mode 7

SNES rotation and scaling

Mode 7 was the SNES's signature graphical feature, enabling real-time rotation and scaling of background layers to create pseudo-3D effects in racing games and RPG world maps.

Model 2

Arcade 3D revolution

Sega's Model 2 arcade board delivered unprecedented texture-mapped 3D graphics, powering Daytona USA, Virtua Fighter 2, and other titles that defined mid-90s arcades.

Motion Capture

Recording reality

Motion capture recorded real human movement for game animation, enabling realistic character motion in sports games, fighting games, and cinematic action titles.

Object Pooling

Reuse, don't reallocate

Object pooling pre-allocates and reuses game objects instead of creating and destroying them, avoiding memory fragmentation and allocation overhead.

Open World Design

Freedom to explore

Open world design creates large, explorable spaces where players choose their own paths, balancing freedom with direction and content density.

Open World Design

Freedom to explore

Open world design creates expansive environments where players choose their own paths, pioneered by games like Elite and Grand Theft Auto III.

Palette Cycling

Animation without redraw

Palette cycling created animation effects by rotating colour values rather than redrawing graphics, enabling flowing water, glowing effects, and pulsing lights without CPU overhead.

Parallax Scrolling

Depth through motion

Parallax scrolling moved background layers at different speeds to create an illusion of depth, transforming flat 2D games into seemingly three-dimensional spaces.

Password Systems

Save without battery

Password systems encoded game progress into alphanumeric strings, allowing players to resume without expensive battery-backed save RAM in their cartridges.

Permadeath

Death means death

Permadeath removes the safety net of saving, making every decision consequential and every death meaningful by forcing players to restart from the beginning.

PETSCII Character Chart

Every character code the C64 knows about

PETSCII codes, screen codes, and control characters—the complete reference for displaying text and graphics on the Commodore 64.

Physics Engines

Simulating the real world

Physics engines simulate physical behaviour in games, from rigid body dynamics to fluid simulation, enabling realistic object interaction.

Pixel Art

Painting with squares

Pixel art places individual pixels deliberately to create images within severe resolution and colour constraints, a necessity become art form.

Point and Click

Mouse-driven adventure

Point-and-click interfaces replaced text parsers with mouse interaction, making adventure games accessible while spawning debates about verb systems, smart cursors, and puzzle design.

Portable Game Design

Constraints breed creativity

The design principles specific to handheld gaming: tiny screens, limited battery, short sessions, and instant accessibility that created some of gaming's most elegant designs.

Position-Independent Code

Code that runs anywhere

Code that executes correctly regardless of memory location, using PC-relative addressing rather than absolute addresses, pioneered on the 6809 and standard in modern systems.

Pre-Rendered Backgrounds

Static beauty

Pre-rendered backgrounds provided detailed 2D imagery behind 3D characters, allowing PlayStation-era games to display visual complexity impossible in real-time rendering.

PRINT vs POKE

Why games don't use PRINT statements

Performance comparison of PRINT and POKE for screen output—and why understanding the difference makes you a better C64 programmer.

Procedural Generation

Algorithmic content creation

Procedural generation created game content through algorithms rather than manual design, enabling vast worlds, endless replayability, and experiences that fit in kilobytes.

Pseudo-3D Road

OutRun's famous perspective

The technique of rendering 3D-like roads using scaled 2D lines and mathematical projection, famously used in OutRun and countless racing games of the 1980s and 1990s.

Pulse Width Modulation

Shaping square waves

Pulse width modulation varied the duty cycle of square waves, transforming simple bleeps into rich, evolving tones that defined the sound of chip music.

Ragdoll Physics

Dynamic death

Ragdoll physics simulated realistic body reactions to impacts, replacing canned death animations with dynamic, unpredictable, and often darkly comedic results.

Random Numbers

RND() internals and techniques

RND() internals, techniques, and patterns for game development

Raster Effects

Per-scanline graphics tricks

Raster effects change graphics parameters during screen drawing, creating colour bars, split screens, and effects beyond normal hardware limits.

Raster Interrupts

Precision timing with the video beam

Raster interrupts trigger code at exact screen positions, enabling split-screen effects, colour bars, and multiplexed sprites that defined 8-bit graphics.

Raster Tricks

Exploiting the electron beam

Raster tricks push hardware beyond specifications by precisely timed manipulation during screen display, achieving impossible-seeming effects.

Raster Tricks 101

Bending the beam on the Commodore 64

Raster timing turns the VIC-II into a multitool: split-screen status bars, colour gradients, sprite multiplexing, and more.

RenderWare

Cross-platform 3D middleware

Criterion's RenderWare provided cross-platform 3D graphics middleware that powered Grand Theft Auto, Burnout, and hundreds of other games.

Rhythm Matching

Play to the beat

Rhythm matching games judged player inputs against musical timing, creating a gameplay format that turned music appreciation into active participation.

Ring Buffer

Circular data, fixed memory

A fixed-size data structure that wraps around, enabling efficient FIFO queues without memory allocation—essential for audio, networking, and game mechanics like snake tails.

Rotoscoping

Animation from life

Rotoscoping traced real human movement frame by frame, creating fluid animation in games like Prince of Persia and Another World that felt remarkably lifelike.

Rumble Pak

Feel the game

Nintendo's Rumble Pak added haptic feedback to gaming, letting players feel impacts, explosions, and terrain through controller vibration that became an industry standard.

Run-Length Encoding

Simple compression

Run-length encoding compressed data by storing repeated values as count-value pairs, dramatically reducing storage for graphics with large uniform areas.

SCI Engine

Sierra's Creative Interpreter

Sierra's SCI engine succeeded AGI with higher resolution graphics, mouse support, and better audio, powering adventure games through the 1990s.

Screen Memory

How the C64 displays text and graphics

Screen RAM, colour RAM, and the VIC-II—understanding how 1000 bytes create 40×25 characters of colourful text.

Scrolling

Moving through game worlds

Scrolling techniques expanded game worlds beyond single screens, from smooth hardware-assisted movement to creative software solutions that defined platformers and shooters.

SCUMM

Script Creation Utility for Maniac Mansion

SCUMM powered LucasArts adventure games from Maniac Mansion through The Curse of Monkey Island, providing tools that let designers focus on puzzles and dialogue rather than low-level code.

Self-Modifying Code

Code that rewrites itself

Self-modifying code changed its own instructions at runtime, enabling impossible optimisations on 8-bit systems by treating code as data.

Sequence Breaking

Playing out of order

The speedrunning technique of completing game sections in unintended order, bypassing designed progression to reach the end faster.

Sinclair BASIC

The Spectrum's built-in language

Sinclair BASIC came built into the ZX Spectrum ROM, providing accessible programming that launched countless coding careers.

Size Coding

The art of compression

Size coding emerged from demo scene competitions with strict byte limits, pushing programmers to achieve impossible effects in 64KB, 4KB, or even 256 bytes.

Software Scrolling

When hardware won't help

On systems without scroll registers, software must move every byte of screen data—a CPU-intensive technique that defines the feel of ZX Spectrum games.

Sound Drivers

Audio engine software

Sound drivers were the software engines that controlled audio hardware, translating composer's music data into the bleeps, samples, and synthesised sounds that defined each platform's acoustic character.

Sprite Animation

Bringing pixels to life

Frame-by-frame sprite animation creates the illusion of movement by cycling through carefully designed images at controlled intervals.

Sprite Flicker

Exceeding hardware limits

Sprite flicker rapidly alternated which sprites displayed each frame, allowing games to show more objects than hardware supported at the cost of visible flickering.

Sprite Multiplexing

More sprites than hardware allows

By repositioning hardware sprites mid-frame as the raster beam passes, programmers displayed far more objects than the hardware officially supported.

Sprite Scaling

Pseudo-3D depth

Sprite scaling created the illusion of 3D depth by drawing sprites at different sizes based on distance, enabling racing games, shooters, and flight simulators on 2D hardware.

Sprites

Hardware-accelerated game objects

Sprites are hardware-supported graphical objects that move independently of the background, fundamental to 2D game graphics across platforms.

Stable Raster

Cycle-exact timing

The double-IRQ technique that achieves cycle-exact synchronisation with the VIC-II raster beam, enabling perfect mid-screen effects on the Commodore 64.

State Machines

Organising game logic cleanly

State machines bring order to complex game logic—managing title screens, gameplay, pauses, and game-overs through clear transitions and isolated behaviour.

Stealth Mechanics

Unseen and unheard

Stealth mechanics reward patience and planning over reflexes, using light, sound, and AI awareness systems to create tension through avoidance rather than confrontation.

Super FX Chip

Cartridge silicon

The Super FX chip embedded a RISC processor in SNES cartridges, enabling polygon graphics and establishing the concept of hardware-accelerated console gaming.

Tank Controls

Character-relative movement

Tank controls moved characters relative to their facing direction rather than the camera, solving fixed-camera consistency problems while creating the distinctive stiff movement of survival horror.

Texture Mapping

Images on polygons

Texture mapping wraps 2D images onto 3D surfaces, adding visual detail to polygonal models without the geometric complexity that would otherwise be required.

The Game Loop

The heartbeat of every game

Every game runs on the same fundamental pattern: read input, update state, render graphics, repeat. Understanding the game loop is the first step to building anything interactive.

The Quill

Adventure creation system

The Quill enabled non-programmers to create text adventures on the ZX Spectrum, spawning thousands of amateur and commercial adventures.

Tile Maps

Building worlds from blocks

Tile maps constructed game worlds from small reusable graphic blocks, enabling large levels within tight memory constraints while simplifying collision detection and level design.

Tile-Based Collision

Efficient collision detection for platformers

By checking which tiles a character overlaps rather than testing every object, tile collision provides fast, memory-efficient collision detection for platform games.

Tile-Based Graphics

Building worlds from small pieces

Tile-based graphics build screens from small reusable images, enabling memory-efficient game worlds on limited hardware.

Turn-Based Combat

Strategic pacing

Turn-based combat gives players time to think, transforming RPG battles into puzzles where party composition, ability selection, and resource management matter more than reflexes.

Unit Pathfinding

Navigation intelligence

Unit pathfinding algorithms determine how game units navigate terrain, with RTS games demanding solutions that scale to hundreds of units finding optimal routes simultaneously.

Variables and Memory

BASIC memory management

How variables work internally and memory management for BASIC programs

Vector Graphics

Lines of light

Vector graphics drew games using lines rather than pixels, creating distinctive glowing visuals in arcade classics like Asteroids, Tempest, and Star Wars before raster displays dominated.

VSync

Synchronising with the display

VSync synchronised game updates with the monitor's vertical refresh, preventing screen tearing and providing consistent timing for game logic.

Y-Depth Sorting

Sprite ordering by position

The technique of sorting sprites by their Y position to create correct depth ordering in top-down and isometric games, essential for beat 'em ups and action RPGs.

Z-Machine

The portable text adventure engine

Infocom's virtual machine that allowed text adventures to run identically on dozens of platforms, anticipating portable runtime concepts by decades.

Z80 Instruction Set Reference

Complete CPU instruction reference

Complete reference for Z80 assembly instructions with T-states, bytes, and flag effects.

ZX Spectrum Hardware Ports

Complete I/O port reference

Complete reference for Spectrum I/O ports - border, keyboard, speaker, and ULA control.

ZX Spectrum ROM Disassembly

Key ROM routines reference

Annotated reference for key ROM routines in the 16K Spectrum ROM.