LD28 December 13–16, 2013

Game Maker: Studio Standard free!

For a limited time, Yoyo games have made Game Maker: studio Standard free, you can read about it over here.

Instructions:

  • Download GM:S from here.
  • Install but don’t choose a license just yet.
  • Go to the GM:S icon in your system tray and switch to beta channel and update
  • Restart GM:S
  • There should be three license options, choose the middle one.
  • After following it’s instructions you should have GM:S, enjoy!

TTY GFX ADVNTR now on XBox Live Indie Games!

For more information https://levidsmith.com/games/tty-gfx-advntr/

My game TTY GFX ADVNTR is now available on the XBox Live Indie Game (XBLIG) marketplace.  This game started as my mini LD45 entry, which was written in C and SDL.  After receiving positive feedback from other Indie developers, I decided to port it to C Sharp and XNA, so it would be available to a wider audience.  The XBLIG version also has many new enemies, different weapons, and a skill system for crushing attacks.

boxart  ttygfx_levidsmith

Buy the game today for only $1 (USD) on the XBox Live Indie Game marketplace.  From the XBox360 home screen, select  Games tab > Browse Games > Indie tab > New Releases or buy it on the web at TTY GFX ADVNTR (only for XBox 360)

Trailer:

Official Soundtrack:

Tags: music, RPG, SuccessStory, XBLIG, XBox, xna

Failed shark jams. Instead I got those two crappy games

I was so really pumped for Mini LD – Shark Jam that at the end, I couldn’t make it.

It’s true I kinda lack time, but the real issue is that I couldn’t find the inspiration to produce it. During Shark Jam, I was actually working in parallel on a separate game and had a lot of progress on it. I also took a break and made a game for 0h game jam.

For Shark Jam, I had the theme down and the title (was gonna do Darwinshark), then when it came to gameplay, I had no idea what to make. After working on the intro, I realized everything afterwards was going to be lame unless I figured out something brilliant very quick, and I didn’t. Basically, I failed because I had too high expectation about what it was going to be.

So that’s my failed attempt at Shark Jam. Too bad, it had a nice intro. You can see it there:

 

DarwinShark

 

So what have I been doing meanwhile? Well I made those 2 crappy game:

250x200Screenshot 2013-11-17 20.30.18

 

Tags: FailureStory

BitmapCaching engine for upcoming ludum dare

Hey it’s Jack again,

So for he upcoming ludum dare, it is my understanding that we can use game engines that were produced before the 48h period. Since I’m planning to use mine, I wanted to release the code. It’s now on an open source license, and you can shoot me an email if you want some help on how to use it.

https://github.com/jacklehamster/TurboGraph-master/

The engine simply consists of saving Flash vector drawings into a bitmap at runtime, and reuse it later. It’s a common trick for boosting performance in Flash, and I’ve been using it lately.

Tags: flash, game engine, Ludumdare

Mini Ludum Dare #47 Announcement – Humble Beginnings

[View All ]

EDIT: MiniLD 47 is over! Thank you to everyone who participated!

As game developers, we not only develop games, we develop ourselves. There’s no doubt that every single one of us has improved since our beginnings. Now, it’s time to see just how far we’ve come. It’s time for…

MiniLD #47 Poster

[View All ]

Your task this weekend (Nov 29-Dec 1) is to find the very first game you have ever made (no, I’m not talking about that pong clone you made while going through a tutorial, I’m talking about your first original game) and remake it using the techniques, tools, and skills that you’ve acquired since then.

While crunching through code, look back at your game and note graphics/gameplay/music that you would have done differently today. The more, the better!

 

Rules

  1. Find the earliest game you have made in the past
  2. Remake it
  3. Include both versions (if possible) in your submission
  4. Disregard the previous three rules and go make whatever you want! I’m not going to stop you!

 

“What if all remnants of my first game have disappeared off the face of the planet?”

  • You could either remake as much as you remember, or choose a later game!

Submissions will be open until Wednesday Dec 4.

Now get out there, make that game, and never stop improving!

Hayden

Tags: lectvs, mini ludum dare, minild47

Comments

GameMakingMan1
28. Nov 2013 · 20:27 UTC
Well, the funny thing is, the first original game I ever made was for Mini Ludum Dare 46, LOL. So I’ll just do that.
28. Nov 2013 · 20:31 UTC
I LOVE the theme. This could be very great 😀
28. Nov 2013 · 21:16 UTC
Wow, I just realized that I have no idea what my first game was.
Holofire
29. Nov 2013 · 07:08 UTC
Hah, well the first game I actually made and finished was my Ludum Dare 26 game Pix. I was planning to remake it, so now is a pretty good time too do it.
zaratustra
29. Nov 2013 · 12:45 UTC
My first game is in a 5 1/4″ disk. For the MSX.
29. Nov 2013 · 12:50 UTC
hrm. might do the first game i actually completed, which was for a game jam in early 2008 :)
xgeovanni
29. Nov 2013 · 14:09 UTC
My problem is that I did just that a few weeks ago. Oh well.
shard123
29. Nov 2013 · 15:20 UTC
This is an awesome theme!
Madball
29. Nov 2013 · 15:24 UTC
Wow… That will be tough to remember… Well, I think I know the game.

Oh, I just searched through my computer and found some very old games! I feel kinda happy now.

Couldn’t find the game I thought about, though. But I’m still going to remake it as much as I remember.
goerp
29. Nov 2013 · 17:06 UTC
Hmm, my first game was for the Commodore 64 and I made a game for that just two weeks ago. But I may have an idea that will at least be graphically better than on the C64.

Not sure if I can find the original, I think it is on a tape.
30. Nov 2013 · 00:57 UTC
Hmmm, I love the theme but I no longer own the IP to the first game I developed that I also have the source code/assets to…
30. Nov 2013 · 08:44 UTC
If I had the time I would participate for sure, only other problem would be, that I’m not entirely sure which my first original game is…

But I want to remake all of my old games anyway someday, although it won’t happen this weekend.
30. Nov 2013 · 19:39 UTC
Wow, that would be complicated, the first game I tried to make was in an Amstrad CPC in BASIC but I cant remember it very good :] any suggestion?
arrogant.gamer
30. Nov 2013 · 20:48 UTC
Ha ha, I like this. My first game was for LD26 and it was a Twine game. I’m not sure that I’ve learned a great deal that could really be used to improve that game in the mean-time. At the time, I wanted the player to be able to “leave a mark” on the game, and I wanted twitter intergation so that you could take a “snapshot” of something delicate that you found.
fferro234
01. Dec 2013 · 02:57 UTC
I love the concept for this mini dare. These mini dares need to be announced a little farther out though. I guess I wouldn’t of been able to do it this weekend anyways, but I didnt see this post until now, and I check this website pretty often. At least a week or 2 heads up would be helpful though.
02. Dec 2013 · 03:11 UTC
I created a remake of my first RPG that I wrote on my 386 in QBasic back in 1995. Unfortunately, I was busy yesterday, so I only got to work on it today. I’ve included “THEN” and “NOW” comparison pictures. If I have some time this week, I will try to add music as well.
02. Dec 2013 · 08:09 UTC
I already did this once upon a time, I won’t be lame and submit it but here’s a video:
03. Dec 2013 · 01:12 UTC
Nooooo. Why did I miss this one… >_<

I did sometime ago a port of my first game (ignoring that Space Invaders Clone and all the unfinished RPG Maker/SDL+C++ stuff) to windows (usign SDL + OpenGL + C++)… But it wasn't a remake of the game.

Now I fell like doing it!

Unfortunately, I doubt I'll have enough time before the 4th. I have +/- 9 free hours per day, for the next two days… I'll see what I can do during that time. If I'm not done by the deadline, I'll try to complete it by next week.
07. Dec 2013 · 23:08 UTC
What? Oh, it’s over before I even knew about it. I might just use this for one of the other compos, though. :)

#SpeccyJam produced 22 games

Hi all, just an update about #speccyjam; Many more games were started but in the end 22 games were submitted

The developers and myself would love for you to go and play the games, and also share them / Like them / Tweet them / and comment on them (each game has its own Facebook comment section)

You can check them out here:
http://www.speccyjam.com/games

Tags: game jam, postmortem, progress, retro, speccyjam, update, zx spectrum

Turbo! Charity game jam

I’m finishing a game I made in ludum dare 27 called “there’s a hook”. The new version has completely new levels, textures, obstacles,mechanics, music and sounds. So basically huge changes. Looking back on my old code, it was terrible most of it ended up in one class being almost 1000 lines. I’m taking feedback from the ludum dare into consideration alot, such as being too hard, hard to understand how to progress further and completely removing the stupid effects which distracted the player. Not sure what to call this version yet

 

turbo_1

MiniLD #47 – Boxteroids, progress video

For this weekend Mini-LD I’m working on a remake of my first game ever made… an Asteroids clone!

“Boxteroids” will be a simple Asteroids clone, but with Box2D-driven physics… hope to finish it, because I’ve got not so much time this weekend 😛

Previous WIP video 

EDIT: updated!

October Challenge – Emergency Landing Disaster

A big thank you to Ludum Dare and the October Challenge 2013. My hastily made game has shown me the feasibility of the freemium/ad model on mobile.

The goal of the challenge was to create a game within the month, release it, and make a $1. I had hardly managed that, but since the end of the contest I have seen $480.94(40,786 downloads) in ad revenue on Android, and $260.08(17,797 downloads) on IOS, which was only released a week ago.  Ios, so far, seems to be a more profitable platform for such a game. We will see as time goes on.  I currently use Admob and Chartboost to serve smartbanner and interstitial ads to monetize my games.

While improving the game is on my list of things to do, I believe its clear that increasing my Unity game portfolio will drastically increase my ability to generate ad revenue. I already have a second flight sim in the workings among other projects that I hope to bring to IOS, then Android, and then finally OUYA(no ads, in app purchase model only).

Entry Page

Play it Free on IOS

Play it Free on Android

Play it Free on Amazon

Screenshot_2013-10-28-15-07-28

Tags: unity, Unity 3D

Comments

30. Nov 2013 · 02:44 UTC
YES YES YES IOS. YAY! Thanks!

A Story of Hearbreak

As mentioned in my previous journal entry, I will be remaking my first game, Heartbreak. It’s a bit of a strange tale, however, since Heartbreak wasn’t originally “made” by me at all, at least in the sense of programming. It was my baby design-wise and in the limited capacity of “art,” but I relied on another programmer to do all the actual creation. Still, I think that it will count fine for the sake of this mini-Dare. It’s either that, or Ping.

The game was originally made for the 2013 Game Jam (the same one that produced Surgeon Simulator 2013). It was my first time ever attempting to make a game, and I was nervous of the possibility of having no ideas. There were about 200 students packed into a lecture hall (which very much surprised me, as our university isn’t particularly large) when we were all given the theme for the Game Jam: the sound of a beating heart. We broke off into 15-20 person groups and went into separate classrooms to brainstorm.

This was my first experience with brainstorming, and I loved it. There were dozens of great ideas thrown around, my contribution being an idea for a point and click adventure game set inside a dystopian, film-noir crumbling city that was located in someone’s body, with a large, pulsating heart looming in the background. It was supposed to be a story about survival and dealing with impeding death, etc. Not a very good idea for a 3-day game jam.

Then, someone in our brainstorming group suggested a game consisting of a number of arcade-style mini-games. Although I cannot guess why, for some reason Heartbreak–a mix-up of the classic arcade game Breakout where the player controls the blocks instead of a ball, with the blocks arranged in a circle around a beating heart that serves as the player’s life counter–sprung immediately to mind. I abandoned the over-complicated concept of a point-and-click adventure game and clung to this new concept.

