Skip to content

Advanced Difficulty Mode System #41

@BenCheung0422

Description

@BenCheung0422

Original: MinicraftPlus/minicraft-plus-revived#566

Background

The current difficulty modes include only Easy, Normal and Hard, with just a little difference in-between. The summary about all differences are listed below:

Field Difficulty Mode Note
Easy Normal Hard
Death chest expiration time 450 s 300 s 150 s
Loot drop count from Cow 1-3 1-2 0-1 Of both Leather and Raw Beef
Creeper explosion additive bonus damage 0 1 2 Calculated by: 50 * level * (1 / (distance + 1)) + bonus
Loot drop count from Creeper 1-4 1-3 1-2 Of Gunpowder
Hostile mob health factor 1 2 4 Except boss mobs; exponential of 2; calculated by:max(level^2) * health * factor
Hostile mob melee damage factor 1 2 Calculated by: level * factor
Loot drop count from Knight 1-3 0-2 0-2 Of Shard
Loot drop chance from Knight and Snake (of Key) $\frac{l}{24}$ $\frac{l}{12}$ $\frac{l}{8}$ Calculated by: level * (diff + 1) / 24
Passive mob health factor 0 1 2 Of Key; calculated by: 5 + health * factor
Loot drop count from Pig 1-3 1-2 0-2 Of Raw Pork
Player hunger stamina point 10 7 5 Player hunger point calculation process:
Only the parts affected by difficulty are included.
Let HSD be the hunger stamina decay point (all are counted additively), BDR be the bonus decay rate respectively.
When stamina (energy) is not at maximum, the HSD is counted with the BDR (doubled if the stamina point is zero);
The following occurs only when not sleeping:
if stamina is in recharging delay, the HSD is counted with 2 plus the BDR (further plus the BRD if hunger point is zero);
the HSD is counted by the natural decay rate by time and by the walking decay rate by movement;
the hunger stamina point is counted per 400 of the HSD and the hunger point is decayed per the hunger stamina point;
the health point is decayed when starving (hunger point is zero) and the health point is above the starving minimum hunger point.
Player hunger stamina bonus decay rate 0 1 2
Player hunger stamina natural decay rate per 120 ticks per 30 ticks per 10 ticks
Player hunger stamina walking decay rate per 8 steps per 3 steps per step
Player starving minimum hunger point 5 3 0
Loot drop count from Sheep 1-3 1-2 0-2 Of both Wool and Raw Beef
Loot drop count of Skeleton (of both Bone and Arrow) 1-3 1-2 1 If it is within the drop chance at that time, that number of drops for both Bone and Arrow would be dropped, else if it is in Easy Mode, there is a chance of $\frac{1}{20} \Big/ \frac{3}{10} = \frac{1}{6}$ just 10 arrows are dropped, else 0-1 Antidiou book is dropped.
Loot drop chance from Skeleton (of both Bone and Arrow) $\frac{7}{10}$ $\frac{19}{20}$ $\frac{29}{30}$
Loot drop count from Slime 1-4 1-3 1-2 Of Slime
Snake attack damage bonus 0 1 2 Overriding default damage calculation; calculated by: level + bonus
Loot drop count from Snake 0-1 1-2 Of Scale
Loot drop count from Zombie 2-4 1-3 1-2 Of Cloth only
Level mob capacity 150 300 450 Per level
Cactus attacking damage 1 2 Effective on any mob
Loot drop count from Rock tile 1 2 Of Coal only

The effects quite vary in each parts, so they should be organized and tidied in a better way.

Details

There should be a standardized damage calculation formula for most mobs; for other effects, they would be handled by the respective systems. However, to reduce the effect made by and the reliance on difficulty modes for certain enduring attributes, health points and mob capacity should be completely independent on the difficulty mode. For larger capacity for other systems, loots, hunger and stamina should be less dependent on the difficulty mode. There would be an issue tackling balancing the damages and health points based on this system, and the formula would also be included there.

The Modes would become:

  • Peaceful
  • Easy
  • Normal
  • Hard

The Peaceful mode would disable the ability to hunger and spawn hostile mobs, and reduce some damages. This would benefit some different gameplay styles. For the Normal mode, many related attributes would be using a factor of 1, while the other 2 use the ones lower or higher than that.

This setting is global and per-world, so is the same within a world. For special variations, regional difficulty or local difficulty may be used. However, this setting is changeable by OP abilities. All the attributes replying on the setting should only be taken into account at the moments of instantaneous events, but not in a period of time, so even the regional difficulty would be updated each tick.

Anyway, this system is still under consideration of implementation, or may be instead being integrated into the Game Rule System, because actually the Difficulty Modes change some behaviors of game particulars and some other attributes in some mechanisms.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions