More Unique Components for Vox Populi

3rd and 4th Unique Components for VP - Official thread 88.10

Songhai Gumey @ 2 monopolies
+2 :c5gold:, +5:c5production:, +5:c5culture:
:trade:Land Trade Routes gain +75% Range and +3 :c5gold: Gold
:trade: Trade Routes to the city generate an extra 4 :c5gold: Gold for the city and 4 :c5gold: Gold for the Trade Route owner
+1 :c5food:/:c5gold: for every 3 desert, or tundra tile worked by city.
+1:c5gold: to all Nearby Luxury resources

Egyptian Burial Tomb (including free artifact)
+1:c5faith:, +8:c5culture:, +3:tourism:, 5:c5science:
:trade:Land Trade Routes gain +50% Range and +2 :c5gold: Gold
+1 :c5food:/:c5gold: for every 2 desert, or tundra tile worked by city.

This ignores that there are policies which boost artifacts, and that artifacts can be themed in buildings later, for even more yields
I think Burial tomb still comes out on top until you have 3 monopolies. Egyptian also dont depend on success with warfighting and controlling large borders in order to get their bonus, while Songhai are dependent on being able to expand. There needs to be a reward inherent to higher risk UCs.

If the only complaint is the added base yield per monopoly, I can reduce that to 1:c5production:1:c5culture: in every city.
 
Last edited:
Songhai Gumey @ 2 monopolies
+2 :c5gold:, +5:c5production:, +5:c5culture:
:trade:Land Trade Routes gain +75% Range and +3 :c5gold: Gold
:trade: Trade Routes to the city generate an extra 4 :c5gold: Gold for the city and 4 :c5gold: Gold for the Trade Route owner
+1 :c5food:/:c5gold: for every 3 desert, or tundra tile worked by city.
+1:c5gold: to all Nearby Luxury resources

Egyptian Burial Tomb (including free artifact)
+1:c5faith:, +8:c5culture:, +3:tourism:, 5:c5science:
:trade:Land Trade Routes gain +50% Range and +2 :c5gold: Gold
+1 :c5food:/:c5gold: for every 2 desert, or tundra tile worked by city.

This ignores that there are policies which boost artifacts, and that artifacts can be themed in buildings later, for even more yields
I think Burial tomb still comes out on top until you have 3 monopolies. Egyptian also dont depend on success with warfighting and controlling large borders in order to get their bonus, while Songhai are dependent on being able to expand. There needs to be a reward inherent to higher risk UCs.

If the only complaint is the added base yield per monopoly, I can reduce that to 1:c5production:1:c5culture: in every city.

I don't know about risk, Songhai is one of the most bally civs in the game that also has a very solid early game UB. At +2P2C per monopoly it ensures if they ball, they stay there and there's nothing AI can really do. You can also easily get 2 monopolies with minimal or no risk, so it means the UB is about as good with no real investment as an UA-boosted one of the same tech and era. I don't like the idea of the UB making them ball even harder after success and this will happen even at 1P1C.

In general I don't think Gumey should buff Production much or at all, and if it does +1/2 should be the upper limit. Tabya does that enough I'd say.
 
We took a considerable amount of their ball away by moving mandekalu back to knight. Mandekalus as horsemen was always a ridiculous concept. No penalty vs cities at a time when few cities even have walls. It was all just a bit much

Gumey reduced to 1:c5production:1:c5culture: and 2:c5gold: for foreign ITRs for every global monopoly
 
Last edited:
Merged all dummy buildings. Added some missing descriptions. Deleted unused ones (relicts of the past). Fixed many issues - especially Gumey. Tweaked many lua codes, Refreshed some of them.

Please if someone has time, review dummy buildings rework. I mean lua files and their addresation to new names for them. I did very huge cleaning in there and like always some errors could sneak in.

@pineappledan: thank you for Santa Maria restoration. What graphics will we use for Gumey?
 
Thanks for checking the Gumey lua. I hadn't had a chance to check if the code I wrote actually worked yet.

The old Qadi icon is general enough that I don't think any change is necessary
 
Ok. One comma issue come up in database.log. Could you help me find it in those sqls?
I didn't test Gumey. Just looked and tweaked the code for sql and lua.
 
Probably found issue. Gumey had SELECT instead of VALUES in its code.

I have no time for testing. I will try to finish Yassa today and that's all. Need help with that.

@pineappledan: IMPORTANT!!! Look at Gumey in-game tooltip. Luxuries, luxuries and nothing more but luxuries. Probably dummy could fix that.
 
Last edited:
IMPORTANT!!! Look at Gumey in-game tooltip. Luxuries, luxuries and nothing more but luxuries. Probably dummy could fix that.
Heh, I knew this would happen. I wasn't sure if the tooltip would necessarily be big enough that I needed to worry. I'll add a free building in this city on construction which holds all the luxuries. Won't have to touch Lua, I don't think.

EDIT: added FreeBuildingThisCity which adds a dummy building to the city, which has all the bonuses for luxuries on it.
 
Last edited:
Won't be the same issue we discussed for Barbican's free Armory? It will show Free Dummy in tooltip but won't find it. I thought about it. Just copy code from Barbican.

Yassa updated. Should be fully functional right now.
Uff, tough day. Where are all those testers when I need them :p

Did you add Gumey_LUX somewhere? I cannot find the code.
 
Won't be the same issue we discussed for Barbican's free Armory? It will show Free Dummy in tooltip but won't find it. I thought about it. Just copy code from Barbican.
Won't have the same issue, no.

The barbican one was a placeholder for a building to replace an existing buildingclass (armory). The GumeyLuxDummy is its own unique buildingclass, and the dummy building is the default building, so there is no conflict

The Gumey Dummy's name will appear in the tooltip, where it lists the free building in the city, so I called it "+1 Gold for all Luxuries in this City", rather than the standard "DF <name>"
 
We wil see how it works later. Thanks. Is it possible to add :c5gold: icon to that dummy name to show in the Gumey tooltip?
 
Is it possible to add :c5gold: icon to that dummy name to show in the Gumey tooltip?
Let's find out!

EDIT: The +1g luxury dummy on Gumey works perfectly, and the :c5gold: symbol works. The text has been updated to "+1 [ICON_GOLD] Gold for all Nearby Luxuries"

The Gumey Monopoly bonus, however, is not working and I don't know how to fix it.

Error:
Songhai/Gumey/Gumey.lua:58: calling 'GetNumResources' on bad self (number expected, got table)

There were also errors in Morocco and Mongolia luas, they appear to have been created by inconsistent naming of the Player (pPlayer, nPlayer, etc.):

YassaCourt.lua:68: attempt to index global 'pNewPlayer' (a nil value)
Riad.lua:14: Not a valid instance. Either the instance is NULL or you used '.' instead of ':'.
 
Last edited:
Thanks for catching those errors. I rushed those updates. Typical copy-paste errors. Thats why Riad didn't work at all.
 
Last edited:
I think the problem with Gumey may be that there is already an existing table called resources, and we need to call it iResources or something
 
@pineappledan Nope. Period instead of colon should be used after Map. I fixed lua for Gumey.

Revert your last small update - in loops we do not use prefixes. All files should be consistent. Still there are such cases but Im working on it. But if you want revert and check if it works. If not name it luxury or luxuryResource. Im just curious. But if it was the fault of naming then the error would be called earlier on GetNumResourceTotal not GetNumResources :)
 
Last edited:
Cool. So much to learn w.r.t. lua and coding. I should do a course or something...

It's late here in the Great White North; I'll have to check it tomorrow

EDIT: updated the OP for Yassa, Andelvaegelse, Armada and Gumey
 
Last edited:
I started checking lua code for buildings and beside tweaking it I added restrictions. If NeverCapture value for building is 0 then it can be used by some civ and Rome if it captures the city. Then there's no point to check the code for all civs, but only for that two ones. For now I checked code from Zulu to Portugal. Check me if you can. Later on I will continue my work but it is time consuming because I look at almost every line of code and check possible simplifications and variants.
 
Some lua fixes we should add, IMO

1. There are 4 very intense codes which won't need to fire at all if the relevant civ isn't in the game. I think we should add something to abort these checks early if we can, like doing a check for if CIVILIZATION_XXX IsEverAlive() on these UCs.:
  • Netherlands Waag - checks every player every turn for number of resources imported/exported
  • Korean Chaebol - checks every trade route every turn for every player, checking for international TRs from civs that have chaebols
  • Moroccan Riad - checks every trade route every turn for every player, checking for TRs from cities with a riad
  • Austrian Landwehr - checks every unit for regimentsmarsche promotion and adds culture.
    • The code for this is particularly clunky. I think we could add a counter that sums up all the units, then changes culture base on that sum total. Right now it changes JONSCulture and adds a notification for each unit separately.

2. We might consider making Ottoman Tersane and Greek Agora NeverCapture=true, like we did with Mayan Pitz Court. They both give unique promotions which Rome wouldn't normally have access to, and could have consequences for balance

3. Eliminate lua:
Byzantium Hippodrome - There's a free building in every city option which could be used to place the Horse Yields Dummy for the Byzantine Hippodrome. Right now we have lua that checks every city on settle and loops through every city on construction of hippodrome to place the dummy building, but all we need is one that removes all the dummy buildings if the capital is captured. We can scrap 2/3 of the lua checks on this building
 
1st point can be done with checks I did for some civs so far. Restrict them only for that civ and Rome. That would limit cheks to bare minimum. I will do that soon for every lua that needs it. It will cut the computing resources by 30% at least. That's huge improvement.

2nd I added Github issue in VP because Siege Foundry has other NeverCapture value than Forge. I didn't know if it was the issue or intention. Are those promotions so impactful that we need to restrict whole buildings? Proxenos is very limited one, and Prize Ships are only Naval ones. Rome is not either of those two. It is land conqueror.

3rd Iwill restrict for sure first check (on construct) to Bizantium only. That will cut 99% of the checks. I will look what else can be done.

I'm going from down of the list: from Zulu to America so you have wait for Byzantium. I did that because I always check from top and last of civs are neglected. Now I reverse the direction. Patience :] Thanks for tips.
 
I did Byzantium. It only saves use the lua on settle (which we actually had never put in. oops). The Lua on construction still needs to go through every city and set 20 turns of WLTKD, but it does save a bit of computing by not having to go through and place the dummy as well.

I forgot about CS gifts re: my austria note, so I don't think there's any work that can be saved on that one. I did fix the text on it though.

I think the proxenos and Prize ship bonuses are enough that I would set them to nevercapture, yes. All you need is one city with the prize ships promotion, and you could funnel all your shipbuilding through that one town. Likewise for diplo units and the Proxenos promotion; you only need 1 city to get 100% of the benefit.
 
Back
Top Bottom