Skip navigation

Category Archives: Uncategorized

I haven’t updated this blog in a long time, mainly due to the fact that so much has been happening with my current job and the flashy living in San Francisco, but I’m now going to start updating this blog with more  game development related news.

First thing’s first:

jpfarmer.com is no longer a WordPress Blog

Yes, as you may have noticed, this url is back to jpfarmer.wordpress.com. jpfarmer.com, my personal website, is now a newer (and glitchier) website that holds my portfolio and various social media links. I didn’t like the fact that my personal website was restricted by wordpress, so I took it off. I still like keeping wordpress strictly as a blog, so I just separated the two sites out.

I am going to GDC 2014!

I’ll be going to GDC this year with the Indie Statik crew. Oh, and a bit of news on that front: I’m writing voluntarily for Indie Statik, mainly covering small free games and doing whatever else I have time for during my off hours. I’ll be at GDC for the entire week this year, and hopefully catch some good talks & meetups.

What I have been doing this past year

My current engineering job has been picking up a lot, and I’ve been working my butt off making a living in the city of San Francisco. I really haven’t worked on too many other games besides a few game jam games which you can play on my GameJolt page.

I’ve gone back and forth on several projects. One of the current ones I was working on was a spaghetti western multiplayer game inspired by Samurai Gunn. I’ve been working on it in HaxePunk, but recently made a switch over to HaxeFlixel due to some of HaxePunk’s limitations. Both libraries have their pros and cons, and it’s been very difficult to choose between the two. I’ll try to post screenshots as I have more development, but for the time being here is a vine I made of the game in very early stages.

Anyway, that’s enough for today. I’ll do my best to post more on here when I can, since keeping a record of my development is probably a good thing.

Over the weekend, I participated in another game jam, Ludum Dare! I did not know the jam was happening until the day of, so I decided to take it easy for this one and make something simple. Given that the theme was ‘Minimalism’, my ideas must have went for ‘minimal gameplay and story’ because what I got was this:

sigillum

The game is called sigillum, named after another project I had started but has long since ditched (though I do re-use the player sprite). The game itself is meant to be atmospheric, with your only action being to move, usually forward. This also marks my first self-made Flash game, using the Flashpunk game engine. I don’t want to say too much about the story, or what everything means in the game, because I wanted to game to be atmospheric and let everyone have their own feelings about what sigillum is.

Also, sound design was important for this game. It was simple, but important. Make sure that you have sound on if you try it out.

You can play the game in-browser here: https://dl.dropboxusercontent.com/u/47529367/Games/sigillum.swf

One thing I’ve learned from this weekend is that it’s a lot more fun to game jam with a group of people than it is by yourself at home. I was in contact with my girlfriend Chloi (who was also jammin’), but overall I didn’t feel the same joy I did during the Global Game Jam. I also learned to not spend too much time on something that isn’t working because 48 hours isn’t as long as it seems, especially when you’re working with an unfamiliar engine. The good news now is that I understand Flashpunk better for any future game jams or project!

If you’ve found this page from a business card, then HI! I’m James Farmer.

If you have a mobile device, then download this game I led development for, MicroVentures! It’s completely free, ad-free, and IAP-free!

Either go here for all the download linkes and extra info: microventuresgame.com

Or download using one of the QR codes below, either for Android or iOS!

For iOS

QR Code for iOS

For Android

QR Code for Android

 

So as it turns out, people ended up liking the game Chloi Rad (@_chloi) and I made for this year’s Global Game Jam. Liking it enough that we won an award for ‘Best Use of Theme’ and got press over it.

So I think it’s time I write a bit about our game, The Polygraph

Image

The Idea

The idea for The Polygraph came to Chloi and I after we scrapped our first idea 8 hours into the jam called ‘Super Bank Robber Surgeon.’  It was a pretty silly idea of playing as a bank robber hiding out at a hospital, forced to perform heart surgery with the tools you used for a recent robbery This was what we had working so far:

superbankrobbersurgeonsm

Some of the tools were usable, and the patents arrived and left in an assembly-line fashion.

We literally could not stop laughing at that face we ripped from an old picture of Operation.

On the drive to our friend’s house on Friday, 3:30am , Chloi expressed some concerns about our design. Namely, the fact that our game had nothing to do with the theme of heartbeats. It was a funny idea that we ran with because we originally sought out to make a weird, experimental game (like Revenge of the Sunfish). But as it turns out, our game wasn’t even that experimental either; it was just Trauma Center with intentionally-bad MS Paint art.

