Brainstorming for new mod

seasnake

Conquistador
Joined
Apr 21, 2006
Messages
1,957
Location
California, United States
Hi guys, I have a new mod I'm working on. It will add six civs to the base 34: Gran Colombia, Israel, Songhai, Siam, Iroquois and Polynesia. Also, Native Americans is being changed to Sioux, and Vikings to Scandinavia. Whittling the Roster down to 40 leaders, 1 per civ, and each civ will have a Unique tech and a Unique Palace replacement, 2-3 UUs and 1-2 UBs.

What I need help with is 1) picking which leaders to keep/kill, 2) figuring out civ UA, UU, and UB.

Any ability that can be granted by a trait, promotion, tech, or building is on the table. Also any of the python traits people know about on this site are fair game.

New general units, eligible for replacement with UUs, include Special Forces, Lancers, Longswordsmen, Light Horseman, and Chariot Archers. the mod imports Dale's combat mod, so ranged attacks are on the table.

For example, I have four already done.

Egypt: Children of the Nile
Lead by Ramesses
-33 percent wonder construction
+1 food per farm
Start game with Pottery
UUs: War Chariot (same), Scythed Chariots (replace Horse Archers, +50 percent against melee), Mamluk (replace Cuirassier, 2 points stronger).
UB: Obelisk (same)

Aztec: Wrath of the Jaguar God
Lead by Montezuma
Gold for killing enemy units
Melee units +1 movement
Start game with world map centered
UUs: Jaguar (same), Jaguar Elite (replaces Longswordsman, Start with Woodsman 1, Amphibious).
UBs: Sacrificial Altar (same), Floating Gardens (replaces aqueduct, culture in city for own units killed in cultural borders).

America: We the People
Lead by Washington
No Unhappiness from Drafting
+1 happiness per city, monument, radio tower
Settlers start with Sentry, move 3 per turn.
UUs: Navy Seal (same), B-12 (greater range, bombard strength), G.I. (replaces paratrooper, can use enemy roads and move after combat victory).
UB: Mall

Mongolia: The Great Khan
Lead by Ghenghis
Start with source of horse
Free stable in every city
Double income from pillaging
UU: Keshik (replace Light Horseman), Hunnic Archer (replace knight, doesn't require Iron and 35 percent chance of withdrawal), Arsiyah (replaces Longswordsman, +25 against melee units).
UB: Ger (same)
 
Israel: The Chosen People
Lead by Solomon
Bonus to fighting within own borders
UUs: Maccabee (Swordsman), Djaman/ Dja Wielder (spear, bonus against melee)
UBs: Kibbutz (granary), Kotel (Walls, gives happiness with State Religion)

Russia: Mother Russia
Lead by Peter/Catherine
Enemies suffer attrition damage inside borders
Research bonus
UUs: Streltsy (Musketman, bonus to city attack), Cossack (same, I assume)
UBs: Research Institute (same), Gulag (Jail with production bonus)

like that?

Also, I think map centerin is more Maya than Aztec.

It also seems like your tryin to make Civ5.
 
Israel: The Chosen People
Lead by Solomon
Bonus to fighting within own borders
UUs: Maccabee (Swordsman), Djaman/ Dja Wielder (spear, bonus against melee)
UBs: Kibbutz (granary), Kotel (Walls, gives happiness with State Religion)

Russia: Mother Russia
Lead by Peter/Catherine
Enemies suffer attrition damage inside borders
Research bonus
UUs: Streltsy (Musketman, bonus to city attack), Cossack (same, I assume)
UBs: Research Institute (same), Gulag (Jail with production bonus)

like that?

Also, I think map centering is more Maya than Aztec.

It also seems like your tryin to make Civ5.

Precisely, like that. I really like that for Israel, the Chosen People.

I'm not trying to make Civ V per se, but Civ V is the inspiration for this mod. The idea is truly distinct, unique civs with powers and bonuses all their own and a variety of UUs and UBs that make each one a lot of fun to play through. After that I'll add a few graphical touches (civ artstyles, unit formations and better terrain) and Nextwar to the very awesome RevolutionsDCM engine, and that should provide one heck of a gameplay experience.
 
Aztec: Wrath of the Jaguar God
Lead by Montezuma
Gold for killing enemy units
Melee units +1 movement
Start game with world map centered
UUs: Jaguar (same), Jaguar Elite (replaces Longswordsman, Start with Woodsman 1, Amphibious).
UBs: Sacrificial Altar (same), Floating Gardens (replaces aqueduct, culture in city for own units killed in cultural borders).

Wrath of the Jaguar God? The Jaguar God was minor in their religion... maybe you could make it "Wrath of the Feathered Serpent", but not a minor god.
 
The Dutch: The Merchant Republic
Lead by Willem van Oranje
Water tiles +1 :commerce: or +1:hammers: (definitely something with water)
1 or 2 extra trade routes per city
(+1 merchant (slot) in every city)
UUs: East Indiaman (same as vanilla game), Watergeus (Pikeman with Amphibious, 10% or 20% city defence), Fluyt (Caraval with +1 :move: and less costs)
UBs: Dike (same as vanilla game), Molen (English: Mill, Granary with +3:hammers: and +25% ship building)

EDIT: Look at Rhye's and Fall of civilizations (and it's modmods). Their you'll find good unique abilities for each civ (UP= Unique power). (nice UUs and UBs too)
 
