Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adjust heavyduty lights #77667

Merged
merged 5 commits into from
Nov 11, 2024

Conversation

ampersand55
Copy link
Contributor

Summary

Balance "Buff heavy-duty flashlight and adjust heavy-duty headlamp to match heavy-duty flashlight"

Purpose of change

Continuation of #77461 but with heavy duty versions.

The heavy-duty headlamp is from a recipe that uses heavy-duty flashlight, and it can be reversed into a heavy-duty flashlight, therefore we should expect them both to function the same way. However, in the transformation to a headlight we lose weight, volume and makes it take light-batteries instead of built-in batteries.

Also buff heavy-duty flashlight to be more distinct from flashlight based on emergency response flashlights.

The current heavy-duty flashlight is based on this item:

https://www.amazon.com/dp/B00Y8AHZYC

Which is hard to imagine strapping to your head as a headlamp. It also doesn't fit its item description where it's made from heavy-duty aluminum.

A heavy-duty aluminum LED flashlight, often used by security guards. It even works underwater, and it's not bad for smacking hooligans. It also has a shoulder strap on it's handle, for easier transportation.

Describe the solution

As with the regular headlight in #77461, I'm going to assume an efficiency of 150 lumen / W and look at the batteries and advertised burn time, and then calculate lightness and power draw value from there as the advertised brightness/lumen values varies so widely from brand to brand.

My assumptions is that we want this:

  • The flashlight should be a sturdy heavy-duty item
  • It should be able to be converted to a headlamp
  • It should be sufficiently different from a regular flashlight

I propose we base the heavy-duty flashlight on a flashlight designed for hazardous environments for use by e.g. firefighters and the mining/petroleum industry. They are usually marketed with certifications such as ATEX and/or NFPA.

Most of these share the following specs:

  • 200-350 grams
  • 200-350 lumen
  • Drop/impact resistant to 1.5-2 meters
  • Powered by 3-4 AA batteries or internal rechargeable battery.

This is based on Nightstick xpp-5564rxa and xpp-5462rx. A headlight and flashlight from the same company with similar specs.

Model Lumen Batteries weight runtime high
xpp-5564rxa 320 4xAA 311 g 6.75 h
xpp-5462rx 275 3xAA 265 g 8 h

Assuming a MEDIUM_BATTERY corresponds to 3xAAA batteries and AA batteries have twice the energy density of AAA batteries. I'm going to set an internal battery with twice the storage capacity of regular flashlight (112 kJ).

From this and advertised burn time of 7 hours I will set its adjusted nominal lumen value to 650:

https://www.wolframalpha.com/input?i=112+kJ+%2F+7+hours+*+150+lumen+%2F+watt+in+lumen

Comparison between regular flashlight/headlight and old/new heavy-duty flashlight/headlight:

Item Light Power draw burn time weight battery
regular flashlight LIGHT_300 1560 mW 10 h 140 g 56 kJ (medium)
(old) heavy-duty flashlight LIGHT_500 6000 mW 2h 13m 720 g 48 kJ (built in)
(new) heavy-duty flashlight LIGHT_650 4000 mW 7h 290 g 112 kJ (built in)
  • Light radius regular flashlight: 11 squares from player (full) 19 squares from player (dim)
  • Light radius hd flashlight: 17 squares from player (full) 25 squares from player (dim)

Describe alternatives you've considered

Making the heavy-duty flashlight be a floodlight like this model:

https://www.nightstick.com/collections/fire/products/xpr-5581rx

But then it would be harder to use as a melee weapon and to convert to a headlamp.

Testing

It loads and seems to work as expected in game.

Additional context

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Items: Armor / Clothing Armor and clothing Game: Balance Balancing of (existing) in-game features. json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Nov 8, 2024
@github-actions github-actions bot added the Code: Tests Measurement, self-control, statistics, balancing. label Nov 8, 2024
@ampersand55
Copy link
Contributor Author

Test told me to place the heavy-duty flashlight in expected_dps_data, so I did. The heavy-duty flashlight just barely passes the weapon threshhold of >5 dps.

  'heavy_flashlight_on' is a weapon, but is not included in DPS tests.  Please
  place it in the appropriate file in data/mods/TEST_DATA/expected_dps_data.

Co-authored-by: Anton Burmistrov <[email protected]>
@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Nov 8, 2024
@ampersand55
Copy link
Contributor Author

I assume the overmap test fail is unrelated to this PR.

@Night-Pryanik Night-Pryanik merged commit 96c9ee4 into CleverRaven:master Nov 11, 2024
18 of 24 checks passed
@ampersand55 ampersand55 deleted the adjust_heavyduty_lights branch November 14, 2024 04:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions Code: Tests Measurement, self-control, statistics, balancing. Game: Balance Balancing of (existing) in-game features. Items: Armor / Clothing Armor and clothing [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants