About Skipi

Entries

 
Ludum Dare 35
 
Ludum Dare 33
 
Ludum Dare 32
 
Ludum Dare 31
 
Ludum Dare 30
 
Ludum Dare 29

Skipi's Trophies

Skipi's Archive

Hotline Trump Tower is finished! Godot’s a lot of fun!

Posted by
Monday, April 18th, 2016 8:50 pm

So I got my entry done in time for the Jam! I could have had it in for the compo, but I procrastinated and played way too much Dark Souls. 😛

So I had a fairly ambitious idea. I wanted to basically remake Hotline Miami. It was the first time I had used the Godot engine (or any engine, really) for a serious project. I’m pretty amazed by how flexible it is and how quickly I was able to bust out features with relatively little effort. It really is an amazing engine.

If you want to try my entry, Hotline Trump Tower, you can do so here: http://ludumdare.com/compo/ludum-dare-35/?action=preview&uid=34647

In my game (I can’t believe we thought of this idea, let alone go through with it), you play as a shapeshifting reptilian alien whose goal is to infiltrate Trump Tower, find and kill Donald Trump, and escape in his form so you can go run for president and Make America Great Again™! Yeah…

We had a rather novel idea…

Posted by
Saturday, April 16th, 2016 1:22 am

I don’t want to give it away, though. So here’s a not-so-subtle hint. 😛

 

Making progress

Posted by
Sunday, December 7th, 2014 2:25 am

I got hit with a funk right before the competition. Started off with little motivation. Glad I could get myself out of it, though. 😀

 

Here’s what I’ve gotten so far on my entry:

ChessWars_3

 

Sharing my personal library

Posted by
Friday, December 5th, 2014 4:20 pm

I’m in for my third competition. As always, I’ll be using my own codebase.

You can get my codebase here: https://sourceforge.net/projects/skipiengine

Under 2.1 I’ve also implemented a neural network class in the event the theme is Artificial Life. I’m giving this to the community, so make some kick ass games with kick ass AI!

 

Here’s what else I’ll be using for the compo:

Language: C++

Libraries: SFML, and maybe Box2D

IDE: Visual Studio 2013

Graphics: Gimp

My second time. Sharing my codebase.

Posted by
Friday, August 22nd, 2014 12:19 am

This will be my second Ludum Dare and for this competition and last time I used my own engine to make my entry (good thing, too. made things a hell of a lot faster to develop). I’ve recently refactored and changed a few components and made a new version of the engine. I’ll be using code from both versions in my entry.

Both versions can be found here: https://sourceforge.net/projects/skipiengine/

The language I’ll be coding in is C++. I’ll be using SFML for graphics, input, and audio, along with Boost for all the goodies it provides. My challenge for this LD is to create a strategy game out of the topic, no matter what it is. Should be fun!

Beneath The Clouds Post Mortem

Posted by
Friday, May 2nd, 2014 7:00 pm

This was my first Ludum Dare (along with many others competing).  It was a fun experience, and I learned a lot even with tech I thought I already had a good handle on.

My entry was a little game I call Beneath The Clouds.

 

 

Overall, I’m moderately happy with how it came out. I ended up wasting a lot of time during the second day, and the game suffers for it. But even so, I’m happy that I have something that can at least be considered “playable.” 😛

Pre-Development

Right before the competition began, I started on an engine, and it was very good that I did. It allowed me to accomplish quite a lot of the preliminary work fairly quickly, and so I know for future competitions I’ll be using my existing code base.

Development

First thing I did when the theme was announced was take a walk. It helped me think and come up with ideas. Some of them included:

-A zombie game where you play as the zombie and you have to drag humans beneath the ground to turn them into zombies and you amass a zombie army in this way

-A platformer where you play as a little gnome who jumps from rain drop to rain drop to get above rainclouds

-A shooter/platformer game where you grow plants to get above the clouds

I ended up going with a combination of the last two.  Going with plants, I could work with  genetic algorithms. An idea that I was already familiar with and knew how to use. Plus it was something I wanted to do should Generations been the theme.

 

My first 24 hours of development were quite productive. I managed to get most of the art assets finished, get sound effects and the background “music” done, implement a particle system to handle rain, and get the plants growing according to genetic rules. By the time I had gone to bed after being awake for 36 hours, I really only needed to implement reproduction on the plants, AI, and collision detection.

 

The second 24 hours wasn’t so smooth. Due to going to bed, I lost 8 hours of possible development time. Additionally, I had agreed to go to lunch with some of my classmates and lost an additional 4 hours.  I was left with a narrow 5 hours to finish the rest of the game, plus two hours I had put in before lunch to implement reproduction. Those hours ended up playing by very quickly, and I had to cut out parts of the game, like certain plant types changing behaviour of enemies and such. Submitting the game and getting everything prepped was literally the last minute. Got it done, though.

Post-Development

The end result does suffer from time constraints. It functions well enough as a game, though I do agree with a lot of commentators in that the player doesn’t have a large amount of control over the world and how the plants grow. It is possible to win on a consistent basis, however I know I am able to do that because I have an understanding of how the plants work. Not so for anyone just playing the game, so it can be confusing if one doesn’t read the README or description.

 

On the positive side of things, a lot of people have been telling me that the idea behind my game is a really good done.  And that with a bit more polish and time in development, it could become a really good game. Additionally, it seems I created a good mood for the game. Instead of traditional music (which I have exactly 0 experience in making), I opted for just having rainfall. It’s a choice I’m glad I made, even with nearly giving myself a virus looking for a free rain generator.

What Went Right

I’m really happy with how the game looks. I have little experience with pixel art, but I feel I’m competent so long what I am working on is low res, like 16×16 as the game uses. I can honestly say, I did not expect the textures and such to turn out as well as they did.

I’m also happy with the rain effects plus the accompanying rain “music.” It really does feed into a relaxing atmosphere.

Finally, I’m happy with how the plants behave, for the most part. The way I handle the plants allows for a lot of emergent properties. For instance, a plant having a lot of flowers can help increase its chances of reproducing since it spawns off more seeds. Additionally, a plant with a lot of flowers is more likely to receive/provide pollen to other plants. While in the current system, this depth isn’t tapped into nearly as much as I would like it to be, it will be there for when I reinvent the game.

What Went Wrong

Beyond having to cut out features due to lack of time, a few other things ended up going awry or otherwise impacted development.

Throughout my development, one of my libraries (sfeMovie) required me to not only be limited to C++98 (and therefore VS2012), but also to develop in Release configuration. Running into the optimizer and having a lack of debugging information made fixing some bugs much more difficult than they should have been. Funny story, at one point in my debugging, I found that the optimizer made one of my for loops run in reverse.

I am also unhappy with some of the sound effects I made for the game. The jumping and shooting effects are a bit too loud and conflict with the calming atmosphere of the rest of the game.

I also ended up running into some of the nastier things that can happen with the C++ STD containers, like memory being reallocated and breaking pointers, iterators being thrown out of sync due to elements being removed, access violations…

What I Learned

I ended up learning quite a lot about C++ and how it handles things internally. I’ve been working with C++ for the last 5 years, so I already had a solid handle on the language and it’s quirks but Ludum Dare exposed me to a lot of areas I was unfamiliar with, such as how the linker works or some of the things the optimizer ends up doing. Coming out of this competition, I feel much more competent with the language than I already was.

I also uncovered some of the deficiencies in my engine, such as how animations are handled and the inefficient memory footprint the engine ends up making. It’s really shown me where i can improve on the code base and where I can make things easier to do, such as handling text drawn to the screen.

Planning for the Future

First thing I am going to do is improve my engine. I want to make it a generic game development engine that comes with a configuration using SFML, but can be ported easily to other libraries. This is simple in the MVC model it has, but in its current state it leads to tightly coupled code in some parts. I want to improve the engine to decouple as much as possible.

Beyond the simple code base, between now and next LD I am going to focus on learning music theory. Music is a part of games I have never explored and learned, and it very nearly ended up costing me dearly in my game.

 

Anyways, can’t wait for next Ludum Dare! 😀

Posted by
Saturday, April 26th, 2014 7:53 pm

My Entry so far

 

This is my first Ludum Dare and my first time actually committing to making a full game (most my previous projects fall short). The first 24 hours have been amazing, hopefully the next 24 are just as good. :)

Prepping up

Posted by
Friday, April 25th, 2014 3:53 am

As 9pm est draws near I find myself tweaking more and more with my “engine,” adding functionality, fixing bugs, and all around improving the code base. I already made a post publicly sharing it, but I’ve changed it quite a bit and the previous post just had a link to my dropbox. So I figure I’d write up another post sharing the new code, since it’s just fair.

You can check it out here, if you fancy:

https://sourceforge.net/projects/skipiengine/

 

First time, should be fun ^_^

Posted by
Wednesday, April 23rd, 2014 9:17 pm

I’ll be using C++ with the SFML, and SFE Movie libraries.

For artwork: GIMP

Music: Perhaps some of the programs listed on the tools page here. Also perhaps a music generator  written by a colleague: http://www.omnimaga.org/computer-projects-and-ideas/pmusic-procedural-music-generator/

 

Plus anything else that I find I might need, but can’t think of/predict right now.

 

I am also using my own code base that sets up an MVC model for a game. I provide two versions, one with SFML already set up for use and one that is independent of third party libraries, so someone can use it with OpenGL, SDL, etc. I also provide an example program that makes use of it :)

You can download the code here, if you wish:

https://dl.dropboxusercontent.com/u/10573921/Releases/SkipiEngine.zip

[cache: storing page]