Monday, May 6, 2013

Random thoughts on Tutorials

I was writing a Reddit post and thought "y'know what, this sounds like the kind of thing I should be putting on my blog," so here it is with zero editing, as usual.

As a player slash sometimes-designer, I'm not shocked in the slightest. Games that do tell you what to do are so much easier to pick up and get right into. I want to learn how to move, jump, shoot, interact, one button at a time. I don't want to look up what the buttons do beforehand and hope I remember it all with zero context for my actions. Flash games are an extremely good way to get a lot of intro sequences very quickly, and the good ones very seamlessly get you quickly into the game itself.
But, I do agree that having that optional screen is much better than having nothing at all. And having an optional screen of "advanced tactics" can be helpful. I'd say there's a heirarchy of good-design with respect to tutorials. From best to worst:
  • No-text subtle nudges and level design that guarantees players pick up on the mechanics
  • Seamless integration of textual instructions that don't take control from the player so advanced players can speed right through
  • Obvious, optional tutorials so that people who can figure it out on their own can do so, but people who get stuck can get help
  • Mandatory tutorials that explain how to do something and don't let you through without you first showing you understood the mechanic
  • Mandatory tutorials that explain how to do something once without letting you try it out and there's no way to get another explanation if you missed it the first time
  • Tutorials that explain how everything in the game works all at once in excruciating detail, before you have any real context for how the game plays
  • "Eh, they'll figure it out"
Demons' Souls is an interesting case study. It has two tutorial levels, the first of which is the official tutorial level, the second is the "first real level". Level 0 has a bunch of floor messages that explain the controls of the game, but the enemy damage is scaled down to the degree that all it teaches you is the base-level mechanics; how to move, how to use items, etc. The second tutorial is where the game teaches you how to play Demons' Souls for real, it knows at this point that you know the inputs, now it teaches you the flow of the game; cautiously approaching problems, how to effectively kill enemies, that you should be blocking constantly, how to time healing items so you don't get mauled mid-heal, etc. However the difficulty of Level 1 is so severe that it's hard to immediately see what the correct action was for a new player who isn't fluent in the game's philosophy about difficulty. The level is also long enough that iteration is very protracted. There are shortcuts, but the level design doesn't encourage players to find them.
So, Demons' Souls actually has a pretty crappy tutorial. Dark Souls, however, has a brilliant tutorial, all because it has better-tuned difficulty, along with a more-educational structure. It does still have a fairly lethal tutorial, in that you can go from full health to none in a single poorly-understood encounter, which is good because it means players need to wrap their heads around how that fight works before they can succeed at the level as a whole.
So yeah, Dark Souls teaches a very complicated game with a very straightforward and transparent tutorial.

Wednesday, July 11, 2012

Been a while!

So it turns out having a fulltime job means "being more busy than in college." Who knew.
But, I'm more comfortable nowadays with life than I was for the past few months, so I'd like to start blogging / working on personal projects again.

My real-job game hits Alpha on Friday, so I'm probably going to be dog-like working until then. This weekend I'll put my nose to the whetstone and get some code done for the side-project, which has barely been started before now (I do have some design-related stuff, but that's less hairy than code). After that, I've got stuff I want to talk about.

Some potential topics:
  • Modern AAA development is unsustainable
  • That new OUYA console, and how it could save consoles
  • Diablo 3 is still a good game, despite its many, many flaws (but it isn't a great game)
Edit: Oh, and my "real job" as a co-op ended over a month ago, because my real realjob started. Yes, I got hired. I'm a for-real software engineer / game developer now! Yaay.

Tuesday, April 10, 2012

Game Idea: Collectable Monster Files

Modern PC equivalent of Monster Rancher. For those not in the know, Monster Rancher was a game where you could take any CD and use it to generate a monster. Then you'd train that monster and blah blah blah, we've played monster-raising games before. (Monster Rancher is good and semi-unique for other reasons it's worth your time blah blah, but that's not the part we're here for. We're here for the monster generation mechanic.)
I thought, "Hey, that's a neat mechanic. Take a physical thing and make it into a virtual thing, and then play with that thing." Then I thought, "I kind of want to play with a monster-generating algorithm like that". And then I thought, "Who the hell uses CDs anymore?"
So, modernizing/streamlining the idea, how about a game where you generate a monster from a file on your hard drive?

Ideas for implementation:
  • Hash entire file into some value, use as random seed
  • Use specific portions of the file / metadata to inform monster stats
    • File extension <=> class (or more probably, file -type- <=> class)
      • Have many common extensions actually mapped; so .png .jpg .jpeg .gif .bmp etc. are all recognized as 'image' types (and get the appropriate monster subclass off of that)
      • Unrecognized extensions get hashed! Deterministically, so .lqfx3 files always come up the same kind of filetype
    • Hash the file name as a whole to get the specific subtype of monster
    • File size <=> 'weight'
      • Higher health, lower speed. Or whatever stats make for good balance or interesting.
      • Weight brackets. 0B-1KB = superlight, 1KB-1MB = light, 1MB-50MB = average, 50MB-750MB = heavy, 750MB+ = superheavy. Or whatever numbers make for etc.
    • File age
    • NOT file location; anything that determines the monster's information should come from the file itself, to 1) make the file feel like it holds a specific monster, and 2) so you can give friends file X because you want to share monster Y
  • Some monsters are just better than others.
    • This can come either from speciation (i.e. wolves > rabbits), or random numbers rolling higher.
    • This allows for less homogenousness; don't have to balance wolves and rabbits, and/or don't have to balance all wolves (wolves would invariably value stat X the most, so any seed that gives higher X will be a better wolf anyway)
    • This also allows for a sense of progression; you can't get -any- monster from the word go, so gameplay is extended and/or there's replay value or something.
    • There's also incentive to hunt for the best monsters.
  • Taking the idea further, files could also be adventuring areas.
    • A file could be one or the other, and you would add files to your game world to get either new areas or new monsters. Add file -> game world expands. Neat, but can making getting monster1 awkward as you grope around for a file that will resolve itself into something useable.
    • Directories would be dungeons, and you could explore subdirectories and go wild. Taking it to its logical extreme, the entire game world would be C:\
Don't know if I'm going to make or even work on this. What with the day job and all. Still, I do want to do sideprojects, and this seems neat. We'll see if this goes anywhere.

Sunday, February 26, 2012

Crazy Ginx : Released!

Full Version
It's 'done'. Go nuts.
I'll do screenshots even- Oh who am I kidding I won't.
Anyway play it! Comment! Go forth and multiply. All dat jazz.

Release a game before it's legally iffy: Accomplished.

Revamp

Yeah why not.
Updated the blog's visuals/design. Aka I switched to a different template. Enjoy!

Saturday, February 25, 2012

Mentions

I got a job, I guess.
I mean, I did get a job, I guess I'm mentioning something about it here?

On Monday (the 27th), I start work for Vicarious Visions. My position is that of a Game Programmer Co-op. If I don't fuck up, I've got eight months of work lined up. Also, money, so that's cool.
Apparently I'm not allowed to work on side projects for profit while I do so. Although, there exist forms that could be filled out that would sanction that sort of thing, as long as the company agrees that it won't compete with their products blah blah blah. I'm probably not going to be able to muster the concentrated effort necessary to do side projects when I've got a full time job programming, but we'll see. Not sure if I'd be able to release things not-for-profit, so I'll ask at some point.
One implication of that is, I'll release the 'final' version of Crazy Ginx sometime this weekend. It's practically done at the moment. There's plenty of things I'd like to add but that will always be the case won't it. It's "a full game," so it gets released without me disclaimering it at all. Other than, I don't have a QA department, if you find any bugs let me know and I'll go 'whoopsie'. Maybe fix 'em.

But yeah, don't expect any games on this site in the near future (other than Ginx, obviously). I'll try and do more game design and/or analysis type stuff. Thinking about writing some reviews! So yeah. That'll be fun.

Saturday, February 18, 2012

Game Object Models

Right, so, continuing on from where we left off last time...

Wednesday, February 15, 2012

Object Oriented Programming

I haven't talked about programming much on here. Which makes me feel like the third word in the title of this blog is a filthy lie. To rectify this, here's some insight into something I recently discovered/learned about.

The Game Object model is a fairly straightforward model to someone with a passing familiarity of Object-Oriented Programming.

First, a primer in Object-Oriented Programming, so you, the reader, can have a passing familiarity with it, so you can see the Game Object model as being fairly straightforward.

Wednesday, February 8, 2012

Crazy Ginx

You probably already know this, but I've been working on a game. Surprise surprise.

I haven't got too much to say about it at the moment; I'll wait until it's done to do so.
In its current state, Ginx is now up to Alpha status. This is by far the most complete game project I've put together. It's got polish, people, polish! Which is not to say there aren't rough portions. I'm probably aware of them, but feel free to point out things that make you go :/, in case I'm not.
Instructions are, unusually, in the game itself. I think I did a decent job with that too. If not, comments are down there.
For music, I'm using tracks from the excellent Homestuck Soundtrack. And one from Mystical Ninja starring Goemon, a surprisingly excellent N64 game. I have no permission, explicit nor implied, to use any of those musics, so until I either get permission or replace the tracks, consider them there as filler. Sound effects will probably go in before Beta.

Saturday, January 21, 2012

Demons' / Dark Souls

The following is from an email I wrote to the guys at Extra Credits, which is an excellent show that if you aren't already watching, you should watch. I realized I hadn't talked about game design on this blog at all recently, and that this was perfect for it. Enjoy.

I think they're extremely well-designed games. I'm going to refer to Dark Souls specifically, because I've played it more recently. One of the most brilliant things they did with the design, I feel, is the control scheme. More specifically, how "attack" isn't one of the four face buttons. They probably mapped the left and right hands to the shoulder buttons more because of symmetry and the elegance of everything having a primary/secondary use, but this had a secondary effect that was possibly even more beneficial. The four face buttons are the most comfortable buttons to hit quickly and/or repeatedly, which is why games usually assign their most common actions on those buttons. Dark Souls has their attack function, normally used relentlessly in Action-RPGs, on a non-primary button. This emphasizes their focus on carefully choosing when and where you attack, as opposed to running in guns-(or swords-)blazing. It also -physically- reinforces this notion, because the shoulder buttons are somewhat awkward and painful to tap repeatedly. This physical reinforcement of how to succeed in the game is one of the most brilliant pieces of design work I think I've ever seen.
The rest game is filled with similarly brilliant design choices as well. Mobility at the cost of protection makes for an interesting choice (more so in Dark than Demons', because of the increased effectiveness of armor). No music except during boss fights creates an atmosphere of tension and loneliness, and a sharp jarring contrast that puts the player in awe when a boss does show up, and also gives a sense of epicness that serves to highlight what a blast the bosses are to fight. The only thing I feel was a mistake was the Mimics. Yes, you only ever fall for it once, but, c'mon guys. Now you're just being mean. And missing a bonfire is fairly aggravating, but the game has such an exploration/survival bent that I'm willing to accept it.
Personally, I don't play it at night anymore. Not because the monsters ghouls zombies skeletons aberrations what-have-you are particularly scary. To me, the game as a whole isn't terrifying for the most part, despite the numerous enemies that, presented differently, would be much scarier. I can't play the game at night because it's atmospherically spooky, and the gameplay reinforces the terror of exploring somewhere you've never been, where everything is trying to kill you. That sense of the entire game's world being out to get you - because it is, mind - is more lastingly chilling than many things that want to be scary. When I'm done playing Dark Souls, I am, thanks to the gameplay and level design, paranoid and jumpy for at least an hour. I find myself checking all the corners of my house, not completely trusting that there are no traps or monsters around. I want to be aware of whatever dangers are around, because I also know from the game that whatever comes my way, with perseverance and careful tactics, I can defeat it. The game isn't purely tension all the time, even though the player is always extremely vulnerable. If anything, this vulnerability is empowering, because even though the player's avatar is heroic, strong, and has magical powers, the bosses they topple and even the hordes of minions they defeat are all so much more powerful than they are it's amazing that the player even warrants their attention. And yet, with just a little persistence (or, sometimes a lot), they emerge triumphant.

Friday, December 16, 2011

Suddenly! (Miner)

Releases a game out of nowhere.

Pictuars for once:





Boosh.
Instructions are in game for once as well!


Basically, Terraria with an Elder Scrolls leveling system.


The self-imposed challenge here was, "make a game in two days." I had a final on Wednesday, so I extended the deadline to 2.5 days.
I'm probably going to be updating this over the next X period of time, but doing stuff on a deadline was kinda fun. So, probably going to do more.
Also: No testing. No idea if this'll work on your system. Have fun with it.