/pathogen transit/
I guess it’s about time I start posting my digital art here? You can view this art and more of mine over on my Pixiv account (Click here!). It’s pretty lackluster at the moment, but I’m thinking of trying some architectural stuff in the future. I’m still no where close to defining my style, but people like K,Kanehira and JohnHathway are big inspirations of mine.

/pathogen transit/

I guess it’s about time I start posting my digital art here? You can view this art and more of mine over on my Pixiv account (Click here!). It’s pretty lackluster at the moment, but I’m thinking of trying some architectural stuff in the future. I’m still no where close to defining my style, but people like K,Kanehira and JohnHathway are big inspirations of mine.

Atop A Dark Mountain
This is the game I made for Ludum Dare Jam #28, a game jam in which you are to make a game in 72 hours. Enemies come in waves. There are about 10 waves, with a boss at the end. You can also replay for a faster record, or for a record in attacking least. Inspired by those multi-floor towers of enemies in Zelda games.
All but music was made within the 72 hours. The unfinished track I used, I composed within ~6 hours, ~4 months ago.
Controls
Arrows/Z/X or WASD/J/K. (Move/Jump/Attack)You can charge X/K for different attacks.Alt+Enter toggles fullscreen.
Downloads / Links
Download Game .exe (Click here!) Download Source .gmz (Click here!)Development Timelapse (on YouTube) (Click here!)View Super Ultra Amazing Dev Strats .txt (Click here!)View Ludum Dare entry page (Click here!)
This Just In
The voting period has ended. 780 games were submitted. Here are my ratings:68th Overall 3.67/519th Fun 3.93/525th Humour 3.83/574th Audio 3.59/589th Graphics 4.07/5115th Mood 3.42/5144th Innovation 3.24/5343rd Theme 2.54/5

Atop A Dark Mountain

This is the game I made for Ludum Dare Jam #28, a game jam in which you are to make a game in 72 hours. Enemies come in waves. There are about 10 waves, with a boss at the end. You can also replay for a faster record, or for a record in attacking least. Inspired by those multi-floor towers of enemies in Zelda games.

All but music was made within the 72 hours. The unfinished track I used, I composed within ~6 hours, ~4 months ago.

Controls

Arrows/Z/X or WASD/J/K. (Move/Jump/Attack)
You can charge X/K for different attacks.
Alt+Enter toggles fullscreen.

Downloads / Links

Download Game .exe (Click here!)
Download Source .gmz (Click here!)
Development Timelapse (on YouTube) (Click here!)
View Super Ultra Amazing Dev Strats .txt (Click here!)
View Ludum Dare entry page (Click here!)

This Just In

The voting period has ended. 780 games were submitted. Here are my ratings:
68th Overall 3.67/5
19th Fun 3.93/5
25th Humour 3.83/5
74th Audio 3.59/5
89th Graphics 4.07/5
115th Mood 3.42/5
144th Innovation 3.24/5
343rd Theme 2.54/5

Depth
This is the game I made for Ludum Dare #26, a game jam in which you are to make a game in 48 hours. It’s… A 2D maze game… Or is it?
Controls
Arrows+WASD.Space checks.R regenerates.ESC escapes.Alt+Enter fullscreens.
Downloads / Links
Download Game .exe (Click here!) (Doesn’t work? Click here!)Download Source .gmz (Click here!)Development Timelapse (Click here!)View Ludum Dare entry page (Click here!)
This Just In
The voting period has ended. 1610 games were submitted. Here are my ratings:82nd Overall 3.82/553rd Theme 4.22/560th Innovation 3.97/5217th Audio 3.27/5281st Fun 3.30/5455th Mood 3.00/5489th Graphics 3.12/5

Depth

This is the game I made for Ludum Dare #26, a game jam in which you are to make a game in 48 hours. It’s… A 2D maze game… Or is it?

Controls

Arrows+WASD.
Space checks.
R regenerates.
ESC escapes.
Alt+Enter fullscreens.

Downloads / Links

Download Game .exe (Click here!) (Doesn’t work? Click here!)
Download Source .gmz (Click here!)
Development Timelapse (Click here!)
View Ludum Dare entry page (Click here!)

This Just In

The voting period has ended. 1610 games were submitted. Here are my ratings:
82nd Overall 3.82/5
53rd Theme 4.22/5
60th Innovation 3.97/5
217th Audio 3.27/5
281st Fun 3.30/5
455th Mood 3.00/5
489th Graphics 3.12/5

Junkbot
So, Ludum Dare #25 rolled around. I jammed this one out over 72 hours with Spaceoff again, just like old times (LD#21, NTIWTtMitWV). We made a metroidvania — Check it out!
Controls
Shoot a savepoint to save.Arrow keys / WASD — Run, Jump, slide down walls (with wall-cling ability).Spacebar / X — Fire weapon.R — Die and Respawn.1 — Toggle Music.2 — Toggle Sound.F4 — Toggle Fullscreen.
Downloads / Links
Download Game .exe (Click here!)Download Speedrun Timer ver. (Source .gm81 modification by Will “Xyen”) .exe (Click here!)Download Source .gm81 (Click here!)Spaceoff’s Development Timelapse (Click here!)Maple’s Development Timelapse (Click here!)View Ludum Dare entry page (Click here!)View Game on YoYo Games (Click here!)
This Just In
The voting period ended — We placed 20th out of 425 Jam entries!

Junkbot

So, Ludum Dare #25 rolled around. I jammed this one out over 72 hours with Spaceoff again, just like old times (LD#21, NTIWTtMitWV). We made a metroidvania — Check it out!

Controls

Shoot a savepoint to save.
Arrow keys / WASD — Run, Jump, slide down walls (with wall-cling ability).
Spacebar / X — Fire weapon.
R — Die and Respawn.
1 — Toggle Music.
2 — Toggle Sound.
F4 — Toggle Fullscreen.

Downloads / Links

Download Game .exe (Click here!)
Download Speedrun Timer ver. (Source .gm81 modification by Will “Xyen”) .exe (Click here!)
Download Source .gm81 (Click here!)
Spaceoff’s Development Timelapse (Click here!)
Maple’s Development Timelapse (Click here!)
View Ludum Dare entry page (Click here!)
View Game on YoYo Games (Click here!)

This Just In

The voting period ended — We placed 20th out of 425 Jam entries!

Parental Guidance
This is the game I made for Ludum Dare #24, a game jam in which you are to make a game in 48 hours. You wake up to find that your parents have gone on holidays without you. Wait, what was that? You intend to find out.
Controls
Arrows = Move. X = Interact.F2/F3/F4 = Adjust Screen.R = Restart. ESC = end.(There is no way to save, as it is a short game.)
Downloads / Links
Download Game .exe (Click here!)Download Source .gm81 (Click here!)Download Font .ttf (Click here!)Development Timelapse (spoilers) (Click here!)View Ludum Dare entry page (Click here!)View Game on YoYo Games (Click here!)
A Slight Hindsight
Here’s what went down, this Ludum Dare:- I went to bed at 6am, when the theme was to be announced at 11am. 5 hours sleep.- I made something and walked around in it for a long time when I could have been expanding what I had.- I fell asleep at the computer for an hour or so, and then went to bed afterwards at I don’t know what hour, but when I had to wake up, It took me a while for my senses to alert, even though I was consciously trying to focus.- Finally decided what to do with said thing I made, and started doing it. Started getting tired at about 2am, wasting more time and “play testing” my game. Had to take a break.- A hot milo didn’t help. Tried to battle the tire because at this point I wasn’t satisfied enough with submitting what I had, and I was worried that if I went to bed I wouldn’t be able to wake up until after Ludum Dare ended. I fell asleep again at the computer.- Luckily, I woke up probably around 2 hours later and had the alertness required to awkwardly record sound effects, compose a track and add some final touches.
*Yawn*
So what can we learn from this series of events? I had one hell of a time. That, and also, something I’m beginning to realise, is just how much more could be accomplished with a focused mind and a plan. I feel I could have done twice as much if I kept a better todo list and had things in the front of my mind to do instead of wasting time playing my unfinished game. Oh, and also having a better rest, like last time. To be fair, I haven’t really made this kind of game before, so I was learning as I made this too. I still look forward to playing the games where everything went right; I don’t think anyone has seen what can truly be achieved with 48 hours, even though so many people leave Ludum Dare in awe.
This Just In
The voting period has ended. 1006 games were submitted. Here are my ratings:28th Overall 3.85/51st Mood 4.85/58th Audio 4.04/546th Graphics 4.13/5197th Humour 2.65/5204th Fun 3.13/5233rd Innovation 3.17/5534th Theme 2.47/5

Parental Guidance

This is the game I made for Ludum Dare #24, a game jam in which you are to make a game in 48 hours. You wake up to find that your parents have gone on holidays without you. Wait, what was that? You intend to find out.

Controls

Arrows = Move. X = Interact.
F2/F3/F4 = Adjust Screen.
R = Restart. ESC = end.
(There is no way to save, as it is a short game.)

Downloads / Links

Download Game .exe (Click here!)
Download Source .gm81 (Click here!)
Download Font .ttf (Click here!)
Development Timelapse (spoilers) (Click here!)
View Ludum Dare entry page (Click here!)
View Game on YoYo Games (Click here!)

A Slight Hindsight

Here’s what went down, this Ludum Dare:
- I went to bed at 6am, when the theme was to be announced at 11am. 5 hours sleep.
- I made something and walked around in it for a long time when I could have been expanding what I had.
- I fell asleep at the computer for an hour or so, and then went to bed afterwards at I don’t know what hour, but when I had to wake up, It took me a while for my senses to alert, even though I was consciously trying to focus.
- Finally decided what to do with said thing I made, and started doing it. Started getting tired at about 2am, wasting more time and “play testing” my game. Had to take a break.
- A hot milo didn’t help. Tried to battle the tire because at this point I wasn’t satisfied enough with submitting what I had, and I was worried that if I went to bed I wouldn’t be able to wake up until after Ludum Dare ended. I fell asleep again at the computer.
- Luckily, I woke up probably around 2 hours later and had the alertness required to awkwardly record sound effects, compose a track and add some final touches.

*Yawn*

So what can we learn from this series of events? I had one hell of a time. That, and also, something I’m beginning to realise, is just how much more could be accomplished with a focused mind and a plan. I feel I could have done twice as much if I kept a better todo list and had things in the front of my mind to do instead of wasting time playing my unfinished game. Oh, and also having a better rest, like last time. To be fair, I haven’t really made this kind of game before, so I was learning as I made this too. I still look forward to playing the games where everything went right; I don’t think anyone has seen what can truly be achieved with 48 hours, even though so many people leave Ludum Dare in awe.

This Just In

The voting period has ended. 1006 games were submitted. Here are my ratings:
28th Overall 3.85/5
1st Mood 4.85/5
8th Audio 4.04/5
46th Graphics 4.13/5
197th Humour 2.65/5
204th Fun 3.13/5
233rd Innovation 3.17/5
534th Theme 2.47/5

MAINSTREET
Avoid stuff while getting stuff to multiply your score.Controls: Arrows - Move, X - Marks the spot (Hold→Release), R - Where is easy mode?, F2/F3 - Resize window, F4 - Toggle fullscreen, F9 - Save screenshot.You’ll have to crank up your own appropriate tunes to this one.
Downloads / Links
Download Game .exe (Click here!)Download Font .ttf (Click here!)View Highscores (Click here!)View Game on YoYo Games (Click here!)Enjoy.

MAINSTREET

Avoid stuff while getting stuff to multiply your score.
Controls: Arrows - Move, X - Marks the spot (Hold→Release), R - Where is easy mode?, F2/F3 - Resize window, F4 - Toggle fullscreen, F9 - Save screenshot.
You’ll have to crank up your own appropriate tunes to this one.

Downloads / Links

