CaddieOpen in CaddieDownload for Mac

I just changed my entire game (Developing 13)

Shared by Caddie Library · Updated
Game Maker's Toolkit15:24Open on YouTube
Chapters show their main points

The bottom line

Mind Over Magnet is on track for Steam Next Fest because its maker chose real solutions over compromises and set a fixed weekly work routine. That keeps the game on course for a June showcase and a release in July or August.

Key takeaways

  • Next Fest is a big marketing moment, so the game has to be finished soon after it. 0:35
    • Balatro built huge hype at the February Next Fest and launched a couple of weeks later.
    • Pepper Grinder launches about one month after its Next Fest, so a June showcase points to a July or August release.
  • Big pixel art cannot scale cleanly to 1080p, the most common PC screen. 1:51
    • 1080p is 1.5 times 720p, and there is no half a pixel, so only 720p, 1440p and 4K scale by whole numbers.
    • Letting Unity round pixels looks squiffy, anti-aliasing looks blurry, and borders make everything small.
  • Remaking all the art as 4K-ready vector graphics fixed the problem for good. 4:08
    • Every sprite was tripled in size and redrawn with Photoshop's pen and shape tools, and the backgrounds stayed pixel art with a blur filter.
    • Hunting for a compromise probably took longer than remaking the assets.
  • A trailer built from unfinished content can still win wishlists. 7:12
    • Unplaytested levels, half-finished backgrounds and partial mechanics were enough to show what the game is about.
    • Put together in one day, it helped push the game past 30,000 wishlists before Next Fest began.
  • A fixed weekly routine of making, fixing and playtesting gets the game done. 11:53
    • Tuesday to Thursday is new content, Friday is bug fixing and a new build for at most three playtesters, and Monday is reviewing their footage.
    • Fewer testers means less repeated footage, and a Friday build means testers play over the weekend.

Sometimes it's just better to bite the bullet, knuckle down, and do the hard work to make an actual real solution that's going to work properly.

Mark Brown, Game Maker's Toolkit

Chapter summaries

0:00 A Next Fest deadline appears

A new submission button in Steam set a June deadline for three jobs.

  • Next Fest in June meant a trailer, a demo and one big fix. 0:24
    • Next Fest is Valve's online convention where developers share demos.
    • The button appeared in the Steam Developer Dashboard after the Christmas break.
    • The dashboard can't be shown because of NDAs.
    • The fix was one annoying problem that had bugged him for months.

1:17 Why the pixel art broke

1080p is the only screen needing half pixels
720p1 x
1080p1.5 x
1440p2 x
4K3 x
Pixel art only stays crisp at whole-number multiples, and the most popular screen sits between them.

Big pixel art only scales by whole numbers, and every workaround was a compromise.

  • Big sprites fill a room of 1280 by 720 pixels. 1:17
    • Magnus is far bigger than Mario or Madeline.
    • Pixels are exact at 720p, doubled at 1440p and tripled at 4K.
    • Valve's surveys make 1080p the most common PC resolution.
    • Unity's rounding hurts most on angles and curved surfaces.
  • Every fix he tried was the least bad compromise. 3:02
    • A menu setting for pixel perfect mode added borders.
    • Code added anti-aliasing only when pixels couldn't scale by a round number.
    • He wondered if players would notice the ugly pixels at all.
    • The fourth option was to replace all the graphics. He called it mad.

4:08 Remaking the art

Every workaround traded one flaw for another
Unity roundingAnti-aliasingBorders
LookSquiffy anglesBlurry edgesSmall, zoomed out
At 1080pDistortedSoftShrunk
EffortFreeCustom codeMenu setting
Searching for a compromise probably took longer than redrawing every sprite as 4K-ready vectors.

The remake went faster than expected and left the game looking better.

  • Simple, chunky shapes made the remake quick. 4:21
    • Every button, door, decoration, magnet and UI element was redone.
    • No extra detail was added, so it stays readable on a Steam Deck.
    • The old pixel art was already made of simple shapes and basic colours.
    • Magnus has more charm, and the game no longer looks like a generic pixel art indie.
  • The lessons are to plan ahead and skip the workaround. 5:43
    • Sprites were made long before the camera system, in the hope they'd fit.
    • Unity's pixel perfect camera button was no cure.
    • He called assuming it would work dumb and naive.
    • Next time he'll skip straight to the real solution.

6:39 A trailer from unfinished content

With only World 1 finished, the trailer had to borrow from work in progress.

  • World 1 alone would show one look for two minutes. 6:47
    • The trailer was put off because the game isn't done.
    • The footage would be the same turquoise sewer over and over.
    • He used fake it until you make it, by actually making the content.
    • Some levels still use the blueprint development background.
    • The content may not reach the final game but shows what it's like.

7:45 Cutting the trailer

A trailer built from rough footage can pass for a finished game if it is recorded, scored and ordered with care.

  • Recording in 4K leaves room to crop 8:15
    • The trailer is 1080p, so close-ups need no zoom.
    • Sound effects stay on, music off.
    • Viewers congratulated him on finishing the game. His reply: It's not actually done. It's all fake!
    • In Premiere he cut only the best clips: animations, mechanics and narrative beats.
  • Music stems let the cuts land on the drums 8:59
    • A stock track downloads with separate melody, bass and drum stems.
    • A composer is now hired but not ready to start, so the stock track is a stand-in.
    • The call for composers on the Google form is closed.
  • The trailer builds from simple to rich 9:30
    • Magnet beams lifting blocks, then a slow intro to Magnus, then his mechanic, then a fast montage.
    • The montage shows later magnets, mechanics and worlds.
    • It ends on a call to wishlist. He admits he is simply not Derek Lieu.

10:30 Deciding what goes in the demo

A demo has to represent the whole game, so more of it must be made.

  • World 1 alone would misrepresent the game 10:38
    • He may add world 2, or half of it.
    • Nothing is settled yet.
    • So he needs to start building that content now.

11:32 The weekly production pipeline

A weekly loop turns playtests into steady polish
Handing off builds on Friday avoids idle waiting midweek, and the levels in the game longest get the most polish.

The weekly cycle, modelled on Valve's Portal playtesting, is steadily polishing the game.

  • Friday builds avoid idle waiting 13:30
    • Midweek builds stalled work until footage came back.
    • Friday testing means people play over the weekend.
    • Friday bug fixing pulls a few items from the Trello list.
  • Repeated playtesting polishes older content 13:57
    • New content starts rough, then gets tested quickly.
    • Early levels have had many small tweaks and fixes.
    • Monday notes cover bugs, polish gaps and levels that are too easy, too hard or exploitable.

In the growth library

Mark Brown, creator of Game Maker's Toolkit and solo developer of Mind Over Magnet. Shows how a solo developer fixed a pixel art scaling problem by remaking every sprite, then built a trailer from unfinished content and a weekly build and playtest rhythm ahead of Steam Next Fest. The worth-watching example is Mind Over Magnet's full art remake after months of failed compromises.

More from Game Maker's Toolkit · The whole library, and ask it anything

Transcript192 lines
0:00

Hi, my name's Mark and I am making a video game called Mind Over Magnet, a delightful puzzle platformer about, you guessed it, magnets. Now, when I returned to game development after my Christmas break, I noticed a very interesting button in my Steam Developer Dashboard thingy that I can't show you due to NDAs. Basically a button to submit the game to the next Next Fest. This is Valve's online games convention where developers can share demos of their upcoming games and it's proven to be a pretty powerful marketing technique.

0:40

I mean, look what happened to the very addictive poker-based roguelike game Balatro in the last one in February. So I knew I had to submit Mind Over Magnet to the next Next Fest happening in June. I just needed to create a trailer, make a demo, and fix one very annoying thing about my game that's been bugging me for months now. Let me explain. ♫ Music ♫ Okay, so my game is pixel art, right? But the sprites are pretty big.

1:23

I mean, compare Magnus to Mario, or Madeline. This means that a typical room might fill up 1280 by 720 pixels. So if you're playing on a really old 720p monitor, great. Pixel perfect. And if you're playing on a nice 1440p monitor like I do, cool. We can just double all of the pixels. And if you're playing on a really nice 4K TV, then I can just triple all of the pixels. But what about 1080p, the most commonly used PC screen resolution according to Valve's surveys?

2:00

Well, that's a bit tricky because that's 1.5 times bigger than 720p. And, well, there's no such thing as half a pixel. Now there's a few different solutions to get around this problem. One is to just let Unity figure it out. Like add an extra pixel here and remove an extra pixel there to make all of those half pixels fit onto a full pixel grid. But as it sounds, that's not perfect. And things can look really squiffy and ugly, especially when it comes to angles and curved surfaces.

