Categories
Code

Brokencode GO

I recently saw a link on Hacker News about making a game of finding bugs in open source projects. Given the recent release of Pokémon GO, I whipped up this picture. If only my job was this easy, or this fun…

Brokencode GO

– The code in question is from Blender, though more specifically libopenjpeg, it seems. I grabbed a copy of the file for context and recreated the bug.
– I chose (ha) Venomoth as a nod to the first computer bug.
– 42 is, of course, The Answer.
– My first thought was “Offbyone”, but “Wrongvar” is pretty common, and easier to point out.

In other news, earlier this week I made a satirical hat based on Trump’s 2016 campaign slogan:
Make Everyone Else Worse

Categories
Code

Towers, Towers, Everywhere

Just a short note to say that I’ve been busy working on Office Attacks (iPad) for Arctic Empire. Since Arctic is a small company (even smaller than Artech) without a current publisher, getting the word out about our games can be a challenge. To that end, I’ve been writing “Dev Diary” blog posts all month about development of the game. And since we were showing it at the Ottawa International Game Conference yesterday, I decided to make one of the towers in real life last Friday. There are build instructions in the latest dev diary post. I like how it turned out.

OATowerBuild00

Categories
Tales

TableTop Day

Last weekend, my wife and I went with a couple of friends to a local International TableTop Day event. This particular event was put on by Games for All, who had a library of around 300 games there. It was a great opportunity for us to try some new board games for a very cheap entrance fee. We didn’t finish some of the games that we started, but it was enough to see what they were like. Here’s what we played.

Pandemic: My wife liked this one so much, she bought a copy at the event. I don’t think I’ve played many co-op, PvE (Player vs Environment) style board games before. Players try to find a cure for four diseases before their turns run out. In our first time on “easy mode”, we only needed one more turn to win. Argh.

Tsuro: (TableTop episode) This tile-based game is fairly simple and quick to play, but it works very well. Lay tiles to create a path for your dragon without sending it crashing into another one, or off the board.

Mystery Express: This was one of my least favourite games of the day. It improves on Clue by removing the tedious rolling and moving, and all objects have two cards, so you have to see two copies in a round to truly discount it, but I prefer logic puzzles without the time pressure of having to pass play to the next person.

Dominion: I also don’t think I’ve played many “deck-building” games. You use an initial hand of cards to buy new cards that give you more abilities and eventually let you purchase victory cards. During play, however, the victory cards are useless, so you have to balance your action, money, and victory cards. I definitely want to play this one again.

Monster Factory: I called this one sort of a “Carcassonne lite”. I wasn’t expecting anything very deep from the box description, and my friend didn’t like the overly random nature of the game, but it was fun building up cute pictures of monsters with tiles.

Small World: (TableTop episode) This was the only one that I had played before, so I explained it as best I could to the others, while looking things up to ensure I had them right. It’s sort of a fantasy-themed Risk with much less dice rolling. Each race also has a modifier applied to it to increase variety. I think we had “Wealthy Amazons” and “Seafaring Wizards”.

King of Tokyo: I liked this one a lot, but it helps that I won both rounds. 🙂 It has Yahtzee-esque rolling and re-rolling to get the elements you need to advance your monster career. I was the trailing player in the second game with 10 (of 20) victory points, but I got the “Complete Destruction” card that gives you 9 victory points if you roll six unique die faces. I also had the “Smoke Cloud” card good for three free re-rolls, but I didn’t need them to get it.

Smash Up: This is a “shufflebuilding” game, where you simply take decks for two “teams” (robots, pirates, ninjas, zombies, etc) and shuffle them together. You then assault “bases” with your “minions”. It has a bit less depth than Dominion, but still neat.

Balloon Cup: Since our friends had gone home by this point, my wife and I played this charming little two-player game. It looks like it’s out of print, but it appears to be getting re-released/re-themed as “Pinata”.

Bonus – Frankendie: We didn’t play this there, but we bought it there, in part to support a local game creator. (we missed his Kickstarter campaign) It’s another short fun dice game (with added reflexes required) you can play between longer games. Be the first to get all the pieces for your monster and jump start it with lightning.

At any rate, although I haven’t seen all of season one yet, I’m looking forward to season two of TableTop.

Categories
Code

MakeMyAlbumCover / Likeatron

I’m shutting down one of my older domains, so I’m just moving some things over here. These were originally posted in November 2010 and October 2010 respectively.

Make My Album Cover

A friend of mine announced that he no longer wanted makemyalbumcover.com, so I tried to think if I could do something with it. He was using it to host pictures he had made according to the album cover meme. I figured I could write something to automate the process of creating those kinds of images, so I wrote a script to do it.

http://www.makemyalbumcover.com/

Likeatron 3000

After Facebook started letting people add the “Like” button to their own sites, a lot of sites added it, but not everyone. Why should only some sites have all the fun? With this Greasemonkey script, you can add it to every page!

http://www.timpark.org/likeatron3000/

Categories
Stuff

Making a Tetratetraflexagon

Inspired by Kelli Anderson’s Recursive Card, I wanted to do something similarly interesting for my wedding last November. Rather than potentially confuse people receiving invitations, my wife suggested I do something with the wedding programs.

Kelli didn’t give instructions for her card, and I was in the process of figuring them out from the pictures and video, when I saw someone in the comments mention “flexagons”, similar folding structures that reveal new faces. After searching for a while, the most common from what I saw are various types of hexaflexagons, with six sides, and tetraflexagons, with four sides. For ease of construction, I settled on tetraflexagons. Although there are several types, I liked the one that I saw on Jill Britton’s Tetra-Tetra-Flexagon page (now offline, but you can find the pattern here), with the clear assembly instructions. I didn’t like how each face was so tall, however, so I cut off the bottom row of four boxes and adjusted the dimensions of each rectangle.

Side note: While I was preparing for the wedding, I hadn’t noticed that the inimitable Vi Hart had recently posted a few hexaflexagon videos. In fact, one of my wedding guests had made some hexaflexagons with his daughter shortly before the wedding.

Most flexagon instructions only give you numbers to tell you which face each panel is on, but I also needed to know the resulting position and orientation. After some trial and error, I ended up with a batch file of ImageMagick commands that will take four pictures and eventually give you two new ones, one for each side of a piece of letter-sized paper. The four pictures you use each have to be 5100 x 3300, unless you change the script. (I decided on 600dpi, and with 8.5″ x 11″ paper, you get 8.5 * 600 = 5100 and 5.5 * 600 = 3300)

The script breaks down the four pictures into top-left, top-right, bottom-left, and bottom-right with “convert”, rotates the necessary images with “mogrify”, then builds up the results with “montage”. NOTE: If saving it as a .bat file for the Windows Command Prompt, it already has a command called convert. If convert.exe is just in the path and not the current directory, it may call the wrong one.

Here’s everything you need to make some tetratetraflexagons:
tetra600dpi.txt – Script file for 5500×3300 pictures
tetra300dpi.txt – Script file for 2750×1650 pictures

Sample 5500×3300 input files: 1.png 2.png 3.png 4.png
1.png has assembly and usage instructions printed on it.

Final output: side1.png and side2.png
Get these if you just want to try folding and not bother with the script.

After you have your side1.png and side2.png, print them on opposite sides of the same piece of paper. Depending on your printer and settings, you may need to select centering or stretching options. The grids on each side should line up with each other. Be careful of the orientation when feeding it through again. 3tl should be going into the printer first, and when it’s done you should see 4tr on the other side right behind 3tl. My printer can’t print right to the edges, so trimming the edges, marked by the faint lines, from the top and bottom of the sheet is important for the paper to fold correctly. With text, trimming the left and right edges is less important, but you may wish to do it if you have pictures bordered by blank space. Then follow the cutting/folding/taping information on face 1.

So it’s not as fancy as Kelli’s recursive card, but I still thought it was neat.
Here’s the first tetratetraflexagon I made with pictures:
tetrapics
Happy folding!

Categories
Code

tasktimes / did

I don’t like tracking my time. Marking down the start and end times of a task and finding the difference is annoying. Although you can easily redirect the output of “date” to a file, you still have to calculate the difference. So I wrote something to do it for me. This sort of thing has been done before, but I didn’t know about the other solutions before making mine. I call it “tasktimes”. It’s written in C and you can get it on GitHub. If you’re on Windows and don’t have a C compiler, you might try the Tiny C Compiler.

From the command-line, you simply type:

task "TPS reports"

to start a task and later on type:

task off

to complete it. To get the report, type:

task times

and you’ll get something like:

--- Misc ---
2012/12/03 09:01:12 Mo ( 8:31:42) TPS reports
                 Total   8:31:42

After writing tasktimes, I thought I’d try making a simpler program to let you note whether you completed a certain task each day. Again, it’s easy to save dates to a file, but I wanted the analysis portion. It’s basically a “don’t break the chain“-style motivational program called “did”. It can also be found on GitHub and is also written in C.

From the command-line, you simply type:

did code

to log a task or

did code yest

to log a task done yesterday. Just typing “did” will give you the report.

      ########################################################################
 code #OOOO--OOOOO--OOOOO--OOOOO--OOOOO--OOOOO--OOOOO--OOOOO--OOOOO--OOOOO--O#
  exe #OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-OO-O#
write #-----------------------------------------------------------OOOOOOOOOOO#
      ########################################################################
 2013  0000000001111111111222222222233000000000111111111122222222200000000011
01-03  1234567890123456789012345678901123456789012345678901234567812345678901
       TWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSMTWTFSSM