Make the Game hear you using Simple Voice Chat and Simple Voice Mechanics!
Realistic mob reactions to voice in Minecraft. Uses Simple Voice Chat for dynamic audio detection with volume and distance-based behavior.
| Category | Reaction | Threshold | Special Features |
|---|---|---|---|
| Hostile | Attack | -40 dB | Target player, alert nearby allies (NEW) |
| Neutral | Look (8s) | -35 dB | 60% reaction chance |
| Peaceful | Look (10s) | -30 dB | Flee at >-20 dB, Follow when sneaking + eye contact |
| Warden | Anger +15-60 | -20 dB | Volume & distance dependent |
| Sculk | Activate | -20 dB | Only on loud voices |
Peaceful Mobs Details:
| Environment | Range Modifier | Sensitivity | Example |
|---|---|---|---|
| Cave + Night | ~2.0x | -13 dB | VERY DANGEROUS - Mobs hear whispers from far away |
| Forest + Day | 0.75x | +3 dB | Safer - Vegetation dampens sound |
| Nether | 1.3x | Normal | Sound carries in open spaces |
| Mountain + Night | 1.56x | -8 dB | Sound echoes across peaks |
Mob Group Alerts:
Note: Sculk Sensors require Minecraft 1.19+
plugins/ folderplugins/SimpleVoiceMechanics/config.yml as neededdetection:
max-range: 16.0
min-range: 2.0
falloff-curve: 1.0 # 0.5-2.0 (0.5=linear, 2.0=steep)
environmental-modifiers:
biome-modifiers:
enabled: true # Caves echo, forests dampen
time-modifiers:
enabled: true # Night = 30% more range, 8 dB more sensitive
mob-hearing:
hostile-mobs:
group-alert:
enabled: true
max-alerts: 5 # Max mobs to summon per detection
ranges:
zombie: 16.0 # Horde radius
wolf: 20.0 # Pack radius
piglin: 18.0 # Group radius
peaceful-mobs:
enabled: true
volume-threshold-db: -30.0
max-range: 8.0
natural-behavior:
reaction-chance: 0.7 # 70% reaction probability
look-duration: 10 # Look duration in seconds
reaction-cooldown: 3 # Cooldown between reactions
flee-behavior:
enabled: true
flee-volume-db: -20.0
flee-distance: 3.0
flee-duration: 3
follow-when-sneaking:
enabled: true
require-eye-contact: true
eye-contact-range: 4.0
eye-contact-memory: 5
duration: 60
max-distance: 12.0
blacklist: [] # Exclude EntityTypes
/voicelistener reload - Reload config/voicelistener toggle <hostile|neutral|peaceful|warden|sculk> - Toggle category/voicelistener status - Show current configAliases: /vl, /voicemechanics
voicelistener.admin (default: op)hostile-mobs:
volume-threshold-db: -50.0 # Whispers detected
max-range: 24.0
falloff-curve: 0.8
environmental-modifiers:
biome-modifiers:
enabled: true # Caves are extra dangerous
time-modifiers:
enabled: true # Nights are terrifying
hostile-mobs:
volume-threshold-db: -25.0 # Only loud speaking
max-range: 12.0
falloff-curve: 1.5
group-alert:
enabled: true
max-alerts: 8 # Larger mob groups!
warden:
volume-threshold-db: -60.0 # Hears everything!
max-range: 32.0
falloff-curve: 0.5
environmental-modifiers:
biome-modifiers:
enabled: true
time-modifiers:
enabled: true
mob-hearing:
hostile-mobs:
volume-threshold-db: -50.0
group-alert:
enabled: true
max-alerts: 10 # Massive hordes!
Cave Exploration at Night:
Forest Stealth (Day):
Nether Fortress:
debug:
audio-logging: false
range-logging: false
detection-logging: false
warden-logging: false
sculk-logging: false
peaceful-logging: false
environmental-logging: false
group-alert-logging: false
Detection Flow:
Formulas:
Effective Range = Config Range × Biome Mult × Time Mult × (1.0 + (dB - Threshold) / 25.0)
Capped: 0.5× to 2.5×
Detection Probability = (1 - normalized_distance)^falloff_curve
100% at ≤ min-range, 0% at ≥ max-range
Mob Alerts = Dynamic (1-5 based on distance, closer = more alerts)
@EventHandler
public void onVoiceDetected(VoiceDetectedEvent event) {
Player player = event.getPlayer();
double decibels = event.getDecibels();
// Custom logic
}
// Access config
ConfigManager config = plugin.getConfigManager();
double threshold = config.getHostileVolumeThresholdDb();
boolean biomeMods = config.isBiomeModifiersEnabled();
// New utility classes
Biome biome = location.getBlock().getBiome();
double rangeMultiplier = BiomeModifier.getRangeMultiplier(biome);
boolean isNight = TimeModifier.isNight(world);
boolean isSocial = MobGroupAlert.isSocialMob(EntityType.ZOMBIE);
git clone https://github.com/yourusername/SimpleVoiceMechanics.git
cd SimpleVoiceMechanics
mvn clean package
MIT License