/gcsim

monte carlo combat simulation for genshin impact

Primary LanguageGoMIT LicenseMIT

Overview

gcsim is a Monte Carlo simulation tool used to model Genshin Impact's combat. The user can input a set of characters, targets, options, and actions to perform, and then gcsim executes these actions. It outputs a variety of results, such as mean DPS and the DPS distribution across iterations. The user can also scroll through a sample of 1 iteration, which comprehensively lists every action, damage instance, reactions, buffs, etc. frame by frame.

Getting Started

Primary usage of gcsim is through the webapp: https://gcsim.app. You also can download the latest build and run it as a CLI here. Our docs explain how to write and understand configs.

Any issues or questions can be shared on our Discord, where experienced users can take a look.

Project Status

The project is still under development. While the majority of characters, items, and game mechanics have been implemented, there are still improvements that can be made, which you can find in our issues and discussions.

Contributing

Here are a few ways to help improve the quality of gcsim:

  • Record exhaustive frame counts of new unit actions, methodology detailed here.
  • Validate gameplay and sim results, ensure the sim can reproduce damage calculations, reactions, and buff uptimes faithfully.
  • Build action lists aka "rotations" for any team composition and submit them to our Config Database via Discord.
  • Use gcsim for gear, rotation, and team comparisons, while scrutinizing both expected and unexpected results. This is the best way potential issues can be spotted.

gcsim is always looking for developers. If you would like to contribute code, please look at the contributing guidelines.