Category: games

A few quick updates

Did not complete Ludum Dare 28

I even liked the theme this time: You Only Get One. I came up with an idea pretty quickly: a platformer in which you are given the choice of several power-ups, but you only get to have one. Once you made your choice, you have to get through the level using that ability.

Alas, I did not get very far and did not complete the game. I started out trying to build a platforming engine from scratch, ran into bugs, and a few hours later concluded that without declaring a pre-existing base code for a working, tested platform engine, I just wasn’t going to have any hope of completing a game in 48 hrs.

really needed to do this in order to free me up to do things like come up with the various power up items, and devise level designs that would be solvable with each of them, just in some different, uniquely challenging way. That’s a rather tall order, really — level design in platformers takes a lot of talent and testing.

Once I realized that I wasn’t going to be able to finish that project idea, I could have scrapped it and started something else, but I opted not to — mainly because I was very frustrated by that point by a couple of technical problems.

This culminates a year of mostly failed projects for me: I was sick the weekend of Global Game Jam 2013 and didn’t partake, then the wheels fell off my computer just in time for our local Cleveland Game Developers Summer Jam event, when a dying hard drive put me out of commission for the weekend as I struggled (mightily, and successfully) to move my OS to a SSD. I blew off LD26 because I hated the theme “Minimalism”, and then skipped LD27 entirely because I hated the theme “10 Seconds”.

Of course on the plus side, I helped put out a book on GameMaker, and am currently working on another, but in terms of releasing finished products, this has been a bust year. Nothing to do about it but pick myself up and get back into it, though.

Site has been down a lot lately, hasn’t it?

Since I went and registered this domain name in 2010, I’ve been hosting on a server that a friend of mine generously provided me some space on for free. At first I had no idea what I was going to do with my domain, at all — I just wanted a web server of my own to play with in my spare time, and learn from. I dabbled briefly with trying to build a native HTML website before realizing how not-fun that really is, and switched to using WordPress, and have been blogging with it ever since.

This year, the server started having issues with downtime. I’ve been in contact with the server administrator, who at various points has explained that the outages have been caused by all sorts of things: database server disk storage full, upgrades, DDoS attacks, aging hardware, you name it. It seems the problems have gotten worse over time rather than better, and so a few weeks ago I began shopping around for a new hosting service. I’ve got one now, and am in the process of migrating the site over to the new server. I’m hopeful that I’ll be through doing that sometime this week, and then I can cut over the DNS registration to point to the new server, and all will be well again. This weekend there was another bad outage, and the site was down for about 24 hours. Dealing with that had me distracted, anxious, and frustrated, and not at all in the right frame of mind to be focused on my LD48 project.

Despite the ease of setting up WordPress initially, I’ve found it fairly difficult to migrate the site over to the new host, mainly due to differences between the hosts, but also due to my relative lack of experience in doing this sort of thing. So I’d like to say I’m learning a lot from this, but really at the moment I’m just learning that it sucks to do something when you don’t really know how, and the documentation and tools that you have available to you are not all pertinent to what you want to do, and it’s up to you to figure it out. I’m muddling through, and perhaps by the time I’m done I’ll understand how stuff works a lot more than I did before I started, but I haven’t seen that payoff just yet. I haven’t yet resorted to the tech support at the new host, but I plan to this week when I can get to it. Getting the current host to be up at the same time when I have a large block of time to throw at migrating seems to be an issue, and I don’t want to waste my time talking to tech support when the old host is down and something that I may need to pull off of there isn’t accessible.

So that sucks.

YoYoGames Support rocks

On top of that, I also had a bit of frustration with GameMaker Studio this weekend while I was still trying to work on my LD48 project.

Somehow or other, the auto-suggest feature in the GML code editor went glitch on me, drawing a super-tall suggestions box that drew off the top of the screen, and wouldn’t allow me to scroll up to see any of the suggestions.

Tl;dr: it turns out that the autosuggest box is resizable by dragging the edge with the mouse, making this quite easy to fix. However, I did not know that at the time, as there’s no UI widget that hints at this functionality, and I expected that it was like a regular “Tool Tip” widget in Windows, which are not normally resizable. I tried exiting/relaunching, and even removing/reinstalling GM:S to no avail, before resorting to tweeting my SOS. I also submitted a bug report with YYG.

Within an hour or so of my SOS tweet, xot of GMLscripts.com had offered me some suggestions which fixed my problem. I really appreciated him taking the time to do it. I don’t know who xot is in real life — if he’s connected in any way to YYG, a former employee, or just a long time GameMaker developer, but I’ve gotten a lot of use out of gmlscripts.com over the last couple years, and so I donated $25 to him for providing such a valuable resource to the community, and since then he’s been quite friendly and generous with his time — he also contributed quite a bit to the draw_text_rtf() script that I posted about earlier this year. So, three cheers for xot, wherever you are — you’re a great guy.

This morning, I woke up to find an email from YYG Support in my inbox:

Hi there,

Reading through the twitter feed you linked it looks like you managed to solve the issue.
Is this correct?

Thanks

Peter
YoYo Games Customer Support Technician

Since the bug report tool doesn’t let you upload files, I had pasted the url of the twit pic, and Peter had apparently followed up, reading the conversation, and, seeing that I’d apparently sorted things out on my own, checked in with me to make sure I was doing OK. Awesome!

I wrote back to him:

I don’t know what caused it to happen in the first place, though, so you still may want to investigate that end of it, in order to prevent a recurrence of the issue. It seems to me that while it makes sense for the height of the auto-complete suggestion box to size itself dynamically, it ought to have some “sanity checks” to make sure it’s not sizing itself larger than the display resolution, and more specifically to size itself to no larger than needed to display the suggestions.

To which, he replied:

I’ll let our coding team know about this issue so they can add some checks to prevent this sort of thing happening again.

I’m extremely pleased with this exchange.

A year or so ago, back when YYG’s Mantis bugtracker was still open to anyone to submit bugs, it often took a long time for anyone to respond to a bug report, and often that response was unsatisfying — you felt like you’d annoyed someone with a concern or question that they felt was stupid, or that you were guilty of misusing the bug reporting system to ask for help merely using the tool rather than reporting a genuine bug, bug reports would often be closed prematurely, before allowing you to engage their developers who were working on it to communicate about the issue, and if the issue did merit a fix, it could be months before someone got around to it, because there’s a zillion bugs and they have to be properly prioritized, planned, and implemented.

By contrast, this experience left me feeling that they cared about my problem, not just the bug report, that they were interested in taking care of it the right way, and that it was their pleasure to do so. Submitting issues is also simplified compared to what it used to be in the Mantis system, which is also appreciated.

I really, really can’t say enough good things about how it feels to be using GameMaker these days.

Gearing up for Ludum Dare 28

I’m getting myself ready for LD48-28, deciding my general approach to take to this project. I like to do this ahead of time so I can get certain design considerations of the way, impose creative constraints, and focus on a particular goal within the scope of my project, independent of the theme.

Tools

IDE

GameMaker Studio

As usual, I’ll be making use of GameMaker Studio for my development, and probably only targeting Windows .exe build for the initial release, with a possible HTML5 build eventually if feasible.

I don’t have any particular aim this time around to use any specific features of GameMaker, we’ll leave that up to the theme and game concept to drive those decisions this time.

Graphics

Paint.NET, and Pickle

I’ve given the new Pickle 2.0 a try and while it’s no longer free/donationware, I do think that I at least like it for its onion skin feature that enables easier animations. I can see a lot of potential improvement for Pickle, and to that end I’ve written up a number of feature requests and enhancements and sent them along to the developer. I’ll be really excited if any of them get picked up and implemented.

I am going to use my pixel art minimalism technique, and also I intend to use a tightly constrained color palette. Not sure yet how few colors I want, but maybe a 4-color monochrome palette a la classic GameBoy would be fun. In any case, I’ll be making an effort to use only the smallest number of colors necessary, and paying close attention to how color works in the graphics I develop. I am going to see if Paletton can help me make better palette selections, and if I can apply what I learned from this coloring tutorial that I recently came across thanks to Joe Peacock’s recommendation.

