.com.unity Forums
  The Official e-Store of Shrapnel Games

This Month's Specials

Raging Tiger- Save $9.00
winSPMBT: Main Battle Tank- Save $6.00

   







Go Back   .com.unity Forums > Shrapnel Community > Space Empires: IV & V

Reply
 
Thread Tools Display Modes
  #21  
Old February 6th, 2001, 09:08 PM
LintMan's Avatar

LintMan LintMan is offline
Sergeant
 
Join Date: Oct 2000
Posts: 295
Thanks: 0
Thanked 0 Times in 0 Posts
LintMan is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Zanthis - great work!

This is one screwey damage modelling system!

I think the best fix is to allow partial component damage. If it's data storage of management concerns that prevent this - it even only needs to be tracked during combat - let's justr say that all partial damage is automatically repaired (by damage control teams) after combat (that's how I thought it already worked!), so only destroyed components would need to be repaired at space yards, etc.

If the partial damage is only tracked in combat, the data management and storage is minimal and much of the screwiness is fixed.

It sounds like OA needs some tweaking also - I'd prefer if it didn't store up points while undamaged, but if there was partial damage tracking, that should be healed. If removing the built-up repair storage made OA a bit wimpy, maybe then its repair rate could be increased.

For Crystalline, it seems like the absorption should be on a per-armor-component basis. In other words, on a ship with 4 CA's, it you hit with a single weapon for 60 points of damage, that damage would be applied to a single piece of armor, and only THAT piece's absorption would kick in, so only 15 back to shields, not 60. A separate hit on that or another CA piece would also have 15 points absorbed. (Again, this might need to be rebalanced fr more absorption if this made it too wimpy)

Lastly, multiple fighter weapons or grouped weapons, should still count as individual attacks for the above purposes. As it stands now, emissive armor is totally worthless.
Reply With Quote
  #22  
Old February 6th, 2001, 10:07 PM

Zanthis Zanthis is offline
Corporal
 
Join Date: Jan 2001
Posts: 89
Thanks: 0
Thanked 0 Times in 0 Posts
Zanthis is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Seawolf:
I am not advocating keeping track of partial component damage outside of combat. I think it would be more trouble than its worth.

Nyx:
I agree completely. This is the solution I would pick were I in MM place. Especially OA regenerating "extra armor damage." I think that is very advisable when eliminating the regeneartion build up.

LintMan:
I don't think CA should be changed in that fashion. Just fixing it so "extra [armor] damage" isn't pulled out to not only restrike shields, but re-generate shields would make massive CA armor beatable even by a weapon that did one point of damage.

Basically, as long as you were doing less damage than it could turn into shields, every other hit would do no damage.
__________________
-Zan
Reply With Quote
  #23  
Old February 7th, 2001, 01:09 AM

Drake Drake is offline
Sergeant
 
Join Date: Jan 2001
Location: Wheaton, IL
Posts: 202
Thanks: 0
Thanked 0 Times in 0 Posts
Drake is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

You actually wouldn't need to track partial damage to components outside of combat, so you wouldn't constantly need to store that information with the component, increasing its size everywhere in the game. Couldn't you just create a temp damage tracking table one combat starts for all the components? Heck, you'd only need to track components that were hit - when applying damage, if you don't see an entry for that component, it's undamaged.

Then you're probably only looking at a performance hit, the effective of which I can't determine not knowing the programming details. You might run into an issue with massive battles, but the additional amount of info should be a small percentage of what it's already tracking. Am I missing something?


I do think this ought to get passed on to Aaron, if it hasn't been already. I know it was mentioned that they know how it works, and these are just some screwy things that come up, but it may just be broken... I'm guessing that the stuff with organic armor is a bug, not an intended effect, and that the game doesn't check to make sure regenerated damage resistance points don't exceed the max for the ship. That seems more likely to me then that it's working as intended.
-Drake

[This message has been edited by Drake (edited 06 February 2001).]
Reply With Quote
  #24  
Old February 7th, 2001, 01:44 AM

Zanthis Zanthis is offline
Corporal
 
Join Date: Jan 2001
Posts: 89
Thanks: 0
Thanked 0 Times in 0 Posts
Zanthis is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Drake wrote:
quote:
You actually wouldn't need to track partial damage to components outside of combat, so you wouldn't constantly need to store that information with the component, increasing its size everywhere in the game.

True, but if components had a "current damage" stored with them, the easiest coding solution is to make it a universal change. OTOH, since I believe tactical combat is basically a separate program, using to different data structures for components may not be so bad.
quote:
Couldn't you just create a temp damage tracking table one combat starts for all the components? Heck, you'd only need to track components that were hit - when applying damage, if you don't see an entry for that component, it's undamaged.

But this gets messy. How does this "damaged" list indicate that Quantum Engine-III #6 is damaged? The components look identical, but you have six of them. Basically, extra work for the programmer. Not saying impossible, or hard, just extra work. Other solutions are easier to do and would appear to do the same thing.

quote:
I do think this ought to get passed on to Aaron, if it hasn't been already.


Yeah, guess I'll mail it off. Is se4@malfador.com the address to use?
__________________
-Zan
Reply With Quote
  #25  
Old February 7th, 2001, 02:34 AM

apache apache is offline
Corporal
 
Join Date: Dec 2000
Posts: 93
Thanks: 0
Thanked 0 Times in 0 Posts
apache is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Wow, that is some damn fine research work. Definitely organic armor should not add up extra points if there is no partial damage.

" But this gets messy. How does this "damaged" list indicate that Quantum Engine-III #6 is damaged? The components look identical, but you have six of them. Basically, extra work for the programmer. Not saying impossible, or hard, just extra work. Other solutions are easier to do and would appear to do the same thing."

But you don't have to know which one is damaged. Like you said, they are all identical. If one of your Quantum engines are partially damaged, then who cares which one it is? The program could automatically count damage on the first component in a list of identical components, if one of those are selected to be damaged. Once that one is destroyed, it could pick another component to damage.
Reply With Quote
  #26  
Old February 7th, 2001, 03:39 AM

Drake Drake is offline
Sergeant
 
Join Date: Jan 2001
Location: Wheaton, IL
Posts: 202
Thanks: 0
Thanked 0 Times in 0 Posts
Drake is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

quote:
Originally posted by Zanthis:
How does this "damaged" list indicate that Quantum Engine-III #6 is damaged? The components look identical, but you have six of them.


Well, I don't know the data structure for how the game was programmed, or any of those details. However, when I design something, usually each object has a unique identifier so other objects can refer to it. Simply keep a separate current damaged list, and on it you have the component ID, and the points of damage taken. Only necessary for combat, and anything on the list isn't damaged.

I only proposed that method though because you brought up the point that modifying the data structure of components to add partial damage might be a problem in terms of extra memory needed to process. Since you don't need the info outside of combat, restrict it to the combat engine only. If adding partial data info isn't a big deal, then add it. Either way, problem fixed.

-Drake
Reply With Quote
  #27  
Old February 7th, 2001, 05:18 AM

Zanthis Zanthis is offline
Corporal
 
Join Date: Jan 2001
Posts: 89
Thanks: 0
Thanked 0 Times in 0 Posts
Zanthis is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Again, individual component damage would be ideal in combat. But it introduces several considerations. Suppose you have two pieces of Armor III. You get hit for 20 damage and the first piece is selected (randomly). Now you take another 20 damage. Does the program a) randomly select between the two pieces b) pick the damaged piece automatically.

If b, there are easier ways to duplicate that effect without tracking component damage.

If a, you will be changing how ships take damage. With 10 pieces of organic armor, ignoring the regeneration, you could take 1490 damage and not have lost a single component! Basically, ships will get tougher.

Also, it is quite likely that the same code that handles components outside tactical combat is used in tactical combat. Making changes to the tactical code's component class means maintaining two different pieces of code. This makes bugs more likely and is generally a hassle. The other methods involve creating an entirely separate system for tracking component damage outside of the component objects. Messy and quite a bit of work.

All in all, I don't think it is necessary. With a few fixes to the current model, we'd have something that worked exactly like we expect it to. Those changes would be:

1) Stop adding "extra damage" to weapon damage. Instead, add weapon damage to extra damage.
2) Switch to two "extra damage" values. One for "extra armor damage" and one for "extra internal damage."
3) OPTIONAL. Keep track of which armor component is currently being beat on (but not yet destroyed). Also, keep track of which internal component is being beat on.

Of course, all of this isn't very useful because, in the end, the fix will be whatever Aaron decides and will likely be based on information we have no way of knowing.

As long as everything acts like its supposed to, I'll be quite happy. I consider Crystalline Armor to be the biggest offender, followed by pulling damage out to strike shields (which is part of CA's problem anyway) and OA Last. I say OA Last only because changing it without making it worthless is going to be difficult.
__________________
-Zan
Reply With Quote
  #28  
Old February 7th, 2001, 05:57 AM

Drake Drake is offline
Sergeant
 
Join Date: Jan 2001
Location: Wheaton, IL
Posts: 202
Thanks: 0
Thanked 0 Times in 0 Posts
Drake is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

I don't know that I'd have it randomly pick a component with each hit, since that would be a big change. I'm not sure it'd would've been a bad design to start with, but changing it now...

I don't think adding just one more damage value type would be sufficient. You have weapons which damage just shield generators, engines, weapons, etc. Wouldn't you need to remember each type separately?

I guess the real reason I favored component damage tracking is it more accurately reflects the 'common sense' approach of what would really happen in combat. The way it now works might have been considered an easier way to achieve the same results, but ended up giving us some odd behavior. I guess I view coming up with another workaround that should better approximate things to be more prone to bugs than new code would be.