We still like this idea, and I might keep working on it over the next few weeks for fun. But for the sake of the Jam’s theme, we needed a new idea. I declared that we had to come up with a new idea before 4am or else we were sticking with Super Bank Robber Surgeon.

Miraculously, we somehow came up with the idea for The Polygraph in 15 minutes: A Noir-themed interrogation with a simplified Bit-Trip Beat style of gameplay. We locked-down that idea and went to bed.

Gameplay Implementation – James

My biggest fear was that we wouldn’t have time to start over on Saturday, but after drafting our idea on a whiteboard, it didn’t seem too complicated. In fact, the one screenshot we have below is almost exactly what we had drawn on the whiteboard that Saturday morning:

The entire game!

Coding the game was relatively easy in Game Maker, the only thing I was worried about by the end of development was that there weren’t enough indications of states in the game. I chose to have the polygraph as a visible, real-world entity on the table rather than a super-precise UI, and for the opaque boxes around the text & gameplay to go from blue to red instead of displaying how frequently the anxiety-blips were coming.

The Anxiety blips (or just anxieties as we called it) were pretty influenced from Bit-Trip Beat. We had four different blips that would appear: simple speed, accelerating/decelerating speeds, disappearing blips, and blips that would hop back (and cause you to drive up your anxiety level). I was pretty happy with these variations given our one-dimensional gameplay.

Having a heartbeat sound on every Space bar hit was done well after we had the core gameplay down. I realized after playing that towards the end of the game, you would hit the space bar a ton just to make sure you were getting all the blips. We instantly saw the correlation and added a heartbeat sound. The result matched with exactly what we intended the game to be.

Art and Design – Chloi

We wanted to make something that would capture the helplessness of anxiety: the more you worry about calming yourself down, the more worried you become.

Every time the player presses the spacebar and misses a blip, the frequency of the anxiety blips increase, thus making the game more difficult. James’ addition of the heartbeat sound each time you press space totally solidified the concept. We hoped that the sound, combined with the way the mechanic itself works, would make the player feel as though the character’s panic was their own.

The more the player spams the spacebar in an attempt to capture the blips before they pass by, the quicker the heartbeat sounds, and the more frequent the anxiety blips become. It is exactly the kind of catch-22 that we wanted to convey.

Because we’d shelved our first idea and didn’t get started on this one until Saturday morning, I didn’t want to be too overambitious with the art, so I went with the best possible thing you can in that situation: MS Paint.

The noir theme worked to our advantage in a sense, because it let me do everything in greyscale. I got to stick with something minimal while still being sort of stylistic. I also didn’t want the narrative to be too overwhelming or complicated. I kept the gameplay in mind while writing it. The most important element to me was making sure the tensions in the narrative would be reflected by the rising difficulty of the gameplay.

Conclusion

Being the first game jam for both of us, there was a lot to take away from it. One of the biggest thing we learned was that simplicity is key to making these games. After making The Polygraph, we almost too worried to present it because of it’s over-simplicity compared to some of the other games; we just didn’t feel that The Polygraph was that exciting. It turns out that you don’t need a ton of particles or explosions or complicated rules to make something enjoyable. By creating a unique twist on the theme and putting a simple yet familiar environment, players were quick to identify with our game.

We also learned that health is crucial for these events. Getting a good night’s rest was essential to our success, at least 5-6 hours (not a FULL night’s rest, but you get the picture). This also includes food, which we ended up not doing so well with. Pizza tastes great, but it’s not very healthy to just eat pizza for lunch and dinner without any other nutrition in-between. Next time, we plan on bringing healthy snacks instead of candy, chips and energy drinks.

We also learned that game jams are a time to experiment, not a time to pump out the first funny idea you think of. I’m personally glad that we ditched the idea for “Super Bank Robber Surgeon”, as funny as it was, because it wouldn’t have been challenging enough. I felt that actually thinking about and working with the theme of “Heartbeat” was a great exercise as designers.

That’s about it for our Global Game Jam game. In other news, I have a new engineering job in San Francisco! More news about that to come!

It’s been plenty long since my last update, and a lot has happened since.

After graduating, I joined with DeezGames (and Mediaspike) for about five months, doing mostly server work for Celebrity Meltdown, an unreleased Facebook game based on a pretty famous celebrity (though I don’t think I’m legally allowed to say who publicly but a pretty big name). I had a great time, and learned a ton under Adhi Chittur, Blake Commagere, Dan Dodd, and everyone else. I actually don’t know how much I can say about the game, given the current state it’s in, but I’ll say it was surprisingly cool and fun for the genre it was. I could see it getting a good audience just based on it’s great content, and it’s somewhat defiance to others in the genre. All in all, I had a great time in DeezGames, and I’m really gonna miss everyone there.

I’m also not sure how much I can say publicly about DeezGames/Mediaspike. What I will say is that, due to unforeseen circumstances, I’ve had to make my departure from DeezGames. I am happy to say that this departure of was no ill-will whatsoever, and that I am still in good contact with everyone from Deez. Outwards and Upwards, that’s what I always say.

I’m back in the spin of applying, engineering interviews, etc etc. I have to say, it’s been somewhat easier this time around, especially with my gain in server knowledge. I’m not 100% sure though that server programming is my ultimate end-goal, but it’s an interesting enough field that I do want to learn more about it in relation to game design and development. I do have many game ideas that involve some aspect of network (my one prototype for radio was probably my most developed idea involving networking). I just hope I can find a great place that’s more closer to or in San Francisco rather than down in south peninsula.

One sort of small, side project that I’ve been working on in my free time is a game idea that I had in my head towards the end of my time at Deez. I’ve just recently started a small prototype in Game Maker that I’ve been calling Stick ‘Em Up, here’s a screenshot:

shootemup

 

 

 

 

 

 

 

 

Yay programmer art! It’s not too much right now, mainly since I’ve been playing with the combat of the game, trying to get it to a good, fun state. Right now, you can move your green guy around, pick up those guns on the ground, and shoot at walls which ricochet off. I’m going to be putting in NPCs in with very basic AI to shoot/attack on sight, possibly to also pick up guns when they are unarmed or out of ammunition.

I guess to put this game into a simple pitch: An isometric action/puzzle game where levels are semi-procedurally generated. The objective for your character: rob a bank, or train, or whatever the hell gets generated. There’s going to be many different ways to execute your objective, but it’s pretty open-ended to how successful your heist is. I’m going to throw in several hard rules that I believe will change the dynamics is how players approach each level, including:

  • Like Binding of Isaac or Spelunky or Rogue, death is permanent. You lose everything on death.
  • The game doesn’t have a definitive win-state. You will usually have the ability to leave the levels at any point without dying, as long as you aren’t in immediate danger.

 

One dynamic I wanted to play with was a player’s willingness to take risks for greater rewards. I had to introduce the idea of perma-death to make sure that the player actually cared about their character, and of all the past-accomplishes they’ve made. This was something I really saw in Day-Z, where your adventure was saved and could be played over multiple play-sessions (as oppose to just one-time-playthrough for BoI or Spelunky). In Day-Z, it was possibly to accumulate plenty of hard-earned gear over many hours of playing. There’s an odd point in Day-Z where you take great care of your surroundings and your situation just because you don’t want to die and lose all of your hard-earned gear. In game, I’ve seen this create amazing emergent gameplay, including very tense moments of players pointing guns at each other, yelling for the other to surrender. You’ll never see that in any other action game simply because you won’t ever lose anything important to you.

An idea I want to introduce to players of my game is the willingness players are to attempt complicated heists while risking their life and hard-earned work with every ticking second on the job. The levels will have many opportunities for different levels of money and rewards. One example I have thought through is for a typical bank level. There are plenty of ways to get money while robbing a bank, including: money at a teller’s station, money from bystander’s wallets and purses, money from a vault, money during a money delivery to that bank (accompanied by heavily-armed guards, of course), and so on. When you look at these scenarios, some are of course riskier than others, and the riskier ones will always have the bigger payoff. I want to see how players would react to the generated levels.

The levels must be generated to some extent for this idea to work. If not, players will simply master levels over many permutations. The levels don’t need to be heavily procedural, just many different random variables that can happen in a level. Going back to the bank example, there can be: different amounts of bystanders, guards, possibility of arriving during a money delivery, how guarded a vault is, how easily it is to break into the vault, how responsive the police are, if a random police officer walks in during a heist, if a bystander tries to be a hero, there’s a lot that can happen in a bank robbery. I want to try and create this tension of uncertainty that I’m sure anyone robbing a bank feels in the heat of it.

A lot of influence for this game came from Hotline Miami, which seemed to perfect top-down rapid action and precision. The theme of my game is going to be pretty different, taking place mostly in the rural south (and possibly northern states) in the early 20th century. I went for this theme because, well, I find the south pretty interesting I guess. I’ve been listening to a lot of bluegrass lately, and something I imagine a desperate guy with a potato sack over his head and a six-shooter holding up a bank. One other advantage I get with having this game exist in the south is making it more believable; It’s really REALLY hard to get away with robbing a bank these days unless you’re pulling Oceans 11 type of heists, and there are already plenty of games with mechanics surrounding those high-tech heist themes anyway.

I won’t say anymore about the game right now since there’s still plenty I need to develop on, including playing motivations (why would players take these risks? What kind of rewards will they reap?), but it’s certainly good exercise I can do while I’m out looking for a new job. I also don’t really mind posting about these ideas on my blog because 1) Not a whole lot of eyes will see this blog and 2) Game ideas are a dime a dozen in my book.

That’s it for now, I’m going to try to update this more during my job search.

Here it is!

MicroVentures, my senior project, is nearing it’s beta stage!

More information on MicroVentures can be found here: microventuresgame.wordpress.com

We have an APK build for Android if anyone is interested in playing: MicroVentures.apk

Or you can just scan this here handy-dandy QR Code:

So I haven’t updated my blog for a while since my workload for the past couple of weeks has been well over my head. Now that the quarter is over, I now know to never take three project-based Comp Sci courses at the same time. Especially when you’re the leader of one of those projects.

But for MicroVentures, our project is now fully under way! I just gave my final presentation to a large audience here at UCSC about MicroVentures, including several videos of our prototypes, how the gameplay works, the procedural storytelling, and other miscellaneous things about the game that’ll make it super exciting.

I’m currently on winter break, but I’ll be working on the game during this time (lol no break for game devs!), mainly focusing on the story generator. I still need to brainstorm exactly how I’m going to insert story into the gameplay, but as far as the ‘Wall of Text’ problem in the initial startup of an Adventure, I’m planning on having a storybook look, letting the player flip through four pages. Each page will contain roughly 1-2 sentences and pictures to identify with the story.

I will be posting updates on the game throughout development. We will also be having a development blog at mvdevblog.wordpress.com.

The judges (including Graeme Devine) selected 8 out of the 12 games pitched for the CMPS 170 series, which included my game, MicroVentures! It’s sucks that all the games couldn’t make it, I really thought they were all awesome games. But I guess I’m just happy that MicroVentures made the cut.

So now, I will be officially leading a team of 7-9 programmers and various other artists and a writer and composer. I have 5 core group members so far, all of whom are excellent workers and super friendly dudes.

The judges gave us some helpful feedback on our game, which includes:

– Female playable characters
– How is narrative presented?
. Cooler if things are revealed as you play (as opposed to all at start/end)
. Want moment to moment revelations of new surprises
. Display iconic/comic style narrative w/ just pictures ?
– Publish completed stories to FB/Twitter feeds
– Cumulative story arc required for good game
– Users have ability to add elements to their own story bank?
– Look at Sword & Sworcery

I really like these notes, and we’re going to be meeting up with Brandon to talk about where we should go from here.

Also, here is the physical prototype we showed during the greenlight pitch:

It doesn’t have any text since I talked over what was happening, but essentially the video showed how we would create Mad Libs type stories  on the board from random story items, then generate a game from those story items for the player to play.

That’s all the time I have for today.

It turns out that radio  didn’t get the turn-out that was minimum for a greenlight group (8-10 people). However, MicroVentures had a great turn-out with over 14 people interested!

We are currently working on a design document, which I may upload to my blog for reference when it’s finalized.

Our one paragraph description:

MicroVentures is an adventure game for modern mobile devices. Each play-though is a new & unique procedurally-generated experience that lasts 4-8 minutes, the average duration of most casual mobile games. Advanced narrative AI connects each adventure to previous play-through, creating a riveting interactive storytelling experience.

We are shooting for development on the Marmalade SDK, which can give us freedom to develop on both Android and iOS without the need for an Apple computer. It’s library is also in C++, which all of us in 170 are pretty advanced in.
We aim to implement a Minstrel-based story generating system, but since Minstrel is highly complex even for our simplistic usage, we’re leaving it out of the MVP. However, one of our TA’s, Brandon Tearse, is currently working on a Minstrel story generating engine. He thinks it may be possible to integrate his engine with our game, which is not only very generous of him but also super exciting!
Our final greenlight pitch is on Tuesday, but the practice presentation is tomorrow. I need to work on the slides.