The Altera Centauri collection has been brought up to date by Darsnan. It comprises every decent scenario he's been able to find anywhere on the web, going back over 20 years.
25 themes/skins/styles are now available to members. Check the select drop-down at the bottom-left of each page.
Call To Power 2 Cradle 3+ mod in progress: https://apolyton.net/forum/other-games/call-to-power-2/ctp2-creation/9437883-making-cradle-3-fully-compatible-with-the-apolyton-edition
- Added player selection, and with player selection color selection.
- Fixed scenarios that allow players other than player 1 to be played.
civapp.cpp:
- Fixed a repetitive memory leak in the Great Libary caused by scenario loading.
- Removed some redundant code, because it is already done somewhere else.
I discovered some problems with the player selection code. Player selection now also work on the world map and if you select a player that does not have a starting location on a map you get an Assertion in the debug version and the selected player is set to the last player, of course the UI has to be updated so that you cannot do this.
ArmyData.cpp: Do not center on invisible pirates.
Scheduler.cpp: Do not consider goals that have become invalid (e.g. threatened cities that have been destroyed).
Activision 1.1 patch reimplementation by Fromafar:
- Enable reading of files generated by the Activision 1.1 patch. (file type 66)
- Prevented CtD when settling in the Alexander scenario.
UnitSpriteGroup.cpp: Do not access files after the open or create has failed.
ImprovementEvent.cpp: Corrected possible CtD when deleting own data in the middle of execution.
TerrImproveData.cpp: Do not kill the terraforming object twice.
MapPoint.cpp: Corrected comment - no code change.
astar.cpp: Corrected Null pointer dereferencing CtD.
Bug fixes by Martin Gühmann:
scenarioeditor.cpp: Fixed Auto-Turn-Off-Pollution-Bug. When you opened the scenario editor pollution was turned off automaticly.
scenarioeditor.h: Added to both scnearioeditor files ACTIVISION_ORIGINAL guards for older new code to match this with our current system.
aui_memmap.cpp, Anim.cpp, scenarioeditor.cpp fixed some memory leaks however the game still records memory leaks but what was fixed was clearly a problem.
Text files: Corrected a string in the English version, by Drulius. And Italian translation added provided by sandro.
Bug fix by Martin Gühmann: Prevents a crash when you load the single player new single player game screen and the game tries to load an invalid string, concerning world shape, map size and level of difficuilty.
Where XXXXXX is english, french, german, italian or japanese; an spanish version of that file is still missing.
Additions by Martin Gühmann:
Setting research goal to something already researched clears the goal. In comparision to the patch 1.1 implementation the player is notified that no goal was set.
Now also advances leading to tile improvements can be set, if there are more then one TerrainEffect fields then the cheapest enabling advance that is not known to the player is selected, if all enabling advances are known then the goal is cleared, too.
Note for the translation: The no goal set string is only available in German and English so far, in all language versions except the German version the English string is used until it is translated.
Made the pathfinding algorithm more like A* by Fromafar: Added updating of a visited node when a better path towards it is found later.
Notes:
1. This sometimes improves the path (see example), but also makes the pathfinding slower. We will have to test what the impact is when there are lots of units around.
2. The efficiency of the current implementation may be improved. When the node was on the closed list, some propagation should be applied. For now, I have chosen an easier implementation, by simply reinserting the node in the open list.
Where XXXXXX stands for english, french, german, italian and japanese, also for spanish but in that case no ldl_str.txt is included as no one posted a Spanish version of that file, also the translation status of German and English files is complete.
Change by Martin Gühmann: Replaced all Neptune refferences by Uranus refferences.
Bug fix by Fromafar: Enabled saving and loading of agreement data for more than 28 civilisations. Tested that loading and saving still works as expected with previous games, not tested with more than 28 civilisations.
2004.03.24 ..\ctp2_data\ai\diplomacy\Diplomat.cpp
Bug fix by Fromafar: Prevent invalid memory access + save file corruption when a low priority strategic state is added to a full buffer.
- Added player selection, and with player selection color selection.
- Fixed scenarios that allow players other than player 1 to be played.
civapp.cpp:
- Fixed a repetitive memory leak in the Great Libary caused by scenario loading.
- Removed some redundant code, because it is already done somewhere else.
Reactivated the Kill of completed terraforming objects. Some temporary test code slipped through in the 2004.02.26 update for the invalid memory access. The actual repair was in ImprovementEvent.cpp.
[Edit: link removed. Included in the 2004.04.18 source.]
Bug fix by Martin Gühmann: Removed some needless code in civapp.cpp and make sure in SelItem.cpp that games started with a different player than player 1 can be continued after reload.
Martin: It's not a big deal, but could you possibly set your compression software not to include all the empty directories in the .zip file - I prefer to unzip it in a temp directory and examine the changed files before I replace the originals with them, and having all the empty directories lying around makes it much more difficult to find them.
Here's a revision of my NationalManagementDialog that I posted way back in the second post of this thread - it contains the same code but now has the ACTIVISION_ORIGINAL guards.
[Edit: attachment removed - there's a newer version a few posts down]
Here's a copy of appstr.txt with a typo fixed (in the message asking you to insert your CD - it used to say "Call To Power CD 2 CD", now it says "Call To Power 2 CD").
Originally posted by J Bytheway
Martin: It's not a big deal, but could you possibly set your compression software not to include all the empty directories in the .zip file - I prefer to unzip it in a temp directory and examine the changed files before I replace the originals with them, and having all the empty directories lying around makes it much more difficult to find them.
Actual I just zip the whole directory with WinRar and delete all the files I don't need with WinZip afterwards.
That forces me to delete the directories afterwards with WinRar. Actual I use WinZip to unzip it, as it just displays the files it is no problem for me, but I see what I can do.
For the appstr.txt we shouldn't include this file with the playtest version, as it would go into the ..\ctp2_program\ctp\ directory, and I wouldn't like to see that my German version of that file is being replaced by an English version.
Originally posted by Martin Gühmann
Actual I just zip the whole directory with WinRar and delete all the files I don't need with WinZip afterwards.
That forces me to delete the directories afterwards with WinRar. Actual I use WinZip to unzip it, as it just displays the files it is no problem for me, but I see what I can do.
Well, don't worry about it if it's a big deal. Winzip will ignore empty directories, so you could unzip it and then rezip it with winzip, which would probably be the quickest way.
For the appstr.txt we shouldn't include this file with the playtest version, as it would go into the ..\ctp2_program\ctp\ directory, and I wouldn't like to see that my German version of that file is being replaced by an English version.
Whoops - I just uploaded a playtest including it, I assumed it was English in all versions. We should find a way to internationalize it to avoid this problem.
I would like to attempt to standardise the DiffDB.txt and map.txt files so that they use the same dbgen-based database system as all the others. Unfortunately, this would require altering the project file quite a lot. I remember the problems with this being discussed before - has anyone had any new insights?..
Comment