Audio

Bfxr

Bfxr, of course, for sound effects. Maybe also some recorded audio samples for stuff that I can’t do well in bfxr.

Famitracker (maybe)

It’s probably still ambitious for me to try to pick up and learn Famitracker in a weekend and use it to good effect. I’ve been putting off learning it, though, and I want to have some kind of bgm in my game. Whether I end up using it or not in my LD project, I’ll be making an effort over the next few months to figure it out and put together some compositions with it.

Ohio Game Developer Expo 2013

This Saturday, 12/7, is the first annual Ohio Game Developer Expo. I will be there and am looking forward to meeting people and participating in the discussions and activities.

http://www.ohiogamedev.com/

http://www.ohiogamedevexpo.com/

Reflections on Mortal Kombat

Mortal Kombat came out in 1992, the year before I graduated from high school. It’s 2013, which means that MK is old enough to drink. Last weekend, I met it at a bar and caught up with it for old time’s sake.

I first saw Mortal Kombat at the local bowling alley in my hometown. The graphics looked impressive, the photograph digitally sampled sprites and rotoscoped animation giving the game a lifelike feel that no other game had. Yet, somehow I felt turned off. I wasn’t really interested in playing it at first. It looked like it was trying to be too hardcore, and the blood and violence felt more like gimmicks to me. Plus, it cost $0.50 to play.

It wasn’t until I went away to college that I first played it. The student center building at my college had a bowling alley in the basement, and there were a few arcade games there, one of which was a Mortal Kombat. There weren’t that many options, and it seemed to get a lot of play from the other guys who hung out there, so I gave it a try. It wasn’t long before I grew very well acquainted with that machine, and I probably dropped over $100 into it by the time I graduated. It was the first videogame that I ever played that I felt was worth two quarters to play.

Mortal Kombat was mega popular in its day, and notorious for its blood and fatality moves. Frequently cited by social critics who tried to call for censorship of games, it was a game parental groups hated, and it rode the publicity to the top. But all that controversy masked that the gameplay was solid, and the game was a lot of fun to play, offering tight balance, considerable depth, and a learning curve that took weeks if not months to master.

I got pretty good at it, but always felt like a second-rate player compared to some of the other guys I played against. I could hold my own against anyone using Scropion, but I secretly felt ashamed, like he was an entry-level character, certainly the first one I tried with any success, with easy to learn moves that did a lot of damage and were easy to land a high percentage of the time, and I felt like my victories were cheaper when I used him, though I never would have admitted it.

I got to like the cheesy Bruce Lee ripoff character, Liu Kang, and, to an extent, Raiden, who seemed to have been ripped off from the cheesier (though great) Big Trouble in Little China —although, due to an unfortunate leg-sweep vulnerability, bug he was a broken character.

But there were two players at my local arcade who were definitely better than me all around — who knew the moves of all the characters, not just three of them. I watched them play, and tried to learn the moves and the timing, and with a lot of practice I developed skill, which was what caused me to respect the game. Mostly I tried to play the single player tournament mode, where I had a decent chance of lasting a few rounds, but when they were around, I’d inevitably have to face their challenge. I got my ass handed to me a lot, but eventually I got good enough with Scorpion that I was pretty evenly matched against anyone.

Still, I never managed to beat the single-player tournament. I got to where I could get up to Goro, occasionally on one credit. But beating Goro was a seriously difficult feat, which I might have managed a handful of times. And then Shang Tsung, seemingly a weaker boss than the underboss, was somehow deceptively able to beat you before you knew what was happening. I had a rule about playing, I would never let myself spend more than $10 at a time, so if I couldn’t do it for that much, I had to walk away.

Last weekend, I was at 16-Bit Bar in Columbus, where they have a lot of great classic arcade games on free play, and I got to give Mortal Kombat another run. It’s been a good 15-16 years since I put my last quarter into it, and at first I couldn’t remember Scorpion’s fatality move. Embarrassingly, I lost a round in the second fight. I continued a lot. But it was on free play mode, and it started coming back to me.

