ElixirDoom.Tuning (elixir_doom v0.1.0)

Copy Markdown View Source

The numbers that decide how Doom moves and fights, as a Cauldron2D.Tuning. Defaults are Doom's own; config :elixir_doom, <setting>, value moves a default, and ElixirDoom.Game.init/1's :tuning option beats both.

Settings

  • :friction — the share of its speed a thing on the ground keeps each tic
  • :gravity — units a tic a falling thing gains each tic
  • :max_move — the fastest a thing moves, units a tic
  • :step — the highest step a walker climbs, units
  • :view_height — the player's eye above their feet, units
  • :walk and :run — forward thrust a tic walking and running, units a tic
  • :strafe_walk and :strafe_run — sideways thrust a tic
  • :turn_slow, :turn_walk and :turn_run — radians a tic turned: for the first :slow_turn_tics of a turn, then walking or running
  • :max_bob — how far the view bobs while moving, units
  • :use_range — how far a player reaches to use a switch or door, units
  • :melee_range — how far a punch or bite reaches, units
  • :missile_range — how far an instant-hit weapon reaches, units
  • :weapon_speed — how fast a weapon is raised and lowered, units a tic
  • :always_run — run without holding the run key

Summary

Functions

A tuning with overrides over the defaults.

The settings with each default taken from config where config sets one.

Functions

new(overrides \\ [])

@spec new(keyword() | map()) :: Cauldron2D.Tuning.t()

A tuning with overrides over the defaults.

spec()

@spec spec() :: Cauldron2D.Tuning.spec()

The settings with each default taken from config where config sets one.