gcsim

package module
v1.15.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 4, 2023 License: MIT Imports: 0 Imported by: 0

README

Overview

gcsim is a Monte Carlo simulation tool used to model team dps. It allows for the formation of arbitrary combination of any characters.

Getting started

You can download the latest build here. You can also use the webapp: https://gcsim.app.

Project status

The project is still under development. While every character up until 2.8 has been implemented with proper frames and hitlag, there are still improvements that can be made, which you can find in our issues and discussions.

Contributing

If you are looking to contribute, the following are some key areas that you can help out with. If you're interested, please don't hesistate to reach out on the sim's discord

  • Comprehensive frame counts of new character's abilities, including but not limited to:
    • Hit mark frame (not just animation frame, which is currently in the KQM library)
    • Cooldown start frame
    • Energy drain frame
    • Particle proc frame (relative to hit mark)
  • Team comp damage validation between actual game play and sim. This is done by recording videos of actual gameplay footage, and then reproducing the same team/artifact/items/targets in the simulator and comparing results frame by frame. This means both comparing the damage output as well as the reactions. The simulator should be able to reproduce actual gameplay faithfully.
  • Building action list for various common team comps and comparing/validating the result vs actual in game gameplay
  • Helping with documenting the sim in the wiki
  • Further testing of in game reactions, primarily dendro.
  • Testing of 5* constellations
  • Just in general using the sim for calculations/weapon comparisons/day 1 testing etc...
  • If you would like to contribute code please take a look at the contributing guidelines

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
internal
template/character
Package cooldown provides default implementation for SetCD, SetCDWithDelay, ResetActionCooldown, ReduceActionCooldown, ActionReady,
Package cooldown provides default implementation for SetCD, SetCDWithDelay, ResetActionCooldown, ReduceActionCooldown, ActionReady,
pkg
agg
core
Package core provides core functionality for a simulation:
Package core provides core functionality for a simulation:
core/action
Package action describes the valid actions that any character may take
Package action describes the valid actions that any character may take
core/combat
Package combat handles all combat related functionalities including
Package combat handles all combat related functionalities including
core/player
Package player contains player related tracking and functionalities: - tracking characters on the team - handling animations state - handling normal attack state - handling character stats and attributes - handling shielding
Package player contains player related tracking and functionalities: - tracking characters on the team - handling animations state - handling normal attack state - handling character stats and attributes - handling shielding
core/player/animation
package animation provides a simple way of tracking the current animation state at any given frame, as well as if the current frame is in animation lock or not
package animation provides a simple way of tracking the current animation state at any given frame, as well as if the current frame is in animation lock or not
core/player/shield
Package shield provide a handler to keep track of shields and add shields etc...
Package shield provide a handler to keep track of shields and add shields etc...
enemy
Package enemy implements an enemey target
Package enemy implements an enemey target
gadget
gadget provides a skeleton implementation for gadgets and is basically a thin wrapper around target.Target and adds some helper functionalities
gadget provides a skeleton implementation for gadgets and is basically a thin wrapper around target.Target and adds some helper functionalities
gcs
modifier
package modifier provides a universal way of handling a slice of modifiers
package modifier provides a universal way of handling a slice of modifiers
queue
package queue provide a universal way of handling queuing and executing tasks
package queue provide a universal way of handling queuing and executing tasks
simulation
Package simulation provide the functionality required to run one simulation
Package simulation provide the functionality required to run one simulation
scripts
services module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL