Documentation ¶
Overview ¶
Package simulation provide the functionality required to run one simulation
Index ¶
- Variables
- func NewCore(seed int64, debug bool, cfg *ast.ActionList) (*core.Core, error)
- func SetupCharactersInCore(core *core.Core, chars []profile.CharacterProfile, initial keys.Char) error
- func SetupMisc(c *core.Core)
- func SetupResonance(s *core.Core)
- func SetupTargetsInCore(core *core.Core, p core.Coord, targets []enemy.EnemyProfile) error
- type CharDetail
- type DamageDetails
- type EnergyEvent
- type HurtEvent
- type Result
- type Simulation
- type TalentDetail
- type WeaponDetail
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNoMoreActions = errors.New("no more actions left")
Functions ¶
func SetupCharactersInCore ¶ added in v1.0.0
func SetupResonance ¶ added in v1.0.0
func SetupTargetsInCore ¶ added in v1.0.0
Types ¶
type CharDetail ¶
type CharDetail struct { Name string `json:"name"` Element string `json:"element"` Level int `json:"level"` MaxLevel int `json:"max_level"` Cons int `json:"cons"` Weapon WeaponDetail `json:"weapon"` Talents TalentDetail `json:"talents"` Sets map[string]int `json:"sets"` Stats []float64 `json:"stats"` SnapshotStats []float64 `json:"snapshot"` }
type DamageDetails ¶
type EnergyEvent ¶ added in v1.0.0
type Result ¶
type Result struct { IsDamageMode bool `json:"is_damage_mode"` CharNames []string `json:"char_names"` CharDetails []CharDetail `json:"char_details"` DamageByChar []map[string]float64 `json:"damage_by_char"` DamageInstancesByChar []map[string]int `json:"damage_instances_by_char"` DamageByCharByTargets []map[int]float64 `json:"damage_by_char_by_targets"` DamageDetailByTime map[int]float64 `json:"damage_detail_by_time"` CharActiveTime []int `json:"char_active_time"` AbilUsageCountByChar []map[string]int `json:"abil_usage_count_by_char"` ParticleCount map[string]float64 `json:"particle_count"` ReactionsTriggered map[combat.ReactionType]int `json:"reactions_triggered"` Duration int `json:"sim_duration"` ElementUptime []map[attributes.Element]int `json:"ele_uptime"` // Tracks, for each character, energy source, // [total energy added on-field, total energy added off-field, total energy wasted on-field, total energy wasted off-field] EnergyDetail []map[string][4]float64 `json:"energy_detail"` EnergyWhenBurst [][]float64 `json:"energy_when_burst"` //final result Damage float64 `json:"damage"` DPS float64 `json:"dps"` //for tracking min/max run Seed int64 `json:"seed"` }
type Simulation ¶
func New ¶
func New(cfg *ast.ActionList, c *core.Core) (*Simulation, error)
func (*Simulation) AdvanceFrame ¶
func (s *Simulation) AdvanceFrame() error
func (*Simulation) Run ¶
func (s *Simulation) Run() (Result, error)
type TalentDetail ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.