Download Game .exe (Click here!)
Download Font .ttf (Click here!)
View Highscores (Click here!)
View Game on YoYo Games (Click here!)

Enjoy.

Finding Yourself
Finding Yourself is a game about finding yourself. I made it for Ludum Dare #23. It’s a platformer with 15 levels, and it’s difficult, I’ve been told. You can pull off hard sequences of maneuvers to collect the key in each level, if you want, or simply glide through without straining your back to get to the end. 1402 people submitted a game for Ludum Dare #23. Submissions are rated in various categories, of which in the “Overall” category with the rating of 3.33/5 I came 223rd. The best category my game achieved in was surprisingly the “Fun” category, where with the rating of 3.41/5 I came 126th.
Controls
Arrow keys - Move left/right and jump.D - Dash.Space or F - Alternate Jump keys.F4 - Toggle windowed/fullscreen.F9 - Saves a screenshot in the folder the game is located.
Downloads / Links
Download .exe file (Click here!)Download .gm81 source file (Click here!)Watch Development Timelapse (Click here!)View Ludum Dare entry page (Click here!)View game on YoYo Games (Click here!)Download the font I made for this game (Click here!)
Finding Yourself Post-Mortem: A Look Back on the Development Process
As we all know, Ludum Dare is a light-hearted contest which runs for 48 hours, within which a game is to be produced and submitted by each participant for the following trial of a voting period. Let me tell you about those 48 hours in relation to the game I submitted to Ludum Dare #23.
The Morning Prior
The theme was to be announced at 11AM where I live, so I had time to walk to the nearest supermarket to do some last minute stocking up while the sky was overcast and the air was still fresh and misty, and get back to eat something I can’t remember if I’ve even experienced before at breakfast time: Bacon and eggs on toast, with juice. I then did some last-minute flicking through of The Game Jam Survival Guide, wrote down somewhat of a plan for the 48 hours which mainly consisted of what I was going to do in the first quarter of Ludum Dare because I didn’t have time to plan much more, and then I uploaded a GameMaker 8.1 (.gm81) file (which contained the stuff needed to play .pttune files) and distributed it in a blog entry on the Ludum Dare website so as to follow the rules like a good boy. Well, I finished posting that blog entry 20 mins in to the 48 hours due to website traffic screwing me over as everyone raced in to check what the theme was (and also due to the fact I am not a fast typer), and didn’t even end up using .pttune files in the actual game. The theme was “Tiny World”.
Dawn of The First Day -48 Hours Remain-
Following the little plan I put together, I did really well to begin with and had a box maneuvering around a test room the way the character does in the final version of the game, and also a way to move on to the next level within the first few hours. I then imported the font I was to use in the game and started displaying a giant number in the background of the levels to show what level the player is currently on, and made a simple rain effect by simply drawing lines at random over a simple gradient background (oh no, two games in a row I’ve used a gradient as a background!). I also made the gems at this point too, which I later changed into keys.
After that I was kinda lost and didn’t know how to make my game idea fit the theme, nor did I know what small step I should take next in moving my game towards the complete idea I had in my mind either. After some pondering I remembered something I learnt myself a while ago that was reiterated to me in The Game Jam Survival Guide: The first thing you should do is make the most basic thing you can call a complete game; something with a menu, a level, a way to win, and a way to lose. It’s here that I added those red dangers and worked on the player respawning via lighting strike (I was going to change the “dangers” into spikes later on, but after I made the first few levels I decided they looked almost like little berries or something on the side of a giant vine, and so I left them like that so it at least looked like you may have been really tiny, because I still didn’t have much of an idea of how I was to tackle the “Tiny World” theme). It’s also here that I worked on the main menu and the most basic tileset which was to be used in the level/s, which I had planned to give some texture or pattern later if I had the time, which I didn’t. I then made the first levels (the green ones), with text showing the player the mechanics that are used in the game, and wasted a bunch of time sitting there playing through what I had made while thinking of what to do next. It was getting late, so I slept on it.
Dawn of The Second Day -24 Hours Remain-
I woke early, shaved early, clipped my nails early, and showered early, whilst gathering in my mind some sort of plan for the morning to follow through with until I was to attend church. As planned, I jumped onto the computer, programmed the file saving system including the saving of best runs and displaying of the stats on the title menu, and I made character sprites and got them displaying properly in place of the character hitbox, then I left for church.
In the afternoon after a bit of food, It was time to get back into it. I made the mini intro cutscene where you see yourself running across the screen and jumping over the red dangers, and I made the ending level and the ending mini cutscene, turned the gems into keys, and made the Congratulations screen which follows, displaying the stats of that run. The game could now be called done; I now had the basic framework of the game complete.
It was time to add sound, music, and wrap it all up with a few more levels. To start off, I tried to get .pttune files playing in the game. After I did this, I decided I didn’t have time to make my own music anyway, and then cut out the .pttune functionality from the game, made the rain sound effect in Pxtone which I exported to .wav and softened with GameMaker’s inbuilt basic sound manipulation stuff, then moved on to making the rest of the sound effects with SFXR, alongside the running game, to try to get sounds that I thought fit well. I was very happy with how the lightning sound effect turned out. I then did the same thing with Autotracker-bu and music; I generated about 20 tracks and played the game with the rain sound and other sound effects implemented while listening to the tracks, and eliminating ones I thought didn’t feel right, until I ended up with the tracks you hear in the game now, after converting the .it files to .wav and then to .mp3. It was time to make levels until the submission time. I had work the next day, so submission time for me was before I went to bed.
Before designing levels, I thought I should gauge how difficult I was making them by testing the limits of the physics. For example, I knew that the player could jump x blocks high, and jump x blocks far, and how far the player could jump, and the limits of where they could land by running off a platform and holding right, etc (You can actually see me testing this in the timelapse. You can see I make a room with purple tiles laid out like a grid. I was using that grid of tiles as a way of measuring the distance that the different maneuvers take you in different situations). I would then use this information to know how hard I was making levels. For example if I wanted to make an easy level, knowing that the player can jump x blocks high, maybe all of the jumps in an easy level should only require the player to jump half that high, so as to make it easy, and more difficult levels would require the player to jump with more precision to make jumps. This testing was all well and good, and probably would have gotten somewhere, but there was just no way I’d be able to properly design levels using this distance counting method in the time I had left, so I stopped with that and just hurried on to making levels. I was aiming to make 20, but I realised they were all going to be crap If I just rushed them out like that. I had rushed out the 5 yellow stages just then, guessing how hard the jumps were that I was making the player traverse, and they didn’t turn out very unique or good in my opinion, so I decided to cut the levels down to 15 and just have some fun with the last 5 levels (also disregarding the testing I did, and just winging it and playtesting). As I was making the levels, I made it so that each set of 5 levels had their own architecture, which I thought ended up alright. The green ones I threw the blocks around in a mountainous, curvacious fashion like a forest, while you can see the yellow section had all platforms that weird shape, and the blue world had levels structured like buildings.
I then played the game through just as a general sort of sweep, to catch any obvious problems with it to fix before I uploaded, but all was good, so then I wrote up my submission and submitted my entry. It was late. I was happy with my game. It was time for bed.
What Went Right
- I did plan at least a little bit before the start of the 48 hours.- I went to bed on time and woke up refreshed, early.- I stayed in familiar territory in regards to the character spriting, and as such was able to do that rather fast.- I made something that was “complete” early, allowing me to choose how to refine my game in the spare time I had left over.- Deciding to let Autotracker-bu handle the music meant that I was able to spend more time making levels.
What Went Wrong / Amending mistakes
- I could have planned much more than I did prior to Ludum Dare. I was lost a few times during the 48 hours and wasted time trying to decide what to do next when I could have been progressing the game.- It is still a habit of mine to playtest more than needs be, procrastinating and wasting time that could be used developing the game (This being said, overall I was rather happy with my low procrastination levels this Ludum Dare).- I wasted a lot of time doing things that didn’t make it into the final game, like fiddling around with Pxtone and testing the limits of the physics. This could have been better anticipated.- I was testing the physics so that I could develop levels to be a specific level of difficulty, but because I didn’t use that information and just powered on to making as many levels as I could, I got so into making the difficult path for the 5 blue levels super amazing that I forgot to make the easy path of those blue levels actually easy. I really wanted to make it so that most people would be able to beat the game, but I got carried away and as such, a very small percentage of people have actually beaten it, and that is by taking the ‘easy’ route. I should have thought more and had better control over the difficulty curve I was feeding down the player’s throat.- I uh, also could have bought less food or something. I still had more than half of the stuff I got for the weekend still sitting in the fridge.
Future Tense
I’m fairly certain that I could have made my entry in half of the time with all of my mistakes amended and a little bit of speed-dev practice down. I should probably make typing with all of my fingers a habit too. With a bit of practice, I believe the same sort of game with better graphics, gameplay, homemade music, and added wildlife or enemies is fairly doable by one person in 48 hours. I look forward to being blown away by entries like these. Until then, put down your glasses and let your eyes recover from the wall of text I threw into them.Goodnight.

