Pick Pack Pup is a ludicrously charming match-3 puzzler with a twist (or two) that will surely become a fan-favorite of Playdate owners. Its path from prototype to Playdate, however, was an unconventional one.
During a lengthy chat with Game Developer earlier this year, co-creator Nicolas Magnier tells me how he became fascinated by the concept of Playdate after reading about the console in Edge a few years ago.
For the veteran dev, who's currently working as a senior game designer at Ubisoft Mainz, the prospect of a device full of constraints was a huge selling point. It reminded him of old-school Nintendo hardware, and he was particularly eager to try and squeeze every last drop of creative potential from the Playdate's 400 × 240 black-and-white display.
Making contact with Panic with a view to developing for the console, though, proved challenging.
As you can imagine, the high-profile reveal sent devs scrambling to join what, at the time, must have felt like the most exclusive club in the games industry. So, with Panic still in closed development and slowly drowning in a sea of emails, Magnier did the only thing his could -- he built his own Playdate and got to work.
If you build it, they will come
In a bid to mimic the Playdate's unique tech specs and start prototyping, Magnier cobbled together a DIY device (pictured below) using an NES controller, makeshift crank, a video convertor that allowed a tiny display to support greyscale outputs, and a computer that would deliver similar performance.
At this point, Magnier took a leap of faith. He showed his contraption to an engineer at Panic and asked for SDK access. Naturally, the company did the only thing it could for a person who'd built their own makeshift device years ahead of launch. It said yes.
So, it's 2019 and Magnier has SDK access, a (beautiful) Frankenstein's monster of a dev kit, and no idea when he'll get to grips with the actual console. All things considered, it's a pretty decent start.
"At this stage I said we should make a game. But without the hardware it was difficult to make decisions about what type of game we should make, because we don't know how stuff will run on the actual hardware or how the crank would feel," recalls Magnier. "So we decided to make a small game based on a title I made during a game jam in the past. It would be small puzzle game. A simple game. Something we could realistically deliver without knowing everything about the console."
With a clear goal in mind, Magnier and a small group of colleagues began prototyping. It was a hit-and-miss process at first, because the team had to learn how to convert something running on PC into a project that could run on a small black-and-white screen and still be fun.
Fortunately, the original version of Pick Pack Pup was running in Lua 2D and was quite close to what the Playdate SDK supported. Although Magnier says it wasn't quite "one-to-one," he claims it was very similar on a philosophical level.
"Although we had a big screen in color, we also had the specs for Playdate and knew we'd be designing for this tiny screen. It was obvious that we needed to make our match-3 icons a really specific size so they'd be readable. But by changing the size of the game, you also change the balance of the game. We had to find tricks to rebalance with a smaller screen base."
In a bid to reformat the title and make it work on a smaller scale, Magnier began changing the rules, taking the basic gameplay and adding new parameters such as time limits or an infinite mode. It required an intensive amount of iteration, but thankfully the Playdate SDK was up to the task.
"We were able to iterate a lot thanks to LUA and the Playdate SDK, because they use a simulator, similar to iOS, so that you don't need a console to run the game -- you can simulate it, so its super-fast to iterate. That was really important for us, especially using LUA. And you could choose C or LUA, but for us it was the latter, because while you might have more performance issues, it was so fast to iterate," continues Magnier.
"We were experimenting a lot and trying to find good sweet spots. In the end, we didn't have enough time to unearth a mode we felt was perfect, but we had a few modes that were working quite well. The final game ended up having multiple modes based on this stage of experimental production.
"Leaning on that philosophy of constant iteration, we also added a story mode later on and aimed to make every level different and unique. We realized it was easy to just hack stuff. LUA is a very loose language, so every level feels fresh because we could take the basic gameplay and tweak it on the fly. There are a lot of surprises, too -- even when you think you know what the game is, we've added some fun things we think will stand out."
You're an icon
As we chat about the specifics of development, our conversation returns to the Playdate's dazzling display. I ask Magnier how the team managed to leverage the screen on a technical level, specifically when it came to designing a variety of items for Pick Pack Pup, which asks players to sort everything from books and balls to fruit and electronics.
Magnier explains that when he finally went hands-on with the console, the thing that surprised him the most was how clear the display is. "The contrast on the screen is just really nice," he says, "and it's mostly because it just projects tonnes of light."
Although it's not backlit, the Playdate's peppy 1-bit display is described by Panic as "super reflective," and according to Magnier it lives up to that billing. "It's matte, but it's also so clear and neat," he continues. "I was really surprised by how much creativity and personality you can get out of the display. You would think that black-and-white displays are very limited, but actually there is so much freedom with how you can express visuals in different ways."
With Pick Pack Pup, specifically, Magnier says the team strove to make every interactive element super-readable. For instance, the title utilizes an animated cursor that constantly moves (the pointing hand, pictured above), drawing the eye of players to let them easily navigate each packed puzzle box. Every individual item was also designed to be quickly distinguishable, which meant incorporating a wide variety of shapes and patterns.
The team also implemented custom item lists, letting players choose to use an extra set of items that will display at higher contrasts. It's hoped that particular addition will help those with visual impairments get stuck in.
Keep it lean
If there's one lesson Magnier hopes others can take away from his own foray into Playdate development, it's to avoid the trap of over-engineering their project. He suggests budding Playdate creators should do their best to "optimize for creativity," which means striving to do the most you can with a very specific set of tools.
"Make your tools very thin and very simple. So for example, the entity system we had, when I developed the prototype on PC I implemented an entity system, because of course the game has to have an entity system. When we ran it on the Playdate, we realized it didn't run properly because the system wasn't adapted to the playdate -- and there's a structure around how you need to have your objects update and things like that.
"So, I scrapped that and just created my LUA objects directly in-code as we needed them. They were all custom made, basically, just for Pick Pack Up. That was really valuable, because firstly it was a faster process because you could quickly access all the elements you want, but it was also creatively freeing, because everything was looser and allowed us to adapt."
Magnier, who has a background in UI design, says he always considers programming to be a form of UI. He explained that as a game developer, you're the user and the programming is the interface. So when you create tools, you want them to be as minimal and accessible as possible -- similar to the efficient functionality of a pen and paper.
"Just focus on what you want as a user," he continues. "For example, we used tweening to create animations, and we basically just shoved in a few lines of code (below) to add a nice animation to our logo. And it's just stuff like that -- this idea of reducing friction so the actual act of creating is faster, you iterate faster, you prototype faster. It's just better for the game."