2:38

Another solution is to use anti-aliasing to feather all of the edges. But now everything looks blurry and it's no longer that crisp, retro-looking pixel art. And solution three, or C, forgot what we're doing, is to keep the pixels as they are but have a stonking great border around the screen. And now everything is small and zoomed out. Now I tried all of these solutions. I put in a setting in the menu for pixel perfect mode that would add borders around the screen.

3:11

I coded up a system so it would systematically only add anti-aliasing if the pixels couldn't be multiplied by a nice round number. And at times I wondered if maybe players just wouldn't notice the ugly, squiffy pixels and it was just a me thing? But ultimately it felt like I was trying to find the least worst compromise. And I spent a long time going back and forth between these things, trying to find one of these three solutions that would kinda, almost, sort of work for the game.

3:45

Now of course there is a fourth solution but I don't even want to think about that. And I mean it would work but I don't even want to say it. Okay fine, I'll say it. I could get rid of all the pixel art and replace all of the graphics in the game with brand new 4K ready artwork. But that... but that would be mad, wouldn't it? So I replaced all of the pixel art in the game with brand new 4K ready artwork. I took every sprite, tripled it in size, and then remade it using Photoshop's vector tools like the pen tool and the shapes.

4:21

That's every button, every door, every decorative object, every magnet, every UI element. And you know what? It didn't actually take as long as I thought it would. I mean my pixel art is already pretty chunky and made up of simple shapes with basic colours. I also chose not to use this newfound pixel real estate to add in extra details because I wanted things to still be super readable when crunched down to a smaller display like the Steam Deck.

4:50

And I also chose not to remake the background art. Instead I kept that as pixel art and just threw on a depth of field filter to blur it out. But no one needs to know about that, right? That can be our little secret. And after all of that work I'm actually really happy with how the game looks now. Magnus has way more charm and character. The game no longer looks like yet another generic pixel art indie game. And the game just works.

5:19

You can put it on a 4K TV or a 1080p monitor or the small screen of a Steam Deck and it just works. It just works. And the funny thing is, in the end I probably spent more time trying to find a good compromise than I spent just remaking the art assets. And so I've learnt a really good lesson from this. Well, two lessons. One is just plan ahead. I made the sprites long, long, long before I made the final camera system and just kind of hoped that they would work together.

5:55

They didn't. I mean, there's this button in Unity for a pixel perfect camera and I kind of just assumed I could turn that on and things would be perfect, which is dumb and naive. That is not how it works but I know that now. But the other lesson is sometimes it feels like a good idea to try and find a compromise or a loophole or a workaround but that's kind of the lazy way out. And sometimes it's just better to bite the bullet, knuckle down, and do the hard work to make an actual real solution that's going to work properly.

6:31

So in the future I'm gonna save myself some time by just skipping ahead to doing the real solution. Okay, so with that kind of a nightmare out of the way it was time to move on to the next thing - making a trailer. Now this is something I've put off for a long time simply because my game just isn't done yet so there's not a lot of stuff to show in the trailer. I mean I finished World 1 but if I just show that then the whole trailer is gonna be the same footage of the same turquoise-y sewer system over and over again for two minutes.

7:08

Not a good depiction of what my game is really about. So I decided to use the ancient art of "fake it until you make it". Quite literally make it in this case. Because I've got a load of stuff that isn't quite done yet like these levels that haven't been playtested and are currently using the blueprint background design I use for development. I've got some half-finished backgrounds and some different mechanics that aren't implemented fully yet.

7:36

If I throw all that stuff together I can make some content that isn't 100% going to be in the final game but is pretty indicative of what the game is going to be like. Side note, I actually think I did too good of a job with this because after I posted the trailer I got a number of comments from people congratulating me on finishing the game which I will take, thank you very much. It's not actually done. It's all fake!

8:01

So with this new content I then recorded myself playing through those levels. I didn't have any music on but I did keep the sound effects on so those can be in the trailer. Also, at the risk of talking more about screen resolutions, I recorded everything in 4K but the trailer is only 1080p so I can crop the most interesting bits without having to zoom in and lose image quality. I then threw this footage into Adobe Premiere and cut out all of the most interesting little clips - you know, interesting animations or depictions of mechanics or narrative beats or whatever.

8:39

Now as for music, I do actually finally have a composer for the game now so I can shut that very large Google form. Thank you very much for submitting your name, everybody. They're not quite ready to work on the game yet so for this trailer I just went to my favourite audio source, Epidemic Sound. And the cool thing about Epidemic Sound - and this video is not sponsored by Epidemic Sound but if you go to the description and hit my link I will get paid by Epidemic Sound - is that when you download music you don't just get the full song but also the individual stems like the melody, the bass, and the drums.

9:18

This meant I could isolate the drums and have it so the footage changes on the drum beat like so.

9:30

In terms of the narrative arc of the trailer, I start with just really simple stuff like using the magnet beams to lift up blocks. Then I slow things down to introduce Magnus as a character, then show what Magnus can do as a game mechanic, and then have a rapid fire montage of other stuff you'll see in the later half of the game like other magnets, other mechanics, and other worlds. And then end with a nice call to action to wishlist the game on Steam.

10:02

Now this is not the best trailer ever made - I put it together in like the course of a single day, I also don't have a huge amount of footage to use, and I'm simply not Derek Lieu, you know, the guy who makes all of those awesome trailers for every indie game. But I think it serves its purpose for now. And also I posted it on YouTube and other socials and it pushed the game past 30,000 wishlists which is pretty good before Next Fest even begins.

10:30

And then finally there's the demo. Now I'm not 100% sure how much stuff I want to have in the demo. Like the trailer, if I just have world 1 in the demo, that's not going to be very indicative of what the whole game is like to play. So maybe it should also have world 2, or half of world 2, or whatever. So I need to start making some of that. But in any case, I think I just need to get working on finishing this game. Because like, going back to Balatro, you might have noticed that the game built up a huge amount of hype during Steam Next Fest, and then launched for real a couple weeks later.

11:10

Pepper Grinder is kinda similar: it's launching about one month after the end of its Steam Next Fest debut. And so if I'm going to showcase my game at the Next Fest in June, I should probably look to release it in July or August, and that's not hugely far in the future, and so I'd better get on with this game! Now in the last few weeks I have discovered a pretty good, not to sound too grandiose, production pipeline for getting this game done.

11:43

It's very much inspired by Valve's approach to making Portal, which I discussed in that video on Valve's playtesting philosophy. It basically works like this. On Tuesday through Thursday I work on new content for the game. New levels, fancy new backgrounds, or new cutscenes. Anything new for the game. On Friday I work on bug fixing. I take a few items off of my ever-growing Trello to-do list and try to find a good way to solve that bug, and then do some more bug fixing.

12:19

And then at the end of the day I take what I have, test it, and export a new build. I then give it out to some playtesters, usually like a few randos on Twitter, but a maximum of three playtesters. Then on Monday I check my Twitter DMs to find some nice playtesting footage. I watch the whole video through and make as many notes as possible for things I want to change, like bugs, or places that need more polish, or levels that are too easy or too hard or too fiddly or have some exploit that I didn't foresee when I was developing that part of the game.

13:00

Now I've had some version of this process throughout the game's development, but I feel like I'm really perfecting it now. Like, in the past, I've given builds to too many people in one go. That just ends up with way too much footage to watch. It's just overwhelming, and if one person stumbles upon a bug or an exploit it's really painful and not very useful to then see that same thing crop up in nine more videos. Also I've given out playtest builds in the middle of the week, and then I'm just kind of stuck because I can't do anything until I get the playtest footage back.

13:39

So doing it on Friday means people play the game over the weekend when I really should be taking a break and playing Balatro. And so with this process the game is really starting to take shape. New content starts out a little bit rough and experimental but then quickly gets playtested, and stuff that's been in the game for a long time, stuff in the early levels, has been seen by so many playtesters and had so many little tiny tweaks and bug fixes that it's now starting to get seriously polished and good.

14:09

And so with this process I feel somewhat confident that the game will be done shortly after its Next Fest showcase. But I can't do that if I'm standing here rabbiting onto you about what I've been doing, so it's time to get back to development for some time. I've got to run a playtest, or watch playtest footage, or make new content for the game, or do bug fixing or play Balatro. See the aforementioned schedule, compare it to today's date, you'll know what I'm doing.

14:43

As always GMTK Patrons can play the latest build whenever they want but if you're not supporting the show financially - and I mean why not - you can just wishlist the game now on Steam and you'll be notified when the demo is available during the next Next Fest. Thank you so much for watching and I will talk to you soon.