• Skip to primary navigation
  • Skip to main content

Jeff Cameron

  • Home
  • Posts
  • Resume
  • Contact

Posts

Archiving ScumZone.com

Jeff Cameron · Nov 15, 2019 ·

ScumZone.com is a website I made for SCUM, a supermax open world survival game.

The online multiplayer island mixes elements of The Hunger Games and Escape from New York. But it’s too big. Players have trouble finding each other. Player-vs-player action is rare, holding back the fun potential of the game.

To address this, I added a “PvP Zone” to the game. The small zone moves to a new town or landmark on the vast map every 24 hours. Player interactions inside the zone count towards their ranking on the website. The leaderboard uses the same scoring approach used for chess tournaments. Players who have finished exploring, gathering, and equipping themselves can head to the zone to look for a fun fight.

I ran the project in my spare time for about a month. 50 people took part, but it didn’t take off. In retrospect, I should have kept going. A few groups have since set up the software for their own game servers with far more players, and I help them from time to time.

Visualizing Social Networks

Jeff Cameron · Nov 6, 2019 ·

I visualized my gaming clan. As the size of the group has increased, the methods for drawing it have evolved.

  • Social network visualized. The structure of subgroups / factions can be readily seen.

These diagrams are made using Python, NetworkX, and Matplotlib. The vertices of the graph are people (Discord users) and the weights are 1 / t, the time they spent together in voice chat. To make the graph easier to render, only relationships that are part of the Minimum Spanning Tree are shown.

Members of the group pictured above (gamers in a Discord guild) remarked that the tree:

  • accurately captures the subgroups of the larger group,
  • places each person in the correct subgroup,
  • and even picks out the correct “informal ringleader” for each subgroup.

That’s pretty interesting, given the limited information available to the algorithm. The min spanning tree might help machines to better understand human group structure & leadership.

The min spanning tree trick has another important advantage: scalability. Since it’s a tree, it’s guaranteed to be planar. That means it will always be possible to draw the structure neatly on a 2D page, even for groups of thousands or millions of people.

Canada Election 2019

Jeff Cameron · Oct 30, 2019 ·

For Canada’s federal election on Oct 21, I published AnyoneButTrudeau.ca and AnyoneButScheer.ca. The pamphlets are a follow-up to a similar effort from 2015.

The websites are backed by an open-source election forecasting model. The model correctly predicted the overall election outcome: a Liberal minority government. Of the 338 individual districts, the model got 85% of them right (and 15% of them wrong!). Is that good enough for you to trust the model in your district, next election? Only you can decide, armed with the numbers.

ElectionWebsiteCorrect ProjectionsAccuracy (%)
2015AnyoneButHarper.net259 / 33877%
2019AnyoneButTrudeau.ca
AnyoneButScheer.ca
288 / 33885%

Strategic voting is a hack for a broken voting system. The big scandal from the 2019 election is the reversal of the popular vote. This doesn’t feel fair to most voters. Next election, people will be hungry for new ideas, like Direct Democracy.

First Post!

Admin · Sep 30, 2019 ·

Obligatory first post. Woohoo!

  • Iceburg Base in Rust, a Computer Game
    Random photo of a stone structure perched atop an iceberg.

Jeff Cameron

Log in