The Dutch: The Merchant Republic
Lead by Willem van Oranje
Water tiles +1 :commerce: or +1:hammers: (definitely something with water)
1 or 2 extra trade routes per city
(+1 merchant (slot) in every city)
UUs: East Indiaman (same as vanilla game), Watergeus (Pikeman with Amphibious, 10% or 20% city defence), Fluyt (Caraval with +1 :move: and less costs)
UBs: Dike (same as vanilla game), Molen (English: Mill, Granary with +3:hammers: and +25% ship building)

EDIT: Look at Rhye's and Fall of civilizations (and it's modmods). Their you'll find good unique abilities for each civ (UP= Unique power). (nice UUs and UBs too)

Thanks for the tips and the contribution. I'll use this, except for the third one I'll make bonus happiness per windmill. So yeah, the Merchant Republic and The Chosen People. Great start!

Oh, and I'll look more into the Aztec pantheon.
 
Thanks for the tips and the contribution. I'll use this, except for the third one I'll make bonus happiness per windmill. So yeah, the Merchant Republic and The Chosen People. Great start!

Oh, and I'll look more into the Aztec pantheon.

If you mean you change the +3:hammers: into +1 or +2 :), I agree with you. But the ship production has to stay. (The Dutch invented a way to saw the timber for ships very accurate with those mills.)
 
no, I meant the third UA power changed to happiness per windmill improvement on the map. Like a forest preserve. I agree the Molen should have a bonus production of ships.
 
Is this still being worked on? Quite honestly I rather like the concept, and I have some more ideas:

Inca: Subjects of the Sun
Lead by Pachacuti
No resistance in conquered cities
Units can move into mountains
UUs: Quecha (Same), Chasqui (Scout, ignores terrain movement costs)
UBs: Terrace (same), Kancha (courthouse, happiness bonus)

Turkey: ???
When a city is conquered, some culture is converted to Turkish culture
UUs: Janissary, Sipahi (Cuirassier, unknown bonus), Orban Gun (Cannon, city attack bonus)
UB: Hammam

China: All Under Heaven
More Great People
Longer Golden Ages
UUs: Cho-Ko-Nu, Fubing Infantry (swordsman, cheaper, first strike chance) Huochong (cannon, resourceless, cheaper)
UBs: Pavilion

