Skip to main content


Skyrim small tables are actually shelves buried. If you can't see it ...
(Recreating my list of #gamedev tricks thread)
A table in video game Skyrim.
The table in Skyrim seem from below the ground, it's actually a shelve but buried to look like a table.
In Jak and Daxter if by any chance the Area/assets ahead aren't fully loaded the game will make you trip to give it more time to fully load. #gamedev
In Super Mario 64 to achieve the infinite stairs effect, Mario gets teleported back. Also the reason why Speedrunners can glitch and skip it using the backwards jump trick. #gamedev
There was a memory exception in Wing Commander on exit, because of the deadline they left it but change the error message to "Thank you for playing Wing Commander!" #gamedev
This #gamedev trick is from Undertale, to prevent NPCs to walk on pits, Magic glass.
Undertale image of NPC walking on top of magic transparent glass tiles.
In Fallout 3 the Trains are actually a character wearing a train model as a hat. Engine didn't allow for vehicles, so this way they could reuse NPC movement code. #gamedev
In Super Mario Bros. because of memory limitations clouds and bushes are the same sprite but using a different tint color. #GameDev
In Kirby's Dream Land for GameBoy, to save memory some enemies have the same "back" part of the sprite and only change the face. #GameDev
Kirby Dreamland enemy sprites split into 2 halves, showing that developers reused the back part for enemies just making the front different.
Here's one of my fav, in Zelda: A Link Between Worlds because a true top-down view in 3D would have perspective issues, they purposely tilt the objects, so the perspective looks good to the player from top. #GameDev
Duke Nukem 3D mirrors reflection were achieved by duplicating the room on the other side. If you deactivate clipping you can go to the other side. True reflections are computational intensive even today #GameDev
In NBA Jam: T.E. for Genesis/Mega Drive developers only found out after making the 250k cartridges, that there was a save bug. But playing the game in a certain order fixed it, so it got a day one "patch" in the manual saying how to initialize memory. #GameDev
BATTERY BACKUP PROBLEMS

When playing NBA Jam TE, if your battery does not save, you must initialize it. First, play a full game using the initials XXX. Then, play another full game using the initials NBA. Do not delete either of these players, and your battery should save.
In Super Mario Galaxy when Mario drowns in a swap his hand reaches out, but because of the size of the head devs had to shrink it so only the hand is visible to the player #GameDev
World of Warcraft rest bonus was made to encourage breaks, half XP gained after a few hours. Players hated, so they made everything take 2x as much XP to achieve but you start at 200% XP and gradually back to 100%. Same thing & players are happy. #GameDev
In World of Warcraft what they did when they first designed the game was they had an experience system that would, over time, lower the amount of experience you got because [Blizzard] wanted to encourage people to play for like two hours at a time instead of twelve hours at a time. So the longer you played you’d get this experience degradation and then it would bottom out and at that point it would be a fixed rate of experience. And people just hated it. And so they went back and [Blizzard’s Rob Pardo] was like allright, basically what we did was we made everything in the game take twice as much experience to achieve as before and then we flipped it. So actually what happens is you start getting 200% experience and eventually it goes back down to 100%. So that effectively now how they spin it is that if you log out for a while you get this 200% boost when you log back in! And then over time it goes away and you just get regular 100% experience. It’s EXACTLY the same as it was before, except NOW everyone is like “Fuck yeah, Blizzard, this is exactly what I want!”
In Resident Evil 4 during the radio chat cutscenes it's actually a 2D panel with the 3D models behind. Many other games do this too.#GameDev
In Duck Hunt the NES Zapper worked by blacking out screen & drawing white blocks around targets when you fire, for a couple frames. The diode in the Zapper detects the change in light intensity and tells the computer if it’s pointed at a lit target. #gamedev #retrogaming
In Metal Gear Solid 1, another reflection trick. Water puddles are just a transparent texture with the geometry of ceiling and walls duplicated and inverted below the ground. That's why we can't see Snake reflection in puddles. #gamedev
In Prince of Persia (1989) animations looked fluid & realistic because @jmechner used Rotoscope. He filmed his brother doing the stunts, took pictures with a camera, had them developed at Fotomat and then traced them, frame by frame. #gamedev
Sega Saturn used Quads instead of triangles (the industry norm) for rendering, which is good for 2D but not as practical for 3D, devs had to work around that, so games like Tomb Raider had to be built to support quads on Saturn and triangles on PlayStation #gamedev
Paper Mario uses a transparent mesh to simulate door shadows instead of relying on heavy shadow calculations. #gamedev
In Dead Space menus and UI is all made with particle systems so it can sort during render, glow so that they could place it in-game and be more immersive. #gamedev
Katamari Damacy only has support for closed circular paths, so to handle spawn and despawn of falling boulders, they make them travel beneath ground to start point! Also memory efficient. #gamedev https://twitter.com/JasperRLZ/status/1289960052250435584
This is easily one of the best, on OG Xbox, Elder Scrolls III would occasionally reboot the Xbox if they ran out of memory. The user would just see a longer then usual loading screen. #gamedev
Lord of the Rings game needed large areas with a sort of goal at the end, so developers grabbed the Tiger Woods golf game and turned it into LOTR game. #gamedev
Journey has no automatic shadows. All shadows were painted by hand in a low res texture. To get the iconic sunset columns to cast sharp shadows, they aligned the pixel grid of the texture (3rd picture). #gamedev source: https://twitter.com/matt_nava/status/1503152810078052355/
Journey game sunset Journey low res shadow texture
Journey low res shadow texture
Kirby and the Forgotten Land might fake hit collisions in certain angles for better game feel, as long as in camera it "looks" like it hits. #gamedev
Skyrim handles NPCs inventories by hiding chests under the map. Most are impossible to get unless clipping is used, but sometimes you can find them. #gamedev
Skyrim has no small number of NPCs, each with their own dialogue trees and animations and pathing. Managing their behaviors themselves is nothing short of a gargantuan task, not to mention tracking inventories and player interactions. One way developers eased the burden on NPC tracking? Hidden chests.

Nearly every NPC in the game has a hidden chest under the map that stores their inventory for them. This helps ease the system's burden in tracking inventories, leaving instead to the chest asset to hold. Some of these chests are impossible to get to, but a fair number of them aren't hidden too deeply. With some clipping (of course) through floors, players can actually loot these NPC chests rather than trade. Anything to save a bit of gold, eh?
Skyrim screenshot with a hidden chest.
Metroid Prime full screen static effect texture would require too much memory and GameCube only had 24MB. solution?
texture is generated using the current RAM data which is the game running itself, and it looks like noise. #gamedev
In this clip as Samus approaches the Pulse Bombu, the screen fills with static to show interference with her visor. As we worked on this a big issue is the memory use of the noise texture. The Gamecube only has 24MB of RAM, so every texture has to be carefully considered.
If we used a low resolution texture (64x64) to save memory the “static” would be blurry and not crisp. One engineer on the team came up with a great idea: what if we just use the memory holding the Metroid Prime code itself! We quickly tried it out and it looked amazing.