Somehow, this time I managed to beat the single-player tournament. I’m not sure how I managed to do it. Somehow, it didn’t feel as difficult as I remembered — despite having noticeably diminished skills, I just kept trying until I got to the next level. Oddly the game felt slower than I remembered it — probably, I think, because of how later fighting games have gotten progressively faster over the years. Also, I started to notice what worked and what didn’t, and figured out timing and spacing that would enable me to land the powerful attacks that normally get blocked. Instead of going in headstrong and aggressive like my old playing style, I took a more methodical approach and picked apart the AI’s defense. I don’t know how to explain it, but it felt to me like I was able to see the weak points in the AI, and exploit them with predictable certainty.

I actually wondered whether the old game I used to play was set to a higher difficulty level — it’s certainly plausible, although I hope not. The endurance matches took several rematches, and it took a bunch of rematches before I beat Goro. I worked my way up the ladder, and knocked Shang Tsung off the top. I felt elated and accomplished for hours afterward. Taking 20 years to beat a game that has taken your measure is pretty indescribable.

And yeah, when I did it, I screamed “Mortal Kombaaat!!” like in the movie soundtrack, and felt every eye in the bar directed at me for a few seconds before turning back to whatever it was they were doing. Let me tell you, it enhances the experience, even more than you’d think it would.

 

 

GameMaker Studio 1.2.1146 update greatly expands tutorials

From the release notes:

  • Tutorials and Demos are now downloaded from our servers, reduces installer size – allows us to add many more tutorials and demos
    • Uses an RSS feed to get the information, allows other feeds to be added
    • Users can create their own RSS feed for their own Tutorials and Demos
    • 16 New Tutorials added that cover a variety of subjects from getting started, through touch controls to ads and facebook integration.

This is a very cool feature indeed! The ability to add third party RSS feeds to the Tutorials and Demos promises to make the GameMaker developer community even tighter, by accelerating the sharing of knowledge and techniques. While there is a great deal of information on how to do things in GameMaker at the GMC Forums, on various websites, and on YouTube, now users will be able put everything into a nicely aggregated channel accessible directly through the GameMaker: Studio IDE.

I’m really looking forward to seeing what the community of developers, which likely numbers in the thousands or tens of thousands, comes up with.

If I had a nickel…

One of the nice things about being an indie game developer is the community of devs who find each other through the internet. On one community that I frequent, I posted an idea a few weeks ago:

Starving Indie Marketing idea: Add a global counter for the total number times the game has been played by anyone, anywhere. Every time the game state reaches “Game Over”, the counter increments.

Then as the game over screen is displayed, the text: “If I had a nickel for every time someone played my game, I would have $” + global.games_played/20 + ” dollars…. In reality, I have $” + revenue ” dollars.”

Then display the IAP screen.

I’ve been wanting to see this tried, but haven’t been ready to set up a game for commercial release, so I just put it out there for anyone to run with it if they wanted.

So, one of the guys did! Jason Artis, of Hurgle Studios, is working on a Sudoku game for Android called Sinister Sudoku. Currently in beta, it will implement my “If I had a nickel” idea. So I’m really looking forward to seeing if it helps draw revenue.

My theory is that by providing immediate and direct information to the player about how well the game is doing, it will help provide the necessary incentive to the player to pay for a game if they enjoy it, to encourage the developer to continue working and release more games. I believe many players justify not paying for games because they rationalize that the game must be a success and must be making the developer all kinds of money, when the reality facing most indie game developers is anything but that. I like the free-to-play because it lets you experience the game to see if it’s worth paying for before you sink any money into it, and I like pay-what-you-think-it’s-worth models because it removes the excuse that many freeloaders use when pirating games that they’re “too expensive” and that they “would pay something, but not that much.”

Hopefully, by showing just how much revenue a game has generated, it will get players to realize how much labor and expense goes into producing a game, and drive home an understanding that it’s not free to produce them, and that good development cannot be sustained by low revenues. As a result, my hope is that those who are able to pay for games will be more likely to pay what they can and what they think the game is worth.

Phil Fish vs. Marcus Beer: We all lose.

This is just my opinion, and I don’t have all the information:

