Race specific upgrades with tags, props and rules

Trying to work through how some of the new systems interact

What I want to accomplish is having a new gamerule that works based on reinforcement points (we can proxy RUs right now for simplicity or just say that the player is buying the ships)

the idea being that when the rule is selected the player has a starting fleet of a carrier and a navigation bouy

when they build from the carrier the construction works normally, requiring subsystems as prerequisites and being slow ru based build

When the player builds from the navigation bouy they are either A) initially simply deducting the rus at a marked up price and getting the ship instantly or B) deducting from a pool of reinforcement points set up in the game rule and getting the ship instantly (future)

ship selection would still be limited by research requirements if they were turned on, but the nav bouy would not be limited by subsystems

The intent is to allow the player to either build their fleet up front to get an advantage or to get reinforcements later in a large wave that are tailored to a threat.

It is relatively easy to grant a build speed increase for just the bouy in the game rule initially, what I can’t figure out is how to eliminate the subsystem requirements on the hiigaraans and vaygr. It does not look like build prerequisites can have logic statements (and/or)

It looks like there is a deathmatch override in the scripts/race folder, I would assume my new game rule could have an override folder in there as well so I don’t need to modify the def_research/def_build.

Is this someplace where properties would help to limit which ships would get loaded based on game type or is that still using the restrict functions?

1 Like

Eh, this is a beast, so lemme see what I can do here…

I am not aware, at all, how you’d do that - maybe somebody here is? I mean maybe you can give the buoy innate/pre-built (and hidden) sub-systems? I dunno how to make the RU cost vary though… Might be an area requiring new code dev.

Me neither - though it may be possible to add to the engine. I don’t know if that’s the solution though.

def_research/def_build in the future (not soon) - will have a different structure. What you’re asking will be possible. It sorta is now, but that can be a bit hard to explain.

Yeah, ships aren’t gated by rules. Ships aren’t ‘gathered’ like levels/rules/races - other things request that they are loaded. We may need to look at that stuff and see how we can better augment it using this more discrete-file driven system.

I don’t know about subsystems, but for researches they definitely can. For instance:

{ Type = Ship, ThingToBuild="HWAT_VAY_CAEscort", 
    RequiredResearch="VAY_AlienMetal & VAY_DestroyerGuns & VAY_Flares", RequiredSubSystems="", DisplayPriority=CounterAdvance(scount), 
    DisplayedName="Vaygr Escort Cruiser", Description="Heavy Fleet Escort", },

yeah I tried doing the same statements for the required subsystems and it flipped out and CTD. I was thinking if subsystems granted research then the subsystems could be converted into research logic and then the buoy would just have the uber research by default, the problem is subsystems are ship specific for build but seem like they are fleet wide for when they apply to research in terms of logic

Also it would be helpful to get a dump of active member variables from NewShipType and subsystem, I know there are weird remnants that show up in the ship files that may not be hooked up to anything and it would be good to know what is actually used.