Platyping's Python

Itsukushima Shrine
Spoiler :

Civ4ScreenShot0019-2.jpg


City in disorder due to culture, occupation, whatever
20% to flip back to you if you still own majority culture.

Artwork by Chamaedrys


Hierapolis Sawmill
Spoiler :

Civ4ScreenShot0006-6.jpg


National Wonder
Amount added based on normal city radius.
Lazy to figure out the formula for plots outside of city radius

Artwork from RI mod


Hibernia Platform
Spoiler :

Civ4ScreenShot0007-2.jpg


Only affects units requiring Oil
Uses UnitCost Callback
Anything that uses Callbacks may affect performance

Artwork from RI mod


Countdown to 100: 7
 
Thanks again, always good to have people appreciate :D
Getting lazy nowadays, still enjoying my novel, so you can see why production rate has dropped tremendously :D
Didn't bother to update Megapack with latest additions also... ahem :cool:

Still thinking of what to do with Ark of Covenant and Magna Carta since those 2 existed in real civ games. Can easily add happiness/culture etc to Courthouses which was what it did, but trying to see what new benefits are possible since those have been done

@veBear, next time you need help, just drop me a message here or PM.
Coz I seldom drop by in the Civ and Units section, since not my field of interest:mischief:
 
Muiderslot Castle:
Removed leftover Channel Tunnel codes

Megapack:
Updated with new additions
 
P.O. Box 1142
Spoiler :

Civ4ScreenShot0000-9.jpg


National Wonder
Captures random Great Specialist only if city's highest culture not yours


Edit:
Naqsh and Theory of Evolution:
Rewrote codes for spawning great people so default message will spawn
Thus, removed unnecessary text messages

Main Page:
Uses Colour Codings:
Black: Uses onUnitMove, UnitCostCallback, BuildingCostCallback
Red: All other CallBacks that you need to activate
Green: Checks done per turn

Those in Black, use at your own risk:mischief:
Those in Red and Green, don't use too many in big mods:D

Countdown: 6 to 100
 
When you conquer a city, if there are 5 Great Artists, 3 Great Engineers and 2 Great General settled in the city:
You have:
5/10 Chance to get a GA unit, while the city reduces 1 GA spec
3/10 Chance to get a GE unit, while the city reduces 1 GE spec
2/10 Chance to get a GG unit, while the city reduces 1 GG spec

Of course, if the city doesn't have any Great Specialists, it does nothing

Time to rewrite the text to be clearer :D
 
Have you thought about doing grand central Terminal? I'm not sure where i got it, but it currently "adds gold equal to the citys populatoin" and i just realized the python isnt even in there... but if it does its really potinless, thats a maximum of 20 gold...who cares?

Im sure theres tons of ideas, like 5 gold per railroad you have in your civ
build railroad everywhere
workers build railroads faster
railroad gives plot gold bonus (99% sure this is a no go)

they all sound pretty simple and quick, not sure if they are doable though ik terrain features are tough

also if you have realism invictus downloaded, use that art, i do beleive its better then the one on the cite, if not i can upload the art for you
 

Black: Uses onUnitMove, UnitCostCallback, BuildingCostCallback
Red: All other CallBacks that you need to activate
Green: Checks done per turn
Also what do these mean? I get what they mean but like why are you telling us? Is it because they slow down the game more than others? Thats what i am assuming
 
You can say so.
For instance, onUnitMove is activated every time each unit in the game moves 1 tile.
It is definitely more taxing on performance than a wonder where codes are only activated when a unit dies
 
Have you thought about doing grand central Terminal? I'm not sure where i got it, but it currently "adds gold equal to the citys populatoin" and i just realized the python isnt even in there... but if it does its really potinless, thats a maximum of 20 gold...who cares?

Basically Gold version of National College which is adding research based on population.
Remember that this X Gold per turn is added directly to the building, which is then magnified by all modifiers such as banks

Im sure theres tons of ideas, like 5 gold per railroad you have in your civ
build railroad everywhere
workers build railroads faster
railroad gives plot gold bonus (99% sure this is a no go)
Build routes everywhere was done by GIR's Via Appia, so basically the same thing.
Not sure how to count how many railroads you have unless you wanna check each tile every turn

I do have RI mod, which is where I got most artwork for recent works :D
 
Also just a quick request, when you update your wonders, when your editing it, just write "Updated 1/1/1" or whatever the date is, that way when im updating the codes, i dont have to update the ones that havent been updated, and i dont feel like looking through all the posts to see if its updating
 
Basically Gold version of National College which is adding research based on population.
Remember that this X Gold per turn is added directly to the building, which is then magnified by all modifiers such as banks


Build routes everywhere was done by GIR's Via Appia, so basically the same thing.
Not sure how to count how many railroads you have unless you wanna check each tile every turn

I do have RI mod, which is where I got most artwork for recent works :D

I think the gold is the best option, and i dont mean a percentage of gold, i mean a certain literal amount. Like if you have 5 per railroad, you have 10 railroads, 50 gold is added to your bank and no long term effect so only need to check one, obviously to balance it, add a little loong-term effect.

And personally when i thought it adds gold equal l to to population i thought i meant wha tim thinking of, literal gold, otherwise i would of thought it said "gold percentage"
 
Thought about that as well, but you know...
Everyday I tell myself, that is on my to-do list, but as the number of works increased from 10+ to 30+ to 90+ now, I get lazier to change certain stuff:D

To-Do List:
1) Add a update date behind each wonder
2) Add Links in civilopedia entries where necessary.
Example: Tsukiji Fish Market "Fishing Boats: +1 Food, +1 Commerce"
Add a link to "Fishing Boats" to link to the fishing boat improvement just like what other BTS wonders do
3) Convert to Modular
 
I'm not saying go back and do them, but just from now on, while your editing the file, just say when it was updated, no extra work just gotta type a couple extra things, to much work to go back and edit them now

also i saw somewhere modular python, doubt it works to well but im pretty sure i saw it. If that is possible that means you can send python in just the part you need, it would help modders that are unexpirience with python a lot (so they dont have to copy/paste)
 
Something simple:

Trans-Siberian Railway
Spoiler :

Civ4ScreenShot0017-3.jpg


Also something about rails, decided to do this first, since Dumanios requested for it quite some time ago


Countdown: 5 to 100
 
GIR's Wonders

Flavian Amphitheatre
Spoiler :
Flavian.jpg

Machu Picchu
Spoiler :
MachuPicchu-1.jpg

Templo Mayor
Spoiler :
Templo.jpg

Via Appia
Spoiler :
Civ4ScreenShot0021.jpg


tsentom1's Wonders

Brooklyn Bridge
Spoiler :
Brooklyn.jpg

Copernicus's Observatory
Spoiler :
Copernicus.jpg

E-Bank
Spoiler :
E-Bank-1.jpg

Himeji Castle
Spoiler :
Himeji-1.jpg

Leonardo's Workshop
Spoiler :
Civ4ScreenShot0002-8.jpg

Lubyanka
Spoiler :
Lubyanka-1.jpg

School of Confucius
Spoiler :
SchoolConfucius.jpg

Sydney Opera House
Spoiler :
Sydney-1.jpg

Terracotta Army
Spoiler :
Terracotta.jpg

The Great Bath
Spoiler :
Bath.jpg

The Sphinx
Spoiler :
TheSphinx.jpg

Tikal Temple I
Spoiler :
TikalTemple.jpg

Topkapi Palace
Spoiler :
Topkapi-1.jpg

Trade Fair of Troyes
Spoiler :
Troyes.jpg

Trafalgar Square
Spoiler :
Civ4ScreenShot0002-11.jpg

Eden Project
Spoiler :
Civ4ScreenShot0007-5.jpg

King Richard's Crusade
Spoiler :
Civ4ScreenShot0001-20.jpg

Longevity
Spoiler :
Civ4ScreenShot0011-1.jpg

Marco Polo's Expeditions
Spoiler :
Civ4ScreenShot0001-21.jpg


Others

Nanite Defuser
Spoiler :
Civ4ScreenShot0003-18.jpg
 
AI Build Python Projects Automatically System
Spoiler :
Purpose: Get rid of old system which is done under def AI_chooseProduction

Old System:
1) Forces AI to build under certain circumstances, interrupting normal AI decisions
2) Extra python codes for no real benefits = extra performance lags, especially as AI are chosing production every turn, this command is activated every turn.
3) AI may be doing something important like building a wonder, yet this will force it to change.
4) Even after we force AI to start building the project, AI may switch away from completing the project.

New System:
1) Codes only activated when project finished. Thus, once in a lifetime. Less performance issues. In fact, there is only 1 real line of code.
2) AI "sees" the project as another Internet project, so it won't make funny decisions such as switching from a wonder that is 3 turns away to completion.
3) Since AI sees the project as another Internet, it will not switch away from it unnecessary.

Thus, this is to bluff AI to build the project "willingly and happily"

Python Codes Compatibility among Works
Spoiler :
Most python codes can be merged together by simply "copy and paste" python codes from one file to the other.
However, for certain wonders, some effects will interfere with effects of the other wonders, such that additional modifications have to be done for them to work correctly and accurately.

Springfield Armory
1) Modified BaseCombatStr of a unit which is not carried over when using convert codes to duplicate units.
2) Should be placed below most works using onUnitBuilt
Affected Works:
First Cloned Mammal, Mont Saint Michel, Panama Canal, Palm Islands, Zuiderzee Works, Venetian Arsenal, National Aquatics Center

Magellan's Voyage
1) Modified Cargo Space of naval units which is not modified when using initUnit codes
2) Should be placed below most works using onUnitBuilt
Affected Works:
Trafalgar Square, Venetian Arsenal, First Cloned Mammal

The Great Bath VS Torre de Belem
Both add feature to a city.
A 3rd feature that has benefits of both features introduced with extra codes.

Serpent Mound VS Mesa Verde
Serpent Mound codes have to be above Mesa Verde

Channel Tunnel
Added codes to check for Azadi Tower.
By right, should add codes to check for Tower of Babel as well, but negligible chance so ignored.

Cleopatra's Needle
Added codes to check for Tower of Babel and Chauburji
By right, should add codes for Louvre and Azadi Tower as well, but chances of Cleopatra built after them is negligible.

Temple at Uppsala
Added check for Peaks so that Macchu Pichu will not be removed.
Added check for Farms protected by Gate of the Sun.

Castra Praetoria
Has to be placed under all wonders adding promotions using onUnitBuilt

Flavian Amphitheatre
Should be placed above all wonders using onUnitBuilt

Erechtheion
Promotion removed when unit died to avoid more than one unit with this promotion due to other wonders that "revive" units (Mont Saint Michel, National Aquatics Center)

Notes to Modders
Spoiler :
1) All python modifications have been labelled clearly with ## Big Ben Start ## and ## Big Ben End ##. Some wonders/projects have multiple modifications under different sections.

2) All references to XML database are made using gc.getInfoTypeForString("xxx"), rather than using their default integer index. Thus, they will still work in mods with additional units, buildings, promotions, bonuses, etc.

Only exceptions are yield and commerce where I use the integer index directly, since I have not seen a mod with new yield or commerce.

3) All python codes are made in CvEventManager and/or CvGameUtils files. If your mod has any particular feature that disrupts the normal usage of these files, you may have to do some alterations.

4) Obsolete tech checks for certain wonders/projects that do not obsolete are removed to speed up processing time. After all, every single python code requires time, no matter how negligible. If it does not obsolete, there is no need to check whether player has obsolete tech.

However, for modders who wish to add obsolete tech for wonders without the obsolete tech, this is how you do it:
Spoiler :
Code:
pPlayer = gc.getPlayer(iPlayer)
if pPlayer.getBuildingClassCount(gc.getInfoTypeForString("BUILDINGCLASS_BIG_BEN")) == 1:
Change to

Code:
pPlayer = gc.getPlayer(iPlayer)
if pPlayer.getBuildingClassCount(gc.getInfoTypeForString("BUILDINGCLASS_BIG_BEN")) == 1:
	obsoleteTech = gc.getBuildingInfo(gc.getInfoTypeForString("BUILDING_BIG_BEN")).getObsoleteTech()
	if gc.getTeam(pPlayer.getTeam()).isHasTech(obsoleteTech) == false or obsoleteTech == -1:

Codes using getNumActiveBuilding(xxx) will check whether the building is obsolete automatically, there is no need to add the check for obsolete tech.

5) For python projects, because AI don't recognise python benefits, they will see the projects as totally useless and will NOT build them at all. Thus, modifications were done using the method described above.

6) Text files only contain English language, since I only know English, Chinese (and Singlish:goodjob:). For modders who wish to use them in other languages, you may have to add the translations yourself.

7) Certain wonders/projects make use of PythonCallbackDefines file to enable some python features by setting it from "0" to "1". If you are combining two or more wonders/projects which make use of this file, so long as one wonder says set XXX to "1", set it to "1"


Movies
Spoiler :
Movies provided in the standalones and Movie Packs are all static movies (just a picture).
For players who are interested in getting long movies for some of them, please visit Arian's thread or mourndraken's

Credits
The_J for giving tips on coding every now and then.
Tsentom and GIR wonders where I learn python coding from.
Artwork makers: Hrochland, asioasioasio, stolenrays, Chamaedrys, Gaius Octavius, Saibotlieh, Rabbit White, Walter Hawkwood, Refar, Grave, dacubz145, veBear and much more
Sorry, if I used any work from others but forgot to name you
 
...uh...that also can't be good for the performance :scared:.
But nice idea :).

Thought about that as well, but you know...
Everyday I tell myself, that is on my to-do list, but as the number of works increased from 10+ to 30+ to 90+ now, I get lazier to change certain stuff:D

...I can tell you, that will not become better :sad:.
 
Back
Top Bottom