Finding Yourself

Finding Yourself is a game about finding yourself. I made it for Ludum Dare #23. It’s a platformer with 15 levels, and it’s difficult, I’ve been told. You can pull off hard sequences of maneuvers to collect the key in each level, if you want, or simply glide through without straining your back to get to the end. 1402 people submitted a game for Ludum Dare #23. Submissions are rated in various categories, of which in the “Overall” category with the rating of 3.33/5 I came 223rd. The best category my game achieved in was surprisingly the “Fun” category, where with the rating of 3.41/5 I came 126th.

Controls

Arrow keys - Move left/right and jump.
D - Dash.
Space or F - Alternate Jump keys.
F4 - Toggle windowed/fullscreen.
F9 - Saves a screenshot in the folder the game is located.

Downloads / Links

Download .exe file (Click here!)
Download .gm81 source file (Click here!)
Watch Development Timelapse (Click here!)
View Ludum Dare entry page (Click here!)
View game on YoYo Games (Click here!)
Download the font I made for this game (Click here!)

Finding Yourself Post-Mortem: A Look Back on the Development Process

As we all know, Ludum Dare is a light-hearted contest which runs for 48 hours, within which a game is to be produced and submitted by each participant for the following trial of a voting period. Let me tell you about those 48 hours in relation to the game I submitted to Ludum Dare #23.

The Morning Prior

The theme was to be announced at 11AM where I live, so I had time to walk to the nearest supermarket to do some last minute stocking up while the sky was overcast and the air was still fresh and misty, and get back to eat something I can’t remember if I’ve even experienced before at breakfast time: Bacon and eggs on toast, with juice. I then did some last-minute flicking through of The Game Jam Survival Guide, wrote down somewhat of a plan for the 48 hours which mainly consisted of what I was going to do in the first quarter of Ludum Dare because I didn’t have time to plan much more, and then I uploaded a GameMaker 8.1 (.gm81) file (which contained the stuff needed to play .pttune files) and distributed it in a blog entry on the Ludum Dare website so as to follow the rules like a good boy. Well, I finished posting that blog entry 20 mins in to the 48 hours due to website traffic screwing me over as everyone raced in to check what the theme was (and also due to the fact I am not a fast typer), and didn’t even end up using .pttune files in the actual game. The theme was “Tiny World”.

Dawn of The First Day -48 Hours Remain-

Following the little plan I put together, I did really well to begin with and had a box maneuvering around a test room the way the character does in the final version of the game, and also a way to move on to the next level within the first few hours. I then imported the font I was to use in the game and started displaying a giant number in the background of the levels to show what level the player is currently on, and made a simple rain effect by simply drawing lines at random over a simple gradient background (oh no, two games in a row I’ve used a gradient as a background!). I also made the gems at this point too, which I later changed into keys.

After that I was kinda lost and didn’t know how to make my game idea fit the theme, nor did I know what small step I should take next in moving my game towards the complete idea I had in my mind either. After some pondering I remembered something I learnt myself a while ago that was reiterated to me in The Game Jam Survival Guide: The first thing you should do is make the most basic thing you can call a complete game; something with a menu, a level, a way to win, and a way to lose. It’s here that I added those red dangers and worked on the player respawning via lighting strike (I was going to change the “dangers” into spikes later on, but after I made the first few levels I decided they looked almost like little berries or something on the side of a giant vine, and so I left them like that so it at least looked like you may have been really tiny, because I still didn’t have much of an idea of how I was to tackle the “Tiny World” theme). It’s also here that I worked on the main menu and the most basic tileset which was to be used in the level/s, which I had planned to give some texture or pattern later if I had the time, which I didn’t. I then made the first levels (the green ones), with text showing the player the mechanics that are used in the game, and wasted a bunch of time sitting there playing through what I had made while thinking of what to do next. It was getting late, so I slept on it.

Dawn of The Second Day -24 Hours Remain-

I woke early, shaved early, clipped my nails early, and showered early, whilst gathering in my mind some sort of plan for the morning to follow through with until I was to attend church. As planned, I jumped onto the computer, programmed the file saving system including the saving of best runs and displaying of the stats on the title menu, and I made character sprites and got them displaying properly in place of the character hitbox, then I left for church.

In the afternoon after a bit of food, It was time to get back into it. I made the mini intro cutscene where you see yourself running across the screen and jumping over the red dangers, and I made the ending level and the ending mini cutscene, turned the gems into keys, and made the Congratulations screen which follows, displaying the stats of that run. The game could now be called done; I now had the basic framework of the game complete.

It was time to add sound, music, and wrap it all up with a few more levels. To start off, I tried to get .pttune files playing in the game. After I did this, I decided I didn’t have time to make my own music anyway, and then cut out the .pttune functionality from the game, made the rain sound effect in Pxtone which I exported to .wav and softened with GameMaker’s inbuilt basic sound manipulation stuff, then moved on to making the rest of the sound effects with SFXR, alongside the running game, to try to get sounds that I thought fit well. I was very happy with how the lightning sound effect turned out. I then did the same thing with Autotracker-bu and music; I generated about 20 tracks and played the game with the rain sound and other sound effects implemented while listening to the tracks, and eliminating ones I thought didn’t feel right, until I ended up with the tracks you hear in the game now, after converting the .it files to .wav and then to .mp3. It was time to make levels until the submission time. I had work the next day, so submission time for me was before I went to bed.

Before designing levels, I thought I should gauge how difficult I was making them by testing the limits of the physics. For example, I knew that the player could jump x blocks high, and jump x blocks far, and how far the player could jump, and the limits of where they could land by running off a platform and holding right, etc (You can actually see me testing this in the timelapse. You can see I make a room with purple tiles laid out like a grid. I was using that grid of tiles as a way of measuring the distance that the different maneuvers take you in different situations). I would then use this information to know how hard I was making levels. For example if I wanted to make an easy level, knowing that the player can jump x blocks high, maybe all of the jumps in an easy level should only require the player to jump half that high, so as to make it easy, and more difficult levels would require the player to jump with more precision to make jumps. This testing was all well and good, and probably would have gotten somewhere, but there was just no way I’d be able to properly design levels using this distance counting method in the time I had left, so I stopped with that and just hurried on to making levels. I was aiming to make 20, but I realised they were all going to be crap If I just rushed them out like that. I had rushed out the 5 yellow stages just then, guessing how hard the jumps were that I was making the player traverse, and they didn’t turn out very unique or good in my opinion, so I decided to cut the levels down to 15 and just have some fun with the last 5 levels (also disregarding the testing I did, and just winging it and playtesting). As I was making the levels, I made it so that each set of 5 levels had their own architecture, which I thought ended up alright. The green ones I threw the blocks around in a mountainous, curvacious fashion like a forest, while you can see the yellow section had all platforms that weird shape, and the blue world had levels structured like buildings.

I then played the game through just as a general sort of sweep, to catch any obvious problems with it to fix before I uploaded, but all was good, so then I wrote up my submission and submitted my entry. It was late. I was happy with my game. It was time for bed.

What Went Right

- I did plan at least a little bit before the start of the 48 hours.
- I went to bed on time and woke up refreshed, early.
- I stayed in familiar territory in regards to the character spriting, and as such was able to do that rather fast.
- I made something that was “complete” early, allowing me to choose how to refine my game in the spare time I had left over.
- Deciding to let Autotracker-bu handle the music meant that I was able to spend more time making levels.

What Went Wrong / Amending mistakes

- I could have planned much more than I did prior to Ludum Dare. I was lost a few times during the 48 hours and wasted time trying to decide what to do next when I could have been progressing the game.
- It is still a habit of mine to playtest more than needs be, procrastinating and wasting time that could be used developing the game (This being said, overall I was rather happy with my low procrastination levels this Ludum Dare).
- I wasted a lot of time doing things that didn’t make it into the final game, like fiddling around with Pxtone and testing the limits of the physics. This could have been better anticipated.
- I was testing the physics so that I could develop levels to be a specific level of difficulty, but because I didn’t use that information and just powered on to making as many levels as I could, I got so into making the difficult path for the 5 blue levels super amazing that I forgot to make the easy path of those blue levels actually easy. I really wanted to make it so that most people would be able to beat the game, but I got carried away and as such, a very small percentage of people have actually beaten it, and that is by taking the ‘easy’ route. I should have thought more and had better control over the difficulty curve I was feeding down the player’s throat.
- I uh, also could have bought less food or something. I still had more than half of the stuff I got for the weekend still sitting in the fridge.

Future Tense

I’m fairly certain that I could have made my entry in half of the time with all of my mistakes amended and a little bit of speed-dev practice down. I should probably make typing with all of my fingers a habit too. With a bit of practice, I believe the same sort of game with better graphics, gameplay, homemade music, and added wildlife or enemies is fairly doable by one person in 48 hours. I look forward to being blown away by entries like these. Until then, put down your glasses and let your eyes recover from the wall of text I threw into them.
Goodnight.

CANDY WORLD DREAM REALM
Well, I’m quite late posting this. I made this game for Ludum Dare 48 hour compo #22. The theme was “Alone”.
In this game you control a girl named Lacey with the mouse, who is feeling quite alone, hating reality, and dreaming of a better place. You eat candy. Lots of candy. And avoid eating the stray poop or two that flys past in the mix of candy, by closing your mouth with Z or Left Click. Letting ANYTHING past her will only break her heart, so try to avoid that! Please give it a go and let me know what you think!
Downloads / Links
Download .exe file (Click here!)Download .gm81 source file (Click here!)Watch Development Timelapse (Click here!)View Ludum Dare entry page (Click here!)View game on YoYo Games (Click here!)Download the font I made for this game (Click here!)

CANDY WORLD DREAM REALM

Well, I’m quite late posting this. I made this game for Ludum Dare 48 hour compo #22. The theme was “Alone”.

In this game you control a girl named Lacey with the mouse, who is feeling quite alone, hating reality, and dreaming of a better place. You eat candy. Lots of candy. And avoid eating the stray poop or two that flys past in the mix of candy, by closing your mouth with Z or Left Click. Letting ANYTHING past her will only break her heart, so try to avoid that! Please give it a go and let me know what you think!

Downloads / Links

Download .exe file (Click here!)
Download .gm81 source file (Click here!)
Watch Development Timelapse (Click here!)
View Ludum Dare entry page (Click here!)
View game on YoYo Games (Click here!)
Download the font I made for this game (Click here!)

Dueler
Dueler is an arcade/action/strategy/timing(?) game I made in approximately 8-9 hours with Game Maker and SFXR. It was inspired by Messhof’s Nidhogg, Nintendo’s The Legend of Zelda series, and 0h Game Jam. The general idea behind the gameplay, is that you must Shield the opponent’s attacks at the right time, whilst looking for opportunities to attack them by either dropping a Bomb at their feet, or swinging your Sword at them. Attacks damage you as they stop displaying, so you have right up until then to Shield them. All actions you make are followed by a short period of delay in which you can’t make any more actions. More technical information can be found in the included text file.
Controls
Up - Start a single player game.
Left - Player 1 Sword.
Right - Player 1 Shield.
Down - Player 1 Bomb.
W - Start a multiplayer game.
D - Player 2 Sword.
A - Player 2 Shield.
S - Player 2 Bomb.
F4 - Switch between fullscreen and windowed mode.
F9 - Save a screenshot to the root folder that “Dueler.exe” is in.
Note that you can also resize the game window when in windowed mode by dragging the edges of it with the mouse.
Downloads
Download game with included text file (Click here!).
View game on YoYo Games (Click here!).
Download messy source (.gm81, sorry, I should have made it with FlashPunk, I know!) (Click here!).

Dueler

Dueler is an arcade/action/strategy/timing(?) game I made in approximately 8-9 hours with Game Maker and SFXR. It was inspired by Messhof’s Nidhogg, Nintendo’s The Legend of Zelda series, and 0h Game Jam. The general idea behind the gameplay, is that you must Shield the opponent’s attacks at the right time, whilst looking for opportunities to attack them by either dropping a Bomb at their feet, or swinging your Sword at them. Attacks damage you as they stop displaying, so you have right up until then to Shield them. All actions you make are followed by a short period of delay in which you can’t make any more actions. More technical information can be found in the included text file.

Controls

Up - Start a single player game.

Left - Player 1 Sword.

Right - Player 1 Shield.

Down - Player 1 Bomb.

W - Start a multiplayer game.

D - Player 2 Sword.

A - Player 2 Shield.

S - Player 2 Bomb.

F4 - Switch between fullscreen and windowed mode.

F9 - Save a screenshot to the root folder that “Dueler.exe” is in.

Note that you can also resize the game window when in windowed mode by dragging the edges of it with the mouse.

Downloads

Download game with included text file (Click here!).

View game on YoYo Games (Click here!).

Download messy source (.gm81, sorry, I should have made it with FlashPunk, I know!) (Click here!).

How to Design a Platformer Tileset
I made this quick example to show you how my tilesets are set out:You  could also add another row or so of additional tiles used to give  variation or imperfection to the world. For example, you could have  variations of tile 7 that are sometimes used instead of tile 7 (I just  used tile 7 as an example because it’s usually the most commonly used,  but you can have variations of any tile, obviously), or tiles of  external things like branches or cobwebs.Let’s run through what each tile is for:(id - name / surrounding blocks)Square:0 - top left / Air up, left. Solid center.1 - top middle / Air up. Solid center.2 - top right / Air up, right. Solid center.6 - middle left / Air left. Solid center.7 - middle middle / Solid all around. Solid center.8 - middle right / Air right. Solid center.12 - bottom left / Air down, left. Solid center.13 - bottom middle / Air down. Solid center.14 - bottom right / Air down, right. Solid center.Column:3 - top / Air up, left, right. Solid center.9 - middle / Air left, right. Solid center.15 - bottom / Air down, left, right. Solid center.Row:18 - left / Air up, down, left. Solid center.19 - middle / Air up, down. Solid center.20 - right / Air up, down, right. Solid center.Single Block:21 - single / Air up, down, left, right. Solid center.Corners and Edges:4 - top left corner / Air bottom-right. Solid center.5 - top right corner / Air bottom-left. Solid center.10 - bottom left corner / Air top-right. Solid center.11 - bottom right corner / Air top-left. Solid center.16 - top edge / Solid bottom. Air center.17 - right edge / Solid left. Air center.22 - left edge / Solid right. Air center.23 - bottom edge / Solid top. Air center.Note:   Corners and edges have a transparent background so that they can be   used on the same grid reference as may be required by other corners or   edges.A  - 3 edges must be used on this grid reference, so as you  can see they  are layered and have transparent backgrounds like corners.B  - The  base tile here is a middle left square tile, and layered on top  of it  is a top left corner tile because because there is an air block to  the  bottom-right of this grid reference. The corner tile is transparent   everywhere except the corner itself, so that tiles beneath it can be   seen, such as other corner tiles potentially.C - Similar to B.D - Similar to B.E - Similar to B.F - Similar to A.G - Similar to A.Remembering   that edge tiles are placed on an air block, objects in-game will not   collide with these tiles, but will collide with the actual solid block   that the edge tile is next to.Corner and edge tiles are   transparent and layered over other tiles so that you don’t have to   create single tiles for every single tile possibility. For example A,   B, C, D, E, F and G would all be their own tile otherwise.Also, if you’re still not understanding corners:Now  this is the quickest and easiest and way I can think of to make a   tileset from beginning to end following the tileset structure above:1. Sprite tile 7, the center block, and make sure that it loops nicely by placing a few of those tiles in a larger square.2. Copy tile 7 onto 0, 1, 2, 6, 8, 12, 13, 14.3.   Sprite an edge over tile 1, then over 6 and 8, and finally 13. If your   tileset supports it, you could even just copy and flip or rotate the edge only of one of these tiles over the other 3. (You wouldn’t copy and flip or   rotate the whole tile unless tile 7 loops nicely when mixed with  flipped  and or rotated versions of it).4. For tile 0, you can  copy the  right side of 1, and the bottom side of 6 and paste over  eachother and  then sprite in the missing corner. You can do the same  for tiles 2, 12  and 14, copying the opposite sides of the 2 tiles next  to it like with 0  (1 and 6).5. The square is now completely done.6.  For  the column (3, 9, 15), copy the left side of 0, 6 and 12, and  paste it  over the left side of 3, 9 and 15, then copy the right side of  2, 8 and  14, and paste it over the right side of 3, 9 and 15. Done.7.  For  the row (18, 19, 20), copy the top side of 0, 1 and 2, and paste  it  over the top side of 18, 19 and 20, then copy the bottom side of 12,  13  and 14 and paste it over the bottom side of 18, 19 and 20. Done.8.   For tile 21, the single block, copy the top-left corner of 0 and paste   it over the top-left corner of 21, then copy the top-right corner of 2   and paste it over the top-right corner of 21, then copy the  bottom-left  corner of 12 and paste it over the bottom-left corner of  21, then copy  the bottom-right corner of 14 and paste it over the  bottom-right corner  of 21. Done.9. For the corner tiles (4, 5,  10, 11), you want  them to match up to the edges of tiles 1, 6, 8 and  13, so somewhere off  the tileset, make a 3x3 grid and then copy tile 13  to the top middle of  the 9 squares, then tile 8 to the left, tile 6 to  the right and tile 1  to the bottom. Now the 4 corners of this 9-square  grid will be your 4  corner tiles. Copy tile 7 onto these corners, then  sprite these corners  so they match up to the 2 edges they will be  touching. Then cut away the  3/4 of the tiles you didn’t sprite over.  Try to keep the corners equal  or less than 1/4 of a tile size, because  remember, these corners will  need to be able to be placed onto the same  grid reference if needs be,  so you don’t want some of the under-layer  corners to be noticeably  overlapped. Now copy these corners back into  tiles 4, 5, 10 and 11, like  the tileset image above. Corners done.10.  Edges, if you want  any. (Particularly useful for long grass, etc).  Tiles 16, 17, 22 and 23  are the edges. Now what you want to do is copy  the square (tiles 0, 1,  2, 6, 7, 8, 12, 13 and 14) onto a space off the  tileset, and now sprite  the edges onto the outside of the 4 square  side tiles (1, 6, 8, 13).  Then see that these loop nicely horizontally  and vertically  respectively. Then copy and paste the edges into their  respective  tileset places. Done. (Of course, perhaps you only want to  have a top  edge, and no bottom or side edges, etc., or no edges at all.  Keep this in mind.)Now here is the order in which to draw the tiles correctly in the game world:1. Everything except corners and edges. It doesn’t matter which order within this list because these tiles won’t overlap.2. Corners. Again, it doesn’t matter which corners are drawn first, because they shouldn’t be overlapping eachother.2.5. Please note that the character, and most objects and NPCs / enemies are usually drawn here.3. Edges:-3a. Left and right edges.-3b. Bottom edge.-3c. Top edge.It’s  hard to say when additional tiles (if any) are to be drawn because it  depends what it is. For example you may want cobwebs to be drawn after  2. but before 3., so that it can be used on a solid block (the front of a  wall), but also be behind any edges if it was on an air block next to a  solid block (i.e. the corner of a room, the side of a wall, etc.). If  it was something like a pole, you may want it to be drawn before 1. so  that it is behind solid blocks, or even drawn after 3. if it’s meant to  connect to the front of a wall. As you can see, you’ll have to use your  own common sense and judgement to know when to draw additional tiles to  the game world!Remember,  from first drawn to last drawn is the  bottom / furthest layer (from the  camera) to the top / closest layer  (to the camera).Note that the tileset used as an example at the head of this tutorial can be used commercially without credit given.The End.

How to Design a Platformer Tileset

I made this quick example to show you how my tilesets are set out:

You could also add another row or so of additional tiles used to give variation or imperfection to the world. For example, you could have variations of tile 7 that are sometimes used instead of tile 7 (I just used tile 7 as an example because it’s usually the most commonly used, but you can have variations of any tile, obviously), or tiles of external things like branches or cobwebs.

Let’s run through what each tile is for:
(id - name / surrounding blocks)

Square:
0 - top left / Air up, left. Solid center.
1 - top middle / Air up. Solid center.
2 - top right / Air up, right. Solid center.
6 - middle left / Air left. Solid center.
7 - middle middle / Solid all around. Solid center.
8 - middle right / Air right. Solid center.
12 - bottom left / Air down, left. Solid center.
13 - bottom middle / Air down. Solid center.
14 - bottom right / Air down, right. Solid center.

Column:
3 - top / Air up, left, right. Solid center.
9 - middle / Air left, right. Solid center.
15 - bottom / Air down, left, right. Solid center.

Row:
18 - left / Air up, down, left. Solid center.
19 - middle / Air up, down. Solid center.
20 - right / Air up, down, right. Solid center.

Single Block:
21 - single / Air up, down, left, right. Solid center.

Corners and Edges:
4 - top left corner / Air bottom-right. Solid center.
5 - top right corner / Air bottom-left. Solid center.
10 - bottom left corner / Air top-right. Solid center.
11 - bottom right corner / Air top-left. Solid center.
16 - top edge / Solid bottom. Air center.
17 - right edge / Solid left. Air center.
22 - left edge / Solid right. Air center.
23 - bottom edge / Solid top. Air center.

Note: Corners and edges have a transparent background so that they can be used on the same grid reference as may be required by other corners or edges.


A - 3 edges must be used on this grid reference, so as you can see they are layered and have transparent backgrounds like corners.
B - The base tile here is a middle left square tile, and layered on top of it is a top left corner tile because because there is an air block to the bottom-right of this grid reference. The corner tile is transparent everywhere except the corner itself, so that tiles beneath it can be seen, such as other corner tiles potentially.
C - Similar to B.
D - Similar to B.
E - Similar to B.
F - Similar to A.
G - Similar to A.

Remembering that edge tiles are placed on an air block, objects in-game will not collide with these tiles, but will collide with the actual solid block that the edge tile is next to.

Corner and edge tiles are transparent and layered over other tiles so that you don’t have to create single tiles for every single tile possibility. For example A, B, C, D, E, F and G would all be their own tile otherwise.

Also, if you’re still not understanding corners:


Now this is the quickest and easiest and way I can think of to make a tileset from beginning to end following the tileset structure above:

1. Sprite tile 7, the center block, and make sure that it loops nicely by placing a few of those tiles in a larger square.

2. Copy tile 7 onto 0, 1, 2, 6, 8, 12, 13, 14.

3. Sprite an edge over tile 1, then over 6 and 8, and finally 13. If your tileset supports it, you could even just copy and flip or rotate the edge only of one of these tiles over the other 3. (You wouldn’t copy and flip or rotate the whole tile unless tile 7 loops nicely when mixed with flipped and or rotated versions of it).

4. For tile 0, you can copy the right side of 1, and the bottom side of 6 and paste over eachother and then sprite in the missing corner. You can do the same for tiles 2, 12 and 14, copying the opposite sides of the 2 tiles next to it like with 0 (1 and 6).

5. The square is now completely done.

6. For the column (3, 9, 15), copy the left side of 0, 6 and 12, and paste it over the left side of 3, 9 and 15, then copy the right side of 2, 8 and 14, and paste it over the right side of 3, 9 and 15. Done.

7. For the row (18, 19, 20), copy the top side of 0, 1 and 2, and paste it over the top side of 18, 19 and 20, then copy the bottom side of 12, 13 and 14 and paste it over the bottom side of 18, 19 and 20. Done.

8. For tile 21, the single block, copy the top-left corner of 0 and paste it over the top-left corner of 21, then copy the top-right corner of 2 and paste it over the top-right corner of 21, then copy the bottom-left corner of 12 and paste it over the bottom-left corner of 21, then copy the bottom-right corner of 14 and paste it over the bottom-right corner of 21. Done.

9. For the corner tiles (4, 5, 10, 11), you want them to match up to the edges of tiles 1, 6, 8 and 13, so somewhere off the tileset, make a 3x3 grid and then copy tile 13 to the top middle of the 9 squares, then tile 8 to the left, tile 6 to the right and tile 1 to the bottom. Now the 4 corners of this 9-square grid will be your 4 corner tiles. Copy tile 7 onto these corners, then sprite these corners so they match up to the 2 edges they will be touching. Then cut away the 3/4 of the tiles you didn’t sprite over. Try to keep the corners equal or less than 1/4 of a tile size, because remember, these corners will need to be able to be placed onto the same grid reference if needs be, so you don’t want some of the under-layer corners to be noticeably overlapped. Now copy these corners back into tiles 4, 5, 10 and 11, like the tileset image above. Corners done.

10. Edges, if you want any. (Particularly useful for long grass, etc). Tiles 16, 17, 22 and 23 are the edges. Now what you want to do is copy the square (tiles 0, 1, 2, 6, 7, 8, 12, 13 and 14) onto a space off the tileset, and now sprite the edges onto the outside of the 4 square side tiles (1, 6, 8, 13). Then see that these loop nicely horizontally and vertically respectively. Then copy and paste the edges into their respective tileset places. Done. (Of course, perhaps you only want to have a top edge, and no bottom or side edges, etc., or no edges at all. Keep this in mind.)

Now here is the order in which to draw the tiles correctly in the game world:

1. Everything except corners and edges. It doesn’t matter which order within this list because these tiles won’t overlap.
2. Corners. Again, it doesn’t matter which corners are drawn first, because they shouldn’t be overlapping eachother.
2.5. Please note that the character, and most objects and NPCs / enemies are usually drawn here.
3. Edges:
-3a. Left and right edges.
-3b. Bottom edge.
-3c. Top edge.

It’s hard to say when additional tiles (if any) are to be drawn because it depends what it is. For example you may want cobwebs to be drawn after 2. but before 3., so that it can be used on a solid block (the front of a wall), but also be behind any edges if it was on an air block next to a solid block (i.e. the corner of a room, the side of a wall, etc.). If it was something like a pole, you may want it to be drawn before 1. so that it is behind solid blocks, or even drawn after 3. if it’s meant to connect to the front of a wall. As you can see, you’ll have to use your own common sense and judgement to know when to draw additional tiles to the game world!

Remember, from first drawn to last drawn is the bottom / furthest layer (from the camera) to the top / closest layer (to the camera).

Note that the tileset used as an example at the head of this tutorial can be used commercially without credit given.

The End.