OpenEnroth 73e68f7
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Private Member Functions | List of all members
GameConfig::Gameplay Class Reference

#include <GameConfig.h>

Inheritance diagram for GameConfig::Gameplay:
ConfigSection

Public Member Functions

 Gameplay (GameConfig *config)
 
- Public Member Functions inherited from ConfigSection
 ConfigSection (Config *config, std::string_view name)
 
 ConfigSection (const ConfigSection &other)=delete
 
 ConfigSection (ConfigSection &&other)=delete
 
Configconfig () const
 
const std::string & name () const
 
void registerEntry (AnyConfigEntry *entry)
 
AnyConfigEntryentry (std::string_view name) const
 
std::vector< AnyConfigEntry * > entries () const
 

Public Attributes

Bool AlternativeConditionPriorities
 
Int ArtifactLimit
 
Int ChestTryPlaceItems
 
Int FloorChecksEps
 
Int Gravity
 
Int KeyboardInteractionDepth
 
Int MouseInteractionDepth
 
Int MinRecoveryMelee
 
Int MinRecoveryRanged
 
Int MinRecoveryBlasters
 
Int MaxFlightHeight
 
Int MouseInfoDepthIndoor
 
Int MouseInfoDepthOutdoor
 
Int NewGameFood
 
Int NewGameGold
 
String StartingMap
 
Int PartyEyeLevel
 
Int PartyHeight
 
Int PartyWalkSpeed
 
Int RangedAttackDepth
 
Int AoeDamageDistance
 
Int ShrinkRayAoeDistance
 
Bool ShowUndentifiedItem
 
Bool TreatClubAsMace
 
Bool FixWaterWalkManaDrain
 
Float SpellFailureRecoveryMod
 
String QuickSaveName
 
Int QuickSavesCount
 
Bool NoPartyActorCollisions
 
Bool NoIndoorFallDamage
 
Float SpawnCountMultiplier
 
Int MaxActors
 
Int MaxActiveAIActors
 
Bool RegenStacking
 

Static Private Member Functions

static int ValidateMaxFlightHeight (int max_flight_height)
 
static int ValidateArtifactLimit (int artifact_limit)
 
static int ValidateInteractionDepth (int depth)
 
static int ValidateRangedAttackDepth (int depth)
 
static int ValidateAoeDistance (int depth)
 
static float ValidateSpellFailureRecoveryMod (float mod)
 
static int ValidateFloorChecksEps (int eps)
 
static int ValidateRecovery (int recovery)
 
static int ValidateQuickSaveCount (int num)
 
static int ValidateMaxActors (int num)
 
static int ValidateMaxActiveAIActors (int num)
 

Constructor & Destructor Documentation

◆ Gameplay()

GameConfig::Gameplay::Gameplay ( GameConfig config)
inlineexplicit

Member Function Documentation

◆ ValidateAoeDistance()

static int GameConfig::Gameplay::ValidateAoeDistance ( int  depth)
inlinestaticprivate

◆ ValidateArtifactLimit()

static int GameConfig::Gameplay::ValidateArtifactLimit ( int  artifact_limit)
inlinestaticprivate

◆ ValidateFloorChecksEps()

static int GameConfig::Gameplay::ValidateFloorChecksEps ( int  eps)
inlinestaticprivate

◆ ValidateInteractionDepth()

static int GameConfig::Gameplay::ValidateInteractionDepth ( int  depth)
inlinestaticprivate

◆ ValidateMaxActiveAIActors()

static int GameConfig::Gameplay::ValidateMaxActiveAIActors ( int  num)
inlinestaticprivate

◆ ValidateMaxActors()

static int GameConfig::Gameplay::ValidateMaxActors ( int  num)
inlinestaticprivate

◆ ValidateMaxFlightHeight()

static int GameConfig::Gameplay::ValidateMaxFlightHeight ( int  max_flight_height)
inlinestaticprivate

◆ ValidateQuickSaveCount()

static int GameConfig::Gameplay::ValidateQuickSaveCount ( int  num)
inlinestaticprivate

◆ ValidateRangedAttackDepth()

static int GameConfig::Gameplay::ValidateRangedAttackDepth ( int  depth)
inlinestaticprivate

◆ ValidateRecovery()

static int GameConfig::Gameplay::ValidateRecovery ( int  recovery)
inlinestaticprivate

◆ ValidateSpellFailureRecoveryMod()

static float GameConfig::Gameplay::ValidateSpellFailureRecoveryMod ( float  mod)
inlinestaticprivate

Member Data Documentation

◆ AlternativeConditionPriorities

Bool GameConfig::Gameplay::AlternativeConditionPriorities
Initial value:
= {this, "alternative_condition_priorities", true,
"Use condition priorities from Grayface patches (e.g. Zombie has the lowest priority)."}

◆ AoeDamageDistance

