Mar
27

Why Ludum Dare is Awesome and Why You Should Join It

I’ve started programming back when I was 10 years old, messing with Visual Basic and Delphi, and immediately my coding efforts turned to game development. At that time, indie games weren’t as popular as nowadays, and finding a place was difficult, specially with my 1o-year-old sociability and terrible English speaking skills. I eventually found Game Maker and the GMC forums, and for a long time that was my main point of interaction with other game dev hobbyists. And well, if you know GMC, you probably understand that it’s not the best place to hone your game developing skills.

Fast-forward to 2009. I’ve started many game projects over those years and I had yet to release anything finished yet. And as I started working on IBM, time for coding became a rarity and I started getting distanced from game development. On the second half of 2009 I entered university, and I started making games again (where I made Batalha Otaku with other students). Then in 2010 Minecraft exploded and got insanely famous. I, too, got hooked and amazed with Minecraft and Notch’s success. More importantly, I got really motivated to make indie games. And then, by chance, I found about Ludum Dare on his old personal page.

I got interested, but was reluctant at first. Making games in 48 hours? Dude, I’ve been trying to make games for years without success. I started to chat with people on #ludumdare IRC channel, trying to understand the whole idea of making games in such short time. The people on the IRC were very helpful and receptive, and I decided I’d join. Doesn’t matter if I’d have a finished game at the end or not, I just wanted to try and see if I could do it. The experience by itself would be rewarding, I was sure of it.

Then, Ludum Dare 19 began. I was working that day (well, night actually), and on the office I couldn’t think of any game idea, but regardless I managed to find some spare time to follow how people were doing on IRC and on the Ludum Dare blog. That day I made my first contact with game developers that made games that I actually played. People that knew how to make games. And for the first time, I felt like I wasn’t just a guy making games alone in his house. I was there with literally hundreds of other developers, thinking, testing, giving advices, learning. In the morning, 8AM, I left the office inspired. I got home and rushed to the computer.

No words can describe the experience I had that weekend. It was awesome. I learned a lot with others, seeing how they created their games as the deadline creeps closer, and sharing knowledge with them. It’s amazing – and even a bit silly – to think that after 10 years trying to make games, I didn’t realize how many people are out there making games, and how much I could learn with them. After so many time trying to make things, managing to get stuff done in just 48 hours was a… refreshing experience, to say the least. It got me motivated again.

Ludum Dare helped me get into the right track. Before I entered it I had no vision of how the indie game scene actually is. I had no contact with the game developers that were right there, making the games I was playing, and that were people just like me, with a passion for developing games. The people at #ludumdare are always sharing experiences, talking about game development and helping each other, and by participating of all that I am learning much more than before. Also, I am now much more confident that I can too make games. If you’re serious about making games, join Ludum Dare – at least once. It’s worth it.

That weekend, on Ludum Dare 19, I made Fate of Mankind (see the timelapse of the development). It was the first game I finished after a long while. To my surprise, it did well – 6th place overall, and it even got mentioned on Bytejacker and Indiegames.com! That was pretty damn awesome. But still, the experience was certainly the greatest reward.

Mar
01

Snake Eats Snake and our experience with IndieCity

It’s been a week since we released our first game Snake Eats Snake on IndieCity for $1. Snake Eats Snake is a simple game we created during the last Global Game Jam, where the theme was a picture of Ouroboros. If you haven’t yet, you can check it out on http://indiecity.com/game/SnakeEatsSnake

ICELib

We decided to further develop the original game we had in hands after the GGJ. The gameplay was rebalanced and improved, and we wanted to add achievements and online highscores. Fortunately, IndieCity offers a SDK – known as ICELib – with exactly those functions. I made previously a wrapper for that SDK for people that wanted to use it with Game Maker, so I had things working very quickly without much problems.

But then, I realized that there was a new version of the ICELib. Wait, wha…?! When was that released? What changed?! I got worried, because previously there was an update that completely changed how games and developers authenticated with IndieCity, and many problems occurred because of that. So, what would I need to change on my wrapper (and, perhaps, on my game)? Who knows, IndieCity doesn’t have a Changelog and doesn’t notify the registered developers when there’s a change of their API and what changed… Reluctantly, I decided to ignore it. Not sure if that was a good idea but I had my wrapper working and that was good enough for me. As I write this, I have yet to install the new version, and I still don’t know what’s new on that version.

Achievements

Our team then started to work on the achievements for the game, and we rapidly wrote down a large array of achievements we wanted to implement. But we soon ran into another problem: IndieCity specifies that each achievement must be worth a specific number of points, and every game that uses their achievement system must have at least 10 achievements, with a total of EXACTLY 1000 points. No more, no less. We had a big number of achievements, which were categorized on easy, medium, hard and very hard difficulties. We want to distribute points in a coherent fashion according to the achievement difficulty, while also maintaining a good distribution of points between them. We played around, trying different distributions of points. “Let’s make easy ones worth 50 points…” “Hmm no that’s too much.” “Reduce the points on the hard ones then!” “Argh, now we have less than 1000 points!” …sigh. Long story short, we spent a lot of time trying to comply with that silly requirement. In the end, we had to cut achievements and readjust points until they finally totaled 1000 points.

And why, I ask? Why do we have to do that? Couldn’t they just make that 1000 points a limit, instead of a requirement? The IndieCity staff says it’s to make it consistent between games, so “they don’t have to go and look at the achievements on the game in order to compare it with another game’s achievements”. But why would a player want to compare achievements? I have never heard of players that decide which games to purchase based on achievements points. “Oh, Awesome Game X looks fun, but Silly Game Z has more achievements points. I’ll buy Silly Game Z!”. No! That just doesn’t happen!

Release

Ok, after a lot of trouble – being unable to login to IndieCity, achievements disappearing from my game page on IndieCity – everything is finally ready. We add the last details (where other WTFs surged…), uploaded it and submitted to CAP. The Community Approval Process is the method used by IndieCity to filter games that doesn’t work or that aren’t indie games to enter the Store. As the name implies, it’s a community-driven process, where a game requires two “passes” by “lead users” to be approved. Two days later the game got the two approves and bam, went live on the store. Like that. No “set date for launch” or anything like that, it just goes live. Which didn’t really bother me this time but… anyway.

OMG GAME IS LIVE PEOPLE, GO BUY IT!!! And some did. Most didn’t. And I think Wade McGillis is completely right when he said: “Psst! I don’t want to download a client – just to buy a game“. Downloading things they don’t want is bothersome. Download and installing an additional software just so you can play a game is quite bothersome. And a lot of people complained about that. Now, I have no idea how many potential customers we lost because of that hindrance – maybe two or twenty, I don’t know. IndieCity staff says the client won’t be dismissed because it is necessary to avoid bandwidth costs – the client works as a torrent-like thing where users share the downloaded files – by the way, I’m not a security expert, but I see some problems with that, like users deliberately or accidentally altering the files – maybe with virus infections or keyloggers – and sharing those with the client system. I’d really appreciate if they did dismissed that client, or at least make it an optional download.

Final Words

Until now, five players purchased Snake Eats Snake – most thanks to Dogbomb’s lovely review -, which is somewhat disappointing. And to be honest, the experience of publishing this game on IndieCity was also somewhat disappointing. IndieCity has been around for a while – the first post on their blog dates back to November 2010. One would think that they’d have a strong system by now, but IndieCity still lacks the most essential stuff, like the changelog and, maybe more importantly, reviews.  Users can rate games, and I noticed that the first person that rated our game gave 1/5 stars. I wanted to know why, but being unable to ask the player and the player being unable to provide a review, I stay stumped.

In their attempt to be the “home of all things indie game”, IndieCity is misleaded. It presents more ways to keep players and developers away, with unnecessary achievement requirements and obligatory client downloads, than ways to bring new users to it. I still like what they’re trying to achieve and I really hope they get there someday. But for now, I will consider other marketplaces like Desura and Indievania first.

Feb
28

How many games can you create in 48 hours?

MiniLD #32 is over for me. Although I did not made the number of games I expected to make (mostly because I procrastinated a lot this weekend), I am satisfied with the result. The first part of my completely devious game-developing adventure was to create a pack of 50 or so games, with a very retro aesthetic. And as it turned out, 50 games was a bit out of hand after putting my procrastination time on the equation, so I felt comfortable reducing the goal to a puny number of 12 games. This pack of games was titled Super Advanced Hyperst-uh… err it’s the title you see above. Also known as 12-in-1 LC Collection.

After creating those 12 little games, I decided to make something more complex. My first thought was to create a randomly-generated RPG final boss battle thing. I went as far as to create randomly named characters with randomly generated status, and a menu. And it was actually looking pretty good to be honest. Of course, the random name generator was a bit crazy, generating things like Gridobrezhiu, Equicrocro, Pigrashounen, Her and other bizarre things. Aside from that, works quite nicely.

Utekyasos is a perfectly common name... somewhere

But once I got to code the enemy, I realized it would be way more complex and time-consuming than I thought. So instead I decided to go back and make a platformer instead. At first I had no clue what to create, so I just started drawing tiles, tying things together, coding collision and stuff. Then I had the idea to include a character from my previous game – Subject 0017 from Fate of Mankind, to be more specific. Then I had the idea to make it more or less like a sequel. And then… well, just play it. If you liked Fate, you’ll enjoy Tower of Mankind.

Now with more crumbling towers and cheesy lighting effects

Aaand weekend’s over, time to rest and enjoy some games! Anyway, I’m pretty happy with the results and had a lot of fun. You can check out both Tower of Mankind and the 12-in-1 LC Collection on my MiniLD #32 entry page.

Jan
13

2012 begins, Global Game Jam and next projects

Oh man, I’ve neglected this website for too long… but here we are again. A new year, and a new site as well. I’m still working on it so don’t mind the interface, I’m still fixing here and there. Hopefully I’ll have everything looking good here until the GGJ on January 27th.

If you’re not familiar with the event, Global Game Jam is a world-wide event for game developers to meet other game developers and do what they know better: develop games. Programmers, artists, composers and game designers all around the world will meet on local sites on the most remote corners of the planet to conceptualize, implement, test and release a game in 48 hours. Crazy? It sure is; but you wouldn’t be on the game industry if you were sane would you?

I’ll be attending the GGJ on UNICAMP (Campinas / SP). There’ll be dozens of developers there, and a couple of friends of mine. What kind of game we will make there? Well, I have no idea – not that it matters. It’s all about the experience, having fun and interacting with other people.

After the Global Game Jam, I want to work on something bigger than my last projects. Let’s see how that will turn out…

Mar
18

“Fate of Mankind” and “Extreme Fishing” apparel now available!

It’s true! Now you can help us continue making cool games by buying our new t-shirts! Read more »

Jan
31

Why Not? Game Jam!

A team of four members (plus one), five pizzas and two days to develop a game. It’s our Why Not? Game Jam! Read more »

Jan
11

Sixth Place

I am much happy to say that Fate of Mankind achieved sixth place on Ludum Dare 19. Huzzah! Read more »

Dec
26

Ludum Dare votings

This is taking forever. There are a lot of entries I still need to vote on. I decided I won’t be reviewing all of them, because… There’s just too many. Read more »

Dec
26

Batalha Otaku

Ever thought that it would be cool to be into the game? “Batalha Otaku” is a fighting game with minimalistic mechanics that enables you to become a fighter and battle against friends or foes with special skills