Author Topic: Hide animation subsystems from the damaged subsystems list  (Read 492 times)

0 Members and 1 Guest are viewing this topic.

Hide animation subsystems from the damaged subsystems list
Is there a flag to add to a subsystem to make it not show up in the damaged subsystem list? Or is there any other way to accomplish this? Thank you in advance!
« Last Edit: September 14, 2019, 02:14:08 am by Durandal7 »

 

Offline 0rph3u5

  • 211
  • Someone should label the Future: Assembly Required
    • Steam
    • Twitter
Re: Hide subsystem from the damaged subsystems list
I am guessing you are doing this with a model that has animated subobjects?

I am not aware that there is option per se, but have you tried setting $Subsystem: to something like
Code: [Select]
$Subsystem: {name}, 0, {value} ?
That should make it immune to damage...

Another idea would be to use $Armor Type: and armor.tbl to give it an armor type that multiplies all damage by 0 - thus making the subsystem immune to damage

Either way you may have to appy the flag "damage as hull" - although I am not sure how that works; but if I think it does what I think it does (applying the damage of a hit over to the hull doing calculations against the subsystem's stats including armor) should get you around the problem of having invurnable spots on a model...
« Last Edit: September 12, 2019, 06:37:52 am by 0rph3u5 »
"When you work with water, you have to know and respect it. When you labour to subdue it, you have to understand that one day it may rise up and turn all your labours into nothing. For what is water, which seeks to make all things level, which has no taste or colour of its own, but a liquid form of Nothing?" - Graham Swift, Waterland

"As you sought to steal a kingdom for yourself, so must you do again, a thousand times over. For a theft, a true theft, must be practiced to be earned." - The terms of Nysa's curse, Pathfinder: Kingmaker

"...because they are not Dragons."

 
Re: Hide subsystem from the damaged subsystems list
Thanks for the suggestion! Indeed its even in the wiki: "Note: Assigning zero to the %-hitpoint entry causes the subsystem to be without hitpoints, like fighterbays on some capital ships."

Yes, I'm doing this to subsystems that are movable parts and untargetable. I tried "damage as hull" and the subsystem was immune to weapons that damage subsystems only, however it was not immune to other types of weapons and eventually it got destroyed. Assigning 0% of the parent ship's hitpoints should and adding the "damage as hull" flag should indeed make it invulnerable and not a damage sponge. I'll let you know :)
« Last Edit: September 12, 2019, 06:44:07 am by Durandal7 »

 
Re: Hide subsystem from the damaged subsystems list
Setting the %HP to zero and adding the "damage as hull" flag works! Except now the subsystem rotates double than it should :/

EDIT: well, instead of creating a something-shp.tbm with the modified subsystems, I'll just make a mod with the whole shp.tbm, just with the sligthly modified subsystems. It works.
« Last Edit: September 12, 2019, 08:14:52 am by Durandal7 »

 

Offline 0rph3u5

  • 211
  • Someone should label the Future: Assembly Required
    • Steam
    • Twitter
Re: Hide subsystem from the damaged subsystems list
I tried "damage as hull" and the subsystem was immune to weapons that damage subsystems only, however it was not immune to other types of weapons and eventually it got destroyed. Assigning 0% of the parent ship's hitpoints should and adding the "damage as hull" flag should indeed make it invulnerable and not a damage sponge.

Okay, than that is just switching the damage calcuation from "{actual damage} = $Damage: * $Subsystem Factor:"1 to "{actual damage} = $Damage: * $Armor Factor:"1
1 - incomplete model, real calculation might have addtional factors

But I am glad that it works.

As for the roation issue - do you have a before and after of the table entry you can show us?
"When you work with water, you have to know and respect it. When you labour to subdue it, you have to understand that one day it may rise up and turn all your labours into nothing. For what is water, which seeks to make all things level, which has no taste or colour of its own, but a liquid form of Nothing?" - Graham Swift, Waterland

"As you sought to steal a kingdom for yourself, so must you do again, a thousand times over. For a theft, a true theft, must be practiced to be earned." - The terms of Nysa's curse, Pathfinder: Kingmaker

"...because they are not Dragons."

 
Re: Hide subsystem from the damaged subsystems list

Okay, than that is just switching the damage calcuation from "{actual damage} = $Damage: * $Subsystem Factor:"1 to "{actual damage} = $Damage: * $Armor Factor:"1
1 - incomplete model, real calculation might have addtional factors

But I am glad that it works.

That seems correct: even if it is a movable part, it should still do damage to the hull with the fighter's armor. Thanks! :D


As for the roation issue - do you have a before and after of the table entry you can show us?

I hope this is understandable:

bp-shp.tbm (the original shp.tbm of the mod I'm modifying):
Code: [Select]
$Name: UEF Kentauroi
[...]
$Subsystem: intaker,15,2
$Alt Damage Popup Subsystem Name:       Intake
$Flags:  ( "untargetable" )
$animation: triggered
$type: Afterburner
+delay: 0                   
+reverse_delay:         1000               
        +relative_angle:        -11.40,4.68,-0.50 
+velocity: 11.40,4.68,0.50   
+acceleration:         11.40,4.68,0.50   
+time: 2000       
[...]

bp-hide-subsystems.tbm (added with a -mod flag on FSO):
Code: [Select]
$Name: UEF Kentauroi
+nocreate
$Subsystem: intaker,0,2
$Alt Damage Popup Subsystem Name:       Intake
$Flags:  ( "untargetable" )
$animation: triggered
$type: Afterburner
+delay: 0                   
+reverse_delay:         1000               
        +relative_angle:        -11.40,4.68,-0.50 
+velocity: 11.40,4.68,0.50   
+acceleration:         11.40,4.68,0.50   
+time: 2000       

EDIT: removed "damage as hull" flag, see posts below.

I found that one way to solve the problem is to carry the whole bp-shp.tbm in the mod, and modifying in this huge file just the subsystems I want to fix, but it would be better if it works with a smaller bp-*-shp.tbm file that contains only what I want to modify (and not all the ships in the mod) ^^
« Last Edit: September 13, 2019, 02:58:08 pm by Durandal7 »

 
Re: Hide subsystem from the damaged subsystems list
If it's a BP ship you could take a look how they did make it work. If they didn't, you can at least claim to be as good as the BP team. :D

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Hide subsystem from the damaged subsystems list
IIRC we definitely had a way to do this, but I don't remember what it was.

 
Re: Hide subsystem from the damaged subsystems list
TL;DR: skip this post and read the post below if you are just interested in how to not make subsystems show up in the damaged subsystems HUD window.

I CTRL+F "untargetable" inside the bp-shp.tmb file, and these are all the results. For sure the Kentauroi does not work, I don't know for other crafts. EDIT: how do you make things collapsable? I don't see neither that nor spoilers tags :confused:

GTF Draco: 0 %HP, "untargetable", "carry no damage"

GTD Erebus and GTD Erebus#player: 1 %HP, "untargetable"

GVF Set Mace: 0 %HP, "untargetable"

GVF Horus-Ur: 90 %HP, "untargetable"

Vishnan Preserver: 0.5 %HP, "untargetable"

UEF Kentauroi (as an example of "this way does not work"): 15 %HP, "untargetable"

UEF Uriel: 15, 6, 100 or 10 %HP, "untargetable"

UEF Izra'il: 0 %HP, "untargetable"

UEB Durga: 15 or ? %HP, "untargetable"

UEB Vajradhara: 0 %HP, "untargetable"

UEB Lapith: 80, 15, 20, 40 or 50  %HP, "untargetable"

UED Solaris and UED Solaris#Toutatis: 0 %HP, "untargetable"

UEI Ceres: 4 or 8 %HP, "untargetable"

UEI Ceres#Resupply: 4, 5 or 10 %HP, "untargetable"

So basically you guys put 0 %HP and "untargetable" (with one instance of "carry no damage"... why?), but not "damage as hull".

From the wiki: https://wiki.hard-light.net/index.php/Subsystem#.22damage_as_hull.22
Treats subsystem as if it were hull when applying damage.

So basically this means that this flag makes the subsystem take damage from the "hull" weapon damage and not the "subsystem" weapon damage? Like, it might be invulnerable if I shoot it with weapons that deal no hull damage? I'll test it, give me a few hours!

EDIT 2:

Test 1:
bp-wep.tbm
Code: [Select]
$Name: Vulcan
$Damage: 500
$Damage Type: NormalWeapon
$Armor Factor: 1.0
$Shield Factor: 0.0
$Subsystem Factor: 0.0
vs
bp-shp.tbm
Code: [Select]
$Subsystem: communication,  20, 0.0
$Flags: ( "carry no damage" )
$Subsystem: sensors,        20, 0.0
$Flags: ( "damage as hull" )
Result: communication wasn't destroyed but the hull was damaged, sensors was destroyed (couldn't tell if the hull was being damage when the subsystem was still alive, hence test 2).

Test 2:
bp-wep.tbm
Code: [Select]
$Name: Vulcan
$Damage: 500
$Damage Type: NormalWeapon
$Armor Factor: 1.0
$Shield Factor: 0.0
$Subsystem Factor: 0.0
vs
bp-shp.tbm
Code: [Select]
$Subsystem: communication,  0, 0.0
$Flags: ( "carry no damage" )
$Subsystem: sensors,        0, 0.0
$Flags: ( "damage as hull" )
Result: The hull was damaged in both cases.

Test 3:
bp-wep.tbm
Code: [Select]
$Name: Vulcan
$Damage: 500
$Damage Type: NormalWeapon
$Armor Factor: 0.0
$Shield Factor: 0.0
$Subsystem Factor: 1.0
vs
bp-shp.tbm
Code: [Select]
$Subsystem: communication,  20, 0.0
$Flags: ( "carry no damage" )
$Subsystem: sensors,        20, 0.0
$Flags: ( "damage as hull" )
Result: The communication subsystem was destroyed, the sensors wasn't.
« Last Edit: September 13, 2019, 02:07:41 pm by Durandal7 »

 
Re: Hide subsystem from the damaged subsystems list
The way to go is to set the % of ship's total hitpoints the subsystem has to zero, make the subsystem "untargetable" and remove tags like "carry no damage" and "damage as hull".

Here is a video for the tests above: https://www.youtube.com/watch?v=CZURsqTskm0

About the following link:
  • the Durga is strange because it has subsystems in which the healt is not defined (didn't change these)
  • the Lapith is strange because it has an untargetable Engine01 subsystem (didn't change this)

Here is a link with the updated bp-shp.tbm: https://drive.google.com/open?id=1V2M3FsKYDLlB7ltsC4l5sXNiVdnyRCS8 (I only modified "untargetable" subsystems in playable ships, with the exceptions above - you can check the modifications from the base file with a software like Meld)

(I also slightly modified the Kentauroi model to address the support ship docking issue, but it needs further testing + centered the eyepoint on the Durga model since cockpits are not shown by default and the cockpit is centered in the model, just 2 of the 3 seats are off-center - will publish all these most likely tomorrow)

However, in the mean time before it will hopefully be fixed in the core Blue Planet Complete, it would still be nice to implement these fixes in a mod that does not carry over the whole bp-shp.tbm and does not cause the animated subsystems to turn at twice the intended angle (see posts 4, 5 and 6) :/
« Last Edit: September 15, 2019, 09:38:24 am by Durandal7 »

 
Re: Hide subsystem from the damaged subsystems list
Setting the subsystem strength part to 0.0 will make them entirely invulnerable...

 
Re: Hide subsystem from the damaged subsystems list
Mh, I guess the topic title could be improved...
You are almost right there Nightmare, indeed it will make subsystems invulnerable but there is a notable exception: the engine subsystem. It must have HP, otherwise the ship will be disabled (the Lapith above is an example).

However I'm not talking here about the weapons, comms, navigation, sensors and engine subsystems, I'm talking about all the other subsystems that are used in a ship to create animations (for example when afterburning or drawing out weapons). When damaged, these subsystems will show in your HUD, both reducing your field of view and hiding or making harder to see if any important subsystem (the 5 above) has been damaged.

So, it's okay to make fighters animated parts invulnerable, but you are right in regards to capships flown by the player. The situation there is trikier with all those turrets...
« Last Edit: September 14, 2019, 02:20:18 am by Durandal7 »

 
Re: Hide animation subsystems from the damaged subsystems list
JSRNerdo made a capship command campaign, and there's one included in BP too, did you investigate them (just a random idea)?

There was a similar problem with a mission in TI, IIRC Black Wolf simply made all subsystems invulnerable by SEXP.

 
Re: Hide animation subsystems from the damaged subsystems list
If you make all subsystems invulnerable by SEXP, it means you have to do it for every single mission: you can more easily achieve the same editing the ship table just once. And if all subsystems are invulnerable, that means also your turrets are, so you cannot create a mission where there are enemy bombers specifically targetting your weapons (like in that Battle Captain mission where you are in a Deimos).

What does "TI" stands for?

I'll replay the Karuna command mission in BP to see if they implemented something there. I'll update you tomorrow. I'll also search the name of the campaign that JSRNerdo made.

 
Re: Hide animation subsystems from the damaged subsystems list
TI stands for Twisted Infinities, an unreleased campaign.

Nerdos short campaign is here: http://www.hard-light.net/forums/index.php?topic=93097