Game Jams

So, because there’s a local game jam coming up, which I haven’t signed up for, I got thinking, and I think I’ve done seven game jams.

  1. Room jam. This is the only local one I’ve done.
  2. Ludum Dare 24
  3. Ludum Dare 26 collaborating with Anand Friesen
  4. Ludum Dare 29 collaborating with Anand Friesen again
  5. I did a Game Jolt contest with a party theme. Which is maybe where I start stretching the definition of jam but whatever
  6. I did the Candy Jam on itch.io
  7. I also did a Flappy Jam on itch.io but by this point I would be surprise if they go more than a week without something
Tagged , | Leave a comment

Procedural generation links

This is just a collection of links I think are interesting for procedurally generated maps in games.

First up, a video presentation of the methods used to randomly generate maps in Sir You Are Being Hunted.

Second is not about randomly generated maps for games specifically, it’s about the visualization of algorithms, but some of those algorithms have results that could be interesting, and being able to see visually how they work really helps imagine how they could be used for this purpose.

Then we’ve got an article on map generation using voronoi polygons.

Then we have one about trying to correct what he calls the “nebraska problem” while developing the game The Witness. He has a follow-up where he shows other patterns and there’s a few other useful ones listed here.

And last this blog sometimes also has interesting things. Again the focus of the blog is on visualizing interesting math, not procedurally generated maps, but some things are good inspiration, like the liquid in a porous material the idea of a Stolum Number or the Cheerios effect a fractal Brownian tree placing dots based on two distance rules, automatically clustering cities, or the tracks of a bicycle.

As they point out in the Sir You Are Being Hunted video, it’s easy for someone new to this to think they can just throw perlin noise on something and that’s good enough, but the most interesting maps have more to it than that.

Leave a comment

Rap video

I animated a rap video, using a combination of Unity 3D rendering and After Effects 2D animation:

For me the highlights from a technical standpoint are:
1) I rigged and skinned the 2D tentacles in blender. Yeah it’s the simplest possible thing to rig and skin, but it worked as intended, which is more than I can say for my previous attempts to skin something.
2) For Mad Child’s jaw I imported After Effects keyframes into Unity. The timeline animation in AE is so much easier to use than the Unity timeline animation. It’s still a hassle to import the keyframes, but in some circumstance that’s nice to know it’s possible.
3) The cave I generated from imported image files. I had already been playing with a tile generating script, what this adds is a height map image file. Again, it could be useful somewhere else, so you can use Photoshop as a level editor, essentially.

Tagged | Leave a comment

Icesome!

I made another Ludum Dare game teamed up with Anand Friesen. The theme was Beneath the Surface so we made a game where you’re an iceberg and smash ships, called Icesome.

Tagged , , , | Leave a comment

Two games

So I made a couple more games.

There’s Candy Crunch
http://rhill.itch.io/candy-crunch
http://gamejolt.com/games/arcade/candy-crunch/21582/

And Spitty Octopus
http://rhill.itch.io/spitty-octopus
http://gamejolt.com/games/arcade/spitty-octopus/22628/

I posted both games to both Gamejolt and Itch.io, I’m still feeling out which I prefer. I made them both is response to game jams put on by Itch.io, the Candy Jam and the Flappy Jam

Tagged , | Comments Off

Intro to video games for artists

I’ve been thinking a lot of how to get artists into video games.

I think animators are a lot of the way there. There is a certain understanding of movement that an animator has that also helps with video games.

I’ve mentioned Anna Anthropy in a couple posts. She has a book that is the one I’ve seen that seems most written for someone who is an artist but doesn’t assume you know anything about video games.

Some of it might be out of date. When she discusses possible tools you could work with, there’s no mention of Unity which has become pretty promising, so I’ll try to explain here.

Unity is a game development environment. There’s a free version, which limits you from some things the pro version does, but is still very powerful. It lets you output the game as a program for Windows or Mac, or output a file that’s used by the Unity web player. (Which lets people play your game in their web browser, as long as they’ve installed the Unity plugin.)

It will require more technical capability from you than making a Twine game, for example. How much more depends a lot on the mechanics of the game you’re trying to make. It’s easiest when you just go with the flow of what capabilities are already built into the game. If you look at my game Party Business, programming the cake was fairly straightforward, because it relies heavily on the pre-programmed physics of what’s called a RigidBody. Programming the forks was more difficult, since I couldn’t use a pre-programmed element for deciding they are close enough to the cake to attack, or to make them follow the path of the maze. So I could see someone without any programming experience figuring out how to do the former through persistence, but not the latter.

There’s also the 2D vs. 3D issue. Before Unity, I had experience making games in Flash, but they were always 2D games. I still sometimes have trouble wrapping my head around how Unity represents rotations numerically, using what’s called a Quaternion. Unity is capable of making 2D games, like my game Spitty Octopus and if you’re new to this, sticking to 2D is a good way to keep it from being too complex. It also means you can make your game graphics as images instead of dealing with 3D modeling, which is another thing I’ve just barely begun to figure out.

Also once you’ve made a game, how do you get it out there? Two places I like that aren’t mentioned in Anthropy’s book are Itch.io and Gamejolt.

Both sites allow you to post games as Windows or Mac executables, which distinguishes them from some game sites like Newgrounds or Kongregate, which only allow games that can be played in the browser. This would open up what kinds of games you can make and what methods you can use to make them. Itch.io also allows you to sell games through the site, which I think might fit into the zinester mentality. Also when you post something, one option it gives you in the form is you can pick a different noun for it instead of “game,” so you can call it an “interactive artwork” or a “software toy” or whatever you think is a better term if you’ve pushed beyond the limits of what counts as a “game.”

Comments Off

Sprite Sheet Making

Earlier I posted about the Layers to Sprite Sheet Photoshop script.

I’ll describe the fuller process surrounding that.

A lot of game development environments like to work with animations in the form of sprite sheets. Instead of importing 16 image files, for example, it will import one image file with all the frames of the animation arranged in a 4 by 4 grid. Like this:
lincoln

Actually this is a combination of four animations, each four frame long. In the code for the game, I would define four animations depending on which way the character is walking. In Flashpunk, that looks like this:
//create a sprite sheet
//GraphicsManager.PLAYER is a variable that defines the source image
//it is divided into frames that are 16px wide and 32px tall
//then the result is put into a variable named sprite
sprite = new Spritemap(GraphicsManager.PLAYER, 16, 32);

//define four walking animations
//first is the name of the animation
//second is the frames in the animation, listed inside []
// (picture these 0, 1, 2, 3
// numbers over the 4, 5, 6, 7
// image above 8, 9,10,11
// 12,13,14,15 )
//third is a frame rate
//true is to say this animation loops
sprite.add("leftWalk", [2, 6, 10, 14], 5 / Settings.FRAME_RATE, true);
sprite.add("rightWalk", [1, 5, 9, 13], 5 / Settings.FRAME_RATE, true);
sprite.add("upWalk", [0, 4, 8, 12], 15 / Settings.FRAME_RATE, true);
sprite.add("downWalk", [3, 7, 11, 15], 15 / Settings.FRAME_RATE, true);

//define four non-walking animations
//since they are only one frame long, they will be still
sprite.add("leftStop", [2], 1, true);
sprite.add("rightStop", [1], 1 , true);
sprite.add("upStop", [0], 1, true);
sprite.add("downStop", [3], 1, true);

//play one of the animations
sprite.play("downStop");

The details will vary with different programming languages and development environments, but there will be similar things you need to do.

If you have any animation program that can output .PNG files, output a .PNG sequence with alpha transparency. (If you’re a more physical animator, this might be the tricky part. Depending what you’re trying to do, it might not matter if you have no transparency.)

You can then import any image sequence into Photoshop as layers. I use a script called Load Files Into Stack.

If I’m doing a more pixelated animation, I might rather draw the animation directly in Photoshop. When I did No More Table, I imported video from After Effects in this way, and then rotoscoped them in Photoshop.

Once you’ve got everything as layers like you want, first write down the height and width of your image, then run the Layers to Sprite Sheet script and save a copy of the file.

If importing to Flashpunk, save the resulting sprite sheet as a .PNG file with alpha transparency. In Unity, it can be a .PSD if you’d like to retain layers or other things. Unity is also the only environment I’ve encountered that allows you to set arbitrary rectangles for all the frames, instead of just a grid. DS homebrew will only take 8-bit PNGs which have no alpha channel, so you have to specify a colour that will be transparent. It also only accepts dimensions that are powers of two, like 16, 32, 64, 128, 256. Other things like GameMaker and Flixel will also take sprite sheets.

Comments Off

Big I Made This

Apparently it’s been a long time since I did an I Made This post, so a couple things to catch up on.

I made a game called Party Business in Unity as part of a Party-themed contest.

I updated Slimy Things Did Crawl to be a little better at explaining how to play it.

I made some videos that I posted on Vimeo.

First, The Perspective Myth

Then, Bad Apples:

I think you’re mostly caught up.

Tagged , , | Comments Off

Zinesters vs the World

I’ve been reading some Anna Anthropy and a “zinesters vs. formalists” and “what is a game?” stuff about her work and Proteus and Dear Esther, etc. etc. and decided to try to articulate my thoughts on it.

I had a post earlier where I linked to a list of criteriological types for analyzing games. I’ll repeat them here:

  1. game affordances
  2. space
  3. graphical qualities
  4. sounds
  5. challenge to manual skill
  6. cognitive challenge

Nobody who has thought this through or has ever played a text adventure is going to make graphics and sounds a crucial part of the definition of a game.

When Ralph Koster said dys4ia was something that could be made in Powerpoint, I think he was focusing on criteria 1, 5 and 6. In an unrelated post he said, Narrative is not a game mechanic he says “The core of a game is a problem to solve.” A problem to solve is synonymous with a challenge to overcome. Whether it’s a manual or cognitive challenge, he sees the challenge of a game as central to what makes a game a game.

Anna Anthropy in responding to this said:

by his definition, a game is a puzzle to be unraveled. it is a system to be understood. an enemy to be defeated. a country to be conquered. but DYSPHORIA is none of those things. what it IS, i need to believe, is a relatable human experience. and what a game actually is is A GAME IS AN EXPERIENCE CREATED BY RULES”

If you haven’t played dys4ia, go play it. I’m inclined to side with Anna on this one. I’m not entirely unsympathetic to Koster’s criteria. In his Narrative article he applies this not to small personal games, but to big-budget games like Batman: Arkham City. It’s kind of the equivalent of an early film enthusiast arguing that just filming a stage play isn’t cinematic if you aren’t making use of anything that is unique to film.

But I’d argue that Anna did use elements unique to games. I’ll use one example from dys4ia to show what I mean. In Level 3 – Hormonal Bullshit, you can navigate sensitive nipples through a maze of pointy objects. Whether you succeed or fail, the game continues to the next scene. (I guess Koster would require the maze navigation be a problem the player must solve in order for it to qualify as a game.) Then in Level 4 – It Gets Better, the game returns to the same scenario, but the nipples smash their way through, showing they are no longer so sensitive.

By repeating the same scene with changed mechanics, Anthropy uses the mechanics in an expressive way. Or to put it in her terms, a change in rules leads the player to experience the change in sensitivity.

In Ian Bogost’s Persuasive Games, he calls this procedural rhetoric, and it isn’t something you get from a Powerpoint presentation.

Tagged , | Comments Off

Strange Days New Years

If you want to watch Strange Days for New Years Eve because you are a weirdo, start it at 9:44 PM and the timing of the New Years countdown in the movie will coincide with the countdown in real life.

Comments Off