Status
SteamPeaks
ChartsSalesUpcomingPatchesEventsCalculator
New on SteamEvery app, DLC and depot the minute Steam creates itAppsEvery app on Steam, newest change firstPackagesSubs and bundles, and what each containsDepotsDepots, manifests and install sizesTagsSteam's user tags and the games under themDevelopers & publishersCompanies and their cataloguesTechnologiesEngines, SDKs and anti-cheat found in the filesChange historyEvery PICS changelist as it lands
SignalsNineteen readings of the whole catalogueCompareAny games side by sideRecordsAll-time peaks and the days they were setReportsWeekly and monthly write-upsAlerts & newsroomWatch a game, get told when it movesSteam statusIs Steam up, right nowWeb API explorerTry the endpoints in the browser
EventsSteam's own events and the sales calendarCalculatorWhat a Steam account is worth, and its pile of shame
/
Sign in
/
SteamPeaks
The ultimate resource for Steam data.
ExploreChartsSalesSales and festsUpcomingPatchesEventsRecordsTrendingSignals
DatabaseAppsPackagesDepotsTagsDevelopersTechnologiesChange history
ToolsCalculatorCompareSearchAlertsSteam statusAPI
SiteMethodologyFAQDiscordSupportSign in via Steam
Not affiliated with Valve or Steam. Game names and artwork belong to their owners. All times UTC.
PrivacyCookiesFair useStatus
ShelfQuestEventsHow I’m turning pixels into full levels
Community

How I’m turning pixels into full levels

ShelfQuest · published 27 Dec 2024, 10:46 UTC

All eventsPlayers around this dateRead on Steam

Hello everyone!

I’m excited to share with you another behind-the-scenes post on my game, Skies of Aevium. This time I’ll be talking about how I add islands and a bunch of levels for my game, but do it all automatically through some tiny pixelart.

To some, those could be some crazy words. Others may have their own theories on how I do it, but I’ll get into it all.

Okay, now what am I talking about?

I hate manual work. Level design takes a lot of time. Especially when it’s tile based (to me, anyway).
I use Unity to make Skies of Aevium, and while it certainly has a bunch of great tools to do make tile based worlds, I still find it way too exhausting to do everything this way. It’s time-consuming in every single way. So, as of this year, I’ve started getting into automating things way more, and that includes designing this game’s world.

To put it simply: I draw on a canvas of, in this case, 32x32 pixels, inside the software Aseprite.
I use whatever colors I want (which I then neatly organize inside of a Google Sheets file), and then when I’m happy, I save it as a .PNG inside my Unity project. Like in this example I have drawn a green head, with some blue to make it a smiley face, and then some white because I felt like it.

Inside of Unity, I add a new item of a class that I call ColorMapObject (you can learn more about this class in the sourcecode, which you can get by joining as my Patreon a member of tier Supporter or above)

In this class I have a few variables: Color, GameObject, and GridLayer.
It simply translates a color to a game object, and then it knows on what grid layer it should be created.
Through the power of my new-found love, editor scripts, I can simply select my smiley face image, and press a button inside my inspector. It then takes every single pixel in my image, and looks through all my instances of ColorMapObject, and checks if that pixel’s color is among those instances. If so, it instantiates that color’s game object on the desired grid layer.

And there you go! A smiley face island!
The theory is actually super simple, and I’m so happy with it because it’ll save me hours in the long run, maybe even more.
But what will I be using it for exactly?

Well. While I still have much to figure out for this game, I do already know that the Underworld will have a lot of levels, much like those in Stardew Valley’s mines. And I don’t want to make those by hand. It would just take way too much time, especially this early in development where nothing is locked in yet.

So creating this tool allows me to very easily iterate on designs. I can do so because I also made it so it requires a position to start creating whatever island you want it to make. And if I then decide I want to change it, I can just press the update button, and it’ll just delete what it had already made in that area, and redo everything in the image. Also, yes, I can now delete everything, too.

Yes, this is incredibly useful. It still isn’t perfect, and I’m sure I’ll optimize it more as I go, but it’s a real life-saver.
One problem I’ll have to deal with later, though, is updating islands or adding islands after someone has already started playing. What if I want to add a cool new island with a bunch of loot…but someone has already built their world there? Do I just delete their world? Something to think about later.

Anyway, thank you all for reading! And thank you for being here with me this year. I’m very excited about next year, and can’t wait to share more with you! See you all in 2025!

Jordi/TheShelfman

More from ShelfQuest

Other announcements

All events
Community16 Mar 2026Very Important Announcement!Chicken on throne. Thank you for your attention. Sincerely, TheShelfmanIn-game event6 Oct 2025September 2025 Update - Map!Hello everyone! So sorry that this update is late. I was ready to share it with you last week, but there was a massive saving/loading bug that needed fixing. I was able to do that a few days later, but then there was another bug with one of the new features that I just couldn't let slide. Yet, here we are! But before I share more with you, don't forget that apart from a new monthly build, Demi-…