Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 13 14 [15] 16 17 ... 19

Author Topic: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors  (Read 178418 times)

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #210 on: November 13, 2012, 11:34:25 pm »

It seems we updated at the same time.  In response to 3, I have been plotting %nonserious injury, defined as either deflection or just bruising.  Plotting bruising and tearing separately is somewhat confusing, as they don't go to 100% ever.  Also, my search routine is designed to find a transition from 1 to zero, and it's easier to define the output such that it will look like that than to rewrite the search routine. 

I just realized I didn't add labels to the columns in the spreadsheet on DFFD - I will try to do that tomorrow.  The order isn't consistent between sheets within the file, so don't bother trying to figure it out...
Edit - I have updated the spreadsheet with column headings now, so it should be slightly less incomprehensible.

I also found that the sigmoidal transition from 100% to 0% nonserious hits seems to fit well to
% nonserious = 1-1/(1+exp(-(F-F0)/(F0/50))) for F<F0 and 1-1/(1+exp(-(F-F0)/(F0/25))) for F>F0.
This is a logisitic function, with different widths above and below the cutoff force.  F0 is the force for 50% nonserious wounds.  Note that the widths being F0/50 and F0/25 would also scale to M0/50 and M0/25 if this were converted to a plot vs momentum, as both the widths and value for 50% would be multiplied by the same factor (1.3395 in this case).   
Spoiler (click to show/hide)
The data shown are for copper bolts vs. the indicated armor material, with IMPACT_YIELD set to zero and IMPACT_FRACTURE multiplied by the indicated factor.

The true function used might be more of a gradual shift of the transition width, more along the lines of what Urist observes with %fratured and strain.  I can squint and say I even see steps in the data, but it is not accurate enough to say for sure. 

Edit #2:
Today I am running with IMPACT_FRACTURE held at the vanilla value and varying IMPACT_YIELD between zero and 1 times its vanilla value.  Hopefully this should help explain what YIELD does.  I'm hoping it will be easier to interpret this since we have clear results for what fracture does when YIELD=0.

On another note, I think maybe a good way to describe the two types of deflection would be:
1) The projectile absorbs the force of the blow.  This would be the "ricochet" deflections that occur if IMPACT_YIELD of the projectile is too low.
2) The armor absorbs the force of the blow.  This is what we are working on right now.  This does not appear to be entirely elastic, as I first thought (as the armor can be dented or partially fractured and still "deflect" the blow), so that's really not a good description here either.
« Last Edit: November 14, 2012, 02:01:32 pm by Pirate Bob »
Logged

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #211 on: November 14, 2012, 09:44:48 pm »

Finally, here are my results for force scans of all armor materials using Urist's new uniform armor and contact areas 2 and 10. 
Spoiler: Contact Area 2 (click to show/hide)
Spoiler: Contact Area 10 (click to show/hide)
I ran for both copper and iron bolts at contact area 10, and the results are identical when plotted vs. bolt momentum.  Here is a table of the momentum for 50% of hits either deflected or causing only bruises.
Spoiler (click to show/hide)
It appears that Urist is correct, and the momentum required for 50% serious wounds is multipled by Contact Area*LAYER_SIZE rounded to hundreds (rounding up to 100, and rounding down for numbers above 100).  In this scheme, Contact Area 2 rounds to 100, and contact area 10 rounds to 200.  Correspondingly, the momenta for Contact Area 10 are exactly twice those for Contact Area 2.  I will eventually have to confirm this by systematically varying Contact Area.

The equation we have so far is:
momentum = IMPACT_FRACTURE * round100(CONTACT_AREA*LAYER_SIZE)/(2250000-f1(IMPACT_YIELD)) - f2(IMPACT_YIELD).
The functions f1 and f2 are not yet clear, and may depend on more than just IMPACT_YIELD. 

I also have some results for varying IMPACT_YIELD at constant IMPACT_FRACTURE which I will try to post later.  Hopefully they will help clarify things further.

Update:  Here is the full spreadsheet of these results on DFFD
« Last Edit: November 15, 2012, 08:31:29 am by Pirate Bob »
Logged

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #212 on: November 15, 2012, 02:52:42 am »

I then tried to find the exact values of IMPACT_STRAIN_AT_YIELD below which bruising stops for iron bolts vs steel skin:
Code: [Select]
Velocity  Nobruising  Bruising
35        1282         1283
40        1111         1112
48        925          926
55        806          807
60        735          736

This data can be represented by:
Strain = 48539 * (Velocity ^ -1.023)
OR perhaps by:
Strain = 1/(0.00002294 * Velocity - 0.00002035)
This data appears to roughly fit momentum = 50,000/STRAIN_AT_YIELD.  This strongly suggests that ... is the same transition I find for the sharp cutoff in deflection at momentum = 50,000/STRAIN_AT_YIELD. 

Edit:  Is it correct that this transition goes from zero to 100% bruising, with no intermediate regime?

Also, I haven't had time to test yet, but at least with the old non-uniform armor 50,000/strain wasn't exact (especially at low velocity/high strain) so I wouldn't worry that there's a slight difference.

I tried to find the dependance of the above "bruising of stuff through the armor (or metal skin)" on IMPACT_YIELD.

Spoiler (click to show/hide)

It does at least involve momentum rather than velocity, as I can change out the iron bolt at v=48 with a lead bolt at v=33. I also noticed regions where there was 50% bruising or something rather than a 0 to 100% transition when varying IMPACT_STRAIN_AT_YIELD and IMPACT_YIELD. The smooth transitions occurred between 893 & 910, as well as between 910 & 926. I couldn't detect any intermediate values between those numbers. The smooth transitions appeared to be the usual "stepped results" thing, where the larger strains or fracture percents coincided with the bruising.

There appears to be a sharp (or narrow smooth) transition between 878 & 893.

So sometimes the bolt has enough "something" that it needs an ISAY of under 893 to deflect rather than an ISAY of under 910, given an IMPACT_YIELD ~950000 and a momentum ~56.5.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #213 on: November 15, 2012, 09:19:32 am »

First off, I added a link to the spreadsheet with my scan over all materials to my previous post.

I finished most of my scan of IMPACT_YIELD last night.  Here are the results for Iron, Steel, and Adamantine
Spoiler (click to show/hide)
I also plotted a zoom in of Iron by itself.  A spreadsheet of results is also posted on DFFD.  I have results for bronze which I will add later, but I doubt they will be very interesting.  In all cases, the lines represent momentum=(IMPACT_FRACTURE-IMPACT_YIELD/2)/22500.  This gives an excellent fit to the data everywhere.  Once again, Urist has proven to be correct, as he proposed this equation several days ago based on very sparse data...

If we zoom in on iron, there are in fact systematic differences from this equation.  I think that these result from the steps that Urist sees when looking at strain or %fracture, and agree that they likely have some dependence on IMPACT_STRAIN_AT_YIELD.  If you look closely at mine and Urist's previous data from varying IMPACT_STRAIN_AT_YIELD, you will see that it does seem to cause some slight changes in the results, but no clear systematic change.  We therefore both concluded that it doesn't do anything.  I now suspect that it may influence the exact location of the steps, without changing the average shape of the overall curve.  Probably the steps are another weird rounding thing.  For example, the code might multiply a quantity by IMPACT_STRAIN_AT_YIELD, round the result, and then divide it by IMPACT_STRAIN_AT_YIELD, which would result in steps that move around as you change IMPACT_STRAIN_AT_YIELD, but no clear dependence on IMPACT_STRAIN_AT_YIELD.

In any case, I have convinced myself that momentum=(IMPACT_FRACTURE-IMPACT_YIELD/2)*(CONTACT_AREA*LAYER_SIZE)/2250000 captures the behavior sufficiently well.  I need to verify that (CONTACT_AREA*LAYER_SIZE) multiplies both the YIELD and FRACTURE terms equally, and that this formula continues to hold for larger CONTACT_AREA.  If someone else finds evidence that IMPACT_STRAIN_AT_YIELD is important, I am certainly open to further investigation, but my results so far indicate that it mainly determines the shift from deflection by armor to harmless bruising through armor, which is of minimal importance for determining armor effectiveness.

I am planning to move on to using our results to attempt to balance projectile performance against armor.  In particular, I noticed that steel with CONTACT_AREA=2 and iron with CONTACT_AREA=10 are both penetrated at about momentum=75.  To me that suggests an attractive set of parameters:  Increase contact area to 10, and then set velocity so that bolt momentum~75.  Then iron helms and breastplates (thickness=20), as well as overlaps, will deflect bolts sometimes, and other areas of iron armor will not deflect at all.  Steel helms, breastplates, and overlaps will deflect 100% of the time, while other areas will deflect only part of the time.  Adamantine will always deflect 100% of the time, and other armors will do nothing.  I personally would prefer a system where all armors could have some finite chance of deflecting (think a hit at a grazing angle - you can skip a rock off water if the angle is low enough), this is not possible with the current mechanics.  I suppose gameplay wise there is not a significant difference between zero deflections and 1% deflections anyway.

Regardless, my goal is not to figure out the "best" set projectile parameters to give "proper" performance.  I plan to explore a variety of conditions and report the results, so that modders (and perhaps even developers) can make their own decisions about what parameters to use.

Edit - I realized I may be getting a little bit ahead of myself, as we still have to see how chainmail works.  I strongly suspect that it just converts edged damage to blunt damage regardless of momentum so long as SHEAR_YIELD/FRACTURE is equal to or greater than the projectile's, but I need to verify this.  This is definitely what happens at vanilla values.  It is possible that chainmail may also deflect projectiles at lower momenta.

Edit #2- I updated my Summary to reflect our latest results.
« Last Edit: November 15, 2012, 01:59:46 pm by Pirate Bob »
Logged

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #214 on: November 16, 2012, 01:27:31 am »

... 
If someone else finds evidence that IMPACT_STRAIN_AT_YIELD is important, I am certainly open to further investigation, but my results so far indicate that it mainly determines the shift from deflection by armor to harmless bruising through armor, which is of minimal importance for determining armor effectiveness.
...
Edit - I realized I may be getting a little bit ahead of myself, as we still have to see how chainmail works.  I strongly suspect that it just converts edged damage to blunt damage regardless of momentum so long as SHEAR_YIELD/FRACTURE is equal to or greater than the projectile's, but I need to verify this.  This is definitely what happens at vanilla values.  It is possible that chainmail may also deflect projectiles at lower momenta.

Edit #2- I updated my Summary to reflect our latest results.

1. Further testing on my part finds that the "momentum = 50000/IMPACT_STRAIN_AT_YIELD" for bruising results are changed by under 5% for the whole range of IMPACT_YIELD, so therefore I think it is not related to IMPACT_YIELD except in some odd number-rounding-error kind of way. I would just use the equation as presented. The elegance of the equation is that any projectile, even a bolt travelling at the minimum velocity of 1, will cause bruises through [IMPACT_STRAIN_AT_YIELD:50000] skin. Conversely, no projectile can cause bruises through adamantine plate because it is impossibly rigid.

I think I saw (I know, bad anecdotal evidence!) one of the bruise-through-armor events during a test kill a dwarf by bruising all the way through his skull into the brain (without penetrating the armor). It is probably more "less lethal" than it is "harmless".

2. So the to-do list is:
- How does chainmail work? Can you get bruises through adamantine chainmail?
- How does SHEAR_FRACTURE and SHEAR_YIELD work?
- Does SHEAR_STRAIN_AT_YIELD do anything?
- How does contact area and armor thickness change the previously-discovered equations?
- Does overlapping pieces of armor provide the same protection as a single thicker piece of armor?

