About gliniak

I try to make games. I try to learn code. I'm no artist but I try to draw stuff. Check Out Luminess!

gliniak's Trophies

gliniak's Archive

Luminess Post-Mortem: Level Creation Work Flow

Posted by
Thursday, December 19th, 2013 7:22 am

      Our experience in previous jams has taught us that with the short time frame you need to streamline workflows and divide up tasks. ¬†During the planning phase of Luminess we made it a goal of ours to create a way to make levels so that Evan did not have to hardcode them all. ¬† This would allow him to focus on coding the game and allow Jason and me to design the levels.
Level 3
       So, how do you get sweet visuals like this and be able to make a bunch of levels? Evan’s code loads an image that Jason or I create and checks every pixel for specific colors. Those colors correspond to specific types of walls. Generic walls that do no damage are in RGB Grey=100,100,100. The red kill walls seen here at the right are RGB Red=100,0,0.
Level 2
       Besides walls, the code also scans for certain pixels and places, PlayerSpawn, FinishSpawn, ColorOrbs, and Enemies. Enemies are drawn into the current levels, their spawns will turn on in an upcoming version. To the left is the drawn image of the level above. The little ‘P’ is where the player spawns and the ‘E’ is to spawn the end portal.

      The workflow for level creation is this. We made a template in Pyxel Edit with the precise colors. Solid block tiles for various walls and icons for the spawns. The level is designed and output 8x the size. Evans code currently requires each pixel to be 8-bit, so we open the PNG in Gimp and Image>Mode>Indexed>Convert the image.

      We will be making more levels, and adding enemies. I will make a guide on how you can make levels and maybe we will add them to the game! So check back often to play the newer version! Look forward to reading iiechapman’s post on the Pixel Scanning code with SDL_GetRGB(). Also, darfnagel’s posts on his experience with level design and music production.
       Check out Luminess!

[cache: storing page]