Determinance screenshot

Archive for September, 2011

FS checklist

Wednesday, September 28th, 2011

Guys HD, Meneth, and Sid are working on a noob FS support guide.  Please comment here if you can think of anything else pertinent:

 

Common Technical Issues:
  • I’m stuck registering – Restarting the game solves this.
  • My YouTube upload has failed –  The current YT implementation has some issues, you can upload the video manually by browsing to the game directory and uploading record.ogv.
  • My opponent has requested I join IRC but he/she isn’t there – The chat system currently works inside a match only with a global chat room using IRC. If you get the message you can just ignore it; you were likely invited accidentally.
  • My FPS is terrible! – Try disabling menu backgrounds (options → check disable menu backgrounds).
  • I can’t connect to anything! – Try allowing outbound connections on ports 28020 – 28030 over TCP.
  • Frozen Synapse isn’t starting -  Please make sure you have updated your drivers and have OpenGL drivers and if you haven’t restarted in more than 25 days please restart.
Common Gameplay Issues:
  • My opponent isn’t taking their turn – Don’t worry just start another game up. If they don’t take their turn within 2 weeks (and the game is past turn 1) then they automatically lose.
  • The units are unbalanced – People like to claim this but playing to your units strengths and your enemy’s weaknesses is the general idea here.
  • I’ve been matched against a really good player despite only playing 1 game – As Frozen Synapse has implemented Elo losing this match for you will result in virtually no point loss. Winning it however will gain you a ton of points so you might as well go for it and you might pick up a new tactic!
  • The elevator mission is brutal! – Man up ☺.
You can always join #mode7games on irc.maxgaming.net for some more help (pressing the speech bubble button in game connects you to there as well!)
It may also be worth reading the wiki which can be found at http://fs.error420.com/http://fs.error420.com/. Lastly, before asking questions, you should read the FAQ, which can be found at http://www.frozensynapse.com/features.html#FAQ.

Tuesday

Tuesday, September 27th, 2011

Tuesday

One of the biggest problems with doing updates to FS is that we don’t have an autoupdater.  I am working on a spec for one which should make my life much easier today, and then we’ll probably find someone else to code it.

 

Looks like we tracked down the problem with the Steam patch and that should be going up again tonight.

 

 

Monday

Monday, September 26th, 2011

That previous post, by the way, was not some kind of passive-aggressive alegory about Elo – just my thoughts about the issue talked about.

 

Today I’ll be trying to track down the save-game deleting bug from the patch and then hopefully re-rolling it out.

 

 

Fantasy football “matchups” and game design

Sunday, September 25th, 2011

Fantasy football "matchups" and game design

Quick primer for fantasy football if you don’t play it: you are in a league with several friends.  You each have a “team” made up of 23 real life football players (each player is only owned by one team).  Each weekend you choose 7 football players to “start”, and you score points based on their performance.

 

The vast majority of FF leagues are “matchup” based, which means that each week you are playing “against” a specific other person in the league.  I put quotes around “against” there because there’s no interaction between you and your opponent – you simply win if you have more points than him.  You could out-score everyone else but if you’re playing against the top scorer in the league that week you will lose.  It would be like in a Golf game if instead of getting a score on a hole (eagle, birdie, par, bogie etc) you got a Win or a Loss depending on whether you beat Tiger Woods on that hole.  (I think there might actually be a version of this in Golf – maybe “match-play” or something).

 

The alternative to a “matchups” league is a “points” league, where at the end of the season you’re all ranked on points – much like a normal Golf match.

 

I’ve played in both kinds of league, and I can tell you that a Matchups league is just better.  Because:

  • A binary result is more fun than an analogue result.  It’s easier to understand and it’s simpler.  There’s a LOT of complexity behind why this is, and I don’t pretend to understand it.  The simpler the “atoms” of a larger system, the more accessible and predictable and interactive that system is.  People want to understand outcomes immediately.  Nothing is easier than Win/Loss, or 1/0.
  • You get to play against someone.  You get to beat someone.  You get to lose to someone.  You get to talk smack all week to a specific friend.  You get to have rivalries.
  • You can support other people in the league, and watch things with unbiased interest.  In a Points league, everyone is your enemy and every point scored by a football player you don’t own is bad.  Do you really want to root against 90% of the league players when you’re watching football on a Sunday? No – that’s not fun.  Do you want to root against all of your friends each week?  Ditto.

 

Those are all, by themselves, great lessons in game design.  But there’s an overriding point here that I want to make.  What do Points leagues do much much better than Matchups leagues?

 