When we returned to the lecture hall and game creators began separating to work on individual games, I found myself almost working alone, since my concept of an arcade game about moving colorful blocks around a heart sprite didn’t quite grab attention in the same way that some of the other concepts did, but I managed to hook a couple people who claimed to be experienced with programming in GameMaker. With that, we all broke up again into different classrooms to begin constructing the games we’d gone with. My group was, by far, the smallest, with most groups having 6 to 10 people on a team, and I with just 3.

The two programmers set to work surfing the Internet and half-heartedly (forgive the pun) looking up tutorials while I fiddled with some sprite art and designed the game in my head. That’s how most of the first evening was spent–simply thinking while I worked. By the next day, after a short sleep and a lot of fitful half-awakedness, the game, simple as it was, was fully-formed in my mind.

The only remaining problem was that the two programmers claimed that the concept couldn’t be done in GameMaker (something I intend to prove wrong during this mini-LD), and so our little team was stalled for a few hours until a very nice and quite talented Unity3D programmer stepped in to join our group and get us on the right track. Said programmer made the game in Unity entirely on his own, with me hovering over his shoulder like a fussy mother, directing every aspect of the game’s design.

To cut an already too-long story short, our little four-person team (the two GM programmers were delegated to sound work, which meant searching Newgrounds for some music tracks and finding a few arcade-like sound effects) ended up winning “best designed game” for the Game Jam at our university, as well as “most popular” among all those students at our university who participated. A humble honor that was all thanks to the nice programmer who stepped in to make the game for me. It fired off a brand new interest in game development that I’d not really had before, and I’m still waiting to see exactly how far it will take me.

Tags: game jam, heartbreak, journal, Unity 3D

Need inspiration for your next game?

THEN MAY I PRESENT TO YOU….

Untitled-1

www.thecitizenkaneofvideogames.com

That’s right my friends.  With only one little click of your mighty mouse, yes you, YOU my friend can know what will be THE Citizen Kane of Video Games!

Brought to you with NEW FUTURE TECHNOLOGY never seen before until today!  Click the link and find out what will be this very moment right here and now THE Citizen Kane of Video Games.

With the very stability and future of the universe at stake, every possibility blinking IN and OUT of existence, you will find what at this VERY MOMENT will be THE Citizen Kane of Video Games.

So click now, and get started, before someone else gets there first!

My First Game – Then and Now

Last journal post until I actually make some progress, I swear!

After making a long post about my choice in game engines and then another explaining where my original game concept came from, I’m going to, finally, explain the history of my first game’s development. In brief, I hope.

Heartbreak version 1: Unity 3D for Windows

Original Heartbreak game, made in Unity3D

As you can probably see, the game is very flawed. One major issue was with the controls, which were tied to the mouse, so moving the mouse left and right caused the ring to spin. Hitting left mouse button would fire the balls from the central heart. On top of that, the game itself is bugged. At the eleventh hour, we discovered a bug on the fourth or fifth level that would cause the score to reset to 0 after the player had progressed to the following level. Finally, at the time I made a big deal out of “elegance of design”, which I saw as every part of a game coming together to compliment everything else.

Don’t get me wrong–elegance of design is a good thing, but I may have taken it a bit too far by creating a menu system that you could literally “lose” at (by accidentally selecting the exit button), in the interest of turning even the menu screen into a gameplay tutorial. I think I had seen one too many episodes of Sequelitis.

After the 2013 Game Jam, I was excited to try my hand at game programming, since I’d been only the lead designer for the original Heartbreak. I wanted to learn the craft of programming for myself, in the interest of being more self-sufficient. To that end, I decided to start as “simple” as possible and got into programming for the Atari 2600. Yes, the real Atari 2600.

If it’s a bit debatable whether or not I technically “made” Heartbreak version 1, since I was really just directing a Unity 3D programmer in what to do, I consider my actual first game to be my first remake of Heartbreak for the Atari 2600. I used the homebrew tool Visual Batari Basic, which, when combined with Batari Basic, gave me a convenient and simple IDE with many helpful sprite and sound design tools, plus the ability to code in BASIC and use a pre-made kernel, rather than coding everything directly in 6502 Assembly. I was extremely grateful for that.

Heartbreak version 2: Visual Batari Basic for Atari 2600

Prototype Heartbreak game, made in Visual Batari Basic for the Atari 2600

It took me a couple months to actually make Heartbreak for the 2600, since I was learning along the way and frequently had to go back and reprogram bits of code here and there as I discovered more efficient ways to organize the game logic. Keep in mind this was all done for a system with a 1.19Mhz processor and 128 bytes (yes, individual bytes) of memory (only 26 bytes of which were available to me in Batari Basic, since the kernel I used consumed the rest of it to write the playfield to the screen).

In the end, it was again thanks to a more experienced programmer, who generously wrote a custom kernel for me, that Heartbreak was able to function well on the 2600. Normally, using Batari Basic’s standard kernel, only a single playfield color can be displayed on-screen per playfield pixel (those big, rectangular blocks), but the programmer managed to work around that limitation with some clever 6502 Assembly wizardry that I still don’t fully comprehend.

From the custom kernel as a framework, I was able to build the finished game. Some months later, I revisited my old code and cleaned it up, organizing everything into neat, clean functions that you can view here. I’m rather proud of how tidy and efficient it all is (relatively, keeping in mind that this is BASIC with 6502 Assembly calls in it, all programmed in non-object oriented in a language that relies on spaghetti code). The game itself only uses about 1000 out of ~3000 CPU cycles that are available with this particular kernel, and the game itself is under 4 kilobytes. And, yes, it works on a real Atari 2600. If you’d like to try for yourself, I included Heartbreak, with a few other small games I developed for the Atari 2600, in a 32k compilation ROM (along with an updated version of my previous LD, Ping) that you can get here (you’ll need an emulator such as Stella to run it, unless you have a real 2600 with a Harmony cartridge), and you can see the finished version of the game below.

There have been a number of gameplay changes since the Unity3D and earlier 2600 versions.

Heartbreak version 3: GameMaker for Mobile

Originally, the player had to hit a button (joystick fire on the 2600, spacebar or left mouse on Windows) to fire a new ball from the heart. The ball would take on the color of the heart and it had to either match the block’s primary color or be one of the primary colors that made up the block’s color, or else the player would lose a life (indicated by the size of the central heart). Hitting a wrong block three times meant game over, but the player’s heart would be brought back up to full size after every stage.

Once I’d finished the basic game on the 2600, I was seeking to program in alternative gameplay modes, since alternate modes were a thing with many 2600 games. One of those modes included a bouncing ball, so rather than the player having to spawn each ball (which would fire from the heart and then disappear once it had stricken a block), the player only had to press the fire button when they wanted to transfer the heart’s current color to the ball. This meant a lot less button mashing, and it was far more satisfying to just control the blocks to catch the ball as it bounced. This ended up being the only game mode in later versions.

With the block colors, I’d always intended the game to start with simple primaries–Red, Yellow, and Blue, and work up to secondaries–Orange, Green, and Purple–and finally to White and Black. White blocks would give you a heart back, but black would take away a heart if they were struck and had to be avoided, which was particularly challenging in the 2600 version, because the background is solid black as well.

However, this lead to the game becoming progressively easier, since an orange block could be broken by either a red or a yellow ball, a green with yellow or blue, and a purple with red or blue. Obviously, a game should get more challenging over time, not less. I fixed this in the 2600 version by having the ball remove a color from the block’s color, leaving the remaining colors in its wake. For instance, if a red ball hits an orange block, it bounces off and leaves a yellow block behind, which must then be broken by a yellow ball. And if the orange block was hit by a yellow ball, it would bounce off leaving the block red. Yellow blocks would need to be hit by all three primary colors before they would disappear.

