Quoting Frogboy, reply 120Regarding moddability, people should be careful in setting their expectations too high on what you can mod on release. While Python is the scripting language we're using, it only can do things that we expose to it and that will be a long long process that will only begin during the last beta and continue over the next couple of years.
For instance, I don't see how someone could add an espionage system into the game using even Python because first they'd need to define what exactly espionage does and then see if the engine supports doing that.
Then why aren't you going to give us some of the C++, like Civ 4 did? If you can't even add a epionage system with python, then whay are you limiting us to it?
For example, does this mean it would be impossible to give individual body parts their own HPs?
What is the point of python if it only limits the possibilties of modding?
I don't think you're fully understanding what we mean by modding and what Python and such is.
First, you have to define specifically what you want to do. What is "espionage" specifically?
If you wanted to create your own armor (body part) piece or weapon, you don't need Python or C++. That would be XML.
Python is a scripting language. The idea is that certain functions of the game can be called with python scripts to build onto the game.
But there is no DoEspionageStuff() function. Programming and modding requires getting very very specific. I wish it weren't the case as I would love to be able to have Game.CoolGameRunNow() and be done.
I fuly understand that python is a scripting language, and as such can only do what the source lets it do. Which is why having some of the source to modify would let people do things that you could never guessed at, as you can add new functions to call.
As to my example: I meant modding the game to not track the HP of a soldier, but of a soldier's individual body parts, i.e.
Head: 100/100 (Uninjured)
Upper Body: 80/100 (Injured but fully recoverable)
Right Arm: 60/80 (Will never recover fully)
Left Arm: 0/0 (Chopped off)
I assume this would not be possible with python, perhaps I underestimate it. But if I had access to the unitDie() function, and could write functions of my own, this would be possible.
I guess the thing is, unless you export every single function to python, you cannot accomadate for every crazy thought that a modder could have. If you release the SDK like Civ IV did, you could.