- changed Internet and Game lobby to display svn rev# instead of compile date/time

This commit is contained in:
Mark Vejvoda
2011-04-30 01:05:53 +00:00
parent 030058e3fc
commit 5d743f38db
7 changed files with 32 additions and 26 deletions

View File

@@ -118,6 +118,11 @@ string getNetworkVersionString() {
return version;
}
string getNetworkVersionSVNString() {
string version = glestVersionString + "-" + getCompilerNameString() + "-" + getSVNRevisionString();
return version;
}
string getCompileDateTime() {
return string(__DATE__) + " " + string(__TIME__);
}

View File

@@ -32,6 +32,7 @@ string getPlatformNameString();
string getSVNRevisionString();
string getCompilerNameString();
string getNetworkVersionString();
string getNetworkVersionSVNString();
string getNetworkPlatformFreeVersionString();
string getAboutString1(int i);
string getAboutString2(int i);

View File

@@ -1970,7 +1970,7 @@ void MenuStateCustomGame::publishToMasterserver() {
//?status=waiting&system=linux&info=titus
publishToServerInfo["glestVersion"] = glestVersionString;
publishToServerInfo["platform"] = getPlatformNameString();
publishToServerInfo["platform"] = getPlatformNameString() + "-" + getSVNRevisionString();
publishToServerInfo["binaryCompileDate"] = getCompileDateTime();
//game info:

View File

@@ -126,16 +126,16 @@ MenuStateMasterserver::MenuStateMasterserver(Program *program, MainMenu *mainMen
// Titles for current games - START
int lineIndex = 0;
int lineOffset=25*lineIndex;
int i=10;
int i=7;
int startOffset=serverLinesYBase+23;
//general info:
i+=10;
//i+=10;
glestVersionLabel.registerGraphicComponent(containerName,"glestVersionLabel");
glestVersionLabel.init(i,startOffset-lineOffset);
glestVersionLabel.setText(lang.get("MGVersion"));
i+=80;
i+=70;
platformLabel.registerGraphicComponent(containerName,"platformLabel");
platformLabel.init(i,startOffset-lineOffset);
platformLabel.setText(lang.get("MGPlatform"));
@@ -146,17 +146,17 @@ MenuStateMasterserver::MenuStateMasterserver(Program *program, MainMenu *mainMen
// binaryCompileDateLabel.setText(lang.get("MGBuildDateTime"));
//game info:
i+=80;
i+=130;
serverTitleLabel.registerGraphicComponent(containerName,"serverTitleLabel");
serverTitleLabel.init(i,startOffset-lineOffset);
serverTitleLabel.setText(lang.get("MGGameTitle"));
i+=140;
i+=150;
countryLabel.registerGraphicComponent(containerName,"countryLabel");
countryLabel.init(i,startOffset-lineOffset);
countryLabel.setText(lang.get("MGGameCountry"));
i+=90;
i+=65;
// ipAddressLabel.registerGraphicComponent(containerName,"ipAddressLabel");
// ipAddressLabel.init(i,startOffset-lineOffset);
@@ -188,7 +188,7 @@ MenuStateMasterserver::MenuStateMasterserver(Program *program, MainMenu *mainMen
externalConnectPort.init(i,startOffset-lineOffset);
externalConnectPort.setText(lang.get("Port"));
i+=80;
i+=60;
statusLabel.registerGraphicComponent(containerName,"statusLabel");
statusLabel.init(i,startOffset-lineOffset);
statusLabel.setText(lang.get("MGGameStatus"));

View File

@@ -37,15 +37,15 @@ ServerLine::ServerLine(MasterServerInfo *mServerInfo, int lineIndex, int baseY,
this->lineHeight= lineHeight;
int lineOffset= lineHeight * lineIndex;
masterServerInfo= *mServerInfo;
int i= 10;
int i= 7;
this->baseY= baseY;
//general info:
i+= 10;
//i+= 10;
glestVersionLabel.init(i, baseY - lineOffset);
glestVersionLabel.setText(masterServerInfo.getGlestVersion());
i+= 80;
i+= 70;
platformLabel.init(i, baseY - lineOffset);
platformLabel.setText(masterServerInfo.getPlatform());
@@ -56,11 +56,11 @@ ServerLine::ServerLine(MasterServerInfo *mServerInfo, int lineIndex, int baseY,
// binaryCompileDateLabel.setText(masterServerInfo.getBinaryCompileDate());
//game info:
i+= 80;
i+= 130;
serverTitleLabel.init(i, baseY - lineOffset);
serverTitleLabel.setText(masterServerInfo.getServerTitle());
i+= 140;
i+= 150;
country.init(i, baseY - lineOffset);
country.setText(masterServerInfo.getCountry());
@@ -89,7 +89,7 @@ ServerLine::ServerLine(MasterServerInfo *mServerInfo, int lineIndex, int baseY,
renderer.initTexture(rsGlobal, countryTexture);
}
i+= 90;
i+= 65;
// ipAddressLabel.init(i,baseY-lineOffset);
// ipAddressLabel.setText(masterServerInfo.getIpAddress());
// i+=100;
@@ -118,7 +118,7 @@ ServerLine::ServerLine(MasterServerInfo *mServerInfo, int lineIndex, int baseY,
externalConnectPort.init(i, baseY - lineOffset);
externalConnectPort.setText(intToStr(masterServerInfo.getExternalConnectPort()));
i+= 80;
i+= 60;
status.init(i, baseY - lineOffset);
status.setText(lang.get("MGGameStatus" + intToStr(masterServerInfo.getStatus())));

View File

@@ -193,7 +193,7 @@ void ClientInterface::updateLobby() {
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] got NetworkMessageIntro, networkMessageIntro.getGameState() = %d, versionString [%s], sessionKey = %d, playerIndex = %d, serverFTPPort = %d\n",__FILE__,__FUNCTION__,__LINE__,networkMessageIntro.getGameState(),versionString.c_str(),sessionKey,playerIndex,serverFTPPort);
//check consistency
bool compatible = checkVersionComptability(networkMessageIntro.getVersionString(), getNetworkVersionString());
bool compatible = checkVersionComptability(networkMessageIntro.getVersionString(), getNetworkVersionSVNString());
if(compatible == false) {
//if(networkMessageIntro.getVersionString() != getNetworkVersionString()) {
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
@@ -205,12 +205,12 @@ void ClientInterface::updateLobby() {
if(strncmp(platformFreeVersion.c_str(),networkMessageIntro.getVersionString().c_str(),strlen(platformFreeVersion.c_str())) != 0) {
string playerNameStr = getHumanPlayerName();
sErr = "Server and client binary mismatch!\nYou have to use the exactly same binaries!\n\nServer: " + networkMessageIntro.getVersionString() +
"\nClient: " + getNetworkVersionString() + " player [" + playerNameStr + "]";
"\nClient: " + getNetworkVersionSVNString() + " player [" + playerNameStr + "]";
printf("%s\n",sErr.c_str());
sendTextMessage("Server and client binary mismatch!!",-1, true,"");
sendTextMessage(" Server:" + networkMessageIntro.getVersionString(),-1, true,"");
sendTextMessage(" Client: "+ getNetworkVersionString(),-1, true,"");
sendTextMessage(" Client: "+ getNetworkVersionSVNString(),-1, true,"");
sendTextMessage(" Client player [" + playerNameStr + "]",-1, true,"");
}
else {
@@ -218,7 +218,7 @@ void ClientInterface::updateLobby() {
string playerNameStr = getHumanPlayerName();
sErr = "Warning, Server and client are using the same version but different platforms.\n\nServer: " + networkMessageIntro.getVersionString() +
"\nClient: " + getNetworkVersionString() + " player [" + playerNameStr + "]";
"\nClient: " + getNetworkVersionSVNString() + " player [" + playerNameStr + "]";
printf("%s\n",sErr.c_str());
}
@@ -238,7 +238,7 @@ void ClientInterface::updateLobby() {
//send intro message
Lang &lang= Lang::getInstance();
NetworkMessageIntro sendNetworkMessageIntro(sessionKey,getNetworkVersionString(), getHumanPlayerName(), -1, nmgstOk, this->getSocket()->getConnectedIPAddress(),serverFTPPort,lang.getLanguage());
NetworkMessageIntro sendNetworkMessageIntro(sessionKey,getNetworkVersionSVNString(), getHumanPlayerName(), -1, nmgstOk, this->getSocket()->getConnectedIPAddress(),serverFTPPort,lang.getLanguage());
sendMessage(&sendNetworkMessageIntro);
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);

View File

@@ -368,7 +368,7 @@ void ConnectionSlot::update(bool checkForNewClients,int lockedSlotIndex) {
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] !!!!!!!!WARNING - no open slots, disconnecting client\n",__FILE__,__FUNCTION__,__LINE__);
if(socket != NULL) {
NetworkMessageIntro networkMessageIntro(sessionKey,getNetworkVersionString(), getHostName(), playerIndex, nmgstNoSlots, 0, ServerSocket::getFTPServerPort(),"");
NetworkMessageIntro networkMessageIntro(sessionKey,getNetworkVersionSVNString(), getHostName(), playerIndex, nmgstNoSlots, 0, ServerSocket::getFTPServerPort(),"");
sendMessage(&networkMessageIntro);
}
@@ -380,7 +380,7 @@ void ConnectionSlot::update(bool checkForNewClients,int lockedSlotIndex) {
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] client will be assigned to the next open slot\n",__FILE__,__FUNCTION__,__LINE__);
if(socket != NULL) {
NetworkMessageIntro networkMessageIntro(sessionKey,getNetworkVersionString(), getHostName(), playerIndex, nmgstOk, 0, ServerSocket::getFTPServerPort(),"");
NetworkMessageIntro networkMessageIntro(sessionKey,getNetworkVersionSVNString(), getHostName(), playerIndex, nmgstOk, 0, ServerSocket::getFTPServerPort(),"");
sendMessage(&networkMessageIntro);
//if(chrono.getMillis() > 1) printf("In [%s::%s Line: %d] action running for msecs: %lld\n",__FILE__,__FUNCTION__,__LINE__,(long long int)chrono.getMillis());
@@ -500,7 +500,7 @@ void ConnectionSlot::update(bool checkForNewClients,int lockedSlotIndex) {
}
//check consistency
bool compatible = checkVersionComptability(getNetworkVersionString(), networkMessageIntro.getVersionString());
bool compatible = checkVersionComptability(getNetworkVersionSVNString(), networkMessageIntro.getVersionString());
if(compatible == false) {
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
@@ -510,12 +510,12 @@ void ConnectionSlot::update(bool checkForNewClients,int lockedSlotIndex) {
if(strncmp(platformFreeVersion.c_str(),networkMessageIntro.getVersionString().c_str(),strlen(platformFreeVersion.c_str())) != 0) {
string playerNameStr = name;
sErr = "Server and client binary mismatch!\nYou have to use the exactly same binaries!\n\nServer: " + getNetworkVersionString() +
sErr = "Server and client binary mismatch!\nYou have to use the exactly same binaries!\n\nServer: " + getNetworkVersionSVNString() +
"\nClient: " + networkMessageIntro.getVersionString() + " player [" + playerNameStr + "]";
printf("%s\n",sErr.c_str());
serverInterface->sendTextMessage("Server and client binary mismatch!!",-1, true,"",lockedSlotIndex);
serverInterface->sendTextMessage(" Server:" + getNetworkVersionString(),-1, true,"",lockedSlotIndex);
serverInterface->sendTextMessage(" Server:" + getNetworkVersionSVNString(),-1, true,"",lockedSlotIndex);
serverInterface->sendTextMessage(" Client: "+ networkMessageIntro.getVersionString(),-1, true,"",lockedSlotIndex);
serverInterface->sendTextMessage(" Client player [" + playerNameStr + "]",-1, true,"",lockedSlotIndex);
}
@@ -523,7 +523,7 @@ void ConnectionSlot::update(bool checkForNewClients,int lockedSlotIndex) {
versionMatched = true;
string playerNameStr = name;
sErr = "Warning, Server and client are using the same version but different platforms.\n\nServer: " + getNetworkVersionString() +
sErr = "Warning, Server and client are using the same version but different platforms.\n\nServer: " + getNetworkVersionSVNString() +
"\nClient: " + networkMessageIntro.getVersionString() + " player [" + playerNameStr + "]";
printf("%s\n",sErr.c_str());
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] %s\n",__FILE__,__FUNCTION__,__LINE__,sErr.c_str());