England: Never Setting Sun
Lower distance maintenance costs.
Faster production of Ships of the Line, Frigates, and Privateers
UUs: Redcoat, Man O' War (Ship of the Line, strength bonus and first strikes; no bonus against frigates), Yeoman Archer (Longbow, bonus against melee and mounted)
UBs: Stock Exchange

Holy Rome: Heirs to an Empire
Lower per city maintenance costs.
Lower unit maintenance costs.
UUs: Landsknecht, Wagenburg (musket, bonus against mounted, 2:movement:)
UBs: Rathaus, Imperial Circle (Castle, gold bonus?)
 
I've actually been working on my own Israel civ. It starts with Mysticism and Hunting, and is led by David, who is Aggressive and Creative. One of its Unique Units is the Merkava, which replaces Modern Armor, starts with March, and has +10% City Attack. Other UU candidates so far have been the Conscript (replaces Infantry), the Tamer (replaces Mechanized Infantry), and the Maccabee (replaces...???).
 
Is this still being worked on? Quite honestly I rather like the concept, and I have some more ideas:

Inca: Subjects of the Sun
Lead by Pachacuti
No resistance in conquered cities
Units can move into mountains
UUs: Quecha (Same), Chasqui (Scout, ignores terrain movement costs)
UBs: Terrace (same), Kancha (courthouse, happiness bonus)

Turkey: ???
When a city is conquered, some culture is converted to Turkish culture
UUs: Janissary, Sipahi (Cuirassier, unknown bonus), Orban Gun (Cannon, city attack bonus)
UB: Hammam

China: All Under Heaven
More Great People
Longer Golden Ages
UUs: Cho-Ko-Nu, Fubing Infantry (swordsman, cheaper, first strike chance) Huochong (cannon, resourceless, cheaper)
UBs: Pavilion

England: Never Setting Sun
Lower distance maintenance costs.
Faster production of Ships of the Line, Frigates, and Privateers
UUs: Redcoat, Man O' War (Ship of the Line, strength bonus and first strikes; no bonus against frigates), Yeoman Archer (Longbow, bonus against melee and mounted)
UBs: Stock Exchange

Holy Rome: Heirs to an Empire
Lower per city maintenance costs.
Lower unit maintenance costs.
UUs: Landsknecht, Wagenburg (musket, bonus against mounted, 2:movement:)
UBs: Rathaus, Imperial Circle (Castle, gold bonus?)

Yes, and it's progressing well. The Civ part is still in the planning stage, but I should be able to start making the civs this weekend. I've been adding in some things I like, units and wonders from Rise of Empires (but only a few) and Nextwar to the RevolutionsDCM as a base. Also added Cultural Citystyles and Blue Marble Terrain, and I've been creating a unique palace, tech and trait for each civ so I can give them a combination of abilities. Right now I have five new civs to add (added Gran Colombia last night), several Leaders to remove, and then to ethnically artstyle the unit graphics. THEN I'll be putting together the civs.

Below in the Spoilers is my current plan, subject to change and good ideas. I'm using your name for Holy Roman. Some of these are shorthand notes but they'll get more refined in time.

BTW, do you know HOW to make a captured city quickly gain culture from the conqueror? OR how to drastically reduce maintenance on overseas Colonies? Or reduce unit maintenance? Because I'd love to buff Portugal and Ottomans a little more.
:

Spoiler :
America: We the People
Settlers move 3, greater line of sight
Bonus happiness from Monument, Radio Tower, City
Discount to rushing things with Gold
UUs: B17, Navy Seal
UBs: Mall, Town Hall

Arabia: The Caravan Road
Mounted Units start with Hit and Fade
Can Work Desert Tiles (+1 hammer, +2 Gold)
Start game with source of Oil
UUs: Camel Archers, Camel Gunners
UBs: Madrassa, Bazaar

Aztec: The Triple Alliance
Gold for units killed based on experience
+3 Health in all cities
Start game with source of gems
UU: Jaguar, Eagle Warrior
UB: Floating Gardens, Sacrificial Altar

Babylon: The Code of Hammurabi
- 50 percent War Weariness
+ 50 percent Worker Production
Double Production of Courthouse, Library
UU: Bowman, Scythed Chariot
UB: Garden, Canals

Byzantium: The Center of the World
Double production of Monasteries, Temples, Cathedrals
Start with Large Cache of Gold
¾ time to train mounted units
UU: Cataphract, Dromon, Varangian Guard
UB: Hippodrome

Carthage: The Shining City
Financial
Double production of market, bank
Start game with 2 scouts
UU: Armored Elephants, Numidian Cavalry, Iberian Mercenaries
UB: Cothon

Celts: The Emerald Isle
Start with source of Bronze
Train Melee Units ¾ time
Cheaper Unit Upgrades
UU: Gaelic Warrior, Ulster Swordsman
UB: Dun, Smelter

China: Art of War
+100 Percent Great General Appearance
Start Game with 2 sources of Silk
Start with Bureaucracy Unlocked
UU: Cho ko nu, J-10
UB: Paper Maker, Pavillion

Egypt: Children of the Nile
-33 percent cost for wonders
+1 food per farm
Start game with Pottery
UU: War Chariot, Mamluk
UB: Obelisk, Burial Tomb

England: The Sun Never Sets
Double Production of Customs House, Factory
Naval Units have Morale and Sentry
Workshops +1 gold, +1 Hammer
UU: Welsh Longbowman, Man O’ War, Redcoats
UB: Stock Exchange

Ethiopia: The Dear Motherland
No Anarchy
Workers build improvements 25 percent faster
Start with Dyes
UU: Somali Pirates, Kuhorsehockye Spearmen, Oromo
UB: Stele

France: Ancien Regime
+3 culture per city
Start with Wine
Double Production of Barracks, Arsenals
UU: Foreign Legion, Musketeer, Culverin
UB: Salon

Gran Colombia: Live Free or Die
Units need less experience to promote
No Revolting in captured cities
Pastures produce extra food and gold
UU: Libertador, Hidalgo
UB: Plaza, Mission

Germany: Furor Teutonics
No Unahppiness for Drafting
Tiles with four hammers earn one extra
Can Capture Barbarians and earn gold
UU: Panzer, U-Boat, Flak
UB: Assembly Plant

Greece: Hellenic League
Double Production of Great People
Can form alliances to start the game
Double production of Theater, Odeon
UU: Hoplite, Companion Cavalry
UB: Agora, Odeon

Holy Roman Empire: Heirs to an Empire
Can adopt Hereditary Rule at Start of the game
Start game with Great General
+ 100 percent Settler production
UU: Landsknecht, Teutonic Knight
UB: Rathaus, Opera House

Inca: The World Shakers
Can work mountain tiles (Hammers and Food)
20 percent Science increase in cities
Start with Masonry
UU: Chasqui, Quechua
UB: Terrace, Stone Walls

India: Satyagraha
Cities Start with 2 population
Extra food on city growth
Can adopt Pacifism at game start
UU: Fast Worker, Sepoys
UB: Mausoleum, Mughal Fort

Iroquois: People of the Longhouse
Can build Forest Preserve at Start of game
Can adopt Representation
Promotions to Woodsman 1 add 2 and 3
UU: Mohawk Warrior, Mohawk Rifler, Aenna
UB: Longhouse

Israel: The Chosen People
+50 percent Espionage Production
+50 City Defense
Start Game with Great Prophet
UUs: Merkava, Maccabee
UBs: Kotel, Mossad

Japan: Bushido
20 percent chance for a unit to fully heal after combat victory
Units killed in borders add to city culture
Can form defensive pacts to start game
UUs: Samurai, Zero
UB: Shale Plant, Pagoda

Khmer: The Gold Kingdom
No Unhappiness in Capital
Double production of Aqueduct, Grocer
100 percent less likely to have a revolution
UU: Ballista Elephant, Champa Mercenary
UB: Baray, Rice Paddies

Korea: Land of the Morning Calm
Free Scientist Specialist in Each City
Start game with Caste System unlocked
Double production of University
UUs: Kobukson, Goa Missile Launcher, Hwacha
UB: Seowon

Mali: Reign of the Mansas
Mines +1 Gold
Start with Gold resource
Non State Religion gives culture
UU: Skirmisher, Ton Tigi
UB: Mint, Salt Refinery

Maya: Kingdom of the Maize God
25 percent chance to enslave enemy units (get worker)
Double Production of Observatory, Monument, Granary
World Map Centered
UU: Holkan, Plumed Archer
UB: Ball Court, Step Pyramid

Mongol: Empire of the Horde
Start with Source of Horse
Free Stable in every city
- 50 percent Maintenance
UU: Keshik, Hunnic Archer, Arsiyah
UB: Ger

Netherlands: The Merchant Republic
100 percent gold yield on trade routes
3 percent interest on gold reserves
Bonus production from Windmills
UU: East Indiaman, Watergeus
UB: Molen, Dike

Ottomans: The Eternal State
Stronger Vassals
Chance to capture enemy ships and earn gold
Siege Units start with Bombard, Collateral
UU: Grand Bombard, Sipahi, Jannissary
UB: Hammam

Persia: Achaemenid Legacy
+100 GA length
+1 movement for Units in GA
Can have Vassals all game
UU: Immortal, Achaemenid Elite
UB: Satrap’s Court, Apothecary

Polynesia: Breath of Life
Extra hammer on Sea Tiles
Can hunt Whales at start of game
Build sliders more efficiently
UU: Koa, Catamaran
UB: Fishery, Tiki Carving

Portugal: Colonial Aspirations
Extra Gold from Goody Huts
Naval Units ¾ time
1 Extra Trade Route per city
UUs: Cassador, Organ Gun, Carrack
UB: Feitoria

Rome: The Glory of Rome
+25 percent production of buildings already built in capital
Extra Movement on Roads
Can Upgrade Outside of Borders
UU: Legionnaire, Ballista, Quinquereme
UB: Forum

Russia: Mother Russia
Enemies take damage in cultural borders
Double production of Intelligence Agency, Security Bureau.
Free Iron, Silver, Uranium
UU: Cossack, Tank, Submarine
UB: Research Facility

Siam: Father Governs Children
Bonus Science and Hammers from trade routes
Can Chop Forest, Jungle Start of each game
Ivory Resource
UU: Royal Elephant, Stingray Light Tank
UB: Wat, Ho Trai

Sioux: People of the Plains
Start game with Animal Husbandry
Mounted Units have Sentry, Flanking promotions
No Unhealthiness in Capital
UU: Dog Soldier, Mounted Warrior
UB: Sacred Council, Wigwam

Songhai: The River Warlord
All units start with Amphibious
Spies start with 2 promotions
Extra War Weariness for Enemies
UU: Mandekalu Cavalry, Royal Bodyguards
UB: Mud Pyramid Mosque, Julla

Spain: The Golden Age
Start game with Sailing
Extra gold from water tiles
Can build plantations at start of game
UU: Conquistador, Jinetes, Regulares
UB: Citadels

Sumeria: Cradle of Civilization
Start with 2 Settlers
Each city has source of fresh water
Protective, Aggressive promotions
UU: Enkidu Warrior, Vulture
UB: Ziggurat, Monolith

Vikings: Wrath of the Norsemen
Double Income from Pillage, no Pillage within borders
All melee units have survival, city raider
Double production of Lighthouse, Harbor
UU: Longship, Huscarl, Beserker
UB: Trading Post

Zulu: Horns of the Bull
Free Granary in each city
Melee Units have extra movement
Start game with cow
UUs: Impi, Kraal, Border Guard
UBs: Ikhanda
 
BTW, do you know HOW to make a captured city quickly gain culture from the conqueror?

Theaters, Monuments, and Monasteries.

Or a Great Artist.
 
Right, but specifically something were a percentage of the culture flips automatically so you don't have to build those things? I mean I think it was done in RFC but if it's SDK that would be tough.
Rhye has an entire application for this called the Culture Manager. It can be found in the RFCUtils.py file (see lines 2-4 below for the description):
Spoiler :
PHP:
        def cultureManager(self, tCityPlot, iCulturePercent, iNewOwner, iOldOwner, bBarbarian2x2Decay, bBarbarian2x2Conversion, bAlwaysOwnPlots):
                """Converts the culture of the city and of the surrounding plots to the new owner of a city.
                iCulturePercent determine the percentage that goes to the new owner.
                If old owner is barbarian, all the culture is converted"""

                pCity = gc.getMap().plot(tCityPlot[0], tCityPlot[1])
                city = pCity.getPlotCity()                

                #city
                if (pCity.isCity()):
                        iCurrentCityCulture = city.getCulture(iOldOwner)
                        city.setCulture(iOldOwner, iCurrentCityCulture*(100-iCulturePercent)/100, False)
                        if (iNewOwner != con.iBarbarian):
                                city.setCulture(con.iBarbarian, 0, True)
                        city.setCulture(iNewOwner, iCurrentCityCulture*iCulturePercent/100, False)
                        if (city.getCulture(iNewOwner) <= 10):
                                city.setCulture(iNewOwner, 20, False)

                #halve barbarian culture in a broader area
                if (bBarbarian2x2Decay or bBarbarian2x2Conversion):
                        if (iNewOwner != con.iBarbarian and iNewOwner != con.iIndependent and iNewOwner != con.iIndependent2):
                                for x in range(tCityPlot[0]-2, tCityPlot[0]+3):        # from x-2 to x+2
                                        for y in range(tCityPlot[1]-2, tCityPlot[1]+3):	# from y-2 to y+2                                
                                                iPlotBarbCulture = gc.getMap().plot(x, y).getCulture(con.iBarbarian)
                                                if (iPlotBarbCulture > 0):
                                                        if (gc.getMap().plot(x, y).getPlotCity().isNone() or (x==tCityPlot[0] and y==tCityPlot[1])):
                                                                if (bBarbarian2x2Decay):
                                                                        gc.getMap().plot(x, y).setCulture(con.iBarbarian, iPlotBarbCulture/4, True)
                                                                if (bBarbarian2x2Conversion):
                                                                        gc.getMap().plot(x, y).setCulture(con.iBarbarian, 0, True)
                                                                        gc.getMap().plot(x, y).setCulture(iNewOwner, iPlotBarbCulture, True)
                                                iPlotIndependentCulture = gc.getMap().plot(x, y).getCulture(con.iIndependent)
                                                if (iPlotIndependentCulture > 0):
                                                        if (gc.getMap().plot(x, y).getPlotCity().isNone() or (x==tCityPlot[0] and y==tCityPlot[1])):
                                                                if (bBarbarian2x2Decay):
                                                                        gc.getMap().plot(x, y).setCulture(con.iIndependent, iPlotIndependentCulture/4, True)
                                                                if (bBarbarian2x2Conversion):
                                                                        gc.getMap().plot(x, y).setCulture(con.iIndependent, 0, True)
                                                                        gc.getMap().plot(x, y).setCulture(iNewOwner, iPlotIndependentCulture, True)
                                                iPlotIndependent2Culture = gc.getMap().plot(x, y).getCulture(con.iIndependent2)
                                                if (iPlotIndependent2Culture > 0):
                                                        if (gc.getMap().plot(x, y).getPlotCity().isNone() or (x==tCityPlot[0] and y==tCityPlot[1])):
                                                                if (bBarbarian2x2Decay):
                                                                        gc.getMap().plot(x, y).setCulture(con.iIndependent2, iPlotIndependent2Culture/4, True)
                                                                if (bBarbarian2x2Conversion):
                                                                        gc.getMap().plot(x, y).setCulture(con.iIndependent2, 0, True)
                                                                        gc.getMap().plot(x, y).setCulture(iNewOwner, iPlotIndependent2Culture, True)
                                                                        
                #plot                               
                for x in range(tCityPlot[0]-1, tCityPlot[0]+2):        # from x-1 to x+1
                        for y in range(tCityPlot[1]-1, tCityPlot[1]+2):	# from y-1 to y+1
                                pCurrent = gc.getMap().plot(x, y)
                                
                                iCurrentPlotCulture = pCurrent.getCulture(iOldOwner)

                                if (pCurrent.isCity()):                                
                                        pCurrent.setCulture(iNewOwner, iCurrentPlotCulture*iCulturePercent/100, True)
                                        pCurrent.setCulture(iOldOwner, iCurrentPlotCulture*(100-iCulturePercent)/100, True)
                                else:
                                        pCurrent.setCulture(iNewOwner, iCurrentPlotCulture*iCulturePercent/3/100, True)
                                        pCurrent.setCulture(iOldOwner, iCurrentPlotCulture*(100-iCulturePercent/3)/100, True)

                                #cut other players culture
##                                for iCiv in range(iNumPlayers):
##                                        if (iCiv != iNewOwner and iCiv != iOldOwner):
##                                                iPlotCulture = gc.getMap().plot(x, y).getCulture(iCiv)
##                                                if (iPlotCulture > 0):
##                                                        gc.getMap().plot(x, y).setCulture(iCiv, iPlotCulture/3, True)
                                                        
                                #print (x, y, pCurrent.getCulture(iNewOwner), ">", pCurrent.getCulture(iOldOwner))

                                if (not pCurrent.isCity()):
                                        if (bAlwaysOwnPlots):
                                                pCurrent.setOwner(iNewOwner)
                                        else:
                                                if (pCurrent.getCulture(iNewOwner)*4 > pCurrent.getCulture(iOldOwner)):
                                                        pCurrent.setOwner(iNewOwner)                                        
                                        #print ("NewOwner", pCurrent.getOwner())
Now this method is specific for the RFC mod but it contains all the code needed to do this in Python none-the-less. It would be possible to add this method to your own mod and edit it for your purposes, or perhaps even to just import the RFCUtils module to your own module but you still need to supply the necessary variables (constants, actuallY) for it to work. Both options require some Python skill, though. Because you need to understand what the code does in order to adjust it.
 
Alright Baldyr. I'm hoping to actively work on traits this weekend, in fact the first one I'm doing is Russia based on your help with Russian Winter. I'd love to have this ability and give it the Ottoman Empire. I have done very basic work with Python, so if I get in over my head here (which seems likely) I'll shout for help!
 
By the way, this is what the Turkish Unique Power looks like in RFC:
Spoiler :
Code:
        def turkishUP(self, city):
               
                for x in range(city.getX()-2, city.getX()+3):
                        for y in range(city.getY()-2, city.getY()+3):
                                pCurrent = gc.getMap().plot( x, y )
                                if (x == city.getX() and y == city.getY()):
                                        utils.convertPlotCulture(pCurrent, iTurkey, 51, False)
                                elif (pCurrent.isCity()):
                                        pass
                                elif (utils.calculateDistance(x, y, city.getX(), city.getY()) == 1):
                                        utils.convertPlotCulture(pCurrent, iTurkey, 80, True)
                                else:
                                        utils.convertPlotCulture(pCurrent, iTurkey, 20, False)
