Index: binaries/data/mods/public/gui/summary/counters.js
===================================================================
--- binaries/data/mods/public/gui/summary/counters.js	(revision 17499)
+++ binaries/data/mods/public/gui/summary/counters.js	(working copy)
@@ -18,8 +18,8 @@
 function calculateEconomyScore(playerState, position)
 {
 	let total = 0;
-	for each (let res in playerState.statistics.resourcesGathered)
-		total += res;
+	for (let type in playerState.statistics.resourcesGathered)
+		total += playerState.statistics.resourcesGathered[type];
 
 	return Math.round(total / 10);
 }
@@ -119,20 +119,6 @@
 		g_OutcomeColor + (playerState.statistics.resourcesUsed[type] - playerState.statistics.resourcesSold[type]) + '[/color]';
 }
 
-function calculateTotalResources(playerState, position)
-{
-	let totalGathered = 0;
-	let totalUsed = 0;
-
-	for each (let type in g_ResourcesTypes)
-	{
-		totalGathered += playerState.statistics.resourcesGathered[type];
-		totalUsed += playerState.statistics.resourcesUsed[type] - playerState.statistics.resourcesSold[type];
-	}
-
-	return g_IncomeColor + totalGathered + '[/color] / ' + g_OutcomeColor + totalUsed + '[/color]';
-}
-
 function calculateTreasureCollected(playerState, position)
 {
 	return playerState.statistics.treasuresCollected;
@@ -202,11 +188,11 @@
 function calculateBatteryEfficiency(playerState, position)
 {
 	let totalBought = 0;
-	for each (let boughtAmount in playerState.statistics.resourcesBought)
-		totalBought += boughtAmount;
 	let totalSold = 0;
-	for each (let soldAmount in playerState.statistics.resourcesSold)
-		totalSold += soldAmount;
+	for (let boughtAmount in playerState.statistics.resourcesBought)
+		totalBought += playerState.statistics.resourcesBought[boughtAmount];
+	for (let soldAmount in playerState.statistics.resourcesSold)
+		totalSold += playerState.statistics.resourcesSold[soldAmount];
 
 	return Math.floor(totalSold > 0 ? (totalBought / totalSold) * 100 : 0) + "%";
 }
@@ -366,7 +352,7 @@
 				else if (!g_TeamMiscHelperData[t][w].unitsLost)	// and enemyUnitsKilled.total > 0
 					teamTotal = g_InfiniteSymbol; // infinity symbol
 				else
-					teamTotal = Math.round((g_TeamMiscHelperData[t][w].enemyUnitsKilled / g_TeamMiscHelperData[t][w].unitsLost)*100)/100;
+					teamTotal = Math.round((g_TeamMiscHelperData[t][w].enemyUnitsKilled / g_TeamMiscHelperData[t][w].unitsLost) * 100) / 100;
 			}
 			else if (w >= 3)
 				teamTotal = g_TeamMiscHelperData[t][w] + "%";
Index: binaries/data/mods/public/gui/summary/layout.js
===================================================================
--- binaries/data/mods/public/gui/summary/layout.js	(revision 17499)
+++ binaries/data/mods/public/gui/summary/layout.js	(working copy)
@@ -90,7 +90,7 @@
 			{ "width": 100, "fn": calculateResources },
 			{ "width": 100, "fn": calculateResources },
 			{ "width": 100, "fn": calculateResources },
-			{ "width": 110, "fn": calculateTotalResources },
+			{ "width": 110, "fn": calculateResources },
 			{ "width": 121, "fn": calculateTributeSent },
 			{ "width": 100, "fn": calculateTreasureCollected },
 			{ "width": 100, "fn": calculateLootCollected }
Index: binaries/data/mods/public/gui/summary/summary.js
===================================================================
--- binaries/data/mods/public/gui/summary/summary.js	(revision 17499)
+++ binaries/data/mods/public/gui/summary/summary.js	(working copy)
@@ -19,7 +19,7 @@
 
 const g_BuildingsTypes = [ "total", "House", "Economic", "Outpost", "Military", "Fortress", "CivCentre", "Wonder" ];
 const g_UnitsTypes = [ "total", "Infantry", "Worker", "Cavalry", "Champion", "Hero", "Ship", "Trader" ];
-const g_ResourcesTypes = [ "food", "wood", "stone", "metal" ];
+const g_ResourcesTypes = [ "food", "wood", "stone", "metal", "total" ];
 
 // Colors used for gathered and traded resources
 const g_IncomeColor = '[color="201 255 200"]';

 Engine.RegisterComponentType(IID_Repairable, "Repairable", Repairable);
Index: binaries/data/mods/public/simulation/components/StatisticsTracker.js
===================================================================
--- binaries/data/mods/public/simulation/components/StatisticsTracker.js	(revision 17499)
+++ binaries/data/mods/public/simulation/components/StatisticsTracker.js	(working copy)
@@ -99,6 +99,7 @@
 		"wood": 0,
 		"metal": 0,
 		"stone": 0,
+		"total": 0,
 		"vegetarianFood": 0
 	};
 	this.resourcesUsed = {
@@ -105,13 +106,15 @@
 		"food": 0,
 		"wood": 0,
 		"metal": 0,
-		"stone": 0
+		"stone": 0,
+		"total": 0
 	};
 	this.resourcesSold = {
 		"food": 0,
 		"wood": 0,
 		"metal": 0,
-		"stone": 0
+		"stone": 0,
+		"total": 0
 	};
 	this.resourcesBought = {
 		"food": 0,
@@ -314,6 +317,7 @@
 StatisticsTracker.prototype.IncreaseResourceGatheredCounter = function(type, amount, specificType)
 {
 	this.resourcesGathered[type] += amount;
+	this.resourcesGathered.total += amount;
 	
 	if (type == "food" && (specificType == "fruit" || specificType == "grain"))
 		this.resourcesGathered.vegetarianFood += amount;
@@ -326,6 +330,7 @@
 StatisticsTracker.prototype.IncreaseResourceUsedCounter = function(type, amount)
 {
 	this.resourcesUsed[type] += amount;
+	this.resourcesUsed.total += amount;
 };
 
 StatisticsTracker.prototype.IncreaseTreasuresCollectedCounter = function()
Index: binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
===================================================================
--- binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js	(revision 17499)
+++ binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js	(working copy)
@@ -109,8 +109,9 @@
 			"resourcesGathered": {
 				"food": 100,	
 				"wood": 0,	
-				"metal": 0,	
 				"stone": 0,
+				"metal": 0,
+				"total": 0,
 				"vegetarianFood": 0, 
 			},
 			"percentMapExplored": 10
@@ -126,8 +127,9 @@
 			"resourcesGathered": {
 				"food": 100,	
 				"wood": 0,	
-				"metal": 0,	
 				"stone": 0,
+				"metal": 0,
+				"total": 0,
 				"vegetarianFood": 0, 
 			},
 			"treasuresCollected": 0,
@@ -189,8 +191,9 @@
 			"resourcesGathered": {
 				"food": 100,	
 				"wood": 0,	
+				"stone": 0,
 				"metal": 0,	
-				"stone": 0,
+				"total": 0,
 				"vegetarianFood": 0, 
 			},
 			"percentMapExplored": 10
@@ -206,8 +209,9 @@
 			"resourcesGathered": {
 				"food": 100,	
 				"wood": 0,	
-				"metal": 0,	
 				"stone": 0,
+				"metal": 0,
+				"total": 0,
 				"vegetarianFood": 0, 
 			},
 			"treasuresCollected": 0,
@@ -262,8 +266,9 @@
 				resourcesGathered: {
 					food: 100,
 					wood: 0,
+					stone: 0,
 					metal: 0,
-					stone: 0,
+					total: 0,
 					vegetarianFood: 0, 
 				},
 				percentMapExplored: 10
@@ -301,8 +306,9 @@
 				resourcesGathered: {
 					food: 100,
 					wood: 0,
+					stone: 0,
 					metal: 0,
-					stone: 0,
+					total: 0,
 					vegetarianFood: 0, 
 				},
 				percentMapExplored: 10
@@ -354,8 +360,9 @@
 				resourcesGathered: {
 					food: 100,
 					wood: 0,
+					stone: 0,
 					metal: 0,
-					stone: 0,
+					total: 0,
 					vegetarianFood: 0, 
 				},
 				treasuresCollected: 0,
@@ -405,8 +412,9 @@
 				resourcesGathered: {
 					food: 100,
 					wood: 0,
+					stone: 0,
 					metal: 0,
-					stone: 0,
+					total: 0,
 					vegetarianFood: 0, 
 				},
 				treasuresCollected: 0,
Index: source/tools/XpartaMuPP/LobbyRanking.py
===================================================================
--- source/tools/XpartaMuPP/LobbyRanking.py	(revision 17499)
+++ source/tools/XpartaMuPP/LobbyRanking.py	(working copy)
@@ -1,6 +1,6 @@
 #!/usr/bin/env python3
 # -*- coding: utf-8 -*-
-"""Copyright (C) 2013 Wildfire Games.
+"""Copyright (C) 2015 Wildfire Games.
  * This file is part of 0 A.D.
  *
  * 0 A.D. is free software: you can redistribute it and/or modify
@@ -59,6 +59,8 @@
 	stoneUsed = Column(Integer)
 	metalGathered = Column(Integer)
 	metalUsed = Column(Integer)
+	totalGathered = Column(Integer)
+	totalUsed = Column(Integer)
 	vegetarianFoodGathered = Column(Integer)
 	treasuresCollected = Column(Integer)
 	lootCollected = Column(Integer)
Index: source/tools/XpartaMuPP/XpartaMuPP.py
===================================================================
--- source/tools/XpartaMuPP/XpartaMuPP.py	(revision 17499)
+++ source/tools/XpartaMuPP/XpartaMuPP.py	(working copy)
@@ -1,6 +1,6 @@
 #!/usr/bin/env python3
 # -*- coding: utf-8 -*-
-"""Copyright (C) 2014 Wildfire Games.
+"""Copyright (C) 2015 Wildfire Games.
  * This file is part of 0 A.D.
  *
  * 0 A.D. is free software: you can redistribute it and/or modify
@@ -121,7 +121,7 @@
     singleStats = {'timeElapsed', 'mapName', 'teamsLocked', 'matchID'}
     totalScoreStats = {'economyScore', 'militaryScore', 'totalScore'}
     resourceStats = {'foodGathered', 'foodUsed', 'woodGathered', 'woodUsed', 
-            'stoneGathered', 'stoneUsed', 'metalGathered', 'metalUsed', 'vegetarianFoodGathered',
+            'stoneGathered', 'stoneUsed', 'metalGathered', 'metalUsed', 'totalGathered', 'totalUsed', 'vegetarianFoodGathered',
             'treasuresCollected', 'lootCollected', 'tributesSent', 'tributesReceived'}
     unitsStats = {'totalUnitsTrained', 'totalUnitsLost', 'enemytotalUnitsKilled', 'infantryUnitsTrained',
             'infantryUnitsLost', 'enemyInfantryUnitsKilled', 'workerUnitsTrained', 'workerUnitsLost',
