MinecraftTransportSimulator icon indicating copy to clipboard operation
MinecraftTransportSimulator copied to clipboard

Implement mic's ammo crate damage formula thing

Open Ilya-torshov opened this issue 2 years ago • 3 comments

(this is what he wrote, plz ask him about it if anything is problematic)

blowoutpanel1 = (input("blowoutpanel? (True/False)")) if blowoutpanel1 == "True": blowoutpanel = bool(True) else: blowoutpanel = bool(False) shelltraitexplosive1 = (input("is the shell explosive? (True/False)")) if shelltraitexplosive1 == "True": blastStrength = float(input("magnitude of the HE content explosion?")) shelltraitexplosive = bool(True) else: shelltraitexplosive = bool(False) shellDiameter = float(input("shell diameter in mm?")) caseLength = float(input("case length in mm?")) stackQuantity = float(input("number of stacks?")) stackSize = float(input("rounds in each stack?")) itemSize = float(input("rounds in each ammo item?")) ammorackDetonationStrength = float(0)

if blowoutpanel == True: shellDetonationStrength = 0 elif shelltraitexplosive == True: if blowoutpanel == False: shellDetonationStrength = float(((0.0000025 * (shellDiameter * caseLength)) + (0.1*blastStrength)) ammorackDetonationStrength = float((0.5) * (shellDetonationStrength) * (stackQuantity) * (itemSize) * (stackSize) // 1) #where ammosize means the amount of rounds per single ammo item else: if blowoutpanel == False: shellDetonationStrength = float((0.0000025 * ( shellDiameter * caseLength))) ammorackDetonationStrength = float((0.5) * (shellDetonationStrength) * (stackQuantity) * (itemSize) * (stackSize) // 1) #where ammosize means the amount of rounds per single ammo item

if blowoutpanel == False: if ammorackDetonationStrength!=0: vehicleDamage = float(100 * ammorackDetonationStrength) elif openroof == True: vehicleDamage = vehicleDamage * 0.5 ammorackDetonationStrength = ammorackDetonationStrength * 0.5 else: vehicleDamage = 0

print (ammorackDetonationStrength) print (vehicleDamage)

Ilya-torshov avatar Apr 26 '22 17:04 Ilya-torshov

Time of posting, outdated constants, actual ones are in the thread

mic2139 avatar Apr 26 '22 20:04 mic2139

Will wait until final approval is posted here before implementing.

DonBruce64 avatar Apr 28 '22 02:04 DonBruce64

Marking this for 1-month timeline. If no resolve from folks, ticket gets wontdoed and closed.

DonBruce64 avatar Sep 23 '22 05:09 DonBruce64

Time of posting, outdated constants, actual ones are in the thread

Where is the thread at with new constants? I believe don was asking for those along with approval here in order to implement this.

image This comment seems to say this no longer should be implemented due to lack of interest

Colt44Magnum avatar Jan 18 '23 03:01 Colt44Magnum

Not so

mic2139 avatar Jan 18 '23 03:01 mic2139

blowoutpanel1 = (input("blowoutpanel? (True/False)")) if blowoutpanel1 == "True": blowoutpanel = bool(True) else: blowoutpanel = bool(False) shelltraitexplosive1 = (input("is the shell explosive? (True/False)")) if shelltraitexplosive1 == "True": blastStrength = float(input("magnitude of the HE content explosion?")) shelltraitexplosive = bool(True) else: shelltraitexplosive = bool(False) shellDiameter = float(input("shell diameter in mm?")) caseLength = float(input("case length in mm?")) stackQuantity = float(input("number of stacks?")) stackSize = float(input("items in each stack?")) itemSize = float(input("rounds in each ammo item?")) ammorackDetonationStrength = float(0)

if blowoutpanel == True: shellDetonationStrength = 0 elif shelltraitexplosive == True: if blowoutpanel == False: shellDetonationStrength = float((0.000004 * (shellDiameter * caseLength)) + (0.05*blastStrength)) ammorackDetonationStrength = float((0.5) * (shellDetonationStrength) * (stackQuantity) * (itemSize) * (stackSize) // 1) #where ammosize means the amount of rounds per single ammo item else: if blowoutpanel == False: shellDetonationStrength = float((0.000004 * ( shellDiameter * caseLength))) ammorackDetonationStrength = float((0.5) * (shellDetonationStrength) * (stackQuantity) * (itemSize) * (stackSize) // 1) #where ammosize means the amount of rounds per single ammo item

if blowoutpanel == False: if ammorackDetonationStrength!=0: vehicleDamage = float(100 * ammorackDetonationStrength) elif openroof == True: vehicleDamage = vehicleDamage * 0.5 ammorackDetonationStrength = ammorackDetonationStrength * 0.5 else: vehicleDamage = 0

print (ammorackDetonationStrength) print (vehicleDamage)

mic2139 avatar Jan 18 '23 04:01 mic2139

These were the constants I ended up settling on myself, there is a tool that can be used to test them if further desired.

mic2139 avatar Jan 18 '23 04:01 mic2139

@conman180 this all done now?

DonBruce64 avatar Feb 03 '23 05:02 DonBruce64

Implemented in V22.6.0.

DonBruce64 avatar Feb 06 '23 23:02 DonBruce64