Skip to content

Commit

Permalink
Merge branch 'develop' into T4Navy
Browse files Browse the repository at this point in the history
  • Loading branch information
Basilisk3 authored Jun 18, 2024
2 parents 930ac08 + 7d74ea4 commit 15ede6a
Show file tree
Hide file tree
Showing 694 changed files with 6,539 additions and 15,602 deletions.
26 changes: 26 additions & 0 deletions .github/DEPLOYMENT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Deployment

In this repository we can deploy to three different environments:

- `deploy/faf` - the `FAF` game type. This is the default release branch and is used by matchmaker
- `deploy/fafbeta` - the `FAF Beta Balance` game type. This branch only contains balance changes and bug fixes.
- `deploy/fafdevelop` - the `FAF Develop` game type. This branch contains all current changes that are in development.

All three branches originate from the `develop` branch, which is the default branch of the remote on Github. Pushing commits towards any of the deployment branches is sufficient to trigger a deployment to the given game type. \

## Automated deployments

There are three workflows to help with deployment:

- [FAF game type](./workflows/deploy-faf.yaml)
- [FAF Beta Balance game type](./workflows/deploy-faf.yaml)
- [FAF Develop game type](./workflows/deploy-faf.yaml)

The workflows for Beta Balance and Develop trigger periodically. You can review when by evaluating the [cron expression](https://crontab.cronhub.io/). The [API of FAForever](https://github.com/FAForever/faf-java-api/blob/develop/src/main/java/com/faforever/api/deployment/GitHubDeploymentService.java) registers the push to a deployment branch via a webhook. The server creates (and updates) a [deployment status](https://github.com/FAForever/fa/deployments). During that process the server retrieves the game related files, processes it and when everything is fine the new game version will be available in roughly 5 to 10 minutes.

## Related deployments

A push to `deploy/faf` will also trigger secondary deployments:

- [Spooky DB](./workflows/spookydb-update.yaml)
- [Unit DB](./workflows//unitdb-update.yaml)
51 changes: 51 additions & 0 deletions .github/ISSUE_TEMPLATE/1-bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Game Bug Report
description: Create a report to describe a bug
title: "[Bug]: "
labels: ["type: bug"]

body:
- type: markdown
attributes:
value: |
Thank you for reporting a bug! This template will help you with creating a report that we can use to understand the bug.
- This repository is maintained by volunteers, it may take a while for them to come back to you.
- Remember to include sufficient details and context.
- If you have multiple questions, suggestions, or bugs, please submit them in separate issues.
- We accept pull request. If you know how to fix it - go ahead!
Please provide the following details about the issue you encountered. *Issues that do not provide the information requested in this form will be flagged as **incomplete** & automatically closed.*
- type: markdown
attributes:
value: Provide a clear & concise details about the bug.
- type: textarea
id: describe
attributes:
label: Describe the Bug
description: A clear and concise description of what the bug is. Do not forget to append the game logs.
validations:
required: true
- type: textarea
id: reproduce
attributes:
label: Reproduce the bug
description: A clear and concise set of instructions on how to reproduce the issue. Best accompanied with a sandboxed replay. An in-action replay is helpful but not sufficient - the burden to investigate how to reproduce the issue is then moved to the maintainer.
validations:
required: true
- type: textarea
id: screenshots
attributes:
label: Screenshots
description: If applicable, add screenshots to help explain your problem.
validations:
required: false
- type: textarea
id: additional
attributes:
label: Additional context
description: Add any other context about the problem here.
validations:
required: false
- type: markdown
attributes:
value: _This bug report will be read by people that have not experienced the bug themselves - this report is all they have to investigate. The more precise your report, the easier it becomes for us to help you._
42 changes: 42 additions & 0 deletions .github/ISSUE_TEMPLATE/2-balance_idea.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Balance Idea
description: Proposing a Balance Idea
title: "[Balance Idea]: "
labels: ["area: balance idea"]

body:
- type: markdown
attributes:
value: |
Thanks for taking the time in making a Balance Idea Proposal.
- This repository is maintained by volunteers, it may take a while for them to come back to you.
- Remember to include sufficient details and context.
- If you have multiple Idea's or suggestions, please submit them in separate issues.
- We accept pull request. If you know how to fix it - go ahead!
Please bare in mind that any Balance Idea's are subject to balance team approval.
- type: markdown
attributes:
value: |
Provide a clear & concise description of the proposed change.
- type: textarea
id: intended
attributes:
label: Intended Change
description: Describe the change
validations:
required: true
- type: textarea
id: reason
attributes:
label: Reasoning
description: What is the reason for the change
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
description: What would be the new expected behaviors of the changes that you have proposed
validations:
required: true
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/3-contributors_template.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Contributors template
description: Template for an extensive description of the issue to solve.
labels: ["status: novel issue"]

body:
- type: textarea
id: description
attributes:
label: Description
- type: textarea
id: action
attributes:
label: Course of Action
- type: textarea
id: test
attributes:
label: Test Plan
- type: textarea
id: learning
attributes:
label: Learning Goals
- type: textarea
id: progress
attributes:
label: Progress
47 changes: 47 additions & 0 deletions .github/ISSUE_TEMPLATE/4-feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Feature request
description: Create a feature request to discuss with the Game team
title: "[Feature]: "
labels: ["status: novel issue"]

body:
- type: markdown
attributes:
value: |
Thanks for taking the time in making a Feature Request.
- This repository is maintained by volunteers, it may take a while for them to come back to you.
- Remember to include sufficient details and context.
- If you have multiple Idea's or suggestions, please submit them in separate issues.
- We accept pull request. If you know how to fix it - go ahead!
- type: textarea
id: describe
attributes:
label: Describe the Feature
description: A clear and concise description of what the feature is.
validations:
required: true
- type: textarea
id: behavior
attributes:
label: Expected Behavior
description: If applicable, a clear and concise description of what you expect to happen in various scenario's.
validations:
required: false
- type: textarea
id: images
attributes:
label: Screenshots
description: If applicable, add screenshots to help explain your feature.
validations:
required: false
- type: textarea
id: Additional
attributes:
label: Additional context
description: Add any other context about the feature here.
validations:
required: false
- type: markdown
attributes:
value: |
_This feature request will be read by people that are unable to look into your thoughts - this request is all they have to determine the viability of the feature. The more precise your request, the easier it becomes for us to help you._
132 changes: 132 additions & 0 deletions .github/ISSUE_TEMPLATE/5-improvements.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
name: Unit Visual Improvements
description: Suggest visual improvements to a unit
title: "[Unit Improvements]: "
labels: ["area: graphics"]

body:
# Intro
- type: markdown
attributes:
value: |
Thanks for taking the time in making a Feature Request.
- This repository is maintained by volunteers, it may take a while for them to come back to you.
- Remember to include sufficient details and context.
- If you have multiple Idea's or suggestions, please submit them in separate issues.
- We accept pull request. If you know how to fix it - go ahead!
# Faction Selection
- type: dropdown
id: faction
attributes:
label: Which Faction is the Unit From?
options:
- UEF
- Aeon
- Cybran
- Seraphim
default: 0
validations:
required: true

# Unit Name
- type: input
id: unitID
attributes:
label: Name of Unit
description: User the Blueprint Identifier of the unit (url0001).
validations:
required: true

# Lua Script
- type: textarea
id: script
attributes:
label: Lua Script Issues
validations:
required: false

# Effects
- type: checkboxes
id: effects
attributes:
label: Effect Related Issues
options:
- label: Tracks are correct (if applicable)
- label: Footfalls are correct (if applicable)
- type: textarea
id: effectsAdditional
attributes:
label: Additional Effect Issues
validations:
required: false

# Texture
- type: checkboxes
id: texture
attributes:
label: Texture Related Issues
options:
- label: Correct albedo intensity
- label: Correct team color channel
- label: Correct roughness channel
- label: Correct metallic channel(s)
- label: Correct normals
- type: textarea
id: textureAdditional
attributes:
label: Additional Texture Issues
validations:
required: false

# Mesh/Bone
- type: checkboxes
id: mesh
attributes:
label: Mesh/Bone Related Issues
options:
- label: Bones for target recoil exist
- label: Bones for targeting exist (only relevant for large units)
- label: LOD1 exists
- label: LOD2 exists (optionally)
- label: LOD3 exists (optionally)
- type: textarea
id: meshAdditional
attributes:
label: Additional Mesh/Bone Issues
validations:
required: false

# Relevant Shaders
- type: markdown
attributes:
value: |
You can find all relevant shaders in [mesh.fx](/effects/mesh.fx).
- Mesh shader techniques: `Insect_HighFidelity` / `Insect_MedFidelity` / `Insect_LowFidelity`
- Shield shader techniques: `ShieldCybran_MedFidelity` / `ShieldCybran_LowFidelity`
## Relevant texture interpretations
| Mesh shaders | R | G | B | A |
| ------------ | -------- | --------- | -------- | ------------------------------------------- |
| Albedo | R | G | B | Unused |
| Normals | Y (copy) | Y | Y (copy) | X |
| Spec | Metallic | Roughness | Emission | Team color / Metallic + roughness reduction |
Relevant details to individual channels for the high-fidelity (PBR) preset:
- Albedo.R = Red channel of albedo
- Albedo.G = Green channel of albedo
- Albedo.B = Blue channel of albedo
- Albedo.A = Unused
- Normals.R = Copied Y direction (to prevent compression artifacts)
- Normals.G = Y direction of normals in tangent space
- Normals.B = Copied Y direction (to prevent compression artifacts)
- Normals.A = X direction of normals in tangent space
- Spec.R = Metallic
- Spec.G = Roughness and increase to metallic if the value is larger than 0.1
- Spec.B = Emission
- Spec.A = Team color and it decreases metallic
Loading

0 comments on commit 15ede6a

Please sign in to comment.