Tuesday, August 31, 2010

Factor Friends

Factor Friends is a simple game that can be played by 2 people with pre-made cards, or even 3 pieces of paper. The game uses a skewed list of associations to provide strategic depth, as well as meta-game elements to enhance continuous play.

Factor Friends plays on a 4x4 grid (16 squares) where each player attempts to place as many number cards as possible. Players take turns to place a unique number card in any free square of the grid, however adjacent numbers must have one number being a factor of the other (EG: a number card played adjacent to a 6 could only be a 1,2,3 or 12).

Create 2 different coloured sets of 16 cards (EG: one set blue, one set red) and label them with the numbers 1 through 16. Create a 4x4 grid as a play surface where each square in the grid is slightly larger than the size of a card.

- Players start by choosing 8 number cards from their set of coloured cards. This becomes their "hand" for one round.
- Choose who plays first (or alternate starts if playing multiple rounds)
- The starting player places any card from their hand into a grid square on the play surface
- The second player may then place a card from their hand onto the play surface, while maintaining that adjacent cards need to have one number being a factor of another.
- If an opponent plays a number that you have in your hand, discard it as it is no longer unique
- Play alternates between players, each placing a unique card in a legal position or passing.
- Play continues until both players pass.
- Score the round by counting who has the most number cards in play. In the event of a tie, the player going second wins.
- Continue to play a pre-arranged amount of rounds to find an eventual winner of the match.

- This game is all about controlling space on the board, and predicting what your opponent has in their hand.
- The low numbers have many factor relationships, so they are ideal for leaving toward the end of the game where the available space may be limited from multiple sides. However, leaving a low number card toward the end may expose you to your opponent playing the desired number card before you.
- Playing prime numbers (or numbers with very low factor relationships) can limit the adjacent space available for your opponent to play.
- Construct a hand with cards that can create limited space that only your cards can fill.
- When playing multiple rounds, be observant of what numbers your opponent favours. Either get those number cards and play them before your opponent (thus eliminating a card from their hand), or avoid those numbers so that they do not have an opportunity to clobber your cards.

Factor Friends can also be played with only 3 pieces of paper and 2 different coloured pens. Draw the 4x4 grid on one piece large enough so that a number can be written in each square. Players write down their 8 chosen numbers on their own piece of paper, then mark them off when "playing" them or when they are no longer unique.

Criteria for selecting a competitive game

For a game to be selected for inclusion into Competitive Computer Games, it will need to be strong in these 4 areas:
1. Be Competitive – The game itself needs to have an aspect built toward competitive, multiplayer play. Any game could be used competitively, but certain games lend themselves toward fostering a competitive environment.
2. Be Internationally Competitive – The game should have some recognition by major esport organizations at an international level. This gives weight to the competitiveness of the game and ensures an existence of a competitive culture independent of Competitive Computer Games.
3. Have content appropriate for a school environment
4. Ease of installation – This would include the cost of the game, the cost of hardware / software peripherals to make the game work competitively, the effort to set up, etc.

Monday, August 30, 2010

Reaching Out

(So) drink up Jesus cup, drink it to the end ...
Reaching out by Robin Mann

On Friday I had the pleasure of officially welcoming the dignitaries as we opened the new multi-purpose hall at St Johns School. The official opening followed the regular school service of a Friday, as well as being Grandfolks Day and book week!

The service had a theme of community, and the call to love others as God loves us. Jocelyn had prepared a short video of how current members of the school see our sense of community and our response to this call to care. We finished with Reaching Out, an apt choice for the service, but the words to start the final verse really struck me: Take up Jesus cup and drink it to the end. Being greedy? 'Drink it to the end' certainly conveys that sense of thirst and desire for more. And we do! We would dearly love o sit at Jesus' feet day in day out. That's the promise of heaven anyway isn't it? But the kicker is the next few lines:
Love, give, start to live. We are Jesus' friends
May we care with our actions and our prayers
We've been given so much, people, let's all share

If you drink up Jesus to the end, I dare you to NOT love. It's a natural flow-on effect from basking in the grace given to us.
Reach out. Reach out with open arms!

Monday, August 23, 2010

GameLog 159 & 160

Sims 3 - (30h) - Picked up this as a trade for fixing a PC after being inspired by Alice and Kev and Troy Goodfellow mentioning there's something in it for the strategists. Turns out he's right and I love the new wish system as an optimising mechanic. Built out a computer whiz with a dream of a large family, but got caught up in the music business for a but too much of his life. Finally managed to get the ring out and pop 3 kids before everything dried up. 2nd generation is still interesting too, but it's suffered a bit recently with LoL taking out the nightshift.

League of Legends (20h) - level 30!!@! - Finally got back into ranked matches, but it wasn't as entertaining as the initial launch. Might have to revert back to SC2 for my RTS competitive urges.

King's Bounty (5h) - level 10 - More diggin' and lootin'

Starcraft 2 (2h) - Stalled mainly to keep LoL going.

Alien Swarm (1h) - Smal LAN trial. Thught it was a bit more complex in terms of finding gear.

Friday, August 20, 2010

Ranking vs Matchmaking

Sirlin wrote up an interesting post regarding the new Starcraft II ranking system with insights from his discussions with Rob Pardo about the merits of different systems such as Elo and TrueSkill. The focus is whether the ranking system used for matchmaking should be different to the displayed rank for player satisfaction. I like a lot of his conclusions, but found this quote a little odd:
Microsoft [through TrueSkill] makes another good point here that ONLY winning and losing can be allowed to affect these stats. You can't adjust the matchmaking stat by "experience points" or even by any skill-based stats such as headshots, number of kills, time to finish a lap in racing, etc. All those stats can be gamed, and you will end up trying to get more headshots or something instead of winning. Any formula that equates number of headshots (or any other stat besides wins/losses) with how likely you are to win or lose introduces a layer of imperfect simulation. If we want to know how likely you are to beat someone, we should only consider your wins and losses, and not any in-game stats.

When looking at a mathematical ranking system this makes sense, but it doesn't make sense if you are purely interested in efficient matchmaking. Here's an example:
Starcraft starts off and all players have no wins or losses and no stats. Legionnaire (pro player) gets drawn against a scrub in his first round and wins comfortably; the scrub had not even managed to get out of his starting area. Analysing the statistics after the game also indicate a cakewalk to even casual observers. Quick game time, aggressive economy expansion vs staggered economy graph, little waste vs high average waste, etc.
Another game is played between 2 average players which happen to be closely matched. The game includes a number of pushes, each player's expansion being demolished and culminates in a pitched battle at the 40 minute mark. The statistics show a variety of interesting observations for astute players, but a big dip in army count for the loser is probably the only giveaway as to who won.

In TrueSkill these 2 games would both have winners on 1-0 and be equally ranked. For their next match they would be as likely to be matched together as it would be for Legionnaire to be matched against another starting pro player. If there was a pool of 50,000 starting players (first day numbers), it would take ~10 matches before the top ten would even play each other, and many more before the win/losses settled into a nice 50/50 pattern indicating you're playing at your level.

If a human were in charge of looking at all the matches played and given the task of suggesting new evenly matched pairings for the next round, they would be easily able to break up the whole group into, say, 10 pools of varying skill level by looking solely at the stats. They may even pick up on the fact that the 2nd match documented looked to be pretty even, and would be worth a rematch immediately for added context to the players. Repeating this process only 4 times should have people within the top 10 getting matched up together to get right into those super-fun, closely matched games.

It would seem that additional statistics can be useful in terms of matchmaking, so why the intolerance from mathematical systems such as TrueSkill? To me it comes down to a couple of issues: differing goals of ranking vs matchmaking, ignorance of bias inherent in matches, and the need for objectivity.

Ranking vs Matchmaking
To me the main issue is that TrueSkill is both a ranking and a matchmaking system. If you replaced "matchmaking" with "ranking" in the above quote I'd agree wholeheartedly; you DO need a very rigorous way of ranking people. If you brought in anything else other than wins / losses you give advantage to those who play a certain way (finish quicker, headshot more, etc). As an aside this would also reduce the potential for innovation and metagames.

A good ranking system requires an independant, unbiased method of delineating between players of different true skill (the player's inherent skill that ideally would be on display in each match, but can be clouded by a number of factors) so that each player feels as though their attributed rank is in line with their perceived rank. There needs to be justification for your rank so that if someone questions why another player is higher or lower than them, there is evidence available to alleviate their concerns. Any biases in the ranking process detracts from the validity of the entire system.

Matchmaking, on the other hand, has a goal of maximizing entertainment to the competitors (and spectators). The premise is that closely ranked players are more likely to play epic battles with high engagement and player satisfaction. I have long supported this notion and have built it into a number of leagues and tournaments, however it's not the ONLY thing. Sometimes players enjoy playing above their rank for that underdog win feeling. Players may get more out of playing with/against friends. Players may enjoy certain matchups, or certain maps.

In one of the grand finals for Australian Warcraft 3 I had an interesting conversation with another tournament organiser. 2 of the favourites for the title who were long-standing rivals had been drawn in seperate pools, but were to meet in the semi-finals of single elimination rather than the finals. The pool allocation was seeded as much as possible through prior matches in the tournament, but as these players were from different states, there was no justification in placing them over and above other state winners. The other organiser was just trying to see the best match in the finals and wanted the pools reorganised. This is a classic case of conflict between ranking (through merit) and matchmaking (for entertainment).

Matchmaking for entertainment becomes a bit wishy washy. How do you know that someone is going to enjoy the match you just created? For a start you could give opportunity for the player to select certain traits before the game starts (initial team etc) that the player KNOWS they want, but you could also give opportunity for players to rate their enjoyment of a game after the game has finished (or after watching a replay for spectators). This needn't be an exhaustive analysis of the game, a score out of 10 or even a thumbs up / thumbs down would suffice as this would give rise to a new method of optimisation: to matchmake games that maximize player/spectator satisfaction. Could it be gamed? Sure, but the eventual loser would be the players themselves. The more accurate information you can give as to why it was fun, the quicker a system could deliver games that increase your entertainment.

Objective vs Subjective matchmaking
Putting the idea of matchmaking for entertainment to the side, let's revisit the intial premise; do you only need to wins/losses to adaquately matchmake? Yes, if you want to maintain objectivity. The example of using a human to view the game and statistics to more efficiently separate people requires having faith in a 'gut feeling'. A human can look at a short overruned game and see that the opponent was outclassed, but it's not just because of the game's length. A human can see that a better player can outmaneuver troops to maintain a winning advantage, but that's not a hard and fast rule for winning either. There is, in fact, many opportunities through the game that pro players can demonstrate their skill and these build up to give a general feeling of confidence that one player is superior over another.

When building back propagated AI networks in my uni days, we would continually use problems like these. You can't quite put your finger on what are the hard-and-fast rules to follow that led you to a decision on who is better, but you're pretty confident of giving a judgement either way. With the volume of statistics available after Starcraft matches, it should be achievable to devise an AI that delivered, say, 7 levels of superiority (totally pwnd, much better, better, same, worse, much worse, totally outclassed). After many games I'd hope that the system would be delivering 'same' players all the time, but the ability to recognise a large discrepancy in skill can help the initial setup as well as tracking large changes in behaviour (rapid improvement in play, returning from a long absence, etc). Would it deliver better matchmaking? yes. It would also be objective, but not justifiable. Without justification you'd have a hard time convincing others that the system is rigorous enough to provide a rank, but it might fly if rank and matchmaking were seperate beasts.

Controlling Bias
Another issue that a pure win / loss ratio overlooks are the biases inherent in the games played. If, for example, Terrans are heavily favoured in a TvZ matchup, then this should be reflected in the prediction of who is more likely to win. There are 3 different biases common to tournaments and ranked games, the player's playstyle (race choice and preference for certain strategies), the map bias (some maps are more suited to certains race / playstyles, or more well known than others) and the individual head-to-head bias (where someone just seems to have the wood over someone). In tournaments you also have a tournament bias where some players perform better or worse depending on the importance they place in a specific tournament (homeground advantage for international events). These biases are once again somewhat subjective, but could be deduced from large samples of games played. It is also a moving target as the biases could change through the metagame, direct patching, or sustained effort from players to eliminate weak points in their game.

Biases do not have to mean that the game needs fixing; biases can add strategic elements to play (zerg rush will always be faster, but weaker). It does mean that matchmaking needs to consider any biases if the goal is to ultimately produce epic, engaging games that are desirable for players and spectators. Placing a higher ranked player in a weaker position could still achieve this.

Wow, this went a lot longer than I meant and it feels like it needs a wrap-up. To me, matchmaking is about providing entertainment to the player and spectators. Players of close rank can LEAD to entertaining games, but I don't believe a rank based solely on wins and losses provides the most efficient method of matchmaking.

Thursday, August 12, 2010

Faith in God's Promises

More sermon notes and recording from last Sunday's service:
Faith in God's Promises.mp3

Hebrews 11:1-3,8-16
1Now faith is being sure of what we hope for and certain of what we do not see. 2This is what the ancients were commended for.
3By faith we understand that the universe was formed at God's command, so that what is seen was not made out of what was visible.

8By faith Abraham, when called to go to a place he would later receive as his inheritance, obeyed and went, even though he did not know where he was going. 9By faith he made his home in the promised land like a stranger in a foreign country; he lived in tents, as did Isaac and Jacob, who were heirs with him of the same promise. 10For he was looking forward to the city with foundations, whose architect and builder is God.
11By faith Abraham, even though he was past age—and Sarah herself was barren—was enabled to become a father because he[a]considered him faithful who had made the promise. 12And so from this one man, and he as good as dead, came descendants as numerous as the stars in the sky and as countless as the sand on the seashore.
13All these people were still living by faith when they died. They did not receive the things promised; they only saw them and welcomed them from a distance. And they admitted that they were aliens and strangers on earth. 14People who say such things show that they are looking for a country of their own. 15If they had been thinking of the country they had left, they would have had opportunity to return. 16Instead, they were longing for a better country—a heavenly one. Therefore God is not ashamed to be called their God, for he has prepared a city for them.


- Jimboomba to Brisbane, running late, Browns Plains
- Where are you headed? Ipswich
- What's in Ipswich? Work
- So you don't own a car? No, I'm a christian and know that God will provide.
- You don't fear that you'll be late for work? Have been sometimes, but I've been doing it for more than a month and I get there eventually.
- Exchange pleasantries, and dropped him off where our destinations parted. I offered to drive him further if he wanted, but he insisted he will be fine.
- Why was I late? Why did I stop? Am I being an instrument of God to this hitchhiker?
- Feeling challenged by this outward display of faith. Do you? Is this Faith? Is this putting the Lord God to the test? We pray for God to provide us this day our daily bread. Is getting to work by faith the same as daily bread?

Hebrews 11:8 - "By faith Abraham, when CALLED TO GO to a place he would later receive as his inheritance, obeyed and went, even though he did not know where he was going. "
- Abraham had faith in a promise of God
- Covenant between God and Abraham
- Scene of the Heifer, Goat and Ram cut asunder.
- Covenants of the day.
- "What you do to these animals, you can do to me if I break my promise"
- Getting late, getting scared.
- God alone passes through the dead animals.
- This is my promise to YOU. This land will be yours, your descendants will be as countless as the stars.
- Abraham just had to believe that what God said was to come true. He obeyed, sort of. Hagar.

Hebrews 11:7 "7By faith Noah, when warned about things not yet seen, in holy fear built an ark to save his family."
Genesis 6:13-22 "So God said to Noah, “I am going to put an end to all people, for the earth is filled with violence because of them. I am surely going to destroy both them and the earth. 14 So make yourself an ark of cypress wood; make rooms in it and coat it with pitch inside and out. 15 This is how you are to build it:" ...
Gen 6:22 "Noah did everything just as God commanded him."

- Noah's faith was once again to follow the command of God, to expect that what God had said will come true.
- Evan Almighty
- Looking silly, News sensation.
- Noah feeling the same?
- Journey of faith may not be the easiest path to live through the world, in fact it's almost guaranteed not to be.
- Noah's actions are rewarded however, quite literally through survival. God's word did come true.
- God then set another covenant with Noah to never flood the earth again. A promise from God.

Listening to God
So how do we hear God's promises to us? Listening to His voice through the Bible. Is there time set aside to hear God?
- Faith 5
- Highs & Lows, Read, Talk, Pray, Bless
- 5 minutes. Enough?
- How about church attendance too?

Not enough for God, he wants to be with us more than that. He loves us more than we love our children, more than newlyweds. When you're in love you can't think of anything else better than spending time with your loved one. It doesn't even cross your mind that 5 minutes should be enough. God wants to be with us, to talk to us and share our lives every second of the day. He's there when we go to work, when we're eating dinner, when we're sleeping, even when we're in the shower. God wants us to walk with him.
Genesis 6:9 "Noah was a righteous man, blameless among the people of his time, and he walked with God."

Hebrews 11:5 "By faith Enoch was taken from this life, so that he did not experience death;"
Genesis 5:24 "And Enoch walked with God: and he was not; for God took him."

God's Promise
There is a promise of God to be found for us. It's there in the Bible for us to read, and up on the front of St John's church for the rest of Bundaberg to read.
John 3:16 "For God so loved the world that he gave his only son, so that whoever believes shall not perish, but have eternal life".
God's new covenant prepared for us also required the ripping of flesh, but not animals, Jesus life. This is how serious the promise is. Paid in blood.

God's love for us is so great that he would suffer the humility and pain of crucifixion just so that he gets the chance to spend eternity with us. Us, the ones drenched in sin.

Our faith starts with believing this promise. Holding it as a certainty in our lives. It's a promise God intends to keep so that we may be free to respond in kind and love God and one another with no bounds.

We join with the giants of our faith written in Hebrews, Abraham, Enoch, Moses, Noah:
Hebrews 11:13All these people were still living by faith when they died. They did not receive the things promised; they only saw them and welcomed them from a distance. And they admitted that they were aliens and strangers on earth. 14People who say such things show that they are longing for a better country—a heavenly one"

Hold in your heart the promise of God.
"Whoever believes in him may not perish but have eternal life"
This is most certainly true.

Tuesday, August 10, 2010

GameLog 157 & 158

LoL (20h) - level 28 - Lots of LANs and late night sessions looking for that last win before bed. Suffered a bit with SC2 being close-but-not-quite UI, but it won out in the end.

King's Bounty (15h) - Had a hankering for this one again, but couldn't find the save so I rerolled. Still had an odd question like last time; what's the rage for in the beginning? I knew the answer this time, but I still had to look up how to get the rage box started. Needed to be brought to the fore much earlier or have the rage meter hidden ...

Starcraft 2 (12h) - Moderate way through the campaign and it's feeling really good. Reminds me a lot of the dawn of war II campaign. No multiplayer yet, LoL fills that gap atm.

East India Company (2h) - Yeah, as poor as they made it out to be. Just no real feel of trading.

Alien Swarm (1h) - managed to get a few games in, but really haven't been around for LANs with it.