Int GameConfig::Gameplay::AoeDamageDistance
Initial value:
= {this, "aoe_damage_distance", 512, &ValidateAoeDistance,
"Distance from point of impact of harmful AOE spell. "
"Characters and monsters will suffer damage if they are close to point of impact by this value."}
static int ValidateAoeDistance(int depth)
Definition: GameConfig.h:283

◆ ArtifactLimit

Int GameConfig::Gameplay::ArtifactLimit
Initial value:
= {this, "artifact_limit", 13, &ValidateArtifactLimit,
"Max number of artifacts that the game can generate as loot in any one playthrough. Use 0 for unlimited."}
static int ValidateArtifactLimit(int artifact_limit)
Definition: GameConfig.h:271

◆ ChestTryPlaceItems

Int GameConfig::Gameplay::ChestTryPlaceItems
Initial value:
= {this, "chest_try_place_items", 2,
"Fix problems with item loss in high-level chests. "
"Use 0 for vanilla behaviour, items that don't fit will be lost. "
"Use 1 to try to place items that didn't fit every time the chest is opened again. "
"Use 2 to try to place items that didn't fit every time an item is picked up from the chest."}

◆ FixWaterWalkManaDrain

Bool GameConfig::Gameplay::FixWaterWalkManaDrain
Initial value:
= {this, "fix_water_walk_mana_drain", true,
"Change water walk mana drain interval to 20 minutes. "
"Spell description says that mana is drained every 20 minutes, but in vanilla, it was every 5 minutes."}

◆ FloorChecksEps

Int GameConfig::Gameplay::FloorChecksEps
Initial value:
= {this, "floor_checks_eps", 3, &ValidateFloorChecksEps,
"Maximum allowed slack for point-inside-a-polygon checks when calculating floor z level. "
"This is needed because there are actual holes in level geometry sometimes, up to several units wide."}
static int ValidateFloorChecksEps(int eps)
Definition: GameConfig.h:289

◆ Gravity

Int GameConfig::Gameplay::Gravity
Initial value:
= {this, "gravity", 5,
"Gravity strength, the higher the more gravity, 0 disables gravity completely."}

◆ KeyboardInteractionDepth

Int GameConfig::Gameplay::KeyboardInteractionDepth
Initial value:
= {this, "keyboard_interaction_depth", 512, &ValidateInteractionDepth,
"Maximum range for item pickup / opening chests / activating levers / etc "
"with a keyboard (by pressing the interaction key, see keybindings.event_trigger)."}
static int ValidateInteractionDepth(int depth)
Definition: GameConfig.h:277

◆ MaxActiveAIActors

Int GameConfig::Gameplay::MaxActiveAIActors
Initial value:
= {this, "max_active_ai_actors", 30, &ValidateMaxActiveAIActors,
"Limit to how many actors can be in full AI state at once."}
static int ValidateMaxActiveAIActors(int num)
Definition: GameConfig.h:304

◆ MaxActors

Int GameConfig::Gameplay::MaxActors
Initial value:
= {this, "max_actors", 500, &ValidateMaxActors,
"Limit to how many total actors are possible on a map."}
static int ValidateMaxActors(int num)
Definition: GameConfig.h:301

◆ MaxFlightHeight

Int GameConfig::Gameplay::MaxFlightHeight
Initial value:
= {this, "max_flight_height", 4000, &ValidateMaxFlightHeight,
"Maximum height for the fly spell."}
static int ValidateMaxFlightHeight(int max_flight_height)
Definition: GameConfig.h:265

◆ MinRecoveryBlasters

Int GameConfig::Gameplay::MinRecoveryBlasters
Initial value:
= {this, "minimum_recovery_blasters", 5, &ValidateRecovery,
"Minimum recovery time for blasters. Was 0 in vanilla, 5 in Grayface patches."}
static int ValidateRecovery(int recovery)
Definition: GameConfig.h:292

◆ MinRecoveryMelee

Int GameConfig::Gameplay::MinRecoveryMelee
Initial value:
= {this, "minimum_recovery_melee", 30, &ValidateRecovery,
"Minimum recovery time for melee weapons. Was 30 in vanilla."}

◆ MinRecoveryRanged

Int GameConfig::Gameplay::MinRecoveryRanged
Initial value:
= {this, "minimum_recovery_ranged", 5, &ValidateRecovery,
"Minimum recovery time for ranged weapons. Was 0 in vanilla, 5 in GrayFace patches."}

◆ MouseInfoDepthIndoor

Int GameConfig::Gameplay::MouseInfoDepthIndoor
Initial value:
= {this, "mouse_info_depth_indoor", 16192, &ValidateInteractionDepth,
"Maximum range at which right clicking on a monster produces a popup indoors. "
"Also this is the max range for the souldrinker spell indoors."}

◆ MouseInfoDepthOutdoor

Int GameConfig::Gameplay::MouseInfoDepthOutdoor
Initial value:
= {this, "mouse_info_depth_outdoor", 12800, &ValidateInteractionDepth,
"Maximum range at which right clicking on a monster produces a popup outdoors. "
"Default value is 12800 = 25 * 512, 25 map cells. "
"Also this is the max range for the souldrinker spell outdoors."}

◆ MouseInteractionDepth

Int GameConfig::Gameplay::MouseInteractionDepth
Initial value:
= {this, "mouse_interaction_depth", 512, &ValidateInteractionDepth,
"Maximum range for item pickup / opening chests / activating levers / etc with a mouse."}

◆ NewGameFood

Int GameConfig::Gameplay::NewGameFood
Initial value:
= {this, "new_game_food", 7,
"Starting food."}

◆ NewGameGold

Int GameConfig::Gameplay::NewGameGold
Initial value:
= {this, "new_game_gold", 200,
"Starting gold."}

◆ NoIndoorFallDamage

Bool GameConfig::Gameplay::NoIndoorFallDamage
Initial value:
= {this, "no_indoor_fall_damage", false,
"Disable fall damage for indoor maps."}

◆ NoPartyActorCollisions

Bool GameConfig::Gameplay::NoPartyActorCollisions
Initial value:
= {this, "no_party_actor_collisions", false,
"Disable collisions between the party and monsters on the map. Mainly useful for debugging and tests."}

◆ PartyEyeLevel

Int GameConfig::Gameplay::PartyEyeLevel
Initial value:
= {this, "party_eye_level", 160,
"Party eye level."}

◆ PartyHeight

Int GameConfig::Gameplay::PartyHeight
Initial value:
= {this, "party_height", 192,
"Party height."}

◆ PartyWalkSpeed

Int GameConfig::Gameplay::PartyWalkSpeed
Initial value:
= {this, "party_walk_speed", 384,
"Party walk speed."}

◆ QuickSaveName

String GameConfig::Gameplay::QuickSaveName
Initial value:
= {this, "quick_saves_name", "quicksave",
"What name to use to store the quick saves as."}

◆ QuickSavesCount

Int GameConfig::Gameplay::QuickSavesCount
Initial value:
= {this, "quick_saves_count", 4, &ValidateQuickSaveCount,
"How many quick saves have currently been used."
"This will rotate back to 0 when 5 saves has been reached."}
static int ValidateQuickSaveCount(int num)
Definition: GameConfig.h:298

◆ RangedAttackDepth

Int GameConfig::Gameplay::RangedAttackDepth
Initial value:
= {this, "ranged_attack_depth", 5120, &ValidateRangedAttackDepth,
"Max depth for ranged attacks and ranged spells. "
"It's impossible to target monsters that are further away than this value. "
"This is also the depth at which status bar tips are displayed on mouse over."}
static int ValidateRangedAttackDepth(int depth)
Definition: GameConfig.h:280

◆ RegenStacking

Bool GameConfig::Gameplay::RegenStacking
Initial value:
= {this, "regen_stacking", true,
"Disable for vanilla like mode where only one item will trigger HP/SP regeneration."}

◆ ShowUndentifiedItem

Bool GameConfig::Gameplay::ShowUndentifiedItem
Initial value:
= {this, "show_unidentified_item", true,
"Show unidentified items with a green tint in inventory. "
"If not set, vanilla behavior will be used with green tint applied in shops only."}

◆ ShrinkRayAoeDistance

Int GameConfig::Gameplay::ShrinkRayAoeDistance
Initial value:
= {this, "shrink_ray_aoe_distance", 256, &ValidateAoeDistance,
"Distance from point of impact of Shrinking Ray cast at GM mastery. "
"Monsters will be affected by this spell if they are close to point of impact by this value."}

◆ SpawnCountMultiplier

Float GameConfig::Gameplay::SpawnCountMultiplier
Initial value:
= {this, "spawn_count_multiplier", 1.0f,
"Multiplication factor for how many enemies are spawned over original."}

◆ SpellFailureRecoveryMod

Float GameConfig::Gameplay::SpellFailureRecoveryMod
Initial value:
= {this, "spell_failure_recovery_mod", 0.5f, &ValidateSpellFailureRecoveryMod,
"Recovery time modifier when spell casting ended in failure for the reason where spell cannot be cast at all in current context. "
"Context include situation where outdoor spell is casted indoor or targeted spell is casted with no characters on screen."}
static float ValidateSpellFailureRecoveryMod(float mod)
Definition: GameConfig.h:286

◆ StartingMap

String GameConfig::Gameplay::StartingMap
Initial value:
= String(this, "starting_map", "out01.odm",
"New Game starting map.")
ConfigEntry< std::string > String
Definition: GameConfig.h:37

◆ TreatClubAsMace

Bool GameConfig::Gameplay::TreatClubAsMace
Initial value:
= {this, "treat_club_as_mace", false,
"Treat clubs as maces. "
"In vanilla clubs are using a separate hidden skill and can be equipped without learning the mace skill."}

The documentation for this class was generated from the following file: