Civ4: BTS PitBoss - Command-line arguments

Jebus905

Chieftain
Joined
May 31, 2007
Messages
11
Location
NF, ON, CA
I was wondering if anyone knows of any command-line arguments that can be applied to the PitBoss executable. I was hoping there was some secret way to get the PitBoss to save a log file of players, scores, or other such information.

Thanks.
:)
 
AFAIK civstats gleans all its information from the pitboss window itself.

Nope, civstats carries much more info than can be gleaned from only the window. The window does not provide the sequence of turn plays by individual players and doesn't show multiple joins in the same turn by players.
 
Nope, civstats carries much more info than can be gleaned from only the window. The window does not provide the sequence of turn plays by individual players and doesn't show multiple joins in the same turn by players.

Actually it does watch the window. :lol:

I scan it every 30 seconds or so, and if there are changes, they are uploaded to the Civstats server. The server, of course, has a truckload of code that handles interpreting what the changes mean (new turn, score increases, logging in and out).

The way it determines if someone joined the game is by watching the "ping" value of each player.

As for your question, Jebus905, no I have not figured out any such command line options, sadly. However, Civstats 2.0 is on its way (although it's a ways off) and it will basically do exactly what you want, although you'll need to run the Civstats "mod".
 
Thanks OverloadUT, I'm currently using CivStats to track our current game. My friends and I love it, but I have received some complaints that there is too much information displayed. It seems some people don't like the idea of showing when scores raise or fall (showing when trades occur or when Conscription is used).

This may be bad of me, but I had been toying with the idea of writing my own pbupload.php file for my web server and using a hosts file to redirect the packets of the civstats program so that I could store the information locally.

Would this be bad of me?
 
Knock yourself out! I would be a bit discouraged if you were to end up making a whole competing service, as this isn't really something that I think needs competition, but if it's just for your personal game then I wouldn't mind at all.

As for your players' concerns, you might have them check out my FAQ on the matter. The bottom line is, a smart player can get all the information that Civstats displays, plus a whole log more, but simply watching the foreign adviser closely.

Regardless, I'm currently working on Civstats 2, and I might implement the ability to hide the score changes since a few people have asked for it.
 
Regardless, I'm currently working on Civstats 2, and I might implement the ability to hide the score changes since a few people have asked for it.

This kind of filtering would be good to have at the game admin level. I also wouldn't mind being able to restrict the users to seeing only when people end their turns.

Now, if we could hide the scores in game then that would be a huge bonus IMO. They didn't happen to add this feature with BTS did they? ;)

Bernout
 
This kind of filtering would be good to have at the game admin level. I also wouldn't mind being able to restrict the users to seeing only when people end their turns.

Now, if we could hide the scores in game then that would be a huge bonus IMO. They didn't happen to add this feature with BTS did they? ;)

Bernout

No, they did not. But think about this for a moment: Civstats 2.0 will be a mod... who says it has to only read data? Perhaps I could implement some "fixes" to Pitboss in general.
 
OverloadUT : Thank you for the permission to reverse-engineer the pbupload page. It is not something I would go into competition for, it would simply be for my private server, I promise you that.

Unfortunately, I hit a major snag. It looks like the CivStats Uploader program doesn't like replies from IIS servers. :(

The log records the error:
****** CRITICAL ERROR ****** UNABLE TO PARSE PART OF THE HTTP RESPONSE (5). PLEASE SUBMIT THIS AS A BUG REPORT. The line that caused the problem is: Server: Microsoft-IIS/5.1

So, it looks like my project is pretty short lived. If you have suggestions for me, lets take this to email.

Thanks.
J.
 
Hey Overload, I tried that version linked above, but I get the following error:
civstats_error_screenshot01.png


(Thanks though! I appreciate the effort!)
 
Doh! That's what I get for not even running the thing before sending it off to someone. I updated file, same link as above. Please let me know if it works. :)
 
I get a much smaller error this time around:

civstats_error_screenshot002.png


The log file doesn't mention any error, just "Starting an Upload. Func=Init..."
 
Ohhhhkay. That was actually caused by a different but I forgot I had fixed in between trying to fix your problem.

I fixed the problem and uploaded a new version (same link) - go ahead and give this one a shot. ;) It might very well have the same original error as before, but I'd be interested in what the log file says now.
 
You are correct sir:
****** CRITICAL ERROR ****** UNABLE TO PARSE PART OF THE HTTP RESPONSE (5). PLEASE SUBMIT THIS AS A BUG REPORT. The line that caused the problem is: Server: Microsoft-IIS/5.1
 
The pitboss game I run used/uses CivStats as well (AWESOME program!) Unfortunatly the players in my game felt the same as others, they did not want scores/score changes displayed.

One of our players did exactly what you describe (rerouting www.civstats.com in windows to his server) where he interprets the civstats info on a new page. Right now it mainly is because folks do not want scores of people they have not met (AIs) to show up. Once we have all met everyone the idea is we will go back to civStats (which is where we prefer to be).

This is not a competing thing, no code has been released or will it, and we want to use civstats. Letting game admins constrain displays would solve our issues there.

As to pitboss enhancements.. the single biggest thing I would like to see is the ability for the game admin to either force-advance the turn, or manually select a person to end their turn. Our problem is people go away on vacation and then we have to have the turn timer advance the game (REALLY slows things down if they are gone a while). They queue up a bunch of moves... be nice if the game admin can just mark them as finished... we have the KICk button to turn them into an AI (but players don't want to do that)... this seems like such a natural thing to inclue.

Even better if it emailed the player saying the Admin force-finished their turn (to cut down on abuse).

Anyways... love the CivStats site, am looking forward to 2.0. When you say a mod, will it allow us to change the page display? (hide certain panels or move around the layout)?
 
You are correct sir:
****** CRITICAL ERROR ****** UNABLE TO PARSE PART OF THE HTTP RESPONSE (5). PLEASE SUBMIT THIS AS A BUG REPORT. The line that caused the problem is: Server: Microsoft-IIS/5.1

Do you know how to packet sniff? It would be awesome if you could use Wireshark or something to look at what exactly the IIS server is responding with. If I'm reading my own code and response code correctly, it looks like IIS is sending the "Server:" header before it sends "HTTP/1.1 200" which would definitely cause this error. However, that's a totally invalid HTTP response and I'm hoping that Microsoft isn't that stupid.

Anyway, if I could see the full response from the server it would be useful.
 
I've been using Ethereal to capture packets. Here's the conversation:

POST /pbupload.php HTTP/1.1
Host: www.civstats.com
User-Agent: CivStatsUploader/1.5.0.3
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 113

Func=Init&ID=1000&Pass=test&UploaderVersion=1.5.0.3&timestamp=1188651831&NumPlayers=9&UseTurnTimer=1&GameName=abc

HTTP/1.1 100 Continue
Server: Microsoft-IIS/5.1
Date: Sat, 01 Sep 2007 13:02:09 GMT

HTTP/1.1 200 OK
Server: Microsoft-IIS/5.1
Date: Sat, 01 Sep 2007 13:02:09 GMT
Connection: close
X-Powered-By: PHP/5.2.1
Set-Cookie: PHPSESSID=ksg2341fags7jocas80s8qb2t4; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-type: text/html

pbupload:1|queries:1|critical:0|error:Server ID or Password incorrect.|
 
Ah ha!

I've never encountered that "HTTP/1.1 100 Continue" thing before.

That's... annoying. I'll look in to what it will take to make my HTTP library handle that.
 
Back
Top Bottom