Thieves Tavern - Where all the cool kids play

Published on June 28, 2008

For about two weeks now I've been working on a PHP version of the game Mafia. If you don't know it, mayhaps you know the name Werewolf, or Assassin (not Assassin's Creed, like I had some people guess.... there's no way I could port that to PHP). If you're still in the dark, check the Wikipedia page, or MafiaScum, one of the best forums for it. Harkins and I wrote it into Simud a year or two back, and I've wanted to see an automated version on the Internet for a while now (read: Not needing forum software, or a human moderator). The closest I could find is an email list, which of course I can't find now that I want a link, and frankly doesn't fit my description of 'browser based'.

So what I'm creating is a PHP/AJAX based version of the game, where players can create games of (so far) between 5 and 8 players. Upon creating the game, a random set of roles (random in terms of which roleset, NOT in terms of a hodge podge of random roles that could be very unfair) is doled out, and it goes immediately into the night phase. Each phase will last 24 hours, if everyone does their actions sooner, it'll end, but if you don't ready yourself before the time is up you'll forfeit your action. Game ends based on the roleset... typically once there's only town, or bad guys left, but in terms of Silent Killers it gets more interesting, but will be checked for after every kill, and after every lynching. Chat will allow for anyone to read it, and once the game is over all messages become public.

Unfortunately work has slowed down a bit since buying my motorcycle a week ago, but I'm still hoping to have a closed beta up in a short(ish) amount of time. I actually could put one up already, but am hoping to have a much higher degree of a product before the beta than I usually do.

The site will go live at Thieves Tavern, a site I got a long time ago for a gaming clan that is appropriately named, I think. Once it goes up, I'll put out a call for about 10-16 closed beta players, and then probably a week later another open invitation for open beta players. once it seems both stable, and a good recreation of the game, based on the opinion of all players, it'll become a public game.

You can follow the development either through Twitter, or in the #thievestavern room on irc.freenode.net, thanks to GitHub.


‘WWW’, Your time is running out

Published on June 27, 2008

A bunch of us were chatting yesterday about ICANN's new TLD policy, wherein companies can buy custom TLDs for tons of money, such as .google or .microsoft. Peter Harkins, over at push.cx, maintains that this means 'WWW' will never die. The thinking is that now we'll need a way to indicate the start of a web address more than ever since anything dot anything might be one. HTTP:// isn't used much currently, it sounds ugly in commercials and no one ever types it, so there's no reason to assume that'll be it. However, I don't think that 'WWW' will be it either.

Now, many know that 'WWW' is not actually needed in the domain name, websites will work if you omit it, assuming the web admin knows what he's doing, which tells us that the 'WWW' is there to signify what type of address we have, and that's it. However, ordinary users that don't understand how the Internet works don't understand that its simply denoting a web address and this is where the dependency upon saying 'double you double you double dot" comes from.

So, now we realize that if ordinary users can be trained to realize that 'WWW' is just a symbol, we can be free of it! What better way to do that, than with a symbol itself? It needs to not be on the keyboard, so users won't be at all confused, and needs to not impact potential future domain names if ICANN ever approves multi-alphabetic domain names. To find such a letter I pored over the Unicode docs and found something I think many will agree is ideal. I give you 0x02AC or :

Dub Dub

My name for this symbol is Dub-Dub, taken partly from shortening 'WWW' to 'dub dub dub', partly from dubbing my own symbol over what is used today, and partly from the likening of this to the heart of the Internet, with the sound of a heart beating.

What makes this ideal? First of all we clearly express the fact that it incorporates multiple 'W's. This will help ordinary users transition into thinking "Oh, this is what WWW meant." Secondly, this is a symbol that wouldn't occur naturally (more on why in a second) to prevent any confusion. Third, In the event of not having any way to produce Unicode symbols, one can simply decrease space between lines, and put another 'W' on top of a 'W' before the address, or make an image out of it using two 'W's. Fourth, by using a symbol, users will realize this isn't something they type, merely indicating an address, much like lerning that '@' helped to demonstrate an email address. Finally, this symbol is the IPA symbol for a "Bilabial Percussive", aka a lip smack. The only place it will show up outside of addresses is in phonetic or linguistic papers, and obviously not be an address. Better, since its not used in any world alphabet it shouldn't appear in a domain name even if ICANN approves other character sets for domains.

