Ten minute game jam!

Wow those are really cool looking! The code for them looks surprisingly simple too (especially because I’ve never looked at LUA code before).

That looks interesting. It reminds me of the board game Steam. Do the different colored terrains have different move-through costs? Seems like with a good map randomizer, trying to figure out good, cheap connections on a time limit could be exciting.

It’s super simple. When you have an hour or two, you should check out the framework. It’s amazing how quickly you can get stuff working.

I hadn’t heard of Stencyl before, looks interesting. It might be something to use the next time I try to do a game project with my nephew. I know he’s used Scratch before, and HTML5 export in the free version seems like a big plus over some of the similar tools.

(As it is, the projects always end up with him as the project manager and idea guy and me as the code monkey, despite half the point being to teach him programming).

I’m still deciding what I’ll use. Godot would be my default choice, but I think that making a proper HTML5 port would be a major plus, so I’m looking at other options.

The one I’m most intrigued about is actually PICO-8. I do own it from getting Voxatron in a bundle ages ago, so I guess I’ll try to do something. It helps that it uses Lua for code, as I actually have some experience writing Lua code in embedded applications.

If that fails, I’ll probably try something like Phaser. We’ll see. :)

Why are there so many options?

xkcd weighed in some time ago:

Yeah, it’s ending up a bit closer to Age of Steam than I planned.

Yesterday I plugged in the economic model, and played way more games of it than was strictly necessary just for testing. I made a little video of the gameplay.

  • Removed the possibility for paying back loans. I should have known it was a bad idea, it made overly aggressive early expansion a no-brainer.
  • Gave up on the “10 minutes, no more no less” conceit, and added a fast forward button. Otherwise there will almost always be some downtime.
  • Figuring out a simple enough UI for shipping was an issue. What I ended up with each city’s production being placed in the hexes next to the city. (Where they block track builds until being shipped away).
  • Made each city demand a single fixed resource, which is never drained away. The hope had been that there’d be interesting sequencing decisions where you make a certain build + shipment just to get rid of a demand that’s blocking a better shipment. But it was just too hard to visualize what the potential shipments were both now and in the future.

I’ve added some details to hair, fixed a few minor issues, and refactored to make the various components into a Person class that I will use to represent passengers and airline staff. The clothing colors are random, at the moment, but the staff eventually will be identifiable by bright red uniforms or something.

From the mind of @Dave_Perkins, in association with Fishbreath Labs, and with special thanks to the Godot engine and Fishbreath’s copious free time at his in-laws’ last weekend, we present…

Hexagone is a puzzle game played on a grid of hexes.

Play by selecting hexes in a chain whose values add to 7. (Click hexes to select or deselect them, or right-click to deselect all hexes.) When you finish a chain, you earn points based on the length of the chain (the length of the chain squared) and the number of times you cross between colors in the chain (x2 multiplier for every color change). The value of each hex used drops by one. When a hex’s value drops below zero, it disappears, and the spirals collapse inward.

Play carefully, though! When your chain enters the center hex, or runs through two zeroes in a row, your multiplier resets to x1.

The goal is to build up the highest score before the hexagon collapses so much that you can no longer make moves. There’s also a timed mode for shorter games: you have three minutes to score as highly as possible, and hexes missing after the spirals collapse are replenished.

Both modes are available on random boards, and on a daily challenge board (for offline play). Brag about your scores!

Get it for Windows (or Linux/WINE) or OS X.

@Fishbreath is a badass programmer, people. All I did was conceive of the game, and ten days later, you all get to play it. Special thanks to members of his family who playtested and helped the two of us to improve the rules.

I’d love to see some folks post their best scores for the daily timed challenge!

That’s awesome! Good job, @Fishbreath and @Dave_Perkins! I just played a few games. I did it all for the glory of seeing my name on the high score board, which doesn’t seem to be working (i was playing random timed games). I think that concept would do really well on mobile, too, if you could drag your finger to make the chains!

It’s great to see this ten minute game jam producing results! I’m plugging away at mine, as I get time, but it’s going to be a while before I have anything playable, I think. I agreed to do some time-sensitive childhood mortality analysis and visualization for some former colleagues, so I have to wrap that up first.

The high score board separates timed and untimed games, and shows the latter by default. Hit the timed button to switch. Unless you did, and it is actually broken. Which is entirely possible.

That’s probably it. I didn’t try that. I just looked and it worked. :)

Very cool!

@tomchick How about a joint podcast with @Dave_Perkins and @Fishbreath so they can discuss their awesome game?

I’d go a little further, and suggest a possible 10-minute-game-jam edition. Once some more entries come out, we could all take a little of Tom’s time to talk about the process.

My Hexagone untimed daily score for today (it goes by local date, so January 19) is 84,449.

I really need to participate in this – been a while since I’ve coded for fun. Transitioned to a new job a little over two years ago and been working lots to get established / prove myself.

I’d like to do a realistic dungeon crawler. Not sure if with turn-based combat or real-time. Problem is that while I’d love to see a Wizards Crown-like tactical combat engine I also would like to emphasize non-combat aspects of dungeon crawling – environmental hazards, traps, etc. and that’s much easier done in real-time.

I guess, as much as I resist it, that a dungeon crawler such as that would be best done in 3D or isometric 2D. Probably 3D, say Ultima Underworld-like. Using Unity and C#, mainly because I’ve got a lot of familiarity with C#. Not as big a fan of Unity, but it is hard to deny the wealth of tutorials, help, etc. out there as well as cross-platform support.

I’d like to keep the art demands light (which is part of the reason I’m loathe to go 3D or isometric 2D – side-scroller or top-down would be much, much easier art-wise but doesn’t lend itself to realistic dungeon crawling as much.). So think pretty bare-bones art-wise like that recent game Delver or something.

[quote=“BigWeather, post:78, topic:127958, full:true”]I’d like to do a realistic dungeon crawler. Not sure if with turn-based combat or real-time. Problem is that while I’d love to see a Wizards Crown-like tactical combat engine I also would like to emphasize non-combat aspects of dungeon crawling – environmental hazards, traps, etc. and that’s much easier done in real-time.

This sounds awesome, specially in a 10 minute format!

I implemented a seeded random map and played three maps several times each. The goal here was to figure out how badly unbalanced the game is. So far there has been no tuning at all, and constants have been chosen totally arbitrarily and some can have pretty huge random swings (e.g. number of resources on the board, number of cities within short distances of each other).

  • Map 1: Had basically two obvious ways to play through it, and one non-obvious one that was slightly better. This wa
  • Map 2: Only one viable opening. Two minor variations for the end game. A horrible map.
  • Map 3: It took ten games to find what I suspect is the optimal solution (though it’s possible there’s one more). At least four distinct openings. Several cases where the best way to ship a resource on hex X was to build a track through X (you can’t build track through hexes that have unshipped resources). So there were some good sequencing problems around that. One very competitive solution actually depended on building a loop, which the rule set is actively discouraging right now. Actually feels like a game.

So there’s two paths forward. One is to figure out a map generation algorithm that reliably generates the last kind of map. The other is to make some rules changes that will increase the number of viable options on all levels. Or both, I guess. The tricky bit with rules changes is figuring out ones that don’t require any more UI.

The rules changes I’m thinking of:

  • Change the rule for where a resource is shipped. Right now e.g. a blue resource will be shipped to the nearest blue city via the shortest path. The practical effect is that it’s pretty rare for a track build to increase the value of a shipment. The moment a resource becomes shippable, you probably should do it. The change would be that look at the shortest path to each blue city. Choose the most profitable of these paths. To make things a bit harder, reject any cities where the shortest path would go through another city of that color.

  • Restrict building tracks to only between two cities, and never allow two tracks to merge outside of cities. (This is probably needed, or it will be too easy to abuse the previous point).

  • Add a new city type, which accepts no resources but converts them. So for example if the shortest path between a blue resource and a yellow city contains a blue -> yellow converter, that would be a valid shipment.

  • The very end game income is too volatile now, since money arrives in big chunks. That’s a problem, since the income is the score, and you can’t have the score change by 10% based on incredibly tiny timing differences. So I need to change either the scoring or the way revenue is generated.

It’s fun to get a project over the initial hump and into this stage.