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
// from SpriteGroupList.h
#define k_MAX_SPRITES 200
... How likely is it () that there is no other code dependant on this number?
Concrete, Abstract, or Squoingy? "I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
you have to set up a number there are 68 main ctp units that’s over 130 for moding now how likely does it sound you must put a number in however I would recommend you replace it with one for the modern sys spec say 500
"Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
The BIG MC making ctp2 a much unsafer place. Visit the big mc’s website
Originally posted by Immortal Wombat
... How likely is it () that there is no other code dependant on this number?
Do you mean other code that uses it or this line duplicated?
Code:
//from SpriteList.h
#define k_MAX_SPRITES 200
Well I made a search for 200 in the sprite folder and found k_MAX_SPRITES in a third file SpriteGroupList.cpp were it is actually used. From what I saw they used for loops to cycle through all possible sprites and check if they are there in the according folder, well I could imagine some ways that a little bit more elegant meaning faster if you allow any number for the sprite files. And it means another thing: All the sprite graphics must be available in the memory while CTP2 is running irrespective whether they are used or not. At least that is my guest from I have seen so far.
To make shure that our raising of the limit will work we should change the number in both files. So far I think this is only defined once, because of the #pragma once line that came before. Of course correct me if I am wrong here.
So what is left is that we should discuss the new limit, if we just change the number then CTP2 needs more time for starting, so a limit of 50000 is still a little bit too high. Actual I prefer a limit of 1000 so that the last sprite number would be 999.
Also need to consider too, that if we change this too high it'll take vital memory that we may need for something a little more critical than pretty graphics, like for instance, AI processing.
I'd prefer dropping the #define all together and letting the program check the number of available sprites. That way it's scalable and you can slip in and out sprites you want/don't want. Why have a limit when you can just ask the program to count through the available sprites once at the beginning of the game and assign the total to a variable.
Since, IIRC all of the sprites have their specific numbers built into the file names, it shouldn't be a problem associating the right unit with the right sprite in the units.txt file.
Also, as Dale mentions this has the virtue of only using the amount of virtual memory you actually need.
All the sprite graphics must be available in the memory while CTP2 is running irrespective whether they are used or not. At least that is my guest from I have seen so far.
Yes, I think Pyaray mentioned this before.
Well, anyway, that's just dandy then. Woo!
Concrete, Abstract, or Squoingy? "I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
Originally posted by E
Will it be possible to rename sprites other than the number convention? I remember the big problem of new sprites sharing the same number.
Yes, but it might be to cumbersome to implement. We could maybe do it by not having a maximum at all but read in all sprites that exist in the folder (and are necessary to play the selected scenario/mod). That shouldn't be too difficult I reckon.
If sprites are loaded onto a DD surface in GFX Card texture memory (limited resource, unless you have a latest and greatest graphics card, basically,) then we may have a problem with capacity, other than changing a number. It just depends how they did the DirectDraw stuff.
I'll just comment that additional sprite capacity would be very handy. No one is forced to use a higher limit, and I expect most serious mods will try and limit themselves to make the mod as playable as possible. But lets say 1000 sprites would be quite handy for the modder himself to have all sprites he's working on available for his test sessions and such.
I wonder, would it be possible for a mod to have a file listing all it's active sprites and for CTP2 to only load those at start? This assumes using mod swapper or a similar function. That way one could keep a huge sprite library but only load those needed for a particular game. In that case sprite ID might not require a numerical limit either, though I for one would would still use that feature for standardisation.
Marc aka Caran... with the usual disclaimer, I'm not a programmer, anything beyond a script and my brain starts smoking.
Originally posted by Caranorn
I wonder, would it be possible for a mod to have a file listing all it's active sprites and for CTP2 to only load those at start? This assumes using mod swapper or a similar function. That way one could keep a huge sprite library but only load those needed for a particular game. In that case sprite ID might not require a numerical limit either, though I for one would would still use that feature for standardisation.
newsprte.txt is such a library for unit sprites and there are also such files for city sprites, effect sprites and good sprites.
As far as I can understand from browsing the source, the sprite numbers in the newsprite.txt has no limit, it is only the constant k_MAX_SPRITES that cause the limit.
Therefore we could simply remove the constant and voila! No limit whatsoever!
Originally posted by DDowell
As far as I can understand from browsing the source, the sprite numbers in the newsprite.txt has no limit, it is only the constant k_MAX_SPRITES that cause the limit.
Therefore we could simply remove the constant and voila! No limit whatsoever!
Unfortunatly it isn't such simple, this constant is used to datamine how much space is reserved for the sprites that the game loads, so just removing it would prevent the code from compiling, increasing it means using more memory and more time to fill it. Maybe 300 sprites of each type is ok, but this isn't very intelegent. The best solution is to make it so that as much memory is used as needed. And that is a little bit more tricky.
is it martin when the game loads it looks in activsion\ctp2\gamedata\newsprites and there at the top is a model number
"Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
The BIG MC making ctp2 a much unsafer place. Visit the big mc’s website
Comment