User:76561198031004412/Sandbox: Difference between revisions
From MENACE Official Wiki
No edit summary |
No edit summary |
||
| Line 21: | Line 21: | ||
! Squad? | ! Squad? | ||
| ???????? | | ???????? | ||
! Shots per firer | |||
| {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} | |||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 77: | Line 79: | ||
|- | |- | ||
! Base HP Damage per shot | ! Base HP Damage per shot | ||
| 1 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((1 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 2 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((2 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 3 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((3 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 4 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((4 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 5 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((5 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 6 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((6 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 7 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((7 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 8 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((8 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 9 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((9 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 10 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((10 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 11 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((11 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 12 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((12 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 13 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((13 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 14 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((14 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
| 15 | | {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((15 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}})) }} | ||
|- | |- | ||
! Expected HP Damage per | ! Expected HP Damage per firer | ||
| {{#expr: {{#invoke:TestModule|get|{{{1|}}}|Damage}} * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((1 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(1-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 2 {{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}} | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((2 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(2-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 3 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((3 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(3-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 4 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((4 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(4-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 5 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((5 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(5-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 6 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((6 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(6-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 7 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((7 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(7-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 8 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((8 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(8-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 9 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((9 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(9-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 10 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((10 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(10-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 11 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((11 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(11-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 12 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((12 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(12-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 13 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((13 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(12-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 14 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((14 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(13-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
| 15 | | {{#expr: ({{#invoke:TestModule|get|{{{1|}}}|Damage}} - ((15 - 1) * abs({{#invoke:TestModule|get|{{{1|}}}|DamageDropoff}}))) * ((50 + {{#invoke:TestModule|get|{{{1|}}}|AccuracyBonus}} - (abs(14-{{#invoke:TestModule|get|{{{1|}}}|IdealRange}}) * abs({{#invoke:TestModule|get|{{{1|}}}|AccuracyDropoff}})))/100) * {{#invoke:TestModule|getSkillProperty|{{{1|}}}|{{{2|}}}|Repetitions}} }} | ||
|- | |- | ||
! Base Armor Damage per shot | ! Base Armor Damage per shot | ||
| Line 127: | Line 129: | ||
| 15 | | 15 | ||
|- | |- | ||
! Expected Armor Damage per | ! Expected Armor Damage per firer | ||
| 1 | | 1 | ||
| 2 | | 2 | ||
Revision as of 11:21, 4 May 2026
This is to build a proof of concept, which can then be converted into a dedicated module once the kinks are worked out. This can then be used as a point of comparison for the dedicate module to verify numbers etc.
4
16
| Weapon | R10A6 K-PAC with Launcher | Skill | AP | 0 ???? | Ammo | 16 | Squad? | ???????? | Shots per firer | 3 |
|---|
| Range (Tiles) |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Accuracy | 22% | 28% | 34% | 40% | 34% | 28% | 22% | 16% | 10% | 4% | -2% | -8% | -14% | -20% | -26% |
| Armor Penetration | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| Base HP Damage per shot | 9 | 8.2 | 7.4 | 6.6 | 5.8 | 5 | 4.2 | 3.4 | 2.6 | 1.8 | 1 | 0.2 | -0.6 | -1.4 | -2.2 |
| Expected HP Damage per firer | 5.94 | 6.888 | 7.548 | 7.92 | 5.916 | 4.2 | 2.772 | 1.632 | 0.78 | 0.216 | -0.06 | -0.048 | 0.144 | 0.588 | 1.32 |
| Base Armor Damage per shot | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| Expected Armor Damage per firer | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |


