Skip to content

Latest commit

 

History

History
173 lines (145 loc) · 5.43 KB

CONTRIBUTING.md

File metadata and controls

173 lines (145 loc) · 5.43 KB

Contributing Guidelines

If you would like to contribute code to this project, please follow these pull request guidelines:

  1. (Optional but encouraged) Find at least one maintainer interested in your PR.
  2. Fork the project.
  3. Create a branch specifically for the feature you are contributing.
  4. (Optional but encouraged) Rebase your branch as needed. Please see quick reference if you are new to git.
  5. After you are happy with your work, please make sure to submit a Pull Request from the feature branch. You are heavily discouraged from making pull requests from your main branch, because we may not be able to get to your PR before you make new changes to your PR.

Character PR checklist:

  • New character package
  • Config in character package
  • Run pipeline with added config
  • Character key
  • Shortcuts for character key
  • Add Character package to imports
  • Character talent stats
  • Character curve
  • Normal Attack
  • Skill
  • Burst
  • A1
  • A4
  • C0
  • C1
  • C2
  • C3
  • C4
  • C5
  • C6
  • Other necessary talents (custom dash/jump, low/high plunge, ...)
  • Hitlag
  • ICD
  • StrikeType
  • Hitboxes
  • Attack durability
  • Particles
  • Frames
  • Update documentation

Weapon PR checklist:

  • New weapon package
  • Config in weapon package
  • Run pipeline with added config
  • Weapon key
  • Shortcuts for weapon key
  • Add weapon package to imports
  • Weapon curve
  • Weapon passive (might include an attack)
  • Update documentation

Artifact PR checklist:

  • New artifact package
  • Config in artifacts package
  • Run pipeline with added config
  • Artifact key
  • Shortcuts for artifact key
  • Add artifact package to imports
  • 2pc
  • 4pc
  • Update documentation

Please try to be explicit about what is complete or incomplete.

Items may be omitted when irrelevant.

Click to expand copy-paste friendly version
Character PR checklist:

- [ ] New character package
- [ ] Config in character package
- [ ] Run pipeline with added config
- [ ] Character key
- [ ] Shortcuts for character key
- [ ] Add Character package to imports
- [ ] Character talent stats
- [ ] Character curve
- [ ] Normal Attack
- [ ] Charge Attack / Aimed Shot
- [ ] Skill
- [ ] Burst
- [ ] A1
- [ ] A4
- [ ] C0
- [ ] C1
- [ ] C2
- [ ] C3
- [ ] C4
- [ ] C5
- [ ] C6
- [ ] Other necessary talents (custom dash/jump, low/high plunge, ...)
- [ ] Hitlag
- [ ] ICD
- [ ] StrikeType
- [ ] Hitboxes
- [ ] Attack durability
- [ ] Particles
- [ ] Frames
- [ ] Update documentation

Weapon PR checklist:

- [ ] New weapon package
- [ ] Config in weapon package
- [ ] Run pipeline with added config
- [ ] Weapon key
- [ ] Shortcuts for weapon key
- [ ] Add weapon package to imports
- [ ] Weapon curve
- [ ] Weapon passive
- [ ] Update documentation

Artifact PR checklist:

- [ ] New artifact package
- [ ] Config in artifacts package
- [ ] Run pipeline with added config
- [ ] Artifact key
- [ ] Shortcuts for artifact key
- [ ] Add artifact package to imports
- [ ] 2pc
- [ ] 4pc
- [ ] Update documentation

Git/Github Quick Reference Guide

For those who are new to git/github

git checkout -b newbranchname creates a new branch from your current branch If you have committed code, but upon finishing your feature, the main branch has progressed, you are encouraged to rebase it to ensure it still works. Please reach out for help if you are not sure how to do this step, the following steps can be dangerous and you can lose your work if not done correctly.

To rebase your branch you will need to run the command


git rebase --onto <newparent> <oldparent>
git push -f

Where new parent is the commitment hash of the newest commit on the main branch and old parent is the commitment hash of the oldest common commitment between your feature branch and the main branch.

Dev Environment Setup

Install the following:

Local Testing/Building

  1. Create a Config file
  2. Navigate to ./gcsim/cmd/gcsim
  3. Run go build to build the executable and then feed your config file in e.g. ./gcsim.exe -c config.txt -sample config -gz OR run go run . --c config.txt -sample config -gz
  4. Upload the generated sample file to the Sample page to confirm everything is working accordingly, and optionally share the sample file in discord for debugging help.