Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: zookeeper on March 17, 2012, 01:48:02 pm
-
For those interested:
I've committed a new "collide submodel" subsystem flag (http://www.hard-light.net/wiki/index.php/Subsystem#.22collide_submodel.22), which causes the subsystem to only take (local) damage from shots which actually impacted the submodel, whereas the default behaviour is to take damage from any shots which fall within 2x the submodel radius (damage is attenuated based on distance from the submodel center). The damage attenuation will still take place even when the flag is used, however.
This is useful for physical subsystems which are very non-spherical/cubical such as long antennas, or for ones which have a very particular shape (such as a greebled opening in hull plating, which obviously shouldn't take damage if you hit the surrounding plating).
-
YES
So that's why the long turrets I was working with wouldn't work properly. Thanks zk.
-
Nice! :yes:
On a unrelated note (but one I was reminded off because turrets were mentioned) since you are doing great work on fixing and tweaking all these subsystem related things. Maybe you could have a look at turret barrels. Something that I always found odd is that when you hit the barrel of a turret, it doesnt damage the actual turret but instead gets counted directly as hull damage for some reason.
-
Nice! :yes:
On a unrelated note (but one I was reminded off because turrets were mentioned) since you are doing great work on fixing and tweaking all these subsystem related things. Maybe you could have a look at turret barrels. Something that I always found odd is that when you hit the barrel of a turret, it doesnt damage the actual turret but instead gets counted directly as hull damage for some reason.
Yeah, that's something that I've suspected is probably happening but have so far never bothered to verify. I'll put that on my list...
-
Wow. I love quality-of-life improvements like this. Thanks, Zookeeper!
-
This will be useful for our mod.... thanks.
-
Would such a change also mean that missiles do half as much damage as they would normally? I.e. normally it's double the value in the table because there's the direct hit damage plus the blast...
-
Would such a change also mean that missiles do half as much damage as they would normally? I.e. normally it's double the value in the table because there's the direct hit damage plus the blast...
Yes. If the missile misses the subsystem's submodel by an inch, then it will receive no damage from the missile impact, only from the blast.
-
Nice! :yes:
On a unrelated note (but one I was reminded off because turrets were mentioned) since you are doing great work on fixing and tweaking all these subsystem related things. Maybe you could have a look at turret barrels. Something that I always found odd is that when you hit the barrel of a turret, it doesnt damage the actual turret but instead gets counted directly as hull damage for some reason.
Yeah, that's something that I've suspected is probably happening but have so far never bothered to verify. I'll put that on my list...
Ok, done.
In addition to fixing that, I also made another tweak: if a shot impacts a subsystem's submodel, that subsystem will now always get dealt damage first, even if other subsystems are closer to the point of impact (turret barrels are now handled right in this case as well). Before this, it was possible to, for example, shoot at the tip of a sensor antenna and have some other nearby subsystem take most of the damage simply because the other subsystem was closer to the point of impact than the center of the antenna is, even though you were obviously first and foremost hitting the antenna.
-
Love this kind of stuff. Well done.
-
Excellent!
-
FS2 SCP: Making FreeSpace work the way you always thought it should! (tm)
-
Is this stuff all being lumped into a settings flag? Wouldn't this affect difficulty on missions like Bearbaiting?
-
Is this stuff all being lumped into a settings flag? Wouldn't this affect difficulty on missions like Bearbaiting?
The two additions in my last post? No, they're taking effect always and everywhere. I don't think either of them is a problem. Turrets not taking damage from hits to their barrels was IMO an obvious bug, and the damage prioritizing change is pretty much just a tweak which would very rarely affect things, especially in retail where non-turret physical subsystems are rare. If it's wanted, then sure I can put the latter behind a flag, but the former I definitely consider a bugfix.
In any case, these changes don't affect the four turrets at the tips of the retail Sathanas's claws, if that's what everyone's referring to by Bearbaiting.
-
Uh oh. D:
-
zookeeper, bug or not, the main issue is that retail is balanced taking bugs into account. Most of the stuff in ai_profiles is bugfixes, at least originally, but as they would have changed the gameplay significantly still can't be applied by default. So if there's a chance this is going to affect retail gameplay at all, it will still need to be flagged.
-
I reluctantly agree, no matter how crazy it might seem. The unintended consequences we've seen from minor changes like this in the past have been occasionally spectacular.
-
Sure, but the question is does it affect gameplay significantly (or even perceptibly)? Unless there are multipart turrets in retail which have barrels considerably bigger than their bases (meaning that most of the barrel doesn't fit inside the base's radius * 2), there's no significant change. If there are turrets which this would make notable easier to take out then sure I'll change it, but I'd still like to be pointed to such examples first. There ought to be plenty of people around here who know the FS2 ships by heart who could give me a few pointers.
-
You might be right - you really might be, it's possible I haven't given this enough thought. I certainly don't know the systems involved nearly as well as you do.
I guess I'm just jumpy because some recent changes have crept in and caused unintended problems. Blue Planet is basically unplayable right now due to an AI change that crept in somewhere in 3.6.14 dev. No one noticed it for a long time and now it's screwing people up. Again, though - you may be right in guessing that this just won't have any direct or indirect effects worth worrying about.
-
You might be right - you really might be, it's possible I haven't given this enough thought. I certainly don't know the systems involved nearly as well as you do.
I guess I'm just jumpy because some recent changes have crept in and caused unintended problems. Blue Planet is basically unplayable right now due to an AI change that crept in somewhere in 3.6.14 dev. No one noticed it for a long time and now it's screwing people up. Again, though - you may be right in guessing that this just won't have any direct or indirect effects worth worrying about.
What sort of change? It's possible it was my fault somehow, so I'd like to know (PM me with details if you'd like).
-
You might be right - you really might be, it's possible I haven't given this enough thought. I certainly don't know the systems involved nearly as well as you do.
I guess I'm just jumpy because some recent changes have crept in and caused unintended problems. Blue Planet is basically unplayable right now due to an AI change that crept in somewhere in 3.6.14 dev. No one noticed it for a long time and now it's screwing people up. Again, though - you may be right in guessing that this just won't have any direct or indirect effects worth worrying about.
What sort of change? It's possible it was my fault somehow, so I'd like to know (PM me with details if you'd like).
Talk to Goob, he's probably got more specifics on a good place to repro. We're all sort of fuzzily aware of it but nobody has done any rigorous testing or figured out where exactly it appeared. :sigh: Sorry we're not giving you the testing you need, I know it'd help a lot.
-
I haven't looked at the SVN logs because I haven't had time yet, Sushi, but if you'd like to take a look, the problem was reported to appear between RCs 3 and 4. Here's the thread: http://www.hard-light.net/forums/index.php?topic=80273.0
Zookeeper, FSO additions (both features and fixes) that have any potential to change balance or AI should always be off by default. The problem is that we usually don't know whether gameplay is going to be affected, and nobody has time to play through every single released FreeSpace mission to be absolutely sure. Yes, it's annoying, but what is even more annoying is when FSPort or Blue Planet mysteriously becomes unwinnable and nobody has any idea what happened. (See the thread linked above.) Then people have to go and either comb through the code or carefully compile and test builds for each SVN revision.
So this is a policy born of necessity. We want to save ourselves an awful lot of frustration and lost time down the road.
-
They're both behind game_settings.tbl flags now. (http://www.hard-light.net/wiki/index.php/Game_settings.tbl#.24Fixed_Turret_Collisions:)
-
Those two really should be in their own #Ships section.
-
They're both behind game_settings.tbl flags now. (http://www.hard-light.net/wiki/index.php/Game_settings.tbl#.24Fixed_Turret_Collisions:)
That's a super awesome feature. Thanks again.
-
They're both behind game_settings.tbl flags now. (http://www.hard-light.net/wiki/index.php/Game_settings.tbl#.24Fixed_Turret_Collisions:)
That's a super awesome feature. Thanks again.
What battuta said. Definitely going to be using both of these! :yes:
-
The turret-barrel-damage thing will definitely affect Bearbaiting.
You know how there's those big flak guns on the front of the Sathanas that will make your life miserable, and how it's standard practice to blast them with trebuchets? Previously, if the trebs hit the barrels, they do next to nothing; the only way to take out the turrets was to come in from above or below the barrels to hit the turrets themselves.
This feature will definitely make that part easier, but I consider that an improvement.
How do the new models fare in this department?
For an example, see this LP, where the guy specifically mentions having to take a precise angle at the turrets: http://lparchive.org/Freespace-2/Update%2023/