Kidnapper

Last edited: 7 February 2016, 10:02PM

Info

Preface: no one on the team condones the kidnapping or pedophilia represented in game. All ideas were purely designed for exaggeration and humor. Kidnapper was a one day game jam project where I invited my local friends over break to try and make a game together. It's a tower defense game about a shady pedophile dude trying to protect his free candy van from ravenous kids.

As the level progresses, kids walk along the path to try and take your free candy. If you lose all your candy, you lose the game. Your job is to place down bushes (towers) along the path to try and hinder their progress. You can, for example, blow tranquilizer darts at range or club nearby kids. The objective is to put the kids into naps, hence your title as the "kidnapper." At the end of the level, you ride your free candy van around to pick up their unconscious bodies for points.

Unfortunately because of a lot of reasons, we don't have a workable build. The description above is a lot more than what we actually accomplished, but this was my end goal I had in mind when making this game. Yes, I was the shamefully unashamed visionary behind this project.

Background

If it doesn't appear kind of apparent already, I'm a little hesitant about putting this project on my site since the subject matter can be quite controversial. However, I can assure you that this was just a stupid, funny project among some close friends, and regardless, I think overall this game idea was actually one of the more solid designs I've made. From the title to all the actions in game, everything works off of the theme pretty well, and I'm pretty proud of what I thought of.

I'm not exactly sure where the origins of the Kidnapper idea came from. I think it may have been half a while before and half right before the game jam. I probably thought about a pedophilia tower defense game as a parody to tower defense games in general. It's difficult to think of an aesthetic theme to go along with tower defense other than some generic medieval or sci-fi genre, so pedophilia was a fun twist to the formula.

Unfortunately, while some of my friends liked this idea, I don't think I could ever bring this idea up within a VGDC game jam or long term project. While the VGDC was very lax and carefree in its judgments, I think even they wouldn't let a project like this slide. I almost never work on game projects by myself either, so I wasn't going to start Kidnapper alone. Besides, a pretty wild game like this would be better off made with some stupid friends anyways.

So I put the idea on the back burner. Fast forward a bit of time, and I was thinking about what I wanted to do for 2013-2014's winter break. All the previous breaks I kind of just relaxed at home without doing much. I didn't really on my club projects since everyone on my teams were busy doing their own thing, or maybe I wasn't on a team at all since quarter projects split up right before break. And over summer I did nothing at all except for maybe play League of Legends.

I thought about what I could do for this break, and I decided, you know what, it'd be pretty cool to reconnect with my old friends again while still being somewhat productive making a game together. Yes, a lot of these local buddies of mine are from the disastrous First Reality group, but I was going into these over-the-break projects with a completely different mindset.

For the most part, I wasn't expecting too much out of these groups. I already knew how incompetent a lot of us were, and above all else I just wanted to chat with my friends and hangout. Plus, this would be a short term project so we'd be working a lot more intensively in a short burst rather than dragging it out longer.

So during the quarter I started messaging people who were interested. I remembered Alex(AKA Cheeto/Jett) was in computer science and asked him to join along since I recalled him doing internships, so I expected him to carry some weight. He definitely was the most spirited out of us and tried to work his best. The rest were basically some members from First Reality and Victor who happened to be available.

I held a quick group call with mostly everyone some time before the start of the jam to outline what we were going to do. At the time, we didn't formally decide to do Kidnapper, but I brought up the idea, and I think at this time another piece of the Kidnapper puzzle came together, if I recall correctly it was the name connection in putting kids into naps. Alex showed his support for this idea, and eventually the group settled on it. We also talked a bit about tools and frameworks we were planning on using.

I made a huge number of mistakes before we even started working though. First, in order to keep things short, I declared that the jam would just be 24 hours, which is a completely bonkers short amount of time to do anything. By the end of it, all of us just passed out from sleep deprivation and our end product, as you may have noted, is a broken, half-finished build. Since then, all our future jams are at least 48 hours, usually around 60 to 72 hours.

The second mistake was using a framework no one was familiar with. I basically designated Alex as our lead programmer since he seemed to be the most active and knowledgeable within the group. We chose Java since that was what he was specialized in and what everyone had at least a little experience in.

The mistake I made, however, was trying to force everyone to learn libgdx, a Java framework that allowed things like cross platforming. Because oh man, frameworks should make things easier right? They provide all these cool gadgets and libraries you can use. It'll be a great learning experience, yeah. But not so fast. Alex didn't start looking into the framework until a day or two before the jam and realized there was a significant learning curve to it. Using standalone Java would have probably been much easier, but we dug ourselves into a hole using libgdx.

At the time, I think Alex was also working with and learning with Carl, who was supposed to be a member of the project, but from what I can remember, he only stopped by for a few hours and then dipped out. Not sure what happened, so I'm kind of hesitant to put him under our project seeing how I don't recall him contributing anything.

Our next huge issue was Git. We wanted to use version control to get a better grasp for it, but none of us really knew how to handle conflicts well, and people just pushed broken pieces of code all over the place. Somehow, Victor, who was probably just being stupid, detected our pushes as like trojans or something, and when he pushed he somehow magically reverted hours of our work. He was banned from pushing for the rest of the jam.

We also attempted to use a scrum board to help coordinate tasks we wanted to do. It was basically just my whiteboard and some sticky notes to list off tasks. But... as people got stuck doing certain things, the board didn't really help that much as we reached a standstill. Eventually we just used the board mainly for calculations and notes.

Me and the scrum board

Splitting off tasks and having people work efficiently was a challenge. Some people came to just briefly hang out and left soon afterwards. The bulk of the team that stayed was Alex, Derek, Victor and I. Alex struggled to get libgdx working, while Derek and Victor just simply didn't know enough to contribute. Derek colored some artwork, but with the game stuck in standstill as programming ran into a number of issues, he couldn't help out.

Victor broke everything, so we disallowed him from making changes. But he wasn't much of a help either partnering up with Alex and trying to help him figure out the coding. Coding was the biggest bottleneck for us. None of us realized that making a tower defense game from scratch would be so difficult. We had to calculate pathing algorithms properly, set up all the tiles in a reasonable manner, all the while using a framework we weren't familiar with.

By the odd hour in the morning, everyone went to sleep, and I ended up trying to fix up changes for the game. I got it to the point where the game spawned with a turret shooting and knocking out some kids that spawned on the path. I was working on Alex's computer however, and unfortunately, my fixed build would never see the light of day because Alex apparently never pushed my changes, so the game is currently stuck in an earlier broken state.

I mostly worked on art for the jam. I made the basic background tiles, kids, bushes, and background buildings. To be honest though, overall I didn't like the assets I made. It's really difficult working in small resolution without resorting to pixel art. Everything I made looks a little distorted, and I didn't like my thick black lines. Derek colored my line work, and I didn't think our styles really meshed well together.

But I couldn't afford the time to go back and change my work because I realized that programming was in a pretty bad state. Alex and I then worked out the pathing code to move the kids, most of the credit due to him. We fixed the game as much as we could before he went to sleep, and I did whatever I could after before also knocking out.

There were a number of unusual and funny bugs that we encountered. One of them was that libgdx for some reason would not accept any images which height or width were not powers of 2. This was pretty odd, but we did find a solution. The problem at the time was that we already decided to work based on 50x50 measurements, which was the size of the tiles, but the tiles currently we 64x64.

So our workaround was to make a 64x64 tile with a 50x50 tile within it and use that as our tiling. This seemed like the stupidest hack ever, but it worked after making sure we drew the tiles in the right order. Definitely, this should've been something we fixed, but we weren't going to complain about a quick solution when we were so short on time.

In conclusion, this was a pretty poor game jam. Our end product was far from what we wanted. But regardless, I think we all had fun and no strained relationships were developed, unlike some of my previous projects. On the contrary I think we all grew a little closer through our short journey of hardship. At some point, I'm pretty sure we all knew that everything was doomed for failure, and we just made the best joke out of the situation. Also, praise be to plug.dj and rest in peace.

We in fact were already planning for our next jam. During a middle in the night run to 7-11, we started talking about stupid games like this one. Derek brought up Katawa Shoujo since he and Victor were playing it as they passed the time doing nothing. I then absent-mindedly brought up, well, what if instead of Katawa, we changed the name to Katana? And that was how our next project, Katana Shoujo was born.