Overall, I’m very pleased with how the game itself plays as of the final 2600 version, but a few things had to be sacrificed in the move to the 2600’s limited hardware.

For one, the ball will only bounce at a few pre-determined angles, as letting it bounce freely would result in the ball always getting lost, particularly since the blocks aren’t of uniform shape and they don’t fully encircle the central heart.

Additionally, there was no way to add multiple concentric circles to the game, so it always operates on a single ring. I would very much like the game to have up to three or four rings at a time, as in the original Unity3D version.

Finally, I always intended the game to be a musical arcade game, but having background music wasn’t feasible with the 4 kilobyte size limit of the 2600’s ROM. I would like to bring a musical quality back into the game, with the heartbeat matching the tempo of the current soundtrack, rather than set to a steady, heart-beating sound effect.

On top of all that, I’d also like to bring the game to a mobile setting, which I think would fit the gameplay very well, being a sort of casual game that works best in just a few moments played at a time. This would, of course, mean reconsidering the control scheme. I would like a simple swipe gesture to allow the ring to spin, perhaps with a simple tap used to set the ball’s current color to the color displayed by the heart.

On the other hand, I may modify that mechanic so that the heart does not change colors on its own, but instead must be tapped by the player in order to change the ball’s color. Or maybe the heart and ball always share the same color and, rather than tapping at the right moment to get the right color on the ball, the player would need to tap the heart to swap between its colors? We’ll see.

While I’m at it, I’d like to update the game’s visual style, maybe moving away from the direct pixel-art look into something a bit cleaner. And, who knows–if I find the time, maybe I’ll try implementing some kind of power-up system, similar to Arkanoid. I may have an idea of how it could work.

Now it’s (finally) time to get to started!

Tags: atari 2600, batari basic, GameJam, GameMaker Studio, heartbreak, journal, ping, Unity 3D

MiniLD #47 (Day 1) – Pix 2

So, I shall attempt the MiniLD #47. However, I am about 80-90% sure that I will fail due to me not having the time or resources available. Also, this is a very ambitious project for just 2 days. I am away from my main PC so I am coding and drawing on my laptop.

I currently have a very fancy shmancy title screen and some code for a level editor. Tommorow I will get the map loader and renderer working, and finish off the level creator.

My progress so far:

 

Pix 2

 

If you want to view the original game I created for LD26 called Pix, click here!

Pix 1

Templating

The core of Heartbreak is the blocks that get colored and rotated. Thankfully, GameMaker should make this relatively simple, since it has a coloring function that I’ve tested and find to be working fine, plus a simple rotation value for each sprite. All I need to do is create a single block, give it an offset that will make it rotate around the center of the screen, and then rotate and color the blocks based off of a controller object.

I’ve already had some annoyances with selecting a resolution, so I’m just going to keep it simple (since I don’t have much time or experience for fiddling around with adjusting views for every possible mobile device) and just design it for my own Motorolla RAZOR HD phone, which seems to have a 1280×720 screen. If only there was some semblance of a standard when it comes to phone resolutions. This is certainly giving me a whole new respect for mobile developers, who have to contend with multiple versions of images for all possible densities and resolutions of phones, and they are all over the place.

A question I now have to ponder is how many blocks to design the game for? I have a couple templates made, one with 80 blocks and one with 40 blocks. The Atari 2600 version of Heartbreak used 16 blocks in a row, but that would mean 80 blocks after 5 rows and I wonder if that wouldn’t just be too tedious to play through. I suppose I can always adjust things later, if need be.

What bothers me is that 8 blocks seems good for the inner-most two circles, but since the individual blocks in the rings get larger and larger, that makes the outermost ring quite easy. I suppose I could combine rings of 8 and 16 blocks, either with the inner-most two or three rings sporting 8 while the outer ones have 16, or maybe just a random combination of 8 and 16? The latter would be a bit more tricky to program, as leaving things purely to random chance could result in too many or too few blocks in a row. I’ll have to see how things go.

80 blocks40 blocks

EDIT: Using different sizes for the rings gives 64 blocks total, a nice in-between, and requires more and more precision for the player, so I think that I will go with it this way.
64 blocks

Tags: journal

Remaking Untitled

I saw the theme to this mini Ludum Dare, and immediately knew what I wanted to do.

Almost 2 years ago I released a game that I called Untitled, that game started as an entry to Ludum Dare #21, I spent another year or so polishing the game, and adding features.  While its not my first game, it is the first one that I really considered and put a fair amount of time into.

 

For more information on the game:

http://untitled.allaroundgames.net/index.php

 

I’m happy with how the game plays. The shortcomings for me are the interface, and the accessibility of the game. Having to download a client to play something that could be done in a web browser didn’t help the appeal. The original client was made in Construct Classic, as it is now called.

For this MiniLD I will be recreating the game in Construct 2, and reorganizing a lot of the backend features. provided I have time I will also revise the website. I don’t know that I will complete the remake this weekend, but it will be finished. My immediate goals for this weekend is to have the gameplay elements all working correctly by Sunday.

Day 1/3 Conclusion

Well, I think that it’s gone well so far. Using the template posted earlier, I built base sprites for each row of blocks, then created a script for creating and setting up individual blocks and a script to churn out full rows. Much like the original game(s), I hope that this version will do a decent job of teaching intuitively through level progression.

Also, the heart changes colors and has a simple beating animation (just scaling down for a frame).

Tomorrow, I’ll be adding the ball and controls. If I have time (which I expect I will), I’ll also add in all the core levels and the score counter. There should be at least 12 levels, each of which will introduce something new (an additional color or another row), plus a few different random mixtures for infinite play beyond that.

Here is a screenshot of where I’m at so far, with all the blocks being randomized into place. Seeing how it looks, I’m definitely going to have to figure out something different visually. I was shooting for something cleaner, but it just looks drab in the end, plus the blocks don’t fit together particularly well, so I will have to rethink that. Maybe a pixel-y art style will be back on the table, since it’s relatively simple to accomplish, but would add some visual grit and variety, if done well, so everything wouldn’t seem so bland.

Heartbreak v3, with randomized blocks


Time for a break, then bed.

Tags: GameMaker Studio, heartbreak, journal

November Challenge failed

This year I was really ambitious to complete the October Challenge. That was in September. Then in early October I had nearly no time for game development. So starting only midway in October I figured that I could just postpone the October Challenge to November, since it’s more like a personal challenge than a competition. So I started my very own November Challenge.

But as life is, there are many other things to do. And I get easily distracted from what I want to do (or also called procrastination). At some points I wasn’t even sure if I should bother anymore. This means I only have an unfinished game (about in the alpha-stage I would say) now at the end of November.

Still, I showed what I have to some friends and they reassured me, that it isn’t that bad and that I should just keep working and finish something. This made me decide not to give up that easily. Since I (sadly) can’t do the LD 28 in December (only got one day time, maybe I’ll do a joke entry, but I’m not sure if it is worth the try) I will instead work on my October 2013-Challenge in December.

I also recently watched this video about Motivation which made me rethink my way of working and (surprise, surprise) motivated me. Jazza is mainly working as an artist/animator, but it pretty much applies the same to game development.

 

The 2013 Challenge is on!

 

Tags: motivation

Cottonhead: Post-Jam edition

Am I too late?

We finally got around to making the Post-Jam version of our Ludum Dare #26 game, Cottonhead.
We made this for the Charity Game Jam, so check them out!

Anyway, you can play the new version here or read more about it here.

Here’s a trailer for Cottonhead if you don’t know what that is:

Thanks!

Recovering, Day 1

It’s been a while since I made a game. I didn’t make since summer… And the December LD is coming!

So, I’m going to get back into making games. And I’m participating in MiniLD #47.

Let’s begin!

————— Relearning planning —————

Hmm… The first game I ever made? I remember my old games surprisingly well, but I can’t remember my first one. They were written with Delphi 7 and they are short. I think I remember one very old game… I don’t think it’s the oldest one, but I’ll pick it. Let’s see if I’ll find it.

I’ve changed a computer since then, but I backed up some data from it. Searching didn’t take long. So, I found a folder of my old Delphi games. Unfortunately, I didn’t find the game I was looking for. OK, I remember it quiet well.

Also, I found out that I don’t have Delphi on my computer. Well, I’ll have to use another program then.

01Restoration

A rough restoration of the original game.

The game is simple: you have a stickman, you move it around. You only see 4 adjanced tiles, and, well, ones you already saw. You need to reach the chest. Once you do it, you go to the next level and control another stickman. There are doors, which need to be opened with levers.

But I didn’t use an individual screen for each level. So, in the picture above, there are 3 levels. It allowed me to make a twist: communicating beween levels. So, the switch in level 3 doesn’t open the door in level 3, but it opens the door in level 2. And behind that door is the switch that opens the door in level 3.

After some time, I created a map for my future game.

A map for the game

A map for the game

I designed it so (I hope) characters never meet each other. (Oh, they actually do. Well, nvm.) Also, switches can’t be switched back once used. And wires are just for understanding, I won’t include them in the game.

So, the planning part is done. Then I started programming.

————— Relearning programming —————

Well, not really relearning. I’ve been programming though I haven’t been programming games. I decided to use PhYard Builder, that I usually use for games.

The first problem is: how to store the map data. I planned to make undoing for my game, so I should make the map loading flexible, but not containing too much data. Each tile has up to two values:

  1. Is it explored or not. Unexplored tiles are inactive and and black.
  2. Is it changed or not. Used for appearing/disappearing platforms and switches turned on/off.

So, basically, there are two things to store: the level itself and the state of tiles.

The second problem is switches. I usualy store the level in a string, with each char representing a tile. But switches need more information, because they need to know what tile(s) to switch. So, I decided to mark switches with letters A-Z and describe the behaviour for each one individually.

The ends of the level also need more data: the beginning of the next level. But I can just make them switches those change not the state of tile, but is it explored or not. And mark them with letters a-z.

So, I converted the level to the text form:

[stextbox id="grey"]................
 .@.@...@..A.##B.
 .#.#.#.#.C......
 .#.#.#.#..D#@a@.
 .b.E.c.#.d...F#.
 .......#.G..#H..
 .@.I.J.#.#.#.K#.
 .#.#...#.L.M....
 .###.N##........
 ...........##.e.
 ..f..@.@####O...
 .....#..........
 .g.###.##P.#Q.R.
 ...S...#...##.#.
 .....T###U......
 ................[/stextbox]

After about four hours, I finally got to test the game. I could move the player anywhere by clicking, and I couldn’t change players. Also, switches weren’t working. Oh, I just forgot making them work.

The first play

The first play

After a lot of debugging, I managed to make it work. Unfortunately, I found out that I also have to remember player positions. So I decided to make undoing remembering the level. So, I failed at planning. I hope that won’t happen in an actual LD.

I wiped off the “changing” of tiles surprisingly easy. So, I managed to make everything excepting the undoing.

The final version of the day

The final version of the day

Finally, I finished the undoing. The programming part is complete!!!

————— Results —————

What went good:

  • I made it!
  • I remembered how to program.
  • I planned well. At least the level design.

What went bad:

  • Time. I think it took me longer that I thought.
  • Code. The thing that went the wrongest is the undoing. I didn’t do it before, but I think you remember the action, and trace them back to undo. But I remembered the whole level…(