(continues from https://javi.blog/2015/04/09/my-game-developer-history-part-i/)
After StartTroopers was I was craving doing something more visual. Most of the programming I needed to do for the game was pretty standard and I wanted to do something a little more out of my comfort zone. And, of course, I had another idea lurking in the back of my brain, so… change of context!
The concept after Astra was quite easy: Take KSP and make it simpler. An editor of rockets, a serie of missions to do (Design a rocket to reach certain altitude, put a satellite in a stable orbit, etc). The plot was easy to develop, the game… not so much. Trying to simulate the effect of gravity over a long object is, to put it bluntly, a fucking hell. Also, with Astra, I discovered that particles are ultra costly for the CPU. More even than I thought. See that yellow-white exhaust gases in the picture? Originally they were pretty particles that were a lot more good looking… but I had to take them out and substitute them for a mere sprite animation. I was still using Crafty for this, so it was all canvas-based. By then, I was aware that I needed to make the transition to WebGL for the kind of games I wanted to make.
After growing tired of fighting about physics development and optimization, I decided to halt the project with only the rocket phase (no editor, no missions) half-done. You can test it at http://johnhackworth.github.io/astra/
Another of the main reasons to stop the development of Astra was my participation in Ludum Dare. If you don’t know about it, LD is a game developing competition, which happens a couple of times a year. You have 48 hours (Saturday and Sunday) and you need to work alone in a game about a theme that is announced at the beginning of the competition. I participated in the edition #29, and the theme was “under the surface”… so I made a game about building the underground system in a city inhabited by moles:
I ended in the 812 position of 2496 submitted games (yeah, the scale of Ludum Dare is staggering), so I made it into the top 33%! Not bad for a newbie and non-professional game developer 🙂 (the winner, by the way, was ‘The Sun and Moon’, which has been turned into a full real game and is being released on steam).
Also, this was my first adventure into the realms of WebGL. I wasn’t brave enough to try to do everything by myself, so I used what it is probably the most popular wrapper of the 2D context of WebGL: http://www.pixijs.com/.
Pixi is not a framework, it only deals with the graphics part of the game. Sprite rendering, primitives, etc … so no collision detection, no sprite sheets, no components… I ended doing a small framework myself wrapping pixi (who wraps the wrappers?) to add basic stuff I kept using in each game, like character generation or sprite layers ordering. There are full sized frameworks out there that also uses pixi as render engine and I could have used, but most of them are pretty oriented to do arcade/platformers and I was thinking of doing … Another kind of games 🙂
Anyway, the change was amazing. The canvas version of moletube could barely render 20 characters at the same time … the WebGL version could handle 400 without dropping a sweat! The caveat is that not all the browsers support WebGL… but hey, the final target of all this is to develop a native game, so who cares? 😀
You can take a look to MoleTube here: http://ludumdare.com/compo/ludum-dare-29/?action=preview&uid=32027
I was pretty happy about how moletube turned out in only two days, and I wanted to keep exploring what could I do if I kept working on it. I improved the graphics, used my new acquired WebGL superpowers to expand the map, adding scroll & pan, improving animations… And I ended with a pretty nice city simulator.
For the first time, I tried to improve a little the visual side, drawing myself everything. At this point, I have basically assumed that I wasn’t going to be able to convince any of my designer friends to help me with my games, so there was the only path available. And well, it was still far for a commercial grade game, but the graphics looked much better than my previous attempts.
Oh, by the way, the terrain tiles weren’t done by myself, I use a pack from KenneyNL (seriously, check what this guy is doing: Lots of amazing free stuff for games). All the sprites & buildings were done by yours truly, armed with patience and Inkscape.
The problem with my City-game-without-a-proper-name was that… well, I didn’t really know what to do with it. It has houses, it has little persons going from home to their work. It event had a button that allowed you to buy new buildings and people immigrating to your city. But what I was doing? a cheap version of Sim City? I didn’t really knew what to do with it … and at the same time, I had another idea that looked way better… so, again, I stopped the project and passed to the next one:
My current side project is a submarine warfare game. Basically is an iteration over the strategy genre FTL has defined. Something like “Crew management combat sim”. You are the captain of a submarine, and you need to recruit you crew and command them around the submarine while you travel and fight all over the north Atlantic. Originally has been planned as an “alternate history WWII game”, but now I’m thinking rebasing it to the cold war.
It’s done following the steps of MoleTube/CitySimulator, and for the first time I’m trying to put a little care on the visual side from the very beginning. It’s still a work in progress, but I’m pretty happy how it’s progressing. I don’t know if I will finish it or if I will end discarding it for one reason or another, but I’m trying to take it a little more seriously than the previous games. It hasn’t had a lot of work done in the last two months (I’ve been pretty busy with the Automattic trial period), but I hope I can retake the development soon.
Oh, and also for the first time, I’m trying to keep a work log on TIGsource: http://forums.tigsource.com/index.php?topic=44687.0
Keep in mind that it has a lot of things yet to do, but you can test what is done here: