Category Archives: Life

Things related to our personal life.

Gaming with kids: How to roll dice without dice

Cosmo and I playing Super Battle… but just what is super battle you ask?

The problem

So there you are, destined to walk miles in the hot sun with only your seven year old as a companion. You’d love to play some simple D&D type games with him but getting out dice just isn’t an option.

Possible solution 1: Could use Rock Paper Scissors to decide outcomes. It could work but it makes it difficult to roll a “1 in 15” chance. Besides, you’re holding a two year old and a bag, your arms aren’t free.

Possible solution 2: Could download a dice rolling app on your iPhone. Workable. But the sun makes the screen hard to read and presents problems when the two of you aren’t walking side by side. Also, you don’t have an iPhone.

If only someone would invent a better way…

Where we’re going, we don’t need dice

Enter Voice Rolling.  (Or for your research paper,  APRNGVSAS (Aural Psuedo Random Number Generation Via Simultaneous Action Selection))

According to five minutes of Googling, it appears my son and I have actually INVENTED THIS despite being in the age of the internet.  I thought that was supposed to be impossible!?  Or more likely, it was considered too weird and/or stupid for anyone to ever post about it.  Until now!

I suspect the ancients knew of this hallowed technique but it was somehow lost with Atlantis.  Yeah.

Gopher suggested I call it “Sething”.  Tempting.

Type 1 – Rolling a “hit or miss” with 1-to-anything odds

Ok, first, the most basic version.  Let’s say you are attacking your opponent with knife, and you’ve decided there is a 1 out of 3 chance you will hit.

In unisen, you both yell: One Two Three <the number between 1 and 3 you’ve select>!

If someone is too slow/fast, it’s a redo.  (Same as Rock Paper Scissors)

A match is a “hit”.

If you yelled 2, and he yelled 3, they don’t match and it’s a miss.

If you yelled 1 and he yelled 1, they match and it’s a hit.  So you can deduct the damage from his life or whatever.

Type 2: Rolling an arbitrary number

At times you just need a standard roll, rather than a hit/miss based on odds. In this case, each person shouts 1-N like before, but the results are added together and “modded” by the number.

Example to get a number between 1 and 6:

Player 1: 1-2-3… 3!

Player 2: 1-2-3… 5!

3+5 = 8.

8 is more than 6, the max number, so we remove 6, and it becomes 2 as it “wraps around”.

Final number is 2.

This method might work better if you used (desired number*2) for the initial roll, but then it gets to be too much work to get the final number for kids.

Game 1: Super Battle

Here is an actual rule set for an ultra simple vocal rolling only game for your next hike! (This is the one we’re playing in the video..)

In Super Battle you duel the other player to the death using a combination of weaponry, healing, and even espionage.

Setup: Each player starts with 10 “Life” points.  Their maximum life is 20.

Decide who goes first: Use Rock Paper Scissors to select the first attacker, then alternate turns until a player “dies”.

Each turn a player can choose one of the following strategies to beat his enemy:

  • Punch: 1-2 odds roll, does 1 damage
  • Strong Punch: 1-5 odds roll, does 3 damage
  • Super bomb: 1-10 odds roll, does 6 damage
  • Heal: 1-(any number, we’ll call it N), heals N-1 (you add it to your life variable, capping it at 20)
  • Espionage: 1-12 odds roll, if it hits, your enemy’s “heal machine” is damaged, and he cannot heal for the rest of the game.

Apply damage by removing it from the attacked persons “life” points.

Winning: Game is over when someone’s life reaches zero.  The player remaining standing is the victor.  The loser must then say “He truly is.. the chosen one!” in an old man voice.

Recommended:  Let your kid modify the rules each time you play to keep things interesting.

Game 2: 3X

Well, basically like “6x – The one page role playing system“, but we limit the options to 3x, then we might use some variant of Super Battle to handle fights if we feel like it.

Conclusion

So next time you’re trudging through the forest with a tired kid in tow and lamenting your lack of gaming peripherals… challenge your kid to a Super Battle.

Ludumdare 20 – Who’s in? #LD48

It’s that time again.

Three times a year hundreds of masochistic geeks from around the planet push themselves to the limit by creating the best game they can (individually) in only two days. The winning theme you must base your game around is announced as it begins.

Check out the keynote (done by Sos this year, nice job!)  and get more info at Ludumdare.

As for me…

I don’t think I’m going to be able to devote enough time to make anything this year, but at the very least I’ll be hanging out in irc cheering the brave on as usual.

My unhelpful guide for first-timers is here.

Warm up your compilers, gas up your image editor, and change the tires on your music program because it starts in 23 hours.

The Zerg is strong in this one

Now that Cosmo wields this amulet (no doubt excreted by the Zerg queen herself) his all infestor army tactic is sure to finally actually win a game!  (Yeah, it’s a cheapo Starcraft 2 thing I bought on ebay and strategically hung around the house until he noticed it)

Not to be outdone, here is Eon-kun inventing a delicious soy sauce soup.  Leave him alone for a minute and he always finds a way to make the magic happen.

Dev Journal: Tank combat meets Mario Kart?

New game project!

So I’m sort of working on a new cross-platform game. The basic idea is “local splitscreen/networked multiplayer tank combat with easy touch control that’s fun for me and my kid”.

Basic movement. Ugly as hell but hey, four players!

I spent a lot of time getting really flexible split-screen support in. I can add as many local players as I want. In addition to specifying the window size, I can specify their rotation. Touch controls smartly adjust.

A real physics engine?

The irrBullet hello example running on an iPad. Man, what is with that floor texture!

Hey, how about real physics for the tank movement? Let’s integrate Bullet (with some wrapper help from irrBullet)

I had a feeling I wasn’t going to end up using it because of speed and networking issues, so this was mostly a for fun side diversion and practice.

Ran IrrBullet’s Hello World example on the iPad and the Nexus One (Android). Decent speeds, especially on iPad.

Plugged it in for the tank physics. The only way I could get reasonable tank-like movement was to use eight “raycast wheels” per tank.

It turned out quite computationally expensive and I could see it was going to take approximately four hundred years of tweaking to get player controls to feel “right”. Screw this.

So I dumped Bullet and decided to just do my usual homegrown cheapo physics. Not as good, but easier to tweak and runs fast. Looking forward to using Bullet in the future for something though.

Making a test level with lightmaps

A crappy test level is created in Max. I use “Point helpers” to mark the position and rotation of spawn points. Easier to see in max than dummies.

I use max’s “render lightmaps to a texture in an intelligent way and apply the texturing to the second map channel automatically” feature.

Real tank models and basic combat

Tanks can now smoke and blow eachother up.

More progress:

  • Tank models licensed from from Mighty Vertex
  • Functional health bar
  • Tank shadows
  • Reaction physics when shooting/being shot
  • Crash sound effect when hitting another tank.

Next up: Turret movement…