'Mario Maker 2' Creators Are Using Cryptography to Make Impossible Levels
> A strange competition has popped up to create levels with audacious passcodes that you could spend a lifetime trying to guess.
The role of posters in video game worldbuilding
> Symbolic of a larger universe, video game posters provide the gateway to a more expansive world.
Vulkan Progress Report #5
> Another month, another Vulkan progress report! October was a busy month, as most of it was split between working on the new Global Illumination system and Godotcon/GIC in Poland. Despite this, strong progress was made and the new GI system seems pretty much complete.
> Godot 3.0 introduced GIProbes. They provide Global Illumination to scenes. They were, however, pretty limited. Only static geometry could provide GI and dynamic objects were ignored. Added to this, changes in light settings had significant frames of delay. Added to a not so great performance and quality, the feature was barely usable as is.
> For Godot 4.0, GIProbes will see several significant changes, which will be outlined as follows:
Untitled Goose Game: how a video game that started as a joke went viral
> To get more insight into Untitled Goose Game’s meteoric rise, I called up Disseldorp to get the backstory on how the game came to be and why it’s struck such a nerve. Here’s the full story of how a workplace joke about a video game starring a bratty goose became a full-fledged, delightfully silly bestseller.
Factorio New pathfinding algorithm
> A simple choice for this function is simply the straight-line distance from the node to the goal position – this is what we have been using in Factorio since forever, and it’s what makes the algorithm initially go straight. It’s not the only choice, however – if the heuristic function knew about some of the obstacles, it could steer the algorithm around them, which would result in a faster search, since it wouldn’t have to explore extra nodes. Obviously, the smarter the heuristic, the more difficult it is to implement.
> The simple straight-line heuristic function is fine for pathfinding over relatively short distances. This was okay in past versions of Factorio – about the only long distance pathfinding was done by biters made angry by pollution, and that doesn’t happen very often, relatively speaking. These days, however, we have artillery. Artillery can easily shoot – and aggro – massive numbers of biters on the far end of a large lake, who will then all try to pathfind around the lake. The video below shows what it looks like when the simple A* algorithm we’ve been using until now tries to go around a lake.
Coffee is Hard
> Quest games started with a premise like “escape the wizard” or “escape the aliens” then forced you to do a series of banal and random tasks to avoid the many, many ways to die. Once you know the way, most of the games can be completed in under an hour. On the first go, it took my whole family weeks. Not the least of the horror was often having to do things several scenes before there’s any reason for having done them: in Space Quest I, the hero-janitor Roger has to refuse the first offer for his bike, so the guy will come back a little later and throw in a jetpack. Of course there’s no indication that he’ll come back with a jetpack, and no reason to think there’s a need for a jetpack until three days later when Roger exits his spaceship and floats into the void because he doesn’t have a jetpack. This leads to replaying most of the game a dozen times just looking for a jetpack, which is hidden not in a spaceship closet or a bar or a cavern, but behind a tough-but-not-too-tough bargaining strategy. It also took about ninety seconds to switch between screens, so exploration was grueling on a good day.
> After playing the first two, I realized I’d been programming for 17 years and could probably make my own, especially when all the art is 320 pixels wide and that’s about how many pixels I can work with before people give me a sideways look and ask if I really have a liberal arts degree. I decided to base the story loosely on my novel, for two reasons: first, if the game happens to get the kind of notoriety my novel has not, I might be able to boost sales by claiming the novel can serve as a hint book. Second, I spent nineteen years writing that stupid book, and this seemed like a good a way to manage the withdrawal symptoms. Three weeks later I’d built a rendering engine I’m quite proud of, a simple command and scene logic processor, and accidentally reinvented GIF compression.
What Remains Technical Breakdown
> What Remains is a narrative adventure game for the 8-bit NES video game console, and was released in March 2019 as a free ROM, playable in emulator. It was created by a small team, Iodine Dynamics, over the course of two years of on and off development. It’s currently in the hardware phase as a limited batch of cartridges are being created from all recycled parts.
> The game plays out over 6 stages, wherein the player walks around multiple scenes with 4-way scrolling maps, speaking to NPCs, collecting clues, learning about their world, playing mini-games, and solving simple puzzles. As the primary engineer on this project, I faced a lot of challenges in bringing the team’s vision to reality. Given the significant restrains of the NES hardware, making any game is difficult enough, let alone one with as much content as What Remains. Only by creating useful subsystems to hide and manage this complexity were we able to work as a team to complete the game.
> Herein is a technical breakdown of some of the pieces that make up our game’s engine, in the hopes that others find it useful or at least interesting to read about.
> Nearly all retro game systems generate colors in some variant of RGB encoding. But the raw pixel colors are often designed for very different screens than those that emulators typically run on. In this article, I’ll walk through the importance of color emulation, and provide some example code and screenshots.
The history of Tetris randomizers
> In Tetris, a randomizer is a function which returns a randomly chosen piece. Over the years, the rules of how pieces are chosen has evolved, affecting gameplay and actual randomness.
> Several of them have been reversed engineered and documented. I’ve curated a list of ones that I believed to be important and show how the state of Tetris has changed over the years.
Spacewar - Fanatic Life and Symbolic Death Among the Computer Bums
> 7 December 1972
An account of the first computer game tournament.
> The trend owes its health to an odd array of influences: The youthful fervor and firm dis-Establishmentarianism of the freaks who design computer science; an astonishingly enlightened research program from the very top of the Defense Department; an unexpected market-Banking movement by the manufacturers of small calculating machines, and an irrepressible midnight phenomenon known as Spacewar.
> Reliably, at any nighttime moment (i.e. non-business hours) in North America hundreds of computer technicians are effectively out of their bodies, locked in life-or-death space combat computer-projected onto cathode ray tube display screens, for hours at a time, ruining their eyes, numbing their fingers in frenzied mashing of control buttons, joyously slaying their friend and wasting their employers’ valuable computer time. Something basic is going on.
Plus the beginnings of Xerox PARC.
> “You get just a few more agates in that group and you’ll have all the marbles.”
> The chief marble collector is - well, well - Bob Taylor. When he left the newly restricted ARPA he spent a year at Utah decompressing from the Pentagon and then went to Xerox and there continued his practice of finding and rewarding good men for doing pretty much whatever they considered important work. Freedom to explore in the company of talent is an irresistible lure. In two years Xerox had twenty of the best men around working. Toward what? Well, whatever.
A followup from 2016: https://www.rollingstone.com/culture/culture-news/stewart-brand-recalls-first-spacewar-video-game-tournament-187669/
The 18-month fence hop, the six-day chair, and why video games are so hard to make
> Whether or not a player notices, appreciates, or is able to see these details, everything from a pen on a desk to a chair in a room has to be meticulously made, scrutinized, and tested. But at what cost? How does a developer decide how much time to allocate to set dressing a small room versus a game’s main character? How many polygons should an asset in the corner of a players eye get versus something directly in their face?
Banding in Games: A Noisy Rant
> If you use sRGB correctly, you’re doing pretty well - you will generally hardly notice banding (though dark areas remain)
> If you are not on a platform where it’s readily available, or you want to get rid of the last issues, the rest of this presentation is for you
Dithering. Lots of dithering.
The AI of GoldenEye 007
> GoldenEye 007: one of the most influential games of all time. A title that defined a generation of console gaming and paved the way forward for first-person shooters in the console market. In this article I’m winding the clock back over 20 years to learn the secrets of how one of the Nintendo 64’s most beloved titles built friendly and enemy AI that is still held in high regard today.
Zelda Screen Transitions are Undefined Behaviour
> The vertical scrolling effect in the original “The Legend of Zelda” relies on manipulating the NES graphics hardware in a manor likely that was unintended by its designers.
Adventures In Interactivity
> That book was Creating Adventure Games on Your Computer by Tim Hartnell. The book taught me how to make rudimentary text adventure games on my Apple ][ as a kid and prompted a recent adventure of revisiting the classic text adventures of the past. So grab a torch and get your map making tools ready because today’s Tedium is an exploration of text adventures through the years. Try not to get eaten by a grue along the way.
Games and Graphics in Popup URL bars
> When I animated the URL bar with emojis I mentioned that I’d like to take it to the next level by putting a teeny game inside the URL bar. Well... Some really fine folks beat me to that. But I still wanted to give it a go ! I just needed to come up with something FRESH to work into it...
> So while thinking about how I could expand beyond the 1-dimensional movement of a URL bar, it came to me... Popups ! Yes, the bane of early 2000s internet will help me in 2019 achieve my emoji-url-bar-gaming dreams. By just opening a series of popups and overlapping them in a column we create a 2-dimensional display of sorts:
Down Goes ‘Jeopardy!’ James!
> In Jeopardy James’s case, the dominance was pretty fascinating. Holzhauer was a disruptive force who had turned the game upside down with all-in, aggressive tactics. The quants were losing their minds. There was genuine rumination over whether or not Holzhauer “broke” the game. Would Holzhauer actually be defeated—or would he have to be dragged off the set by “Jeopardy!” producers?
Quake II gets free real-time raytracing updates on June 6
> Windows and Linux users will be able to download the first three levels of the graphically updated game as shareware starting at 6am Pacific Time on June 6. You can play the remaining levels and multiplayer if you point the installer to a legit copy of the full game on your hard drive. The source code for the Vulkan-based update will be posted on Github as well, though Quake II expansion packs will not be supported without extra effort from the community.
Playing with model trains and calling it graph theory
> You’ve probably played with model trains, for instance with something like the Brio set shown below.1 And if you’ve built a layout with a model train set, you may well have wondered: is it possible for my train to use all the parts of my track?
> Sandspiel is a falling sand game I built in late 2018. I really enjoyed writing this game, and wanted to put into writing some of my goals, design decisions, and learnings from that process.