I don’t know Phil Fish personally, but I do follow him on Twitter. I have yet to play Fez, I’m sad to say, but it’s obvious to anyone who watched Indie Game: The Movie that he poured his soul into it.

The impression I get from his appearance in IG:TM and his twitter feed is that he’s an emotionally high strung guy, rather sensitive, and prone to lashing out in anger when he perceives that he’s been hurt or slighted. The most lasting impression I came away with was the part in IG:TM where, on camera, a very upset and overworked Phil Fish stated several times that he would kill his former partner if he did not release his share of Fez and allow Fish to finish and release the game. While I understood very well how deeply angered Fish must have felt, having sunk so much of his life into a game that he was depending on to do well, only to be left hanging by the legal fallout of a broken partnership that might prevent him from releasing it at all, it really did not seem like a wise thing to be saying stuff like that, certainly not in front of a camera. It just made Fish look bad, at best a temperamental artist, at worst a loose cannon who might actually go off. It didn’t matter that I felt that he was in the right and getting screwed, he was handling it badly.

Yesterday, it seemed like the whole indie developer world was talking about the latest Phil Fish meltdown. Fish was quitting game development. There would be no Fez II.

The last major meltdown that I’m aware of dealt with Microsoft’s treatment of Fez. Fish wanted to release an update on XBox Live, but Microsoft’s policies were getting in the way, and for a solo developer getting through the red tape hurdles and costs were tremendously burdensome. Fish’s outrage was as righteous as it was epic. I felt like he was on the side of every small developer who wanted to put out a major release.

This time it seemed that he had few friends or supporters, and lots of haters. At best it seemed his fans were mainly expressing disappointment at the announcement of Fez II being canceled, or expressing hope that he’d cool down and come back to the project. But Fish was spewing profanity about the abuse he’d been on the receiving end on, and it didn’t seem like anyone sympathized.

What was it all about? Something to do with “Annoyed Gamer”. Who? Some guy on YouTube with a following, who likes to give his opinionated opinions on games and the game industry.

Apparently, “Annoyed Gamer,” aka Marcus Beer, had gone off on Phil Fish and Jonathan Blow on an episode of Game Trailers’ Invisible Walls for not wanting to give a reaction to a recent Microsoft announcement that the XBox One would allow developers to use a commercial XBox One as a development unit — no need for a special developer’s version of the console.

My opinion on this is that Annoyed Gamer is entitled to his opinion, but is wrong to call out Phil Fish and Jonathan Blow for not giving comments on demand. If the media covering the game industry seeks an opinion on an industry development and asks someone who’s a big name in the industry says “No comment,” THAT IS THEIR STATEMENT. Sure, you can be an asshole and continue to press the issue until you annoy your interview subject and provoke them into blowing up at you, but when you do that, YOU are the asshole, not them. Being an indie gamer is stressful enough without having to deal with goddamn papparazzi who won’t take no for an answer. “You have to suck it up and talk to the press whenever we want, about whatever we want, because it’s an honor for us to want to talk to you,” is simply arrogant. Calling people names because they don’t want to answer your question is bullshit.

Yes, game developers have something to gain from media coverage, and many of us need it in order to promote and market their projects. No one has to give an interview if they don’t want to, or answer a specific question if they don’t want to.

At the end of the day, Jonathan Blow and Phil Fish give us games. That’s more than enough.

Marcus Beer, and his ilk, on the other hand, give us opinions and information. This is also valuable, but it’s information and opinions about the games that developers make. We can come up with these on our own, easily, although there are a few who are unique voices well worth listening to, and I’m glad they’re out there contributing to the conversation.

Without the developers developing, there’s nothing to talk about. We might need each other, but one of us comes before the other.

It’s certainly possible to gain a name, a following, and influence in the industry — whether you’re a dev or a reporter. There are powerful people on either side of the symbiotic relationship. But however much influence you might have, you can’t always get your way. Ultimately, the media coverage exists because the game industry exists. Everyone should be entitled to respect and basic decency, especially people who have given us a celebrated magnum opus like Fez or Braid.

The industry is bigger than any one person, and there will be no shortage of good games to fill the void that Fish will leave behind him. But it’s still something that shouldn’t have happened, and because it did, we all lose out on the games Fish might have created. I don’t mean to defend his personality or the way he handles being in the spotlight, but frankly, to the vast majority of us who don’t know him personally, those things are secondary to his works, and aren’t really of concern to me as a gamer. Leave him alone and let him make games, the gamer in me says. I don’t care what he says in an interview, or if he gives an interview. I want to interact with his creations, not him.

In deference to those who do know Fish and care about him as a person, and to the man himself, he deserves to be given his space and the right to be left alone. With some exceptions, journalists should respect a person’s wishes to be engaged with on terms of their choosing. Game development, particularly as a solo dev or small team, is incredibly stressful, demanding, and difficult. Everyone needs to recognize that, and acknowledge the sacrifices and dedication that are required of game developers, and give them the respect that they deserve.

Pretentious Game 3 proves that narrative matters in games

Tonight I played through a short, but very memorable and thoughtful puzzle platformer, self-deprecatingly entitled, Pretentious Game 3. I have yet to play the first two installments, but shall seek them out forthwith.

What would otherwise be a fairly challenging but mostly nondescript puzzle platformer is elevated to a touching experience though the thoughtful application of narrative and a simple, but emotive piano piece.

The game’s simple mechanics and puzzles are made memorable by the narrative bits, which make literal the metaphors in the prose, imparting greater meaning to both. The simple geometric graphics, with their absolutely abstract nature, invite the player to impart their own life experiences into the game, reliving key moments in your own life, mapping them onto the episode presented in each level.

This is ingenious minimalism, with the beauty of a black and white silent short arthouse film. The effect is magical.

Cleveland Game Developers Summer Jam 2013

Cleveland Game Developers Summer Jam 2013 is underway!

Theme.announce() {return “The Butterfly Effect.”;}

I’ll be posting builds in progress at https://csanyk.com/cs/releases/games/SummerJam2013/web

Haven’t really thought of anything yet.
I’ve started an idea, not sure where I’m going with it yet.

Ninja Baseball Batman: OMG BEST GAME EVER

I was at a local bar called B-Side, which recently installed an arcade full of classic videogames and pinball tables. They have the first Pinball2000 game, Revenge From Mars, and a Star Wars pinball table. They have a good selection of arcade classics from the 80’s and 90’s, from Galaga, Defender and Centipede to Contra and NBA Jam.

But I was absolutely blown away by a game called Ninja Baseball Batman, which I’d never even heard of before. An Irem-produced side-scrolling beat-em-up from the 1990’s, themed with what can only be described as Japanese wackiness taken about as far as it goes. You play a member from a 4-person team of superhero robot ninja baseball players, each with their own statistics and special moves. This game is so chock full of WTF, you initially go “what the heck IS this??!?” but pretty much right away you get into it and go with it. You fight a menagerie of odd robots and monsters made out of junk, vaguely reminiscent of mega man enemies, but (mostly) baseball themed, with some casino-themed monsters and some halloween-themed robots. Nothing makes any sense at all, but that’s the point. Just go with it and have fun. There’s even living hamburger monsters that you can eat for a life bonus after you defeat them. I can’t even describe this game, you have to see it. Fortunately, there’s YouTube:

The gameplay is absolutely fantastic. I beat the entire game on $2.75 — I don’t know if it has an easy mode, but it felt pretty easy, but it was so fun. The game is generous, not a quarter-sucker, takes no cheap shots, and is a pure joy to play. The movesets for each player are extensive, and I couldn’t get over how fluid the fighting system was. It felt similar to the Konami beat-em-up Ninja Turtle and Simpsons Arcade games, but with unmarketable characters with no built-in audience. But it was so incredibly surreal and awesome, I couldn’t help but fall immediately and utterly in love with it.

Having done so, I must evangelize it. It is worth hunting down and playing. Go do so. Now.

Here’s a bonus Angry Video Game Nerd review:

I agree COMPLETELY with every word he says in this video.

Apparently only 43 arcade cabinets were ever imported to North America, making this game ultra-rare. I feel incredibly fortunate to have found this at B-Side.