The code relies on another method in RFCUtils - convertPlotCulture():
Spoiler :
Code:
        def convertPlotCulture(self, pCurrent, iCiv, iPercent, bOwner):
                
                if (pCurrent.isCity()):
                        city = pCurrent.getPlotCity()
                        iCivCulture = city.getCulture(iCiv)
                        iLoopCivCulture = 0
                        for iLoopCiv in range(iNumTotalPlayers):
                                if (iLoopCiv != iCiv):
                                        iLoopCivCulture += city.getCulture(iLoopCiv)                                
                                        city.setCulture(iLoopCiv, city.getCulture(iLoopCiv)*(100-iPercent)/100, True)
                        city.setCulture(iCiv, iCivCulture + iLoopCivCulture, True)  
        
##                for iLoopCiv in range(iNumTotalPlayers):
##                        if (iLoopCiv != iCiv):
##                                iLoopCivCulture = pCurrent.getCulture(iLoopCiv)
##                                iCivCulture = pCurrent.getCulture(iCiv)
##                                pCurrent.setCulture(iLoopCiv, iLoopCivCulture*(100-iPercent)/100, True)
##                                pCurrent.setCulture(iCiv, iCivCulture + iLoopCivCulture*iPercent/100, True)
                iCivCulture = pCurrent.getCulture(iCiv)
                iLoopCivCulture = 0
                for iLoopCiv in range(iNumTotalPlayers):
                        if (iLoopCiv != iCiv):
                                iLoopCivCulture += pCurrent.getCulture(iLoopCiv)                                
                                pCurrent.setCulture(iLoopCiv, pCurrent.getCulture(iLoopCiv)*(100-iPercent)/100, True)
                pCurrent.setCulture(iCiv, iCivCulture + iLoopCivCulture, True)                                
                if (bOwner == True):
                        pCurrent.setOwner(iCiv)
And there is also a reference to:
Spoiler :
Code:
        def calculateDistance(self, x1, y1, x2, y2):
                dx = abs(x2-x1)
                dy = abs(y2-y1)
                return max(dx, dy)
There is basically one big issue with all the code found in RFC: The functions are part of some class, making them into methods. So you could have your own class just to be able to keep the code more or less intact, but this would potentially make it difficult to use the code. (As you'd have to adopt Object-Oriented Programming to access them.)

If you instead wanna turn these methods into regular functions you basically need to drop one level of indentation, and delete all references to "self" - as that is a reference to the class (or an instance of that class). You have no use for a class, so you might as well do that.
 
Yes, and it's progressing well. The Civ part is still in the planning stage, but I should be able to start making the civs this weekend. I've been adding in some things I like, units and wonders from Rise of Empires (but only a few) and Nextwar to the RevolutionsDCM as a base. Also added Cultural Citystyles and Blue Marble Terrain, and I've been creating a unique palace, tech and trait for each civ so I can give them a combination of abilities. Right now I have five new civs to add (added Gran Colombia last night), several Leaders to remove, and then to ethnically artstyle the unit graphics. THEN I'll be putting together the civs.

Awesome. Looking forward to it.

BTW, do you know HOW to make a captured city quickly gain culture from the conqueror?

Baldyr has already revealed it.

OR how to drastically reduce maintenance on overseas Colonies?

I thought perhaps it could be done in python, but after checking the API, I dont think so (although I have been wrong before). That being said, it shouldnt be that hard to clone the tag; Ive done it before. IIRC, I also managed to clone the tag for drafting, allowing you to draft without Nationhood. Ive think ive also cloned the tag for State Religion happiness. Again though, I have been wrong before (I tried making it so a trait suffers less or more war weariness, but it causes crashes); it may be much more difficult to clone than I think.

Or reduce unit maintenance?

See above.
 
New Menu Page done, the leaders are done, the Units are being Styled right now. Things are looking good so far.
 

Attachments

  • Civ4ScreenShot0007.JPG
    Civ4ScreenShot0007.JPG
    116.8 KB · Views: 44
Top Bottom