So, I think that as people become required to add a 'Double you double you double you' onto many more addresses, they'll attempt to find a better way of expressing that. Its only natural to find a better, faster way to express something commonly used. My vote is for Dub-Dub, and as people start to pick it up it'll evolve into what is used in everyday life.


Little Crypto Never Killed Anyone

Published on May 20, 2008

On the 15th of May, Symmetry Breaking put out this call for help. It seems that the PR department of Fermilab received a (handwritten) letter in code. A high resolution version can be found here. Since its been a few days, and mainly since Slashdot picked up on the story, there's been some breakthroughs. Of note is 'Geoff''s work found here (only linking to the most recent post). I heard about this earlier today, and found it rather interesting, both the code, and the assumptions people were making. I'm keeping my measly ideas regarding the actual code to myself for now, as most have been enumerated elsewhere, but I'd love to examine these assumptions.

(And for the record, I'm not assuming 'male', I'm using 'he' since its quicker to type than 'she', or 'he/she').

First, there seems to be a basic assumption of sanity for the writer. I think this is the worst assumption made so far, and the most likely to bite us in the butt. While there's a chance someone was simply sending a letter to Fermi to see what they thought, pranking their co-workers, or whatever the reason, I think its at least just as likely that this is a crackpot guy who saw that Fermi has a .gov address and decided to send in something relating to their abduction, a secret formula, or world peace.

Three bits of evidence for this. The first (that hurts my thought of mental illness) is that the address it was shipped to is not given on the main website's contact page. This seems to imply sanity and foreknowledge, or at least some stalking, to come up with a different address. If we use Archive.org, you can see that while the address was different a year ago, it was a formatting, not substantive change. In fact, the address the letter was sent to is given on the website in quite a few places, so it is conceivable still that the author came across it coming to their site from a link, and not the main page looking for the address.

The second bit of evidence is the symbols that are used. As some have pointed out, this looks a lot like a Rosetta Stone for another message. While some of the symbols look clearly human (Upper case Phi, no doubt about it), others simply can't be found in our alphabets, yet look close to what some hypothesize should be a galactic, math based language. Where am I going with this? Perhaps (and please take this with a grain of salt, I don't personally believe in it) someone who believes in abductions found this message, understood it, and is trying to teach the language to only those humans who are worthy of learning it. Hence my thought of 'crackpot'. Sure, it may come out in the next 24 hours that these symbols match up to something else, and the guy is sane. Just remember, if it does come out to be a conspiracy, you heard it here first.

Finally, Fermi sat on the letter for a year before dusting it off and passing it off to the public. I can think of three reasons for this. The first is they honestly didn't have the people to bother. That could be, but judging by the reaction of the Slashdot community and other scientists I know, them putting this up in a break room, or an internal email, would garner a lot of attention during down time. The second thought is that they just didn't care. This would lend credence to my mental illness thought, they wrote it off immediately upon receiving it, rather than even attempt to decode it. Or, perhaps they've been working on it for a year, and got no where. I'm sure they would have the top and bottom solved, but maybe the middle bit has eluded them as well, which again would lend credence to it not having any real meaning at all.

Second, a lot of people seemed confused on the time frame. Fermi started they received this over a year ago, but some were reading into stories of interstellar communication that they assumed were related. We can't assume anything about the time frame other than any information made available after March 5th, 2007 is *not* involved in this message. In fact, due to the elaborateness of this message, I'd guess at least a week before that, as well. So anything after the end of February 2007 cannot play a role in this message. Of course, if research was going on before then, and only released afterwards the author may still have obtained a copy, or even worked on the project, and could have that information.

Third, there's the assumption that the middle portion (the symbols/'hex' characters) is a straight key, meaning one character corresponds to its hex character. I think that's wrong. A simple frequency chart shows the following:

Character Frequency
0 1
1 0
2 2
3 2
4 1
5 1
6 3
7 1
8 1
9 2
A 0
B 1
C 1
D 2
E 3
F 3

As you can see, the frequency still fits into our base 3 assumption. I think that's very important, as the author uses base three (we assume, and can come up with English-correct translations for) in the top and bottom portions. So, rather than say that the sideways triangle equals 'F', we should say that it equals 3.

Now, translating the message into the frequencies, then decoding as we did for the top and bottom portions yields something cute (assuming that 222 is a space, not 000). We get:

111_1_111 111_1_111 111_11_111 11_111_11
111_1_1 11_11_11 111_1_11 11_111_111

OR

D D G G
E _ F S

