I've been working on a concept for a mod for the past few days. I'd like to see if others might have a use for it.
In essence, DeadlierNights keeps track of whether players are near a light source or not during the night. If they stand in complete darkness, they accrue one point of "exposure" per second. Once this exposure level reaches certain thresholds, negative potion effects are applied and an optional message is sent to the client.
Once the light level rises or day breaks, the exposure level either instantly drops to zero or gradually declines (as specified in the config). Potion effects are lifted as the level declines below their respective thresholds.
This is designed to make it a touch harder to stomp around at night with impunity. Players are safe as long as they have any light (although I might add this as a config option), so they won't have trouble indoors.
The mod is available on BukkitDev. However, due to the frequency of my alpha builds, the version there will likely be out of date.
I've got a GitHub repo here if you'd like to check out the source. It also has a copy of the latest .jar- note that it may or may not be stable.
The mod automatically creates an example config file. I'll add proper documentation for it later.Some planned updates, in no particular order:
Replace the current config loading system with YAML
Add config options to change where and when the effects take place (in caves, for example)
Save exposure levels during server restarts
Add a command to clear a player of exposure
Fix a bug that causes potion effects to get stuck upon login
Improve the in-game commands to provide more flexibility
Add permissions nodes for in-game commands (important!)
Add permissions nodes to exclude certain users from the negative effects
Implement other consequences- increased/stronger mobs near the player and so forth
Feedback/criticism/suggestions are all welcome. I'm still quite a greenhorn with Bukkit's API, so I'll likely be making some major revisions.
Update: I've made some significant improvements and have therefore bumped the project to the 0.02 alpha milestone. Next up is more interesting content and less behind-the-scenes stuff.
Update 2: 0.03a is out. It features new mob spawning mechanics that buff mobs near players whose exposure levels are too high. It also fixes some bugs and makes the config files a lot easier to work with.
I've been working on a concept for a mod for the past few days. I'd like to see if others might have a use for it.
In essence, DeadlierNights keeps track of whether players are near a light source or not during the night. If they stand in complete darkness, they accrue one point of "exposure" per second. Once this exposure level reaches certain thresholds, negative potion effects are applied and an optional message is sent to the client.
Once the light level rises or day breaks, the exposure level either instantly drops to zero or gradually declines (as specified in the config). Potion effects are lifted as the level declines below their respective thresholds.
This is designed to make it a touch harder to stomp around at night with impunity. Players are safe as long as they have any light (although I might add this as a config option), so they won't have trouble indoors.
This sounds like the perfect fit for my survival pack.
I've been doing some major work on the plugin, which should be up to v0.05 in reasonable time.
However, I have 1,500 lines of code that could be seriously condensed by rewriting the config loading scheme to use the built-in Bukkit Config API. That's going to require a lot of effort.
As for features, though, things are going pretty well. These are all the potential effects from exposure at the moment:
Potion debuffs
Buffed mob spawns
Additional mob spawn events (customizable range, so they can appear quite near you)
"Scares" such as random noises
Once I clean up the code a bit I'll try to get a new version out and approved on BukkitDev. Thanks for the interest!
In essence, DeadlierNights keeps track of whether players are near a light source or not during the night. If they stand in complete darkness, they accrue one point of "exposure" per second. Once this exposure level reaches certain thresholds, negative potion effects are applied and an optional message is sent to the client.
Once the light level rises or day breaks, the exposure level either instantly drops to zero or gradually declines (as specified in the config). Potion effects are lifted as the level declines below their respective thresholds.
This is designed to make it a touch harder to stomp around at night with impunity. Players are safe as long as they have any light (although I might add this as a config option), so they won't have trouble indoors.
The mod is available on BukkitDev. However, due to the frequency of my alpha builds, the version there will likely be out of date.
I've got a GitHub repo here if you'd like to check out the source. It also has a copy of the latest .jar- note that it may or may not be stable.
The mod automatically creates an example config file. I'll add proper documentation for it later.Some planned updates, in no particular order:
Fix a bug that causes potion effects to get stuck upon loginImprove the in-game commands to provide more flexibilityAdd permissions nodes for in-game commands (important!)Add permissions nodes to exclude certain users from the negative effectsImplement other consequences- increased/stronger mobs near the player and so forthUpdate: I've made some significant improvements and have therefore bumped the project to the 0.02 alpha milestone. Next up is more interesting content and less behind-the-scenes stuff.
Update 2: 0.03a is out. It features new mob spawning mechanics that buff mobs near players whose exposure levels are too high. It also fixes some bugs and makes the config files a lot easier to work with.
Looks interesting... I'll keep checking it out.
I've been doing some major work on the plugin, which should be up to v0.05 in reasonable time.
However, I have 1,500 lines of code that could be seriously condensed by rewriting the config loading scheme to use the built-in Bukkit Config API. That's going to require a lot of effort.
As for features, though, things are going pretty well. These are all the potential effects from exposure at the moment:
Once I clean up the code a bit I'll try to get a new version out and approved on BukkitDev. Thanks for the interest!