Thursday, September 28, 2017

Feeling Mopey? Get Moppy.

You know how sometimes you're not sure if life is worth living any more and then you clean the kitchen and you feel super proud of yourself and are convinced of your own virility. Kinda like mopping a whale.

The way mopping presently works is that your mop does 1 damage to each pair of footprints that it hits when you do a mop 'swipe'. Now, if your mop is wet, it does like 3 or 5 damage or something to the dirty footprints. These footprints come from players walking around on the back of the whale, by the way. Whenever a footpring is left or when it is mopped up, the whale checks the total number of footprints on its back. If it it's less than 20 or something, it is clean. Greater than 20, mildly dirty and the entire whale sprite gets tinted brown and there is a drag applied to any players walking on the whale's back. If there are more than 40 footprints (now that's a dirty whale!), the whale is considered quite dirty and is tinted an even darker shade of brown and even more drag is applied to players trying to waddle through the muck on deck. So what's depicted above is the lonely red player working all by himself to fly the whale into a nearby rain cloud and giving the whale a bath (and a drink, incidentally). Also, when you get the hose attachment for the whale, which can be used to spray down thirsty dogs, attck fire based enemies, put out fires on burning buildings, it can be also used to manually wet the whale deck, instead of needing to locate a rain cloud or to use drop mops. 

Mopping has been in the game a long time, but I felt like talking about it today. It serves a few design purposes. (A) I think it would be great to hear about how a group of friends struggled with the decision to upgrade their mops or their guns. (B) general upkeep task that requires time, competes for resources (water), and affects general gameplay (the drag as you walk on a dirty whale is not insiginficant, especially when you're carrying the heavy sack of dog food). (C) provides another motivation for finding rain clouds. Now, where I think it could perhaps use some refinement is in the visual communication department.  People don't notice the footprint specks and/or realize you have to mop up the specks specifically, rather than just the whale in general. I think having to target the footprints is important, because forcing the player to move around, get in the way of other players, and also leave more footprints while mopping, makes the activity more nuanced and more interesting as its own little minigame. And also, just mopping the fin over and over doesn't seem like that should count for cleaning the whale (however, it doesn't seeem like 20 footprints left only on the nose should dirty up the whole whale either...oh well). 

Just because you're curious, I'll also let you know that it used to be designed so that only when you walked through a footprint speck did you feel the drag. I basically decided against this, because while I want it to feel bad when you're moving slowly because it's a dirty whale, the stop and go of hitting dirty footprints felt more buggy than an intentional mechanic. Maybe this is because it's generally difficult to see the footprints, especially just one or two, especially when they're underneath your player sprite. With a whale-wide state of drag corresponding to a state of dirtiness as visually communicated by whale color tinting, at least you know what's happening, if you know how mopping and leaving footprints functions in general. Anyway, people think the dirtiness of the whale is indicating damage though. So I don't know. Maybe I'll just adds a bunch of blood splurting out all over the place for when the whale takes damage.

Tuesday, September 26, 2017

Bro and BFIG, Barnacling and Bullet Splattering

BFIG has come and gone. Kevin and Courtney are up and married. And I remain. In Starbucks. With my empty fruit and yogurt parfait cup.

My step bro, Matt Borchert, ran my booth at BFIG. And! He also has provided some music for the game. Anyway. BFIG seemed cool for the 1.5 hrs I was there, (before I left for Kevin and Courtney's wedding) before any attendees showed up. And I heard it continued being very cool all day. One of the coordinators and leader of the Game Makers Guild, Tim Blank, said that BFIG had perhaps a BFIG record attendance and he hadn't heard one negative statement about it. I put in a lot of effort getting the introductory/demo level working and figuring out the flow of introducing how to ride a flying dog, how to pilot a flying whale, how to heal injured dogs by feeding them them from the food sack, how to heal the whale by feeding it from the fruit tree, how to attach whale attachments, how to mop the whale, how to store gems in the belly of the whale, how to enter the belly of the whale to get your gems back and/or anything the whale has swallowed, how to use keys, how to shop, how to sleep in a bed together...anyway. Some of those things are taught much more clearly than others. But about a million things that used to go wrong don't go wrong. But it's kinda like when you hear about how a hand sanitizer cleans like 99.99% of bacteria and then realize that the remaining bacteria, that .01% accounts for like millions of little entities out there, trying to survive, placing its life before yours...willing to do whatever it takes.

Apparently, people still get stuck in walls. And sometimes you get flooded with oodles of dogs. Harpoons stick into things they shouldn't. Playeres somehow walk off the whale and just trot around in the air, leaving dirty foot prints everywhere, that people don't understand what use it is in mopping them up, and also, a giant black square will appear sometimes. And players don't know what to do with empty sacks of dog food (the answer is to toss them out, which is littering, and before you get upset and start forcing your own own moral predilections onto Flock of Dogs, it's definitely unclear what is or isn't biodegradeable or what kind of sustainability is possible really in this world).

While Flock of Dogs didn't win the curator chosen award for Multiplayer/Connected Gameplay (not surpring, the build I submitted in May was wildly buggy, visually unclear, and had a laughable tutorial), Matt said we did get a lot of attendees votes for game of the show. Flock of Dogs didn't win that either, but that's ok. The winning game ( and many of the competing games have a much more public profile, bigger teams, and are much further along in the development. Actually, many had already been released.  And maybe it's ok to not be a winner? It would be nice to see how many attendee votes other games received or even get an exact number for how many Flock of Dogs received. Matt collected a bunch of emails of people interested in the game, so I guess I'll have to write a newsletter soon.

Anyway, I made some new particle effects leading up to BFIG, which is some of the only new visual polish the game has received in a while, so I'll share that with ya:

See how the bullets splatter? Jawesome. I also made the destructible environment have some particle effects and also split in to smaller pieces  instead of just disappearing. This is in accordance with the principle of 'barnacling' where, in nature, when there's large things, there's usually some medium sized things near it, and some small sized things near those. It still doesn't have a sound effect.

The simle, blended color gradients that generate when I take the base color of either the giant, floating tetrominoes or the players' bullets' colors, then choose 3 other colors that have slight, random variations in their RGB values absolutely thrill me. I'm also now going to try stockpiling gifs and start posting them to  Twitter for #screenshotsaturday in the future.

This is part of my whole plan of, you know, telling people about my game and maybe even letting them play it. I told a few people I'd send them access to a playable version of the game. One guy even said he wanted to play it for his YouTube channel. Craazy.

Wednesday, September 13, 2017

Careening Career

Well, my car and I made it to New York and back. Barely. The following day, my car's transmission died and I had to get a new engine. lol. Then I moved. I am now a nomad.

Anyway, the festival:

No one interviewed me! So I guess I was afraid to contact press, because I'm insecure, I suppose. However, half the reason I went to this thing was for press exposure. So instead of contacting anyone on the press list that was distributed to all exhibitors, I just hoped they'd come by and talk to me. And they didn't. It didn't help that I had the cheapest spot on the top floor in the corner. I wonder if there are parallels to my dating life here.

Admittedly, Saturday night, there was a press/exhibitor 'party' after the convention closed to the public. However, I had been up past 3 am the last two nights working on the game and my stepdad and my 'little brother' (from the Big Bro Little Bro organization) who had come with me and helped me at the convention weren't allowed to go to the event without a special badge, so I just had dinner with them and went to bed. You know, family is more important than career.

Anyway, the response from attendees seemed really good and very similar to the responses I've typically received at live events. It's funny tho that, to me, that the reaction to my game seems about the same, whether or not I fix the bugs. As long as I have the energy to make jokes and be self degrading and as long as there's basic functionality, people enjoy it. So, really, I shouldn't stay up late squashing little bugs, if I know I can just make a joke about it. I've never exhibited any other game than this game, so it's pretty hard to have any kind of reference point for trying to be object (and then there's all the everyday, psychological hurdles of for objectivity lol). It definitely felt good to see people having fun playing my game, especially several families and then the occasional gamer who expressed excitement the moment they realized this game is a Lovers in a Dangerous Spacetime-alike. And one of the guys exhibiting at the booth next to me said he loved my game and was very excited to see where it goes and kept coming over and playing. Which, like, it's so simple, but it's such a nice feeling to hear that.

Anyway, there's other details about logistics and the convention experience I guess I could go into that could help others...maybe. But I recently read an article on something that said stop reading articles about how to do something and go and do something. So if you're reading this to figure out whether or not you should exhibit your game at a convention, .... I don't know. I regret not contacting press before going. I don't regret going. I regret my car breaking down a day after.

Right, so. Some news. I quit my day job. I'm going to try to find temporary housing/friends' couches thru the fall in Boston, to stick around Boston Festival of Indie Games (BFIG) on September 23 and also to finish out the BSSL ( soccer season and try to help Eagles maintain their spot in the top flight. So I appraised my last house on Friday (it's now Wednesday) and finished up all my reports yesterday. I may receive a report or two back from quality control, and I'm also helping train my replacement, but dudes...I'm pretty stoked.

So now I'm working on the demo for BFIG on September 23rd. This will be a tricky test, because I'll need the game to be able to teach itself, for the most part, since I won't make it to BFIG, because I'm in a wedding. Because friends are more important than career. Also, soccer and dog are more important than career too. Maybe.

Monday, July 10, 2017

Rain, Beast, Wind, New York

Hello, I'm still going. Been busy with a bachelor party weekend (sort of), then a cousin's wedding the next weekend, then July 4th the following weekend, so I don't feel terrible about how I chose to spend my time.

So the game had watering holes randomly distributed across the map. Little clumps of watering holes, really. Then there's little water droplets that spawn in the surrounding area that were hints to the locations of these floating oases. The watering holes shrink as the whale drinks up the water. This has been in the game for a while, but I haven't been in love with it. So I spent a bunch of time coding wiggling waves that faded in and out on top of the watering hole, changed color, and adjusted as watering holes shrank. Then I decided to remove watering holes completely in exchange for rain clouds. It kinda felt like I throw out a bunch of work, which hurt, and while I've heard it said you hafta cut your darlings, I'm pretty happy with the new clouds (which reminds of Happy Cloud, a company I briefly worked for where I was paid to play free-to-play softcore porn MMOs):

So my issue with rain clouds is that they simply appear randomly, there's no decision making around how to find them or prioritize finding them, at the moment. Also, I'm not sure how I feel about my current method of consuming them, they lerp from a dark grey to a transparent white, less rain falls out, until no rain falls out. My thoughts on design changes are to make some kind of weather forecasting mechanic, where you pay for a forecast and then it shows up on your map, or maybe a weather vane item that you must stop to use that works as a compass for rain clouds. Also, the rain clouds don't move, because I didn't want them to have too much overhead with physics calculations. I make sure to not spawn them in the jet stream, because it seems weird that it's all windy and the clouds aren't being blown along. I'm thinking I may spawn clouds in the jet stream that do get pushed along it. I do like the look of them. I found a basic cloud outline on the internet, filled it in with white. The final edit was to remove its black outline. I don't have a principled way of decided when I want black outlines and when I don't.

Another big thing I've worked on is removing the end of level bosses and instead including beast lairs. The beast lairs provide optional challenges. If you choose to disturb the lair, then you must fight the beast. This will allow for teams to dynamically select difficulty. The rewards for defeating beasts will be linked to unlocking the more difficult routes on the over world map in the Star Fox 64 style I've been planning on imitating for a while now. I'm thinking each level will have a beast lair, or a hitchhiker, or flying cow cattle drive, or some pollution, that the team can opt to deal with as a means of unlocking different routes and experiences. Here's the lair and a beast:

And I've also decided to remove the mesh renderer from the jet stream and use more particle systems to indicate flowing wind. When I was trying to decide how far the trails for the particles should be, how much noise to add to make 'em wiggle, and how fast, I watched some LotZ: Wind Waker videos, heh:

Finally, I paid the exhibitor's fee for a small booth at Play NYC, put on by the Playcrafting organization. I've done a few of Playcrafting's small local events, but this one has promised 5,000 attendees and a bunch of press, like Kotaku, Polygon, and the New York Times. So press has never seen Flock of Dogs before, so that's scary. I got the cheapest option ($400) on the top floor of the venue, and its the first time Playcrafting has done an event of this scale, so we'll see. Driving down to New York is always fun and I have friends there, so even if I'm mostly overlooked, it'll be an adventure. I love adventures! Flock of Dogs is an adventure! ('adventure partner' is like maybe the 2nd most common thing young women put on their list of things they're looking for in a partner on dating apps after 'video game dev').


Tuesday, May 30, 2017

Submitted to BFIG, Heard Back From Yellow Ostrich!

Spending half an hour to an hour on a blog post every week, when I only spend 10-25 hrs a week on game development, doesn't seem like a great ratio. So I'm not going to feel guilty for not blogging the past several weeks, because I have maintained a solid amount of effort on the game.

I've continued with adding more context sensitive tool tip pop ups for button or key presses. I've just created a Tutor object that just scans the player and whale for game state info to see if things have changed. It's completely modular and I'm very proud of how separable it is! I feel like I'm improving as a games programmer.

The big news I've been sitting on is that Yellow Ostrich got back to me about using WHALE as a trailer song and they said I could do it and didn't ask for any kind of licensing fee. So that's !!!!. I've submitted to Boston Festival of Indie Games with a 3 minute voiceover gameplay video. I won't hear back from July. I would love to win some kind of accolade at the event, my game is entered in the multiplayer/connected gameplay category, but if I'm being judged on the build submitted on May 15th, that's very unlikely. But there's a gamers' choice award, and I'm hoping I'll have a good shot at that because (a) I'm going to make a bunch of friends vote for me and (b) my game does really well at cycling through lots and lots of players on a convention floor, so I'll have a leg up. From what I've read, going to conventions as a game dev isn't about generating a huge of list of possible customers, it's about getting feedback and seeing how people react to your game, showing your game to publishers and press, and making industry connections. Anyway, all the events I've taken my game to so far haven't resulted in any press exposure, maybe some industry connections, and definitely lots of player feedback. But yeah, I don't have like a million Twitter followers or subscriptions to my Flock of Dogs newsletter, which I've only sent out twice anyway.

For the submission build, I needed people to learn how to play the game without me, so that involved making a very needed update to the tutorial, which has basically matched the outline I set out in a previous post. For a while, I wasn't happy working on a tutorial, because it was just annoying, fiddly things like when to turn on and off different abilities, or when and where to pop up text. But then I realized how much I enjoy the first 15 minutes of a good, new game and that counts as such a big part of how I feel about a game and if I like it. Also, I've been crushing a good number of bugs and adding in little smoothing things, like changing the helm controls to the triggers, shrinking overlapping hitboxes, making items much easier to pick up, making the game much less punishing, and so on.

My next focus will be returning to level design/generation and enemy design/placement, as well as environment interactivity and the interactable island structures. I've also received some sample music from a friend that may work out very well for actual game music and effects, but we'll see. Anyway, there's a medium sized expo tomorrow night at Laugh Boston where I'm showing Flock of Dogs, so I want to sharpen up some more things and see what kind of reaction I get there. Anyway, here's a little video of me testing the new item pick up, the pop up tips, the single nest docking, and dropping items on an island:

Friday, April 28, 2017

Hint Pop-ups

Fixed some bugs and added some basic tooltips/button press hint pop-ups:

I can't find the website with the Python script that let me do certain edits on video files in GIMP to create gifs just now, so I used Giphy's thing.

The hints are nice. They go away either after a threshold number of time being displayed or a total threshold of time has passed. I need to structure a tutorial level that would mechanically introduce the game. I sketched out a plan in an email to a colleague, Dave (his game is here

  1. players start on an island with dogs lounging on the island, visible on screen. there will be no other thing to interact with except the dogs. players will have to mount and begin to fly in order to progress.
  2. after taking flight, the area is still enclosed or linearly leads to a finite number of enemies, but not a nest. tweaking the number based on number of players active. if a player's dog dies, and they get trapped in their crystal, other dogriders will have to figure out that they can pick up their teammates and ride with 2 players on one dog. if everyone dies, i made the enemies too strong, or the players are just really bad and they can restart the tutorial.
  3. the players discover another island with dog food. and they learn how to heal. maybe they find a hurt dog or there's some event that forces every dog to take damage, if they weren't already damaged.
  4. then the whale appears, asks for help/hell breaks loose and the whale rescues them/i don't know.
  5. the flock then moves out, the dog food is aboard the whale, the hud for the water and the solar power is turned off.
  6. they encounter some finite enemy groups and some loot drops including a key. then there's a gate house the whale must dock at so the key can unlock the gate, to introduce whale parking.
  7. somewhere around here use tooltips to explain how to roll the whale over to access the belly.
  8. after passing thru the gate, then something like the current tutorial would take place. maybe the river is found for the first time and the whale explains it can follow the river to make it back to whale land.
  9. the water system turns on, the hose appears, and the whale tail reigns appears and the hydration system is explained. 
  10. the turret is attached and a press "A" appears over it or something.
  11. at some point later, use another gate to halt progress and introduce the solar panel and energy box. 
  12. NOTE: i'm also considering not introducing the solar panel, harpoons, turret, drill, at all. making those part of a whale upgardes system that are purchased or found as you progress. i've had other ideas for different whale systems and then your build would be dependent on what systems you buy/find each run through. maybe the solar panel system will stay and the solar power can be used to power a variety of different systems you can attach. not sure.

Didn't get as much work done on the game as I'd have liked. Mostly just over the weekend. I had an 8 am appointment about an hour away earlier this week. So I had to be up at 6:30 to walk dog and get ready and go. Then, of course, that afternoon I fell asleep for a few hours. Which meant I was then up until like 3 am. And then the next day, I fell asleep in the afternoon and was again up until like 3 am. I should just embrace it and use that time to code, but I end up just sitting in bed watching Twitch or, as it happened this week, 6 episodes of The West Wing, which I've never seen before and it's alright.

Thursday, April 20, 2017

Meeting with Indie Game Collective

The BFIG submission deadline was generously pushed back to April 23. So I haven't submitted yet. I haven't changed my video, and I doubt I will, but I'll provide a slightly updated build. Last Friday, I met with the Indie Game Collective. They're a group of indie devs that share a co-working space in Boston. I emailed Ziba Scott, the programmer/designer for Make Sail, becuase I'd played his game at a Boston indies meetup and I saw that they had had a successful crowd funding campaign.

Anyway, I met with Ziba and a few others and they basically told me to not quit my day job. lol. That sounds worse than it is. They were friendly guys and they showed me around their space and gave me soda. They were encouraging about my game itself and how far I had come as a solo first time dev, but they discouraged me from crowd funding. Given that I am working part time and can nearly cover my expenses and could dip into savings/ask family for money, if I really needed to, they thought I should just stick with my current set up, get out a beta, and aim to release in a year. Possibly consdider fixing up the half-game I made, a soccer roguelike, and do a small release on Itch to get some experience with the process and maybe start a portfolio/build community. It all sounds like wise old council. It was very nice to hear they thought I should release the game, which is still a little hard to imagine. They were generally against crowd funding and here's my summary of their arguments: (a) it takes a lot of time, maybe one to two months, (b) it's a crowded space and video games are not doing very well at the moment there, (c) while my art is like quirky and ok, without better art/animation/effects/music, it doesn't seem like my game is as eye-catching as it would need to be to bring in the big bucks. I think these are all very good points they bring up. My biggest counter argument was what do I have to lose (other than 2 months, lol)? But also, why would it take up so much time? And if it did take up that much time, wouldn't I be doing basically the same kind of promotional stuff for releasing a beta or when I simply release the game? Hm. Kinda a Catch-22 with "hey I need money to get cool art and music for my game" and "well, your art and music isn't that cool, so I won't give you money for your game." I have this vision of delivering this off the cuff, passionate Kickstarted video speech that's basically like, "My game's not polished? To heck with polish! If you want a polished local multiplayer experience, go buy Bomberman on the Switch for $60, it's happens to have 34 year old gameplay. And if my game doesn't have some retro pixel animations that remind you of when you were 10, sorry. If you can't cry yourself to sleep with my non existent, not beautifully orchestrated OST, I'm very sorry. If you want a weird game with a different kind of gameplay that provides a shared journey experience, that's what I'm trying to make. And...I guess...fine, I will also say, there are some beautifully polished games out there that have been huge inspriations for my game. But! It's because of their gameplay. In fact, I'd say the polish in Lovers in a Dangerous Spacetime kinda rubs me the wrong way. Overcooked is basically perfect, just no online multiplayer and no level editor. So idk man. If you're rich, you should probably give your money to the poor and if you're poor, well, relationships are really what provides happiness, right? ...but maybe this game can provide a context for community and relationships! wowowow! But seriously, if you're rich, give money to the poor."

Speaking of online multiplayer, the next big thing we discussed was the addition of online multiplayer. Some stated that adding online multiplayer for my game would take 1-2 years of development time as an inexperienced programmer. If you recall (or maybe I didn't post it), the crowd funder guy I met with a month ago really stressed the importance of online multiplayer. So Indie Game Collective guys pointed out that the games I used for inspiration, like Overcooked and Lovers in Dangerous Spacetime, didn't offer online multiplayer.

So let's talk about reasons to do online multiplayer. (a) I have a very spread out group of friends/family in California, Tennessee, Virginia, New York, Idaho, Washington that I would love to play my game with; (b) most of those people would be my testers; (c) this game is annoying to test alone, it's also tough to consistently organize a group of players to come over and test with me; (d) while Overcooked and Lovers don't offer online mp, I probably would have persuaded 4+ friends to buy those games if it had and, in genreal, the potential sales is a million times bigger with online funcionatliy; (e) Flock of Dogs supports up to 8 players, which is even tougher to coordinate locally, needing all the extra controllers; (f) two of the next three games I fantasize about making would require online mp; (g) if I reach a high level of competency with implementing online mp, if I wanted a job, I think that would really open up options for me; (h) Twitch streamers could play with their viewers, this is a big deal.

I don't know guys. It sounds hard/frustrating. But do you know how smart I am? Hahaha. Maybe this is where I derail myself. I have always loved online multiplayer, because strangers on the internet used to be amazing. And because it's like half as cool as having a LAN party, which have been some of the best experiences of my life. I've spent most of my gaming life playing online multiplayer games, like Starcraft and Halo. I think I'm going to try it. Sharpen up a build for BFIG, get a real tutorial in there, then commit 2 months to online functinoality and see if there's light at the end of that tunnel. And maybe, on a lark, I'll just try a Kickstarter one day. Why not? Sometimes, when you haven't suffered rejection in a few months, you get antsy. But I'm not starving yet.

For the game, this week I just fixed some bugs and added some inventory display stuff.