There was speculation initially that the 'Basse' 'misspelling' in the message meant the middle bit should be a song. Well using this translation we have a song! It can be read left to right (half note D, half note G, quarter note E, quarter note rest, F sharp), or top down (quarter note D, quarter note E, quarter note D, quarter note rest, quarter note G quarter note F, G sharp). Of course, in many circles (especially Close Encounters of the Third Kind, and Independence Day) music and lights are thought to be 'universal' languages to chat up aliens with. Hmm. Not saying that's the answer, but playing it is kind of catchy.

Going along with this assumption was the thought that 1 and A (and also 's') needed to be assigned values. I'd argue that they are assigned values as seen above. They're included in the chart 0 times, so they're all worth 0. And if you're as good with off by one errors as I am, that will get your hopes up for the 'initials' between the 'key' and the bottom.

Well, those are my thoughts on the assumptions that are being made so far. Hope it helps someone out there!


A New Study Shows

Published on April 25, 2008

A new study conducted by me shows a link between Google News and a lack of productivity on my part. I use Google News because I like getting my news from lots of sources, since every source is biased, but unfortunately combining all these sources into one page leads to mistakes. Such as the following bloopers snagged from the main page at various times in the last few months:

Apparently Bill's new project is the Apple iPhone SDK

Looks like McCain got a facelift since I last saw him!

Look at the pre-historic dinosaur ready to crush and eat his prey! Oh, and there's also a T-Rex skull.

Sure, it makes a little sense. The McCain article mentions Democrats, I'm sure Newsweek was mentioned in the iPhone article, and Dinosaurs fit into Science, but there's at least one little blooper I notice a week where the picture next to the article would give the wrong message (Such as the Obama McCain one). Clearly someone got their script to work 99%, and left it at that, though that last 1% of images that are mistakes would be very hard to catch, I think. Anyway, I hope I can do a regular potpourri of these images.


Has it really been a year?

Published on April 16, 2008

A year ago today the Virginia Tech shootings occurred. As I mentioned a year ago, it somewhat surprises me at the sadness today has evoked in me, considering I was hundreds of miles away that day, and still am. It didn't seem like it was a year already, but I was reminded this morning when I turned on the TV to see an image that's been stuck in my mind ever since. I poked around on the Virginia Tech Memorial site, but couldn't find it for some odd reason, which is a shame because I think that image captures the moment perfectly.

bugler

The morning news had that Bugler image up this morning, and immediately the first two lines of the following poem popped into my head:

Blow, Bugler, Blow

Blow, Bugler, blow, let all hear you play,
The hope of our nation's enshrined in your lay.
The notes flow like tears poured out from your horn,
Splashing our souls and hearts, broken and torn.
Floating past candles held high in the sky,
Twinkling like stars who whisper "Good-bye."
Tonight there'll be pain, and tomorrow the same,
But during it all, we stand and proclaim:
"We are Hokies, America, as strong as they come,
From the siblings who visit to the oldest alum,
We know our potential, what we can become,
We'll always fight on, we'll never succumb!"
So blow, bugler, blow, let all hear you play,
The hope of our nation's enshrined in your lay.

ADMIN EDIT: Missed a line in there, had to add it.


Assassin’s Creed

Published on April 7, 2008

A few weeks back I acquired a PS3 (another post on that is in the works), and nabbed Assassin's Creed as my Single Player game for a while. From the previews I was expecting a game with decent open-ended game play, decent graphics, and some good fighting. Boy were my expectations blown out of the water.

Plot: I won't spoil the surprise, somehow it remained one for me even after reading a few reviews. The basic plot ties into the Third Crusade, with Saladin fighting King Richard (more or less). The historical context here is that assassins rose into being during this time as a means of fighting back, with the word assassin coming from the Arabic "hashashin", meaning, well... hashish addicts. Specifically a Muslim sect during the Crusades that may have controlled their assassins with drugs and promises of heaven. Others that don't want to acknowledge possible negative connotations of the word claim it to have come from the leader's name "Hassan" (where Hassansin would be a follower of Hassan). In any case neither word is used in Arabic for assassin any more, so I don't think it should have any charged feelings either way.

The only reason I point out the etymological root of the word is because at one point your character is told that the Crusaders "Control their killers with magic herbs" and had to laugh. In most other respects, however, the designers did an amazing job with the plot.

The game does attempt to address some religious and political ideas but, with one exception, its nothing excessively in your face. The exception somewhat ruins the plot, so I'll hold my tongue further.

4/5

Cut scenes: I enjoyed each and every cut scene in the game, and boy are there a lot! Around the first 45 minutes I started getting bored until I realized I could control the camera and minimal assassin movement which means that you can be your own director! Walk in, announce a kill, and during the ensuing conversation pretend you're in the Godfather. Another great touch is being able to change camera angles on the more important scripted 'boss' conversations, where you can get close ups of the guy speaking, or the innocent victim he's about to kill. Really gives it a good cinematic feel.

All I could ask for is, well, an option to skip them just in case they do get a bit long.

4/5

Graphics: I absolutely loved the graphics in the game. Assassin's Creed has clearly upped the ante for games in the coming year, giving both superb sweeping vistas and decent indoor areas (though indoors wasn't emphasized). The first time I climbed the Citadel in Acre and looked out over the city it hit me just how much work went into this game. It actually reminded me of my time in Tunisia, captured quite nicely in my TV. Running around Jerusalam gave me the same feel, while standing on the Dome of the Rock. Add to that the nice little particle graphics they add in when you find flags, or save citizens, and you'll be wowed no matter what game ya come from.

The combat graphics aren't great as well. When your character performs a kill combo or a reversal it jumps into a cinematic mode and shows one of a dozen (maybe more) moves being performed. As late as the 7th assassination (of 9) I was seeing new moves.

I came into the game assuming the cut scenes I'd seen weren't in game footage, but was greatly surprised to see the whole game looks that way!

5/5

Gameplay: I'll start by saying I really liked the control system. The first five minutes of button bashing made me think I'd make a mistake purchasing the game, but after familiarization (the tutorial is required, but extremely helpful) the controls felt natural. What they boil down to is the four buttons on the 'shape' pad. Triangle controls your head, Circle your open hand, Square your weapon hand, and X your feet. So in the context of walking, Circle is a gentle push to move people out of your way, Square shanks someone, and X makes you blend into the crowd and go unnoticed. When you move into conspicuous mode, those turn into a tackle, uber-shank, and sprint, respectively.

Once you get used to those controls, it makes it pretty easily to do exactly what you want to, such as slink along a rooftop, drop down into a group of guards assaulting a citizen, and shank two of them before they realize what's going on. Along those lines, the combat is very fun. Its fairly easy once you get down all the moves, but by the time you do that a fight can easily pull 10 guards at a time. While its easy to win, if you miss a break and let them get around you its also easy to lose. The combat feels very fluid, and using the short sword gives you a very nice whirling dervish look.

As far as replaying the game goes, I just "hurriedly" (took me a good week and a half doing it hurriedly) played through a lot of this game and yet still have a lot to go back and do. For one, each area has flags hidden in it, hundreds of them, and I've got, oh 50 total. Another fun thing to find is a large number of Templars that you need to kill. Finally, if you didn't do full investigations the first time, you need to go back and actually complete all the annoying flag finding missions for informers. Also its just darn fun running through Jerusalem and seeing how many guards I can get on me. Its like making my own action movie.

5/5

Openendedness (oh yes, that's a word... now): On the one hand you're forced to follow an approximate order of assassinations. However that's a very small hand, as most assassinations let you chose which city to do first. More than that, you can jump between cities if you like, and do the investigations as you want (each investigation being 3 of 6 missions consisting of pickpocketing, interrogations, eavesdropping, or informer assignments). I never once felt like I was forced into a path to chose, nor felt the game 'stop'. After an initial 10-15 second loading period, the entire city was at my disposal and by the end that equals a large area. I could run all over the city I was working in and only have to stop when 50 guards kill me--- erm, when I decide to.

There, again, is an exception that might be a plot ruiner, but at the end of the game I forgave all of it.

4/5

Ending: I loved this ending. At one point this afternoon I jumped up and said in a not so calm voice "Heck yea!" It was an appropriate ending, it fir the period well, and man are the fights leading up to it epic. I said before that knowing all the fighting moves makes fights 'easy', and for the most part this held true. Of course with the numbers you're up against, its darn easy to die quickly as well if you let them start landing blows. And with the final boss fight I died at least three times before getting him, and the fourth was darn close. And then, just before the credits, a lovely plot twist that actually had me come back and do some scenery watching for 10 minutes.

4/5

In the end, this is a game I recommend for anyone that enjoys a little sword play. Its only Single Player, but it does that so well I have to forgive it. You won't be disappointed with this game, even at $50.


Fitna, the failure

Published on March 30, 2008

This past week saw the release of Geert Wilders' "Fitna". I'd like to quickly say this post is not endorsing that film, the author of it, or any specific religion. I hope, instead, to point out what the film has actually accomplished, and look at the issues surrounding it. I'd also like to point out that I fully support all basic human rights, including those of Freedom of Speech and Religion. I won't be giving a link to the video as I don't support it. In addition, those viewing it might be disturbed by a few scenes (beheadings, hangings, close range gun shots) and I don't want my site affiliated with any of that. Read below the cut to see my analysis.

Read on »


194.110.162.23

Published on March 26, 2008

At some point in the recent past my site was compromised by Wordpress.net.in spam. I don't know exactly when the back door was put in place since I haven't been very active on this site, though I do know that on March 20th 194.110.162.23 hit default-filters.php and uploaded the malicious code to inject spam into the footer of my pages. Unfortunately the attack is for a different version of Wordpress so rather than infect me with ads, it just screwed things up royally. Maybe that's a good thing as I noticed it.

A great write up of how to clean this mess up can be found here.

To sum it up:

  • Remove wp-includes/class-mail.php, its fake.
  • Take out the lines hooking into the footer in wp-includes/default-filters.php
  • Remove the line from the top of wp-includes/default-filters.php that accepts a file given a random GET variable.

The take away lesson here is: Even if you're not actively publishing on your blog, you better make sure your software is up to date. I've been busy with other stuff and neglected mine, unfortunately.

EDIT: I've done some poking. 194.110.162.23 is out of "Extended Host" in New York City. I'll refrain from scanning it, though I am darn tempted to see what back doors were opened on that box. As it is, I'll just email the host and inform them of the troubles.


A-Peep-Calypse Now

Published on

I heard about a peep diorama contest and figured I'd enter thinking that I haven't had an outlet for my creativity besides code since graduating. I spent all weekend pondering what to do, and finally hit upon a scene from Apocalypse Now, since the name would work oh so well. My submission was entitled "A-Peep-Calypse Now - I love the smell of mallow in the morning!" and was made entirely of edible materials (save, of course, the shoe box and guns the peeps have). I ended up taking third out of 16, and was the highest placed submission that didn't use work time/resources/a team to complete it.

Without further ado:
Overview
Read on »


Dungeon Runners Character Sheet Library

Published on March 15, 2008

I took the past week off work for a final Spring Break, since I graduated early. When the friends visiting me left a day early I decided to use Friday to catch up on my programming. My goal was to finally create a library for people wishing to create character sheets for Dungeon Runners (that popular MMO I've been playing about once a month). The result is DRCSL, the Dungeon Runners Character Sheet Library, which gives web site owners an easy way to create character sheets or just pull random character data quickly. I used the DRCSL this morning to create a quick MediaWiki extension that spits out a pre-formatted character sheet. Lets discuss:

DRCSL
DRCSL is a php library written using PHP 5 and PHP objects. At its core it is currently just one file, Character.php, that upon its creation fetches the character XML from NCSoft's servers, and stores all the data. Once the data is stored, the Character can spit out its information with just a few commands. What's required to use this library is a web server with PHP 5 on it, along with wget to fetch the XML. A default Linux PHP install works just fine, though if your host blocks exec() callouts you're out of luck. I'm on my first release, so the paths are hard coded for Linux delimiters which will be fixed in the future (of course, the Windows host will still need wget installed).

An example:


<?php
//Include this file to have it include everything ya need.
include "drcsl.php";
//Create a new Character
$billy = new Character("Segfault");
//Store the character's name
$name = $billy->get_char_info("Name");
//Store the character's title
$title = $billy->get_char_info("Title");
//Display some info
echo "$name is a $title\\n";
?>

This would print something to the effect of:
"Segfault is a Coordinated Practiced Poison Ranger"

MediaWiki Extension
The MWE became real easy after I created the DRCSL. Rather than include a ton of the code from my Character Viewer into the Extension, now all I had to do was include drcsl.php and come up with a default view. It looks something like this, by the way. In all it took about an hour from the time I woke up this morning and decided to finally create one to having a test version out for TheTownstons to test.

To use the MWE one just creates a page and includes the drcsl function.

{{ #drcsl: Segfault }}

Further Reading
More details on both of these projects can be found at the DRCSL website. I was going to write more but there's something bugging in my Code Highlighter plugin (hence why the code looks like non-highlighted junk) and I'm fighting the urge to go fix it.