I am going to focus my attention on SHEAR_FRACTURE, SHEAR_YIELD, and SHEAR_STRAIN_AT_YIELD for the understood plate armor for now.

3. I approve of this documentation.


Those Toady quotes I linked to earlier are a gold mine. I didn't spot this one there before:
Right now, armor skill gives an increase to a deflection roll, and armor quality boosts the deflection roll, and a good deflection roll lowers the effective force of the strike.  Until armor damage goes in, there probably won't be anything more complicated.  The toughness attribute, which used to decrease damage directly, now does a similar deflection roll for strikes to tissues.
So armor user skill, armor quality, and the toughness attribute may all matter. Elsewhere he mentioned that weapon quality improves the to-hit chance and the sharpness of edged weapons. No word on blunt weapon quality.

I don't think the low elasticity (which is probably actually something like yield strain, but I found inverting the moduli convenient -- I think it's strain with scale 1000 times the percent deformation at yield) will matter for items at this point, as it only is used so far in determining some skin/soft tissue like behaviors for attacks on creatures
So the STRAIN values may only be used for the bruising-through-layers, and nothing more.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #215 on: November 16, 2012, 03:43:38 pm »

2. So the to-do list is:
- How does chainmail work? Can you get bruises through adamantine chainmail?
- How does SHEAR_FRACTURE and SHEAR_YIELD work?
- Does SHEAR_STRAIN_AT_YIELD do anything?
- How does contact area and armor thickness change the previously-discovered equations?
- Does overlapping pieces of armor provide the same protection as a single thicker piece of armor?
I am going to focus my attention on SHEAR_FRACTURE, SHEAR_YIELD, and SHEAR_STRAIN_AT_YIELD for the understood plate armor for now.
...
Those Toady quotes I linked to earlier are a gold mine. I didn't spot this one there before:
Right now, armor skill gives an increase to a deflection roll, and armor quality boosts the deflection roll, and a good deflection roll lowers the effective force of the strike.  Until armor damage goes in, there probably won't be anything more complicated.  The toughness attribute, which used to decrease damage directly, now does a similar deflection roll for strikes to tissues.
So armor user skill, armor quality, and the toughness attribute may all matter. Elsewhere he mentioned that weapon quality improves the to-hit chance and the sharpness of edged weapons. No word on blunt weapon quality.
 
1. You working on SHEAR_FRACTURE, SHEAR_YIELD, and SHEAR_STRAIN_AT_YIELD sounds great to me.  If you want me to do a run of iron vs. bronze varying IMPACT_YIELD and IMPACT_FRACTURE, let me know, as I had plans to do this eventually, but I can do it sooner than later if it would help.

I am currently running chain mail uniarmor (your armor with the [ELASTICITY_CHAIN_ALL] or whatever it is tag added to all pieces).  It does appear that all chain mail converts edged damage to blunt up to extremely high forces (something like force=64,000 is required to penetrate adamantine chain mail).  You definitely can get bruises through adamantine chain mail.  Chain mail can also provide total protection through deflection and/or conversion to only bruises at very low force (I think usually <20).  I will hopefully post complete results this weekend.

2. I had completely forgotten about dealing with skills and qualities.  I have done all tests thus far with Grand Master armor users.  I definitely will repeat some with unskilled armor users to see how much it changes, as that is trivially easy.  I should also see if changing marksdwarf/archer skills changes deflection (I usually run with these set to "Great" I think).  Changing ammo/armor qualities is a bit tricker.  I know this can be done with DFHack, but I am not an expert at using it.  If anyone happens to know how to write a script to change all the bolts/armors in the arena to a different quality, that would be very helpful.  While sGdYy409L already showed how to change one item at a time, this won't really work for large scale testing.  I can probably figure it out by looking at other scripts, but I really don't know what I'm doing so it might take me a while.  Also, on that subject, is it efficient (or even possible) to place and arm creatures using DFHack scripts, or am I better off sticking with my macros for setting up the arena?  The macros are very irritating, as maybe 10% of the time they fail to run properly (even with the computer running completely undisturbed). 
« Last Edit: November 16, 2012, 04:30:49 pm by Pirate Bob »
Logged

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #216 on: November 16, 2012, 09:37:30 pm »

...
1. You working on SHEAR_FRACTURE, SHEAR_YIELD, and SHEAR_STRAIN_AT_YIELD sounds great to me.  If you want me to do a run of iron vs. bronze varying IMPACT_YIELD and IMPACT_FRACTURE, let me know, as I had plans to do this eventually, but I can do it sooner than later if it would help.
...
2. ...  Changing ammo/armor qualities is a bit tricker.  I know this can be done with DFHack, but I am not an expert at using it.  If anyone happens to know how to write a script to change all the bolts/armors in the arena to a different quality, that would be very helpful. 
...
  Also, on that subject, is it efficient (or even possible) to place and arm creatures using DFHack scripts, or am I better off sticking with my macros for setting up the arena?  The macros are very irritating, as maybe 10% of the time they fail to run properly (even with the computer running completely undisturbed).

1. Sure, that would help and I don't have the setup right now to do those statistical runs myself.

2. Here is a script for you. You can edit this in notepad or equivalent and add/remove items to be changed in quality. The IDs come from the raw files (i.e. ITEM_ARMOR_UNIPLATE):
Code: (quality.lua) [Select]

--double dashes are comments and don't count as code

--printall(df.global.world.items.all)

for k,v in pairs(df.global.world.items.all) do
--printall(v)
--print(v.subtype.id)

if v.subtype.id == "ITEM_AMMO_BOLTS" then
--print("make bolts masterwork quality")
v.quality = 5
end

if v.subtype.id == "COPYPASTE_ME" then
--print("make X normal quality")
v.quality = 0
end

end

print("done")

Stick with macros for arming. DFHack is good at changing things in the game or getting data, but creating things from nowhere gets really complex.

I read somewhere that mouse input can spoil some macros, and that unplugging the mouse can help. Unverified.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #217 on: November 16, 2012, 10:52:04 pm »

1.  I will setup to do a full scan of bronze tonight.  If you ever want me to send you my scripts, let me know.  There's a bunch of stuff though, so unless you (or someone else) wants it I'll wait to package it up once I'm done modifying things all the time. 

2.  Thank you so much!!  That macro is perfect, and I will have no trouble modifying it to run any parameters we might want to edit.   

3.  It is true that mouse input is a problem - I have verified that.  Unfortunately, I think it's also a problem if any other process grabs attention, or if the computer just slows down, or whatever.  I have frequent issues running on my (mouseless) linux laptop with the lid closed at night.  I know that automatic updates can be an issue, but not sure what else.  I think long DF macros just fail sometimes if they don't execute fast enough or something (maybe too many commands get sent at once?).  Maybe I need to adjust the keypress repeat rate its using by adjusting MACRO_MS in data/init/init.txt?  I will try that.  I will also have my perl script look for failures, and repeat a given step of its search if it fails. 

Edit: Here are some preliminary results for iron vs. bronze.  So far they are so identical to copper vs. bronze that I had to use open symbols so that you could see both sets of data.
Spoiler: iron vs. bronze (click to show/hide)
I have also a spreadsheet with the full data set on DFFD.  I will try to run more to fill out this curve (only 3 out of the 5 points I ran actually worked :(), and then maybe also look at bronze bolts vs. iron armor.
« Last Edit: November 17, 2012, 02:10:11 pm by Pirate Bob »
Logged

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #218 on: November 18, 2012, 12:56:36 am »

Results of research into the SHEAR properties:

Methods used included changing various material properties and observing results for bolts vs armors and battle axes vs armors (in melee, not thrown!). I ran several tests where I used a metal skin instead of armor to get the wound info and more detailed combat text.

I ended up giving the armor materials the IMPACT properties of Adamantine and testing with bolts at velocity 50, so that bolts which could not cut through the armor would not fracture the armor and not cause bruising via IMPACT_STRAIN_AT_YIELD.

1. SHEAR_YIELD on the weapon material is compared to the SHEAR_YIELD on the armor material. If the armor has a equal or greater SHEAR_YIELD than the weapon, the attack is converted from an edge attack to a blunt attack. This does mean that materials can't cut themselves, and that iron can't cut bronze (bronze armor instead fractures under impact). This also means that silver, copper, wood, and glass weapons can't cut bones, and must fracture them instead, reducing the chance of severing/decapitation.

2. Presuming the weapon material has a greater SHEAR_YIELD than the armor material, if the weapon material also has a greater SHEAR_FRACTURE than the armor material, then the weapon cuts right through the armor and applies edged damage to the underlying tissue.

If the weapon material has a greater SHEAR_YIELD than the armor material, but the weapon material has a smaller SHEAR_FRACTURE than the armor material (i.e. bronze bolts vs iron armor), the armor is dented and the attack is converted from an edge attack to a blunt attack. The armor denting isn't visible unless you simulate armor with a metal skin. The denting is related to SHEAR_STRAIN_AT_YIELD since the IMPACT_* properties were Adamantine at the time, and it doesn't dent. This does mean that bronze can't cut iron either. I don't know if the denting has any effect on the momentum needed to fracture the iron armor under impact.

3. There is a "less lethal bruising" dependant on SHEAR_STRAIN_AT_YIELD (similar to the one for IMPACT_STRAIN_AT_YIELD) that can occur under certain situations (such as hitting a large creature that has a thick, cuttable, flexible hide with an axe) but it doesn't appear in vanilla bolt vs armor situations.

4. If you reduce momentum (via either the crossbow's properties or by making the bolt lighter) or reduce the MAX_EDGE of the bolt material enough, you can get situations where a bolt that should have cut right through the armor (i.e. steel bolts on iron armor) instead dents the armor. There is a narrow range of reductions where the bolt cuts through the armor but causes reduced damage to the underlying tissue. Zivilin tested if increasing MAX_EDGE changed crossbow performance and found no correlation, but he didn't try decreasing it a few orders of magnitude.

At default vanilla properties, if you then increase the contact area of bolts to 100 (to simulate broadheads), steel bolts are capable of severing hands, feet, arms, legs (even upper legs!) and heads. I imagine modders will want to change this.

Also see these Quietust quotes:
http://www.bay12forums.com/smf/index.php?topic=115683.msg3571429#msg3571429
I've just confirmed that weapon damage is based on the weapon's "sharpness", and sharpness is calculated based on the item's quality and the material's MAX_EDGE as follows:
Base: MAX_EDGE * 5/10
Well-crafted: MAX_EDGE * 6/10
Fine: MAX_EDGE * 7/10
Superior: MAX_EDGE * 8/10
Exceptional: MAX_EDGE * 9/10
Masterwork: MAX_EDGE * 10/10
I don't have ready access to an artifact weapon at the moment, but otherwise the info above is consistent with behavior from previous versions.

I noticed that the weapon sharpness is set at the time of creation, so my quality-changing script (2 posts ago) needs a line like the following in order to simulate masterwork quality bolts:
Code: [Select]
v.sharpness = 10000
Simply changing the quality doesn't update the stored sharpness.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #219 on: November 18, 2012, 07:02:01 am »

First off, I tried to add in error checking to have my script rerun a test that fails while it is doing a search, but that has broken the script completely.  I guess I will scrap that until I have time to test it more.  No new results for bronze last night - it sounds like maybe we are done with bronze anyway?

Also see these Quietust quotes:
http://www.bay12forums.com/smf/index.php?topic=115683.msg3571429#msg3571429
I've just confirmed that weapon damage is based on the weapon's "sharpness", and sharpness is calculated based on the item's quality and the material's MAX_EDGE as follows:
Base: MAX_EDGE * 5/10
Well-crafted: MAX_EDGE * 6/10
Fine: MAX_EDGE * 7/10
Superior: MAX_EDGE * 8/10
Exceptional: MAX_EDGE * 9/10
Masterwork: MAX_EDGE * 10/10
I don't have ready access to an artifact weapon at the moment, but otherwise the info above is consistent with behavior from previous versions.

I noticed that the weapon sharpness is set at the time of creation, so my quality-changing script (2 posts ago) needs a line like the following in order to simulate masterwork quality bolts:
Code: [Select]
v.sharpness = 10000
Simply changing the quality doesn't update the stored sharpness.
If this is all true, couldn't I just adjust MAX_SHARPNESS in the raws to be twice the normal value to test masterwork bolts?  I will probably try both and make sure I get the same result unless you are 100% of what will happen...

Do you think your script will work for testing armor quality without further modification, or might we need to adjust other values manually?

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #220 on: November 18, 2012, 01:49:52 pm »

...
it sounds like maybe we are done with bronze anyway?
...
If this is all true, couldn't I just adjust MAX_SHARPNESS in the raws to be twice the normal value to test masterwork bolts?  I will probably try both and make sure I get the same result unless you are 100% of what will happen...

Do you think your script will work for testing armor quality without further modification, or might we need to adjust other values manually?
Yes, let's move on from the bronze stuff.

Yes, you could double MAX_EDGE and then use my original script to just update bolt quality, and it would give the same results.

Yes, simply increasing the quality should be enough for armor quality testing.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #221 on: November 18, 2012, 10:11:46 pm »

...
it sounds like maybe we are done with bronze anyway?
...
If this is all true, couldn't I just adjust MAX_SHARPNESS in the raws to be twice the normal value to test masterwork bolts?  I will probably try both and make sure I get the same result unless you are 100% of what will happen...

Do you think your script will work for testing armor quality without further modification, or might we need to adjust other values manually?
Yes, let's move on from the bronze stuff.

Yes, you could double MAX_EDGE and then use my original script to just update bolt quality, and it would give the same results.

Yes, simply increasing the quality should be enough for armor quality testing.
I take it that you think maybe there is more to changing bolt quality that just changing MAX_EDGE?  In any case, I will first run a specific case just with altered MAX_EDGE and also using DFHack to change quality and edge as you prescribed, and see what happens.  If there is a difference, I will have to figure out how to run DFHack scripts using my searching script.  I should probably do that anyway.

For now, I have found that reducing armor user skill does decrease protection level by a moderate amount.  I am running a detailed study tonight (hopefully). 

JimmyBobJr

  • Bay Watcher
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #222 on: November 18, 2012, 10:45:11 pm »

Chuck these finding up on the wiki, this needs to be preserved.
Logged
Where is the chemistry
They tried chemistry once.
It created soap.
Dwarves lost interest in chemistry after that.

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #223 on: November 19, 2012, 02:37:35 am »

...
I take it that you think maybe there is more to changing bolt quality that just changing MAX_EDGE?  In any case, I will first run a specific case just with altered MAX_EDGE and also using DFHack to change quality and edge as you prescribed, and see what happens.  If there is a difference, I will have to figure out how to run DFHack scripts using my searching script.  I should probably do that anyway.

For now, I have found that reducing armor user skill does decrease protection level by a moderate amount.  I am running a detailed study tonight (hopefully).

If we go by Toady quotes, the bolt quality may affect accuracy. It's been confirmed that it changes the "sharpness", which is also changed by MAX_EDGE. I'm concerned that weapon quality might have no bearing on blunt damage, so that a high quality blunt weapon is merely more accurate.

I've experimented with bolt deflection in cases such as "steel bolt vs. iron/copper/zinc armor" and "iron bolt vs copper/zinc armor". These occur at velocity 2 with reduced MAX_EDGE values. It appears that:
MAX_EDGE * BOLT_SHEAR_FRACTURE / ARMOR_SHEAR_FRACTURE = 4994
is a "sharp" deflection criteria only for velocity=2. Bolts that don't deflect off armor at this velocity still cut through all tissues.

If I increase velocity, even to 20, then the transition becomes "smooth" rather than "sharp" and the MAX_EDGE values become small enough that we lose resolution. I can't even tell how it scales with velocity. This program code was probably made for swords and axes. It might be very hard to nerf cutting damage on bolts via modding without also making swords useless. Balance-wise, I'm ok with the concept that bolts can pierce to large depths. It may be hard to prevent bolts from severing body parts if you increase the bolt contact area.

Pirate Bob

  • Bay Watcher
  • [ETHIC: TORTURE_FOR_SCIENCE: ACCEPTABLE]
    • View Profile
Re: Dwarven Research: A Comparison Study on the Effectiveness of Bolts vs Armors
« Reply #224 on: November 19, 2012, 08:19:21 am »

If we go by Toady quotes, the bolt quality may affect accuracy. It's been confirmed that it changes the "sharpness", which is also changed by MAX_EDGE. I'm concerned that weapon quality might have no bearing on blunt damage, so that a high quality blunt weapon is merely more accurate.

I've experimented with bolt deflection in cases such as "steel bolt vs. iron/copper/zinc armor" and "iron bolt vs copper/zinc armor". These occur at velocity 2 with reduced MAX_EDGE values. It appears that:
MAX_EDGE * BOLT_SHEAR_FRACTURE / ARMOR_SHEAR_FRACTURE = 4994
is a "sharp" deflection criteria only for velocity=2. Bolts that don't deflect off armor at this velocity still cut through all tissues.

If I increase velocity, even to 20, then the transition becomes "smooth" rather than "sharp" and the MAX_EDGE values become small enough that we lose resolution. I can't even tell how it scales with velocity. This program code was probably made for swords and axes. It might be very hard to nerf cutting damage on bolts via modding without also making swords useless. Balance-wise, I'm ok with the concept that bolts can pierce to large depths. It may be hard to prevent bolts from severing body parts if you increase the bolt contact area.
My run failed again last night.  I think my item_weapon file got messed up in pre-run testing, causing my script to fail to adjust SHOOT_FORCE.  :(

1. I will try to test this eventually.  I have been meaning to make bolts blunt at some point anyway, so I can test this at the same time perhaps.

2.  It sounds like this will also require statistics?

3.  I have assumed from the beginning that the only parameters we can safely adjust are SHOOT_FORCE/SHOOT_MAXVEL, as well as contact area and penetration depth for bolts, as these only affect crossbows.  I don't want to think about the crazy complication that would arise if we tried to mess with parameters that are involved in melee combat as well.

I am still stuck trying to see how armor user impacts deflection - I am pretty sure that it does based on my one result, but I need a full run to work.  After that I will either test (as this is also trivially easy) archer/marksdwarf, or maybe start on bolt quality if I can get my scripts to interact with DFHack.  This should be quite straightforward, but lots of things *should* be easy...  Thanks again for writing a script for me to use within DFHack!  I will definitely get to testing that this week.  I was out of town this weekend, so that's why there was not much progress.

Update:  It appears that both armor user and marksdwarf/archer matter for deflection.  I believe that the 50% protection curve approximately follows momentum=(IF-IY/2)/(24000-AU*100) where IF=IMPACT_FRACTURE, IY=IMPACT_YIELD, AU=armor user level, and marksdwarf/archer level is great=12.  This is only from a few data points, so the exact curve may very well be slightly different, but it appears to follow this approximate trend.

The dependence I've seen so far for marksdwarf/archer looks weird, so I need to check that some more.  I've only run one test so far, and there was a weird plateau at 60% deflection, so I need to double check if that's real as we don't usually see plateaus with uniform armor. 
« Last Edit: November 19, 2012, 09:46:01 pm by Pirate Bob »
Logged
Pages: 1 ... 13 14 [15] 16 17 ... 19