Is that character a variant? (I just love getting asked that in channel.) - Charis

Create an account  

 
A new mod enters the ring - Introducing "Close to Home"

(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
Mods: RtR    CtH

Pitboss: PB39, PB40PB52, PB59 Useful Collections: Pickmethods, Mapmaking, Curious Civplayer

Buy me a coffee
Reply

Overflow works with units. crazyeye  But not with buildings? How did you break that? lol
Reply

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. smile
Mods: RtR    CtH

Pitboss: PB39, PB40PB52, PB59 Useful Collections: Pickmethods, Mapmaking, Curious Civplayer

Buy me a coffee
Reply

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) smile 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
Reply

Just push it to Github.
Mods: RtR    CtH

Pitboss: PB39, PB40PB52, PB59 Useful Collections: Pickmethods, Mapmaking, Curious Civplayer

Buy me a coffee
Reply

Would it be easy to implement to make the governor never assign spy specialists?
Reply

(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?
Playing: PB74
Played: PB58 - PB59 - PB62 - PB66 - PB67
Dedlurked: PB56 (Amicalola) - PB72 (Greenline)
Maps: PB60 - PB61 - PB63 - PB68 - PB70 - PB73 - PB76

There are two kinds of people in the world: Those who can extrapolate from incomplete data
Reply

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.
Mods: RtR    CtH

Pitboss: PB39, PB40PB52, PB59 Useful Collections: Pickmethods, Mapmaking, Curious Civplayer

Buy me a coffee
Reply

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.
Playing: PB74
Played: PB58 - PB59 - PB62 - PB66 - PB67
Dedlurked: PB56 (Amicalola) - PB72 (Greenline)
Maps: PB60 - PB61 - PB63 - PB68 - PB70 - PB73 - PB76

There are two kinds of people in the world: Those who can extrapolate from incomplete data
Reply

I count that under "look into it" smile
Mods: RtR    CtH

Pitboss: PB39, PB40PB52, PB59 Useful Collections: Pickmethods, Mapmaking, Curious Civplayer

Buy me a coffee
Reply



Forum Jump: