[Edited for 2.14 5/12/17]
I hate exploits and love flavor. I don't like how stacking defenses on Escorts and weapons on Capitals works the battle system. I also don't like how the stacking of % reductions to weapon cooldowns ends up boosting missiles' rate of fire by 1900% with the right techs/parts.
I've altered the XMLs in the hopes of making it significantly less exploitable.
Vanilla ship leveling is boring. I changed that, too.
The Mod is in the external link above. Copy the Game file to Documents/My Games/ GC3Crusade and enable mods in your game options to add this.
With this mod:
I edited the Battle behavior a bit myself, from reading post here on the forum and changing things ppl suggested. Seems you have taken it a bit further with the hull editing, how well does it work? I'll do a few test games after my current game, justa bit curious as to how well or bad the AI is with it?
This looks interesting. I may have to give it a whirl. Where can I download it?
External Link in the OP at the top.
It may work too well. My starting survey ship with 68 hit points was shot down by a pair of pirate interceptors. I may have buffed the evasion too much. Not going to jump to any hasty conclusions though.
As far as the AI using it. Their ships follow the changes the same as the players. I haven't changed AIStrategyDefs.xml to make the AI prioritize its shipbuilding differently.
I've made some progress editing .xsd files to accept new data in the .xml files in my attempts to limit particular roles to particular hull styles and add stat modifiers to ships based on the ship's role. My latest build accepts Ship Hull Type as a prerequisite but CTDs on startup. Nothing I've done in the ModifierType.xsd has convinced the game to acknowledge Stat modifiers in new area's of the schema.
I'm going to try a few more things before asking the community for help and/or submitting a ticket for mod support.
My Understanding of the Schema files is they really do not like to be "edited" in any way, there is a few posts around here on the subject, will take some digging to turn them up as they are in threads related to other stuff. After reading what other people stumbled upon regarding Schema files is the sole reason I have not tried to edit them myself. At a guess I say there is either hardcoded code in the exe or dll's regarding schema files. Just getting access to the rest of the xml's the schema files point to would progress modding to a whole new level, so much is till locked away in dll's/exe. Hopefully the "Workshop DLC" will release some of this to us. Atleast thats what I am holding out for.
You can assume that all thats not in the Schema files is not supported by the game,
I mean they are there to limit what you can do, and there is most likely a reason for that^^
[quote who="mortili" reply="6" id="3634571"I mean they are there to limit what you can do, and there is most likely a reason for that^^[/quote]
I don't agree with the inference here. It sounds very un-Stardockish.
More plausible is that they were written to support the content Stardock put into the game and no more because there was no reason to write the Schema to support more.
the xmls are nothing more than structured data,
xls are nothing more than rules how the data can/needs to be structured
we can assume that the xls are created so that they allow us to do everything what the game supports,
so their is no point in changing xls's
that assumes that the people who created the xls have thought of everything possible that the game is capable of doing.
it also would imply that there is no room for expansions because there is nothing more that the game supports
I disagree, I think the Schema files are there as a "bridge" between the data files, xml's we have access too, some are still locked away in the dll's prolly as c++ code, and the dll's. Exe reads said schemas, builds its "archive" then collects the data from the xml to fill said "archive" or some such. If there is extras in said schemas it does not compute said extras because its not been coded to look for extras.
Correct, they are there to limit what is available, that does not mean thatt is all that "will" be available or "can" be available, if the devs chose to change it. Fraxis do similar with thier civilization games. id imagine its comman practice with software companies it limits modders to what they want modded, it also stops modders form steam rolling future ideas/planed expansions.
Yeah, I think you probably have; +0.5 evasion is like -50% to hit value, which will make small ships completely immune to kinetics and extremely hard to hit with missiles. I'd suggest +0.1, +0.05, +0.02, -0.02, -0.05 and -0.1 as being a bit more balanced tbh; either that, or diversify the weapons more (make something overtly anti-fighter by making it very accurate but very low-damage, something overtly anti-capship by making it hillariously inaccurate but devastating when it hits, and something mid-way between the two).
When doing this bit, be cautious - the AI ship class list (used to determine what the AI is going to build) is NOT the same as the ship roles, despite using about 70% of the same names in the xml.
Yeah,I'd suggest just leaving the schema alone tbh, it'll blow a gasket from any meaningful changes and SD have stated that they have no plans for allowing us to mod it (or offering any support to those who do). Besides, role assignment appears to be something handled in the .exe and so imposing requirements for it within the xml is just going to cause conflicting behaviour (and hard-to-trace galaxy generation crashes).
I edited evasion down some. Exclusive of other factors, hit chance against a tiny hull will now be 80% beam/ 60% missile/ 40% kinetic. I've wanted to see weapons diversified in the base game for some time. A battleship with 4 big guns feels more like a battleship than one with 14 little guns, each no different than what the fighters are carrying.
That's too bad. I freely admit that I don't know how the game files interact to work. Do you think there would be another angle that would avoid the .exe problems you mention?
Adding role prerequisites to hull types? Adding a stat modifier list that says: if X role and Y hull type are true for a ship then Z stat modifiers apply to that ship without adding overt exclusions to hulls or roles?
That sounds better.
I do think there's some room to explore the idea of using accuracy to make some ships definitely cap-centric and others actively anti-fighter though. Consider the following:
Missile - 10x damage output, slow firing, 25% accuracy (unmodified).
Laser - 1x damage, rapid fire, 150% accuracy
Kinetics - 75% acc, medium fire rate, 5x damage.
Combined with the -50,-20,0,0,+20,+50 jamming on hulls, you have lasers that remain effective against fighters but do too little damage to really hurt big ships; missiles which cannot possibly target tinies but can cause massive damage to big hulls which cannot avoid them, and kinetics which are less than ideal against either but at least can hit small targets and cause reasonable damage to large ones.
It may be a struggle to teach the AI to use it, though adjusting role selection and the associated tactics (by changing the threat/fort/value levels to make auto-role seleciton pick in a sensible way) should be possible.
From what I know of the topic (which is a fair bit, since I wanted to do much the same kind of thing you're aiming for with roles and sizes), I can't really see a workable method tbh. Much of the role stuff is basically out of bounds. The game doesn't care about the roles that you give it in the xml at all, for example, and while you can change a role's targets and movement you can't impact much on how it assigns them or give it anything above and beyond target preferences and movement.
You may be able to achieve it with schema edits, but tbh I doubt it will work.
I had a small play withe the Schema files. Seems you can add extra includes into them without the game crashing or hanging. Not sure this will be usefull though.
You can. What you can't do is load a schema file as part of a mod (you have to overwrite the base game and so the mod is wiped out every time you update), and some alterations will cause a crash when used (so, for example, adding a new resource will kill the game completely). There doesn't appear to be much of a pattern as to which changes are fine and which are crashy; and some changes completely knacker the whole thing and result in needing a re-install.
All in all, it's a lot safer to just leave it the hell alone, especially since distributing the mod afterward becomes a painful process of unpacking different files all over the place.
For whatever it's worth, back around when the game was released I tried adding a new ship role by defining an entry for it in BattleBehaviorDefs and adding the role to ShipRoleTypes.xsd. This did not cause the game any issues that I noticed (I could start the game, start playing, and mess around in the ship designer) or, as far as I can remember, produce any warnings when starting the game, but the role also did not appear as an option for selection in the ship design screen. I also did not run the test games very long; I didn't see much point in running the game to see if an issue would pop up when I could already see that what I'd tried to do hadn't worked.
I have not put any serious effort into figuring out if there is a way to make this work; BattleBehaviorDefs and the associated schema files are the only files I'm aware of that appear related to defining ship roles, and I'm not sufficiently interested in making this work to go digging through the rest of the XML to find out what else I'd need to edit, if the other files necessary to make this work are available.
Updated to provide for new content in ShipHullStatDefs.xml
Evasion bonuses were toned down from earlier iterations and seem more balanced now.
Upped Cargo hulls' HP back to 10 as their "sitting duck" evasion penalty makes them vulnerable enough.
Crusade Update finished. Edits to post. Great job on this expansion Stardock, Thank you.
And when did I get over 2000 views on this? I remember it being arround 200 last time I updated it.
CUZ its so cool
Because vanilla behavior is bad and we crave for a better one which your mod provided.
I'm humbled. Thank you.
My apologies too any who tried this only to find it crash. I had my file structure wrong in my Mods folder. I've fixed the few dozen XML typos and the mod is live and working now with an updated link.
Updated for 2.14. Changes listed in edited post. Link updated.
With thrusters now giving jamming bonuses, I'm looking at ways to limit stacking of flat evasion bonuses, probably through making some multiplicative and others having smaller flat plus small multiplicative bonuses. Hope to have that worked out in a week or so.
Love the mod thanks for all your hard work
Cheers
There are many great features available to you once you register, including:
Sign in or Create Account