[SCR] OOS Combat Rebalance (alpha 0.32 - 06.08.10)

The place to discuss scripting and game modifications for X³: Terran Conflict and X³: Albion Prelude.

Moderators: Scripting / Modding Moderators, Moderators for English X Forum

Post Reply
User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

[SCR] OOS Combat Rebalance (alpha 0.32 - 06.08.10)

Post by Gazz » Sat, 6. Jun 09, 19:54

OOS Combat Rebalance

Incoming message: Your Cattle Ranch L (The Hole) was destroyed by Pirate Discoverer.
Yeah. Right. I want some of what you're smoking.

This script assigns damage values that are pretty close to what the ships would have in sector.


* Required * Required * Required *
  • MARS Fire Control
    I use several of it's data arrays to set up damage values.
    As a result, this OOS script should automatically be compatible with CMOD and any other mod that comes with a proper config file 7047.

    Only the MARS data arrays have to be present. Neither you nor the AI ships need to use it.
    But of course, you could try the goblin hotkey... once. The first one's free, kid!
Supported:
  • Missile Safety
    All AI ships (and all of yours, of course) automatically use this if installed.
    Your wingmen may actually survive launching a missile now!
  • MARS Fire Control
    MARS and Missile Defense Mk2 are detected and give a bonus to OOS missile defense for those ships that use them.
    No effect on lasers, target acquisition, or the likes.
  • CODEA Weapon System
    The skill of CODEA pilots (and pilots from other Lucike scripts) affects OOS combat.
  • How to detect if OOS Combat / Damage Rebalance is installed

    Code: Select all

       $Time =  last load time
       $OOSD.Installed = get global variable: name='GZ.OOSD.ACTIVE' 
       skip if $Time == $OOSD.Installed
          $OOSD.Installed = null
    This does not only detect if the global var "is there" but if the (setup) script is present and running and has found the required MARS laser data.
Features:
  • Oh, where do I begin...
  • Simplified AI vs AI combat
    It is possible to disable all advanced features such as counterfire or believable damage calculations when no player owned ships are involved.

    To do so, delete the first line in setup.plugin.gz.oos.damage.

    It's not as pretty but when the script grinds the game to a halt it is not... helpful.
  • Logging. Logging is currently disabled by default.
    This is a beta and not even feature complete. It already works far more "reliably" than vanilla OOS combat...

    Logging is fully enabled and there's a lot of logging.
    To disable logging:
    Open 'setup.plugin.gz.oos.damage' in the script editor.
    Delete the '$Debug = 1337' line.
    Exit/Save the script.

    For those unfamiliar with the script editor:

    1. Open the script editor from your ships autopilot command window, the default hotkey is 's'
    2. Press enter to skip the intro if shows up, then press enter on the first option to bring up the scripts list
    3. Find 'setup.plugin.gz.oos.damage' in the list, select it and press enter to open the file
    4. select the line which says '$Debug = 1337' and press the 'Del' key to delete it.
    5. Press the esc key and choose yes to save changes.
    6. Press esc until you get completely out of the script editor (should be just twice more)
  • Counterfire
    Big ships can fire back at attacking ships that are smaller than max installed laser class.
    The average M2 could CF (5 seconds burst) after being attacked by an M6 or M4.

    No counterfire against targets larger than the laser class.
    Big targets are a case for using the main guns so this would be a waste of CPU time.
    All unused "counterfire points" will be used up during the ship's main attack anyway.

    This severely limits choking a huge ship with masses of small targets but you can soak up some of it's firepower with sacrificial M5 or drones...

    Effectively, all big ships (laser configuration allowing) now have multi target tracking capability without having to do any multi target tracking.
  • OWP use their lasers OOS. What a novel concept!
    They also fire more missiles IS as well as OOS and at a longer range so they can protect a sizable chunk of space.

    Improved missile selection because the default routines often select no missile (when it should) or a missile that cannot reach the target. That is fine for a ship that can chase the enemy and reduce the distance but you see... OWP are somwhat handicapped there.

    Now also supports player owned OWP, which will then use their assigned missile launch probability.
  • Missiles
    • Swarm missiles hit as 8 missiles instead of 1.
    • Don't expect heavy dumbfire missiles to hit a fighter just because it's OOS.
    • Don't expect a MARS (or MD Mk2) M2 to be an easy target for missiles, either.
    • An M5 can usually outrun a Firestorm. Usually...
    • Firing a Banshee missile does not "end the turn" of an M2.
      If a ship has lasers, it will use them.
  • Pilot skill
    The skill of the ship's pilot matters. So does your combat rank.
    Extended SETA while playing Guitar Hero does not sharpen your combat leadership skills.
  • No ammunition is used OOS.
    That any at all is aboard is sufficient.
    The OOS timing is radically different so that this would never work out. I'm not going to bother.
  • Some examples for laser adjustments.
    PSG and Flamer do serious damage OOS although less than their (game breaking) maximum potential IS damage.
    PBE only does normal damage which means about double the shield damage of HEPT.
  • More solid "under attack" notifications. Fewer freighters should be lost without notice and heavily shielded freighters (like TM) can survive several enemy fighters long enough to jump out.
    And now it actually pays to arm freighters. Their "virtual turrets" are taken into account for missile defense but (surprise?) only if they have at least one laser installed.
Will this work with all scripts? Heck if I know.

Le Clipboard, WIP, NYI, WYSIWYG, YMMV

Logging is fully enabled. Expect megabytes of lovely data.
All logs are deleted at any script version update.

There is no randomness whatsoever. That would only disturb testing and balancing.

Evasion is not yet implemented. Every M6 is hit equally well.
Attacking an M2 in a fighter is still not recommended although an Eclipse might even survive the first round.

Carriers get "attacked" from afar and are prompted to launch their fighters in advance. NYI.

PreCF-based NOS so ships can run and cry for help instead of dieing.

Possibly null out battery arrays without lasers. Skip instead of calculate.
For testing they will stay in to confirm the 0 values.

Varied skill boni like evasion or laser range are NYI.
Fight- und Tradeskill wird bereits seit der vorletzten Befehlsbibliothek gesetzt.
Es reicht wenn du die lokale Variable "pilot.union.name" abfragst.

Actual notoriety / relation consequences of boarding earmarked but NYI. Right now boarding has none. Link Lunk Lonk
(mental note: sector security level)



[ external image ]Download: ZIP

Original design & ideas thread: OOS combat - how SHOULD it work?
If I missed your pet idea (and did not shoot it down already =), just speak up.


Installation: copy the contents of the ZIP to the TC main folder.

Deinstallation: copy TC\scripts\Backup to TC\scripts
Eventually all ships will revert to the old scripts.
Last edited by Gazz on Fri, 6. Aug 10, 16:41, edited 59 times in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sat, 6. Jun 09, 19:55

Target / Laser classes
  • There are no individual lasers OOS. Each ship has a Light, Medium, and Heavy laser battery, that includes all apropriate lasers.

    Laser class: Heavy
    Any laser with
    ( Shield.DPS > 22000 OR Hull.DPS > 8000 ) AND Range > 4500

    Laser class: Light
    Bullet.speed > 580
    I'd like it higher but that would exclude EMP and leave terran fighters without any "light" laser.

    Laser class: Medium
    Anything else

    Ships are equally classed as Little / Big / Huge, as per the X3 object classes.
    Stations count as huge if anyone was going to ask...

    The damage of a laser now depends on what it is shooting at.
    Since there are laser classes of ( 0 / 1 / 2 ) and target classes of ( 0 / 1 / 2 ),
    Target.Class - Laser.Class = a damage index
    PPC shooting at an M5 would be -2.

    Code: Select all

    Damage     Resulting
    Index      Damage (%)
      -2         10 
      -1         60
       0        100
       1        110
       2        120
Carriers
  • Any ship with more than 10 hangars has it's firepower reduced by ( hangars / 2 ) %.

    This is actually a very small adjustment and may have to be increased further.
    In Sector, carriers are seriously hampered by their laser generator.

    And even if they are equal to M2 in your mod - I feel that it's more realistic when carriers actually have to use fighters to perform equal or better than an M2.

Damage of turret lasers
  • Based on my test data from MARS, turret lasers have been tuned to a likely IS damage.

    On top of that, the DPS of all turrets is obviously halved.

Damage of cockpit lasers
  • The faster a ship is, the more time it spends "breaking" and flying away and... generally not shooting the target.

    This is not yet modified by the actual stats of the laser, only how the ship's own speed affects the time it can fire at targets.

    These values pretty much correspond to how it works IS.


    % of cockpit laser DPS = A / ( Speed + B )

    Target Class 0 . . . A= 13860 . . . B= 750
    (small ship)

    Speed . . . % of cockpit lasers
    90 . . . 16
    120 . . . 15
    160 . . . 15
    190 . . . 14
    300 . . . 13
    400 . . . 12
    500 . . . 11



    Target Class 1 . . . A= 10780 . . . B= 300

    Speed . . . % of cockpit lasers
    92 . . . 27
    126 . . . 25
    172 . . . 22
    360 . . . 16



    Target Class 2 . . . A= 10500 . . . B= 140

    Speed . . . % of cockpit lasers
    96 . . . 44
    111 . . . 41
    121 . . . 40
    132 . . . 38

Based on their skills, pilots get boni.
  • Your own fight / trade rank affects all your ships.
    It is weighed at 1/3 while the pilot's skill (if applicable) makes up the other 2/3.

    A System / Universe Trader has a trade skill of (UT level + 5 ) so it can reach 30.

    Damage bonus:
    If the pilot is flying a trader (TS/TP/TL), the trade skill is used.

    Code: Select all

    Skill      Dmg
    Level     Bonus (%)
           Fight  Trade
      0      -5    -4
      1      -5    -4
      2      -4    -4
      3      -4    -4
      4      -3    -3
      5      -3    -3
      6      -2    -3
      7      -2    -3
      8      -1    -2
      9      -1    -2
     10       0    -2
     11       0    -2
     12       1    -1
     13       1    -1
     14       2    -1            
     15       2    -1
     16       3     0
     17       3     0
     18       4     0
     19       4     0
     20       5     1
     21       5     1
     22       6     1
     23       6     1
     24       7     2
     25       7     2
     26       8     2
     27       8     2
     28       9     3
     29       9     3
     30      10     3
    

Vanilla TC Laser data as used OOS
  • Code: Select all

    OOS Combat  upgrading  from v27 to v 28,  using data of MARS v462
    OOSD:  Laser list - base damage values
    Laser.size.class;DPS shield;DPS hull;DPS pierce;speed corrected %;Laser
    0;10885;1624;0;90;SPARE LASER 1;Amount:;100
    0;7758;11083;0;86;Fusion Beam Cannon;Amount:;100
    2;28043;4986;0;60;Photon Pulse Cannon;Amount:;100
    2;13638;5178;0;54;Point Singularity Projector;Amount:;100
    0;7941;5942;0;84;Phased Array Laser Cannon;Amount:;100
    0;10052;7100;0;90;Tri-Beam Cannon;Amount:;100
    0;10783;4054;0;90;Plasma Beam Cannon;Amount:;100
    2;24992;4422;0;54;Incendiary Bomb Launcher;Amount:;100
    2;43836;2516;0;66;Ion Cannon;Amount:;100
    0;9652;5790;0;90;Gamma Kyon Emitter;Amount:;100
    2;25432;10809;0;60;Gauss Cannon;Amount:;100
    1;5234;217;0;40;Ion Pulse Generator;Amount:;100
    1;5220;1934;0;52;Matter/Anti-Matter Launcher;Amount:;100
    1;4641;1720;0;52;Prototype Matter/Anti-Matter Launcher;Amount:;100
    1;4714;1571;0;48;Concussion Impulse Generator;Amount:;100
    0;4504;2702;0;90;Beta Kyon Emitter;Amount:;100
    1;5771;2078;0;56;Ion Shard Railgun;Amount:;100
    0;2861;457;0;32;Energy Bolt Chaingun;Amount:;100
    0;4493;475;0;62;Phased Repeater Gun;Amount:;100
    1;4524;752;0;48;High Energy Plasma Thrower;Amount:;100
    0;11561;1745;0;90;Flak Artillery Array;Amount:;100
    0;1677;671;0;32;Electro-Magnetic Plasma Cannon;Amount:;100
    0;1504;601;0;32;Experimental Electro-Magnetic Plasma Cannon;Amount:;100
    0;9538;1547;0;72;Starburst Shockwave Cannon;Amount:;100
    0;8533;1384;0;72;Prototype Starburst Shockwave Cannon;Amount:;100
    0;9223;1376;0;76;Cluster Flak Array;Amount:;100
    1;3524;594;0;40;Fragmentation Bomb Launcher;Amount:;100
    0;2183;270;0;36;Particle Accelerator Cannon;Amount:;100
    0;2101;1050;0;90;SPARE LASER 2;Amount:;100
    0;2101;1050;0;90;Alpha Kyon Emitter;Amount:;100
    0;11334;600;0;14;Phased Shockwave Generator;Amount:;100
    0;763;72;0;52;Impulse Ray Emitter;Amount:;100
    0;0;0;70;38;Mass Driver;Amount:;100
    0;16372;606;0;90;Pulsed Beam Emitter;Amount:;100
    0;2465;7;0;74;Ion Disruptor;Amount:;100
    0;3291;840;0;22;Plasma Burst Generator;Amount:;100
Last edited by Gazz on Fri, 12. Jun 09, 15:46, edited 8 times in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sat, 6. Jun 09, 19:55

Wyvern11's test results on vanilla TC lasers: http://forum.egosoft.com/viewtopic.php? ... 63#2771763

Original design & ideas thread: OOS combat - how SHOULD it work?
Last edited by Gazz on Sun, 7. Jun 09, 18:12, edited 7 times in total.

Logain Abler
Posts: 2255
Joined: Mon, 31. Oct 05, 08:44
x4

Post by Logain Abler » Sat, 6. Jun 09, 21:43

Great work, OOS that will actually work!

LA

Cronos988
Posts: 691
Joined: Mon, 27. Aug 07, 12:34
x3tc

Post by Cronos988 » Sun, 7. Jun 09, 01:00

Yay, looking forward to testing this (as soon as I get any ships to actually use OOS ;) ).

I know most of it from the discussion thread, but how did you implement missles in the end?

User avatar
apricotslice
Posts: 14129
Joined: Sun, 16. May 04, 13:01
x4

Post by apricotslice » Sun, 7. Jun 09, 01:08

Great start :)

Couple of points though....

1. Will Mars need to be turned on ? I dont use it because its far more complex than I want. I dont mind installing it for this to use the scripts, but I dont really want to run it.

2. Will this ignore mods ? I'm not sure why the carrier gets downgraded, as in my mod, the carrier kicks arse along with all my other ships. All my ships have enhanced power generation for both guns and shields. Can the ships at least be checked for power rather than making assumptions based on vanilla ?

FireLancer
Posts: 79
Joined: Wed, 9. Apr 08, 00:39

Post by FireLancer » Sun, 7. Jun 09, 01:20

Rather than downgrade carriers I think you should actually take power generation into proper account, because there are many other ships which come out overpowered OOS compared to IS due to not being able to power their guns for very long.

Mayby when working out dps for each weapons group also take into account the dps using only the power from the generator that second (ie if laser energy was 0% at the start of the second).

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sun, 7. Jun 09, 09:01

Cronos988 wrote:I know most of it from the discussion thread, but how did you implement missles in the end?
I totally guesstimate missiles, ignoring classic rules.

BTW: firing a missile no longer completes an OOS turn.
An M2 will not fire 1 Banshee and sit there happily for 30 sec.

apricotslice wrote:1. Will Mars need to be turned on ?
No. Just has to be installed so the data is available.

2. Will this ignore mods ? I'm not sure why the carrier gets downgraded, as in my mod, the carrier kicks arse along with all my other ships. All my ships have enhanced power generation for both guns and shields. Can the ships at least be checked for power rather than making assumptions based on vanilla ?
A carrier with 60 fighters is supposed to use fighters anyway. That's the basic idea behind a carrier.

This will be improved later through the counterfire system so carriers "feel attacked" long before they get into firing range.
Then they can launch their fighters in advance and the issue will mostly cease to exist.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
apricotslice
Posts: 14129
Joined: Sun, 16. May 04, 13:01
x4

Post by apricotslice » Sun, 7. Jun 09, 09:08

Ok, heres the thing......

Fighters are collision fodder. I never carry any ! I play a minimum ship game, I never use wingmen, I never use fighters on carriers.

Carriers for me, are UHaulit ships for moving capped ships around. Nothing more. The last thing I want is it launching fighters ! No point, they will just get slagged anyway.

I dont want Carriers getting into fights, but if one does OOS, I want it fighting as a real ship would.

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sun, 7. Jun 09, 09:18

apricotslice wrote:I dont want Carriers getting into fights
That part I agree with. =)

One of the many many unfinished features is an equivalent to the Navigation Override System from Reunion.
The PreCF would allow it's (problematic) detection phase with splendid efficiency and the new OOS rules give a carrier enough time to jump or flee.

PreCF allows for so many tricks to smarten up the AI at very little cost...
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
apricotslice
Posts: 14129
Joined: Sun, 16. May 04, 13:01
x4

Post by apricotslice » Sun, 7. Jun 09, 09:24

That would be a great idea.


I do sometimes put a carrier on sector defense duties, so it might encounter an odd pirate patrol it should be able to own. In those cases, it wont be set to jump out, but would be expected to fight. Likewise a TL. Often early game, carrier and TL would be doing sector defense of the home sector when not being used for specific purpose.

The thing about OOS I really hate, is it seems to ignore the actual shields the ship carried. I've seen ships with 2gigs of shields lose them like it was 200mj and I suspect its because OOS uses the default maximum shielding to do the calcs withand not whats actually on the ship. Its essential to check.

User avatar
wyvern11
Posts: 1703
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Sun, 7. Jun 09, 09:29

Wooooohoooooo !!!

Can't wait for the NYI's. You can expect some mass of testdata from me. Care for some Linux number crunching scripts to do the summing up and analyzing (Using wysiwigs just sucks if there is 2.000.000 sets of data) ?

I'm gonna write them once I got the chance to see the logfiles first
Redest du noch - oder denkst du schon ?

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sun, 7. Jun 09, 09:30

apricotslice wrote:That would be a great idea.

I do sometimes put a carrier on sector defense duties, so it might encounter an odd pirate patrol it should be able to own. In those cases, it wont be set to jump out, but would be expected to fight.
Even if a carrier gets a 20% or 30% malus - it's still heavily armed and more than able to snuff the odd pirate patrol.

The thing about OOS I really hate, is it seems to ignore the actual shields the ship carried.
No, it doesn't.
Laser damage is quite extreme OOS.
A fully equipped M7 (or Springblossom...) can instakill an M2. One shot.
Oh, it's rare but the laser damage distribution is very spikey.

Ask Wyvern about that. He's the Legendary Leafer through Ludicrously Long Logs.
Last edited by Gazz on Sun, 7. Jun 09, 09:37, edited 1 time in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
apricotslice
Posts: 14129
Joined: Sun, 16. May 04, 13:01
x4

Post by apricotslice » Sun, 7. Jun 09, 09:32

Ok, take your word for that. :D

Makes what you said about lasers make a bit more sense.

User avatar
wyvern11
Posts: 1703
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Sun, 7. Jun 09, 09:36

@apricotslice

http://forum.egosoft.com/viewtopic.php? ... &start=225

heck, i really should have opened a thread in english too
Redest du noch - oder denkst du schon ?

User avatar
apricotslice
Posts: 14129
Joined: Sun, 16. May 04, 13:01
x4

Post by apricotslice » Sun, 7. Jun 09, 09:37

Sorry, I only have english, bad english and cobol. :D

You'll have to summarise whats there.

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Sun, 7. Jun 09, 09:50

apricotslice wrote:I dont want Carriers getting into fights, but if one does OOS, I want it fighting as a real ship would.
You're in my world now. MWAHAHAHAHA!

wyvern11 wrote:Can't wait for the NYI's.
Heh. It's just a very basic well... alpha. =)

I listed many but have probably still missed some ideas from the discussion thread. The PreCF system alone has so many possibilities!

You can expect some mass of testdata from me. Care for some Linux number crunching scripts to do the summing up and analyzing (Using wysiwigs just sucks if there is 2.000.000 sets of data) ?

I'm gonna write them once I got the chance to see the logfiles first
So far I don't have any Linux installation on any of my computers.
Due to my MMORPG days of madness I'm surrounded by 3 computer systems so I could play 5 or 6 characters at once. (not macroed... swift fingers =)

I'll be perfectly happy with just the results. There's still so much to do here. =)
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

shinyclef
Posts: 32
Joined: Sun, 2. Sep 07, 13:25

Post by shinyclef » Sun, 7. Jun 09, 11:22

Oh bloody awesome gazz! It looks like you're doing all the big issue fixes that egosoft just ignored with your turrets fix and now OOS combat improvement! I will download it right away!

User avatar
wyvern11
Posts: 1703
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Sun, 7. Jun 09, 12:14

@gazz

you need no linux installation - either use a live system or a winbash - gonna test one and post a link...

links:
http://win-bash.sourceforge.net/
http://www.cygwin.com/

tests this evening or later
Heh. It's just a very basic well... alpha. =)

I listed many but have probably still missed some ideas from the discussion thread. The PreCF system alone has so many possibilities!
so lets use it and develop it to a beta ...
Redest du noch - oder denkst du schon ?

Cronos988
Posts: 691
Joined: Mon, 27. Aug 07, 12:34
x3tc

Post by Cronos988 » Sun, 7. Jun 09, 12:44

apricotslice wrote:Ok, heres the thing......

Fighters are collision fodder. I never carry any ! I play a minimum ship game, I never use wingmen, I never use fighters on carriers.

Carriers for me, are UHaulit ships for moving capped ships around. Nothing more. The last thing I want is it launching fighters ! No point, they will just get slagged anyway.

I dont want Carriers getting into fights, but if one does OOS, I want it fighting as a real ship would.
I guess Carriers would only launch those fighters that have a "guard" or similar combat command on the carrier.

I guess it would not require to much CPU Power to check docked ships's commands?

But think about it this way: When you pu 30 discoveres on your carrier which launch when the carrier is attacked, you will have a very good distraction allowing your carrier to jump out ;)

Post Reply

Return to “X³: Terran Conflict / Albion Prelude - Scripts and Modding”