February 25th, 2021, 12:06
Posts: 7,677
Threads: 76
Joined: Jan 2018
(February 25th, 2021, 05:22)civac2 Wrote: Not sure. I tried to dump a bunch of hammers into a CHA monument in 2.1 and didn't get any gold. Didn't test it more since I had to go to work.
Just checked this with regular buildins and no gold overflow was generated at all. This is clearly a bug and will be fixed. Thanks
February 25th, 2021, 12:13
(This post was last modified: February 25th, 2021, 12:44 by civac2.)
Posts: 2,150
Threads: 7
Joined: Aug 2020
Overflow works with units.  But not with buildings? How did you break that?
February 25th, 2021, 13:46
Posts: 7,677
Threads: 76
Joined: Jan 2018
Well you might remember that I planned to remove the gold overflow for 2.0. I already had that removed, but after the community spoke out in favor of gold overflow I reverted that removal. Something must have gone wrong when I reverted that change in git and because at the time I only checked it with a unit I didn't notice it immediately.
Posts: 980
Threads: 5
Joined: Aug 2014
Hi Charriu,
because the high scoreboard in PB59 is a little bit disturbing I added a BUG Option to reduce the list in PBEM and PB games to the met contacts. (So it mimic the behavior of SP and normal MP games.)
Affected files:
+++ b/Assets/Config/Advanced Scoreboard.xml
+++ b/Assets/Python/BUG/Scoreboard.py
+++ b/Assets/Python/BUG/Tabs/BugScoreOptionsTab.py
+++ b/Assets/XML/Text/Advanced Scoreboard Options.xml
+++ b/UserSettings/Advanced Scoreboard.ini
Here are my diffs (for version 2.0 aka 2.0.2)  Or should I push it on Github?
Code: diff --git a/Assets/Config/Advanced Scoreboard.xml b/Assets/Config/Advanced Scoreboard.xml
index a200c43..9ac190a 100644
--- a/Assets/Config/Advanced Scoreboard.xml
+++ b/Assets/Config/Advanced Scoreboard.xml
@@ -80,6 +80,9 @@
<list id="LineHeight" key="Line Height"
type="int" default="22" values="10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30"
get="getLineHeight" set="setLineHeight" dirtyBit="Score"/>
+ <option id="MPContactsOnly" key="Met Players Only"
+ type="boolean" default="True"
+ get="isMPContactsOnly" set="setMPContactsOnly" dirtyBit="Score"/>
<list id="MaxPlayers" key="Max Players"
type="int" default="0" values="0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50"
get="getMaxPlayers" set="setMaxPlayers" dirtyBit="Score"/>
diff --git a/Assets/Python/BUG/Scoreboard.py b/Assets/Python/BUG/Scoreboard.py
index e017d60..c132464 100644
--- a/Assets/Python/BUG/Scoreboard.py
+++ b/Assets/Python/BUG/Scoreboard.py
@@ -363,6 +363,11 @@ class Scoreboard:
xResolution = screen.getXResolution()
yResolution = screen.getYResolution()
+ if ScoreOpt.isMPContactsOnly() and CyGame().isGameMultiPlayer():
+ playersToShow = [pl for pl in self._playerScores if not pl.has(NOT_MET)]
+ else:
+ playersToShow = self._playerScores
+
x = xResolution - 12 # start here and shift left with each column
if ( interface.getShowInterface() == InterfaceVisibility.INTERFACE_SHOW or interface.isInAdvancedStart()):
y = yResolution - 206
@@ -404,7 +409,7 @@ class Scoreboard:
width = column.width
value = column.text
x -= spacing
- for p, playerScore in enumerate(self._playerScores):
+ for p, playerScore in enumerate(playersToShow):
if (playerScore.has(c) and playerScore.value(c)):
name = "ScoreText%d-%d" %( p, c )
widget = playerScore.widget(c)
@@ -423,7 +428,7 @@ class Scoreboard:
elif (type == DYNAMIC):
width = 0
- for playerScore in self._playerScores:
+ for playerScore in playersToShow:
if (playerScore.has(c)):
value = playerScore.value(c)
if (c == NAME and playerScore.isVassal() and ScoreOpt.isGroupVassals()):
@@ -438,7 +443,7 @@ class Scoreboard:
spacing = defaultSpacing
continue
x -= spacing
- for p, playerScore in enumerate(self._playerScores):
+ for p, playerScore in enumerate(playersToShow):
if (playerScore.has(c)):
name = "ScoreText%d-%d" %( p, c )
value = playerScore.value(c)
@@ -471,7 +476,7 @@ class Scoreboard:
else: # SPECIAL
if (c == RESEARCH):
x -= spacing
- for p, playerScore in enumerate(self._playerScores):
+ for p, playerScore in enumerate(playersToShow):
if (playerScore.has(c)):
tech = playerScore.value(c)
name = "ScoreTech%d" % p
@@ -482,15 +487,16 @@ class Scoreboard:
totalWidth += techIconSize + spacing
spacing = defaultSpacing
- for playerScore in self._playerScores:
+ for playerScore in playersToShow:
interface.checkFlashReset( playerScore.getID() )
if ( interface.getShowInterface() == InterfaceVisibility.INTERFACE_SHOW or interface.isInAdvancedStart()):
y = yResolution - 186
else:
y = yResolution - 68
- screen.setPanelSize( "ScoreBackground", xResolution - 21 - totalWidth, y - (height * self.size()) - 4,
- totalWidth + 12, (height * self.size()) + 8 )
+ nPl = len(playersToShow)
+ screen.setPanelSize( "ScoreBackground", xResolution - 21 - totalWidth, y - (height * nPl) - 4,
+ totalWidth + 12, (height * nPl) + 8 )
screen.show( "ScoreBackground" )
timer.log()
diff --git a/Assets/Python/BUG/Tabs/BugScoreOptionsTab.py b/Assets/Python/BUG/Tabs/BugScoreOptionsTab.py
index cea67a4..d29719f 100644
--- a/Assets/Python/BUG/Tabs/BugScoreOptionsTab.py
+++ b/Assets/Python/BUG/Tabs/BugScoreOptionsTab.py
@@ -69,3 +69,4 @@ class BugScoreOptionsTab(BugOptionsTab.BugOptionsTab):
self.addIntDropdown(screen, centerL, centerR, "Scores__DefaultSpacing", True, "LAYOUT_LEFT")
self.addIntDropdown(screen, centerL, centerR, "Scores__MaxPlayers", True, "LAYOUT_LEFT")
self.addIntDropdown(screen, centerL, centerR, "Scores__LineHeight", True, "LAYOUT_LEFT")
+ self.addCheckbox(screen, left, "Scores__MPContactsOnly")
diff --git a/Assets/XML/Text/Advanced Scoreboard Options.xml b/Assets/XML/Text/Advanced Scoreboard Options.xml
index 0557071..7d4bd61 100644
--- a/Assets/XML/Text/Advanced Scoreboard Options.xml
+++ b/Assets/XML/Text/Advanced Scoreboard Options.xml
@@ -271,6 +271,22 @@
<Spanish>Select the height of each civilization's line (default value is 22).</Spanish>
</TEXT>
<TEXT>
+ <Tag>TXT_KEY_BUG_OPT_SCORES__MPCONTACTSONLY_TEXT</Tag>
+ <English>Contacts only</English>
+ <French>Contacts only</French>
+ <German>Nur Kontakte</German>
+ <Italian>Contacts only</Italian>
+ <Spanish>Contacts only</Spanish>
+ </TEXT>
+ <TEXT>
+ <Tag>TXT_KEY_BUG_OPT_SCORES__MPCONTACTSONLY_HOVER</Tag>
+ <English>Show only met players in MP games.</English>
+ <French>Show only met players in MP games.</French>
+ <German>In MP-Spielen nur getroffene Spieler anzeigen.</German>
+ <Italian>Show only met players in MP games.</Italian>
+ <Spanish>Show only met players in MP games.</Spanish>
+ </TEXT>
+ <TEXT>
<Tag>TXT_KEY_BUG_OPT_SCORES__DEFAULTSPACING_TEXT</Tag>
<English>Default Spacing</English>
<French>Default Spacing</French>
diff --git a/UserSettings/Advanced Scoreboard.ini b/UserSettings/Advanced Scoreboard.ini
index 1f8bb72..ed399e2 100644
--- a/UserSettings/Advanced Scoreboard.ini
+++ b/UserSettings/Advanced Scoreboard.ini
@@ -193,3 +193,12 @@ Power Low Color = COLOR_RED
# Color used for low power ratios.
# Default: COLOR_RED
+# When checked, restrict players in scoreboard to met players.
+# Default: True
+
+Met Players Only = True
+
+# Color used for low power ratios.
+# Default: COLOR_RED
+# When checked, restrict players in scoreboard to met players.
+# Default: True
\ No newline at end of file
Posts: 7,677
Threads: 76
Joined: Jan 2018
Posts: 8,293
Threads: 83
Joined: Oct 2009
Would it be easy to implement to make the governor never assign spy specialists?
Posts: 4,679
Threads: 32
Joined: Nov 2016
(March 15th, 2021, 01:37)Jowy Wrote: Would it be easy to implement to make the governor never assign spy specialists?
Alternatively; alter the specialist assign panel to allow -1 (aka: never) as an option?
Posts: 7,677
Threads: 76
Joined: Jan 2018
The governor uses the AI logic of Civ 4, which is a beast of it's own kind. So far I have not dared to touch that. Would have to look into it some more.
Posts: 4,679
Threads: 32
Joined: Nov 2016
Hence why I think altering the panel that let's you interact with the governor might be an easier way to accomplish it. Not sure what happens if you feed it -1 though.
Posts: 7,677
Threads: 76
Joined: Jan 2018
I count that under "look into it"
|