quote:
Of course, all of this isn't very useful because, in the end, the fix will be whatever Aaron decides and will likely be based on information we have no way of knowing.


I couldn't have said it better. Without access to how it was originally written, it's hard to say with certainty that it would be easier to fix one method vs another, IMO.

-Drake
Reply With Quote
  #29  
Old February 7th, 2001, 06:34 AM

Zanthis Zanthis is offline
Corporal
 
Join Date: Jan 2001
Posts: 89
Thanks: 0
Thanked 0 Times in 0 Posts
Zanthis is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

Drake wrote:
quote:
I don't think adding just one more damage value type would be sufficient. You have weapons which damage just shield generators, engines, weapons, etc. Wouldn't you need to remember each type separately?

Whoops. Yes, you are correct. I never use component targeting weapons, so I had forgotten about them. However, you could just use the "extra internal damage" for them. That would cause a few slightly wierd effects, but all in all, I doubt you could abuse the effect or, possible, even notice it.
__________________
-Zan
Reply With Quote
  #30  
Old February 8th, 2001, 12:49 AM

Sinapus Sinapus is offline
Second Lieutenant
 
Join Date: Dec 2000
Location: Houston, TX, USA
Posts: 571
Thanks: 0
Thanked 0 Times in 0 Posts
Sinapus is on a distinguished road
Default Re: Armor, Shields and Damage (FAQ)

quote:
Originally posted by Zanthis:
Again, individual component damage would be ideal in combat. But it introduces several considerations. Suppose you have two pieces of Armor III. You get hit for 20 damage and the first piece is selected (randomly). Now you take another 20 damage. Does the program a) randomly select between the two pieces b) pick the damaged piece automatically.

If b, there are easier ways to duplicate that effect without tracking component damage.


Since armor is supposed to be hit first until destroyed, why not line up the armors and have the damage go from left to right as the damage accumulates? Use random hit determination for damage that gets inside the armor and keep track of those components' damage.

quote:
If a, you will be changing how ships take damage. With 10 pieces of organic armor, ignoring the regeneration, you could take 1490 damage and not have lost a single component! Basically, ships will get tougher.


Actually, that was what I thought the damage rating for armor was supposed to do. Which is why I only use standard armor for protection. (I use stealth armor as a cheap cloaking device early in the game. I don't play w/organic tech.)

quote:
Also, it is quite likely that the same code that handles components outside tactical combat is used in tactical combat. Making changes to the tactical code's component class means maintaining two different pieces of code. This makes bugs more likely and is generally a hassle. The other methods involve creating an entirely separate system for tracking component damage outside of the component objects. Messy and quite a bit of work.


Would it be possible to have something in tactical that adds up damage for a component, destroying it when it takes enough damage, but when you return to the regular game it only takes note of which components were destroyed and any components that survived are presumed to be functional? Say emergency repairs by the crew patched it up and such.

Say, something hits the engine with enough damage to destroy it so it gets marked with the destroyed part. Another component, say a weapon, takes some damage, but not enough to destroy it and it stays functional when tactical ends.

quote:
Those changes would be:

1) Stop adding "extra damage" to weapon damage. Instead, add weapon damage to extra damage.
2) Switch to two "extra damage" values. One for "extra armor damage" and one for "extra internal damage."
3) OPTIONAL. Keep track of which armor component is currently being beat on (but not yet destroyed). Also, keep track of which internal component is being beat on.


Keeping track of internal components sounds better to me. Just how to apportion damage w/o making it like Starfire is something I, as someone who isn't a coder, has no idea of how to implement. IIRC, you really can't make 'random' numbers, but can 'fake' it in the code somewhat. Or maybe I have no idea what I'm talking about.

So far all I can think up is taking the damage from one weapon, picking a component to hit and recording damage from left to right. If it destroys the component w/leftover damage, that damage gets transferred to the next component, either the one immediately to the right, or randomly picking a component until the damage is used up, then the next hit picks a component to do damage to. If later hits pick an already destroyed component, it will travel to the right of the component list until it reaches an undestroyed component.

Okay, it's sort of like Starfire, but with a bit more randomness to the damage locations.

quote:
Of course, all of this isn't very useful because, in the end, the fix will be whatever Aaron decides and will likely be based on information we have no way of knowing.


True.




------------------
--
"What do -you- want?" "I'd like to live -just- long enough to be there when they cut off your head and stick it on a pike as a warning to the next ten generations that some favors come with too high a price. I would look up into your lifeless eyes and wave like this..." *waggle* "...can you and your associates arrange that for me, Mr. Morden?"
__________________
--
...can you and your associates arrange that for me, Mr. Morden?
Reply With Quote
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 06:07 AM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2024, Shrapnel Games, Inc. - All Rights Reserved.