C2C SVN Changelog

Updates
- Fix for BarbarianCiv
- Slight reduction in gem placement spawn rate to account for the new turquoise resource
- More Italian translations by Hale_9204​
 
AFAIK (go look at the PUF) it only checks the unit's current operating AI type. Also changing that PUF to do anything wider would probably break other uses, so you almost certainly will need a new PUFCanParadrop or something and use that instead.

I was thinking about this and wouldn't it be best to simply adjust the unit's current operating AI type if it gains the ability to paradrop? That could be plugged into the processing to change the drop range -> if going from 0 to >0 then change primary AI to paradrop...
 
I was thinking about this and wouldn't it be best to simply adjust the unit's current operating AI type if it gains the ability to paradrop? That could be plugged into the processing to change the drop range -> if going from 0 to >0 then change primary AI to paradrop...

No, that would be disastrous. You'd have units the AI was using for some purpose (maybe city attack) suddenly losing all context and going off on totally different behaviors when they randomly got a promotion. It would also make the code TheLadiesOgre added to have paradrop considered in the general attack AI irrelevant since if you changed its operating AI it would never even execute those routines.
 
Updates:

-Workers now gain XP on completing builds
-Added Occupation fix

NOTE: Yeah, I said that I added this earlier, but in that commit I was stupid and forgot to include the source, so when a newer DLL was built that fix went away. I'm amazed that that didn't cause errors, but oh well. Anyways now the source for that is in.
 
No, that would be disastrous. You'd have units the AI was using for some purpose (maybe city attack) suddenly losing all context and going off on totally different behaviors when they randomly got a promotion. It would also make the code TheLadiesOgre added to have paradrop considered in the general attack AI irrelevant since if you changed its operating AI it would never even execute those routines.

Well... dang. Now I'm gonna have to relearn what those PUFs are all about all over again. I've forgotten what they're for since I only worked with them once... should just take a bit of review. Ah well.
 
Note to modders

When you change the name of something tech, building or whatever make the same change in all languages, replacing translated text with the new English text. I have noticed two major ones in my latest merge of the Italian translations.
  • The Elephant Riding technology became Elephant domestication but was left as Elephant Riding in the other languages which means that Elephant riding is what was translated not Elephant domestication.
  • the Heroic promotion help only has the golden age text in English in all other languages it is just a translation of of the word "heroic".

If you don't change it back to the English when you change the text our translators will not know that there has been a change and C2C is now wrong in the other languages.

I did not know that this was happening until I noticed it in my last check and merge of Hale_9204's Italian translations. While I am in the file I will now check the Camel, Elephant and Animal riding text.

Updates

- A huge number of Italian translations by Hale_9204
 
Update

- Update Story Teller line - I think AI is still needed for these.
- Replace old Slave system with new captive system.
- Turn off Food caravans - I think AI is need for these also plus I am not sure they have any real use.

Note Important There is now a new Captive system to replace the slaves stuff we already had. Big changes and still a big-ish problem besides text.

For some reason the population of the city is not increasing when the Captive - Civilian joins the city. This is done by events ans as far as I can see it should be working. (This may also be a problem with the Immigrant). Can someone have a look at it and see what it is that I have done wrong.
 
Update

- Update Story Teller line - I think AI is still needed for these.
- Replace old Slave system with new captive system.
- Turn off Food caravans - I think AI is need for these also plus I am not sure they have any real use.

Note Important There is now a new Captive system to replace the slaves stuff we already had. Big changes and still a big-ish problem besides text.

For some reason the population of the city is not increasing when the Captive - Civilian joins the city. This is done by events ans as far as I can see it should be working. (This may also be a problem with the Immigrant). Can someone have a look at it and see what it is that I have done wrong.

Once the mechanics stabilize a bit I'll add some AI for this, probably in a week or so.
 
Just pushed to SVN (4906):
  • Some enhancement to great commander AI and also Great General AI more generally to some extent
 
Only 'some' so far. Not major yet. Should see them wandering around unprotected much less and in attack stack more often also so far.

Thats was pretty much its main problem so :goodjob:. I guess using them strategically such as trying to give them (the commanders) as much xp as possible by anticipating when/where they can get this experience is important too (probably way harder nigh impossible for ai to do?). Just the fact that they won't be unprotected & will be in stacks is a huge step up though and actually makes them usable.
 
Updates
Added info class replacement capability. Currently activated for unit infos, but I will show what exactly has to be done to activate it for more info classes in a separate commit in the next days.
Used by tag ReplacementID and a boolean expression tag named ReplacementCondition that is evaluated on the game object (same Type ID as the base object). ReplacementID can be arbitrary, it is only used to identify the replacement for read pass 2 and modularity purposes.

Removed files that contain "audio" from the evaluation if the cache is up to date (as the script that can replace title songs writes it). Also changed the script not to write the audio XML if there is only one song in the Title folder. This should fix the issue with the cache not being used.

I have run a static code checker on the C2C C++ sources and found numerous issues that I changed/fixed:
  • Memory leaks
  • Scalar/array mismatches in allocation and deallocation (mixing new[] with delete and new with delete[] is bad)
  • Usage of uninitialized variables (this can also cause OOS in multiplayer)
  • Calculation but not usage of values (just commented them out in some cases and changed the return variable in some)
  • Lots of minor things (that are just style issues or similar)
  • Other things I forgot

In some cases it was clear that there is a bug there but not necessarily what the correct intention was (I left a comment there and will point it out specifically in the next days).
 
<snip>
[*]Memory leaks

How much was it leaking? I ask because over the weekend I was experiencing some odd issues with my well-developed game where after three hours of playing I was getting graphical errors. I checked it out and C2C was using almost 3 GB of memory (I'm lucky I didn't MAF). When I started that game again I found that it was starting with 2.1 GB of memory.
 
Back
Top Bottom