Author Archives: Simon

Hey, I'm Simon and I'm making a game!! :)
Support me: BUY & Demo on Steam

This article was updated. Jump to Update 1.

Hey lovely people!

I’m working on a small game and here are some techniques I used to create sprites and effects.

Big Sprites

I tried to use the most efficient workflow depending on the use case. The pixel art style allowed me to create assets fast, but for the bigger sprites I used Blender because I knew that I need to iterate a lot over the look and doing all of it by hand would drive me crazy.

Custom Shader

I love when games offer different biomes or regions, and so I wanted to integrate a dark one. Spoiler: You can clear the fog by solving a little quest in the game.

Flipbooks

Sound ON! :) It’s surprising that even simple flip books are good enough when several elements come together – especially nice sound.

Nebula Background

Using texture generators can really help to get stuff done quickly. Painting this would have cost me weeks!

I hope you liked this little breakdown. Let me know what you think about it, and also if you like my game! :)

Simon

Update 1

πŸ’€ Post-Mortem ❀️

Development of Cozy Space Survivors went very well. Next to all the positive feedback and lovely people who supported me, the highlight was the cake my girlfriend made for the release day!

Best cake ever!! (3rd of May 2024)
Margot and her U.F.O. as cake!

Another awesome surprise hit me, when I received my first (physical) review and my first fan art piece (by datgestruepp)!!

What better review could I have wished for?
Space-Moo-Moo by datgestruepp

πŸ’° Sales (~1 month after release)

  • 1696 Wishlists at Release
  • 1560 Units sold (at $2.99 with 30% discount during release week)
  • 58 Refunds
  • $3599 Revenue (before Steam 30% and Taxes)
  • 128 Reviews (99% positive)

πŸ“… Development Time

It took me ~650h to develop the game (next to my full-time job) over roughly 10 months (end of July 2023 – 03. May 2024). I used ProcrastiTracker to track my time.

Important: I only work 4 days a week (7h per day) and I don’t have kids, which means I can spend a lot of my spare time on projects such as my game.

Godot478:45:20
Blender56:42:35
Piskel44:09:20
Firefox (Tutorial/Learning)5:24:00
Sounds (Search on Soundly/Zapsplat)3:56:00
Sounds (Mix/Export)2:46:50
Translation9:47:50
Testing (QA)53:11:30
TOTAL654:43:25

The numbers above do NOT include:

  • Preparing Store Assets (cost A LOT of time!) & Logo
  • Preparing Store Pages (Itch, Steam)
  • Writing Dev Log / Patch Nodes
  • Creating Assets for Social Media (exception: Blender, see below)
  • Posting/Answering in Social Media/Discord/Forums

I used Blender for creating Sprites and also for cutting my trailers and also to prepare some social media assets.

πŸ“œOriginal Plan

  • 1-2 Ships
  • 5 Quests
  • 10 minutes of playtime
  • 2-3 months development time
  • Release on Itch.io (maybe offer Android PCK)
  • Language: English, German

⭐How it turned out

  • 4 Ships
  • 10 Quests
  • 2-4 hours of playtime
  • 10 months development time (+ Patching)
  • Released on Itch.io and Steam (Win, Linux, Mac)
  • 12 Supported Languages
  • Meta Upgrades
  • (Cloud) Save games
  • Achievements
Earliest recording from Cozy Space Survivors with Assets from Kenney (27 July 2023)
Several Logo Iterations. It takes soooo long!

πŸ‘ What went well?

πŸ¦‹ Start with 3rd party assets, replace later.

I used an asset pack from Kenney (see GIF above) to focus on programming and getting something playable as soon as possible. Over time, I replaced sprite by sprite with my own art.

πŸ₯·πŸ» Steal first, innovate later.

I’m not a game designer. For me, it worked great to first copy the gameplay of Vampire Survivors 1:1 and over time add my own ideas to the game (e.g. quests, little speech bubbles, …)

♾️ Update (Web)Demo forever.

Godot offers HTML5 export and almost from day 1 of development I offered my game to test via browser. This made it easy for people to try it without any effort, which led to early feedback for me (nobody wants to download a bloody ZIP and starts an EXE from a random internet dude). Playing the game without any barriers was also good for the translators to check how their translation feels in the game.

  • Itch Downloads: 635
  • Itch Browser Plays: 2602
  • Itch Page Views: 6517

Also: I always updated (and still do) the game & demo in parallel on Itch and Steam. Having people playing the demo (which offered almost 100% of the game content) was basically my beta test. When people play an outdated demo, they might experience that the game is clunky because they can’t know, that the release version is way more polished.

πŸ‘Ž What went bad?

βš™οΈ Physics Based Enemies

I wanted physical interaction between enemies, bullets and asteroids and instead of faking it, I used real physics bodies for all of them. This is less performant than using simple sprites with some custom movement logic and leads to the fact, that I can not display as many enemies as a Vampire Survivors can.

πŸ“˜ No Balancing Table

I don’t have a fancy table where all values from all weapons and enemies are gathered in one place. When I want to change a value, I need to open the weapon/enemy and change the value there. This is a bit click-intensive.

πŸ’‘ Learnings

πŸ“ Wishlists – “Support Linux!”

I did not expect, that an article about my game on a Linux gaming website would be the biggest boost for my wishlists (before release). I also did not expect, that at/after release the spike would be the biggest ever. Makes no sense to me because the game did cost only $2 at release (May-03-2024) – I expected that people either buy immediately at such a low price or that they are not interested at all.

πŸ’² Price – “Your game is too cheap!”

The game did cost $2 at release and some lovely people (mostly from my discord) said it’s too cheap, BUT this had a very nice side effect: Some people bought the game several times and gifted it to their friends, which means: I got potentially more reviews on my game. πŸ’˜

πŸ„ Game Icon – “It’s f*in 2024, Adobe!”

Creating an Icon is surprisingly hard. I made a whole reddit post about it! Photoshop can’t save .ico files (wtf?!) and an existing plugin didn’t work for me. MS Paint can (!) save .ico files, but only without multiple resolutions (and without those, your Icon might look blurry on the desktop). Turns out, GIMP can do it!

🌍 Localization

If you want to have a look how my translation sheet looks like, click here.

  • Localization with Godot is super easy, but I did not expect to have 400+ lines to translate for my tiny game!
  • Google Sheets is awesome for localization because you can easily share a link and restrict write-access per person to e.g. only the column they need to put their words into.
  • I explained above, that I always provided my game via HTML5. This was great for localization too, as I could quickly upload a new (test)version to Itch.io and the translators could easily check how their language feels in the game (without altering the “real” build on Steam).
  • Tip: Make one sheet per language. Each sheet has 3 columns: the loca keys, the English original texts and the column for the translation. In a central sheet, you can then import the content of all separate sheets via =IMPORTRANGE() command (this sheet is then downloaded as CSV and imported in Godot).
    Why the separation? Because if you have a sheet where English is in Column A and you translate e.g. in Column H you constantly have to scroll left and right to read English in Column A, scroll to Column H, type the translation, go back to English, etc.

✨ Marketing

Social Media Marketing didn’t really work for me (few exceptions, see below). At least none of my posts went viral or even close to it (>100 likes). I did many posts showing the progress of my game on TwiX, Mastodon, Bluesky, Threads, Godot Forum, Instagram, TikTok, Youtube Shorts, several Discords and Reddit.

The only posts about my game which received >100 likes before release are:

The only posts about my game which received >100 likes after release are:

Some of my posts got traction on Reddit, but they were not really about my game (Reddit hates self-advertisement) and so there was not much gain in wishlists:

There are two exceptions. These posts about my game actually got some upvotes and I think it’s because it was in r/godot – the reddit is more niche in comparison to r/indiedev or r/gamedev and the people in there are happy to see more games made with Godot. I saw similar happiness in r/linux_gaming.

My most successful post was a little marketing stunt where I pretended that my game was shown on the Las Vegas Sphere. The problem: Coming up with ideas like that is not easy, and making a video likes this costs a lot of time.

By the way, TikTok seems so easy! Sometimes there are videos where someone talks 30s about his/her game and gets 50k views. For me, I never got more than 500 (most are 90-250 views).

πŸ™ Git – “Forget Desktop, use Kraken!”

I used GitHub Desktop almost the whole time because I didn’t know better. I was always confused why it’s so bad in showing file histories, and finally I discovered GitKraken, and it is AWESOME! Use it! Great tool with a fantastic (video)documentation!

☁️ Steam Submission Feedback is awesome!

At Valve, they really look closely at your game before you can publish it! I had a “Wishlist this game!”-button in my demo and forgot to remove it when I submitted my build for the real game (where a wishlist button doesn’t make sense anymore). This is a part of the feedback I received:

Caution: Your build was cautioned because this seems to be a fully priced product, but the game’s menus contains an option to add the game to the player’s Wishlist. This could be confusing for consumers, who would expect a finished product based on your store page and might think this is a demo build.

πŸ’Œ Cold E-Mails

As soon as your Steam-Page goes live (or shortly before/after release), prepare for E-Mails from:

  • Key-Mailer Services
  • Steam-Curators who ask for keys
  • Marketing dudes who offer to push your wishlist numbers
  • Translation companies
  • Musicians/Sound-People who offer their services

πŸ”‘ Log of Key Give Aways

When I gave away keys for my game to e.g. Steam Curators, I always took notes which person got which key in a Google Sheets. This helped to find out who sold my key at G2A. When I noticed that a key is offered there, I bought it myself and found out the “curator” in my list.