They tell you who’s better at Fantasy Football.

 

But it doesn’t matter.  Because Matchups leagues are so much more fun.

 

Meta-games, league structures, and ranking systems are not just about finding out who’s better at something – they’re about improving the game itself by injecting drama and importance in specific places.  They add texture to a game.  (It’s why I prefer the NFL’s relatively-bizarre Divisions-and-playoffs system to the dry Premier League).

 

So here’s the lesson (because as we all know succinct conclusions at the end of things are more fun): don’t be too caught up in what system is fairest, because fairest is not always funnest.

Elo and generators

Sunday, September 25th, 2011

Elo and generators

I’ve just updated the Elo code running on UK1.  It is now more geared around winning and less geared around score (relatively – the score is still important); and Extermination games are only worth a maximum of 16 points.

 

I have *not* re-run it for all previous games as I don’t want the rankings to be constantly changing in such a large way.  Once we’re sure we’ve got the right system I’ll re-run the rankings.  The code is at the end of this post for people to have a look at.

 

Finally, it’s been a long time coming but in the next two weeks I’m going to be going through the map generators looking at unit compositions.  I’ll also probably be making the “opposite ends” exterminations much rarer.

 
$eloInitial = 1200;
$eloGameScore = 32;
$eloExtGameScore = 24;
function getKValForMode(%gameMode)
{
if (%gameMode $= “Secure2″)
{
return $eloGameScore;
}
else if (%gameMode $= “HostageCamp”)
{
return $eloGameScore;
}
else if (%gameMode $= “Extermination”)
{
return $eloExtGameScore;
}
else if (%gameMode $= “Disputed”)
{
return $eloGameScore;
}
else if (%gameMode $= “Charge”)
{
return $eloGameScore;
}
else
{
return $eloGameScore;
}
}

$eloBaseWinScore = 0.6;
$eloWinStrengthScore = 1 – $eloBaseWinScore;

$eloExtBaseWinScore = 0.6;
$eloExtWinStrengthScore = 1 – $eloExtBaseWinScore;

function eloAdjScore(%score, %gamemode)
{
if (%score == 0)
return 0.5;

%posScore = %score;

if (%posScore < 0)
%posScore = -%posScore;

if (%gameMode $= “Secure2″)
{
%elosc = $eloBaseWinScore + $eloWinStrengthScore * propise(%posScore, 0, 200);
}
else if (%gameMode $= “HostageCamp”)
{
%elosc = $eloBaseWinScore + $eloWinStrengthScore * propise(%posScore, 0, 50);
}
else if (%gameMode $= “Extermination”)
{
%elosc = $eloExtBaseWinScore + $eloExtWinStrengthScore * propise(%posScore, 0, 60);
}
else if (%gameMode $= “Disputed”)
{
%elosc = $eloBaseWinScore + $eloWinStrengthScore * propise(%posScore, 0, 120);
}
else if (%gameMode $= “Charge”)
{
%elosc = $eloBaseWinScore + $eloWinStrengthScore * propise(%posScore, 0, 150);
}
else
{
%elosc = 1;
}

if (%score < 0)
return 1 – %elosc;
else
return %elosc;

}

function eloExpectedScore(%myRanking, %hisRanking)
{
return 1.0 / (1 + mPow(10, ((%hisRanking – %myRanking) / 400.0)));
}

function newRanking(%myOldRanking, %hisRanking, %myScore, %k)
{
return %myOldRanking + %k * (%myScore – eloExpectedScore(%myOldRanking, %hisRanking));
}

Steam patch rolled back

Saturday, September 24th, 2011

Steam patch rolled back

Guys, while we investigate the patch problems we’ve rolled back the patch.

Save game loss

Friday, September 23rd, 2011

Save game loss

If you’ve lost your profile after the Steam patch, please create a new profile with the same name as your old one – you may be able to continue your game.

 

If not, you can use a cheat, which I’ll post in the comments to this, to be able to skip to the mission you were on.

 

We’re looking in to the cause for this – I’m very sorry for the problems.

 

Thursday

Thursday, September 22nd, 2011

Thursday

We’re going to get the beta patch live tonight as it seems to be working ok.  Thanks for all the feedback guys.

OSX Steam patch in testing

Wednesday, September 21st, 2011

Please run steam -beta courage to get it.

Steam PC patch in beta

Tuesday, September 20th, 2011

Steam PC patch in beta

Guys, please test the PC patch by starting steam with

 

steam.exe -beta courage

 

And let me know if it runs ok.

 

Thanks,

Ian