Enlarging Parties

I know that Timaaagh came across a problem which should only really be a problem for the Snake Cult, and that is that there is a limit of 6 troops for each party that spawns. Now, because we are essentially rolling three troop trees into this spawn this causes us problems. Now I know from PoP3 that there is a script which adds additional troops to a spawn, what I do not know is just how this works and how it is triggered.

Ideally I would like to have the new party spawn and immediately call the script to add in more troops. Is this possible? Is it much work? Will it strain the system? If it is unfeasable, what other solutions can you offer me?

It seems this should not be difficult, as a test I've got a snake cult party with 30 ashenborn principalities (in addition to it's normal troops) wandering around my map now. I know how to add a set or random number of troops to the spawned parties/warbands/armies now, though scaling it will take a bit more doing (I am unsure of that bit, am searching for the code relating to it)simply added (assign, ":new_party", reg0),(party_add_members, ":new_party", "trp_p4_ashenborn_principale", 30),to the spawn cult party bit

As soon as I can find the code relating to triggering lord spawns, and to the party size scaling, it should be easy. Anyone know where that code is hiding? I'm not having any luck finding it....

Ok, found the lord spawn code, looks doable, but I'm about out of time for now, will test later.

Ah excellent! I haven't checked out the script yet, but since it's already there it souldn't take much time at all to implement. Now we just need to know which lords are going to have which enclave units.

As of now I've got a working system that adds some unique troops slots to the constants, at the individual lord unique troop assignment in module_scripts starting at 1221, and at 21707 at the lord spawn special unit scripts where the unique troops slots are utilized.

I still haven't found any preexisting scaling script though I could whip up some basic stuff something along the lines of if player level is this add this many troops, and that would depend on how much scaling we want

For example heres what mine looks like (huge numbers for testing, hehehe, and just grabbed random snake units)

at the spawn script I just copied and pasted the relevant bit and changed the slot numbers, though I think a few of the lines can be cut for optimization, will test that sometime.

I'd say that 3 or 4 unique troop slots should do it, and then, in the spawning script just add in a few operations like add 5 to the first special troop per 5 player levels, but add 10 for the second one, or it can be more complex, but I'd need specifics on how much scaling for which troop. In either case the 1st/2nd/et cetra slots should be maintained as the same type of troop- so if the first can always be priestesses, then our little scaling code will always be adding the correct number priestesses, instead of a ton of them like the second slot. And that second slot should- well, ok I think you get the picture.

Dudes, just add another party template after you create a party, like this: (spawn_around_party,":somewhere","pt_first_part"), (assign, ":result", reg0), (party_add_template, ":result", "pt_second_part"),

No manual scaling, no slots, and you have 12 troop types instead of 6 (=the original problem). When stuck like this, best ask Treebeard or the Forge.Hopefully this is what you were looking for, and good luck with your efforts.

Ok, I think the best way to do this is using MV's template advice within the special troops code therefore we can assign an enclave template to each lord individually without having to do any try for range if then to differentiate between which lord gets which enclave. We can even, if we're feeling frisky, re utilize some more original code, the % chance for reinforcements from one of the templates, and have multiple templates for each enclave to throw some more variance into the spawns.

Those templates (as well as a b sml and c sml) were added to party templates, really just copies of the a template with s m l being the size/toughness/composition (or they will be, right now they're just set up to be identifiers, one has a hundred of this, another a hundred of that)Those slots were added to constants right below the special troop constants

Here is the code in the special troops spawning bit that I added in, I'm not sure why they aren't spawning

Unless you want different SE templates for every lord.If these are not to be used for lord parties, but other spawns, then don't do this in script_cf_reinforce_party (used for lords and garrisons), but find a nice place in one of the script_spawn_* scripts where they should be created.

Timaaagh- leader and party_no were defined earlier in a part of the code that I did not change, and the sml locals are in the second code block there (I believe)

MV- Many thanks, that party/troop is what was stopping it from working.

I don't know about what the design team has as an intention, but I am setting up a system to support any type of conclave variance that they may wish, capable of supporting a different template for each lord if they desire. Or as now each lord having three options for their enclave troop composition. If they want something that does not require this all, then I'll simplify it, but I'd rather have a nice shiny working option for them already. Now all I really need are the specifics as to what lord should get how many of what troop and all and it's done.

Though I will probably move where my added code to the lord spawn bit, as the special units addition code is not affecting the initial spawn when the game starts, though this may be desirable if we don't want the snakes to be quite as powerful on day one.Moved code and slightly changed it so that it is now in the lord spawn bit, so now the snakes will start the game with their conclave troops as well.

While the technical terms of codding is out of my hands, nevertheless, just a gentle reminder that to make sure you're able to successfully compile the code before uploading up to the SVN site, as about a week and 1/2 ago we had to clean up code for the Alpha since it wasn't compiled correctly..

So we always want to make sure what you do is not only tested in-game, but compiled correctly before the changes are committed back to our SVN site.