Skip to main content

Overview

DOOM Neuron supports multiple game scenarios with different difficulty levels and training objectives. The scenario is configured via TrainingConfig.doom_config in code (not a CLI argument).
The default scenario is progressive_deathmatch.cfg, which is recommended for most training runs.

Available Scenarios

Progressive Deathmatch (Default)

Config: progressive_deathmatch.cfg
WAD: progressive_deathmatch.wad
Similar to survival mode but with enhanced gameplay mechanics:
  • Ammo Management: Kills don’t reset ammo count, encouraging proper ammo conservation
  • Movement Tweaks: Modified movement mechanics make training easier
  • Progressive Difficulty: Difficulty scales as agent improves
Best for:
  • Default training runs
  • Learning ammo management strategies
  • Agents that need to balance aggression with resource management
This is the recommended scenario for most users. It provides the best balance of challenge and trainability.

Survival

Config: survival.cfg
WAD: survival.wad
Classic survival scenario:
  • Objective: Survive as long as possible against waves of enemies
  • Ammo Reset: Kills reset ammo count (unlimited ammo when killing)
  • Difficulty: Moderate, good for testing basic combat skills
Best for:
  • Testing combat abilities without resource management
  • Agents focused on survival and kill count
  • Baseline comparisons

Deadly Corridor Curriculum

Configs: deadly_corridor_1.cfg through deadly_corridor_5.cfg
WAD: deadly_corridor.wad
A progressive curriculum with 5 difficulty stages:
1

Stage 1: deadly_corridor_1.cfg

Easiest stage - Introduction to corridor navigation
  • Minimal enemies
  • Focus on basic movement
  • Learn corridor geometry
2

Stage 2: deadly_corridor_2.cfg

Beginner stage - Adding combat elements
  • More enemies introduced
  • Basic combat required
  • Movement still forgiving
3

Stage 3: deadly_corridor_3.cfg

Intermediate stage - Balanced challenge
  • Moderate enemy density
  • Requires movement + combat coordination
  • Armor pickups become important
4

Stage 4: deadly_corridor_4.cfg

Advanced stage - High difficulty
  • High enemy density
  • Strategic positioning required
  • Resource management critical
5

Stage 5: deadly_corridor_5.cfg

Benchmark stage - Significant difficulty jump
  • This is the official benchmark
  • Massive difficulty increase from stage 4
  • Requires refined strategies
  • Agents trained on 1-4 may develop suboptimal habits (e.g., running straight for armor)
Deadly Corridor Curriculum Notes:
  • Stages 1-4 ramp difficulty gradually
  • Stage 5 is a significant jump and is the actual benchmark
  • Training through 1-4 may result in movement habits that underperform on stage 5
  • Consider fine-tuning on stage 5 with a lower learning rate to adapt behavior

Curriculum Strategy

For deadly corridor training, use this recommended progression:
Train sequentially through stages 1-4, then fine-tune on stage 5:

Scenario-Specific Tuning

Progressive Deathmatch & Survival

Default PPO parameters work well:

Deadly Corridor

Tuned parameters from testing (reference values):
The values above are tuned specifically for deadly corridor scenarios. Other scenarios (progressive deathmatch, survival) will likely require different values for:
  • Feedback scaling
  • Reward shaping
  • Ray-cast geometry
  • Curriculum pacing
Treat these as a starting point only.

Screen Resolution

All scenarios use RES_320X240 by default:
Higher resolutions require adjusting CNN parameters:

Action Spaces

Hybrid Actions (Default)

Continuous + discrete actions for high movement fidelity:
Provides:
  • Smooth movement
  • Precise aiming
  • Better visual appeal
  • Higher entropy (requires more training)

Discrete Actions

Simplified action space for faster convergence:
Provides:
  • Lower entropy
  • Faster training
  • Reduced movement fidelity
  • Less visually impressive
Only use discrete actions if hybrid actions fail to converge after extensive tuning. The movement quality is significantly reduced.

Monitoring Training

Track scenario-specific metrics with TensorBoard:
Key metrics to watch:
  • episode_reward - Total reward per episode
  • episode_length - Survival time
  • kill_count - Enemies eliminated
  • policy_loss - PPO policy gradient loss
  • value_loss - Value function error

Next Steps