diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md deleted file mode 100644 index 82c121b5a..000000000 --- a/.github/ISSUE_TEMPLATE/bug.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -name: Bug Report -about: Report a bug or critical performance issue -title: 'Bug Report: [DESCRIBE YOUR BUG IN DETAIL HERE]' -labels: bug ---- - - - -## Describe the bug - - -## To Reproduce - -## Expected behavior - - -## Screenshots/Video - - -## Desktop - - OS: - - - Browser - - - Version: - - -## Additional context - - - diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 000000000..6be3f1245 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,62 @@ +name: Bug Report +description: Report a bug or an issue in the game. +labels: ["type: minor bug", "status: pending triage"] +title: "Bug Report: " +body: + - type: checkboxes + attributes: + label: Issue Checklist + options: + - label: I have properly named the issue + - label: I have checked the issues/discussions pages to see if the issue has been previously reported + + - type: dropdown + attributes: + label: What platform are you using? + options: + - Newgrounds (Web) + - Itch.io (Web) + - Itch.io (Downloadable Build) - Windows + - Itch.io (Downloadable Build) - MacOS + - Itch.io (Downloadable Build) - Linux + validations: + required: true + + - type: dropdown + attributes: + label: If you are playing on a browser, which one are you using? + options: + - Google Chrome + - Microsoft Edge + - Firefox + - Opera + - Safari + - Other (Specify below) + + - type: input + attributes: + label: Version + description: What version are you using? + placeholder: ex. 0.4.1 + validations: + required: true + + - type: markdown + attributes: + value: "## Describe your bug." + + - type: markdown + attributes: + value: "### Please do not report issues from other engines. These must be reported in their respective repositories." + + - type: markdown + attributes: + value: "#### Provide as many details as you can." + + - type: textarea + attributes: + label: Context (Provide images, videos, etc.) + + - type: textarea + attributes: + label: Steps to reproduce (or crash logs, errors, etc.) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..3ba13e0ce --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: false diff --git a/.github/ISSUE_TEMPLATE/crash.yml b/.github/ISSUE_TEMPLATE/crash.yml new file mode 100644 index 000000000..6fb7c9437 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/crash.yml @@ -0,0 +1,70 @@ +name: Crash Report +description: Report a crash that occurred while playing the game. +labels: ["type: major bug", "status: pending triage"] +title: "Crash Report: " +body: + - type: checkboxes + attributes: + label: Issue Checklist + options: + - label: I have properly named the issue + - label: I have checked the issues/discussions pages to see if the issue has been previously reported + + - type: dropdown + attributes: + label: What platform are you using? + options: + - Newgrounds (Web) + - Itch.io (Web) + - Itch.io (Downloadable Build) - Windows + - Itch.io (Downloadable Build) - MacOS + - Itch.io (Downloadable Build) - Linux + validations: + required: true + + - type: dropdown + attributes: + label: If you are playing on a browser, which one are you using? + options: + - Google Chrome + - Microsoft Edge + - Firefox + - Opera + - Safari + - Other (Specify below) + + - type: input + attributes: + label: Version + description: What version are you using? + placeholder: ex. 0.4.1 + validations: + required: true + + - type: markdown + attributes: + value: "## Describe your issue." + + - type: markdown + attributes: + value: "### Please do not report issues from other engines. These must be reported in their respective repositories." + + - type: markdown + attributes: + value: "#### Provide as many details as you can." + + - type: textarea + attributes: + label: Context (Provide screenshots or videos of the crash happening) + + - type: textarea + attributes: + label: Steps to reproduce + validations: + required: true + + - type: textarea + attributes: + label: Crash logs (can be found in the logs folder where Funkin.exe is) + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/enhancement.md b/.github/ISSUE_TEMPLATE/enhancement.md deleted file mode 100644 index e1cc3ae0d..000000000 --- a/.github/ISSUE_TEMPLATE/enhancement.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -name: Enhancement -about: Suggest a new feature -title: 'Enhancement: ' -labels: enhancement ---- -#### Please check for duplicates or similar issues before creating this issue. -## What is your suggestion, and why should it be implemented? diff --git a/.github/ISSUE_TEMPLATE/enhancement.yml b/.github/ISSUE_TEMPLATE/enhancement.yml new file mode 100644 index 000000000..816e4a12b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/enhancement.yml @@ -0,0 +1,15 @@ +name: Enhancement +description: Suggest a new feature. +labels: ["type: enhancement", "status: pending triage"] +title: "Enhancement: " +body: + - type: checkboxes + attributes: + label: Issue Checklist + options: + - label: I have properly named the enhancement + - label: I have checked the issues/discussions pages to see if the enhancement has been previously suggested + + - type: textarea + attributes: + label: What is your suggestion, and why should it be implemented? diff --git a/.github/PULL_REQUEST_TEMPLATE/bug.md b/.github/PULL_REQUEST_TEMPLATE/bug.md deleted file mode 100644 index 41914c5ed..000000000 --- a/.github/PULL_REQUEST_TEMPLATE/bug.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -name: Bug Fix -about: Fix a bug or critical performance issue -title: 'Bug Fix: ' -labels: bug ---- -#### Please check for duplicates or similar PRs before creating this issue. -## Does this PR close any issue(s)? If so, link them below. - -## Briefly describe the issue(s) fixed. diff --git a/.github/PULL_REQUEST_TEMPLATE/enhancement.md b/.github/PULL_REQUEST_TEMPLATE/enhancement.md deleted file mode 100644 index e208deefe..000000000 --- a/.github/PULL_REQUEST_TEMPLATE/enhancement.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -name: Enhancement -about: Add a new feature -title: 'Enhancement: ' -labels: enhancement ---- -#### Please check for duplicates or similar PRs before creating this issue. -## Does this PR close any issue(s)? If so, link them below. - -## What do your change(s) add, and why should they be implemented? diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..8e8a45e19 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,6 @@ + +## Does this PR close any issues? If so, link them below. + +## Briefly describe the issue(s) fixed. + +## Include any relevant screenshots or videos. diff --git a/CHANGELOG.md b/CHANGELOG.md index 755b3b3bc..653ee203f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -81,19 +81,9 @@ which would remove their rank if they had a lower one. - Fixed a crash on Linux caused by an old version of hxCodec (thanks Noobz4Life!) - Optimized animation handling for characters (thanks richTrash21!) - Made improvements to compiling documentation (thanks gedehari!) -- Fixed a bug where pressing the volume keys would stop the Toy commercial (thanks gamerbross!) -- Fixed a bug where the Chart Editor Playtest would crash when losing (thanks gamerbross!) -- Removed a large number of unused imports to optimize builds (thanks Ethan-makes-music!) -- Fixed a bug where hold notes would be positioned wrong on downscroll (thanks MaybeMaru!) -- Additional fixes to the Loading bar on HTML5 (thanks lemz1!) -- Fixed a crash in Freeplay caused by a level referencing an invalid song (thanks gamerbross!) -- Improved debug logging for unscripted stages (thanks gamerbross!) -- Fixed a bug where changing difficulties in Story mode wouldn't update the score (thanks sectorA!) - Fixed an issue where the Chart Editor would use an incorrect instrumental on imported Legacy songs (thanks gamerbross!) - Fixed a camera bug in the Main Menu (thanks richTrash21!) -- Fixed several bugs with the TitleState, including missing music when returning from the Main Menu (thanks gamerbross!) - Fixed a bug where opening the game from the command line would crash the preloader (thanks NotHyper474!) -- Fixed a bug where hold notes would display improperly in the Chart Editor when downscroll was enabled for gameplay (thanks gamerbross!) - Fixed a bug where characters would sometimes use the wrong scale value (thanks PurSnake!) - Additional bug fixes and optimizations. diff --git a/docs/COMPILING.md b/docs/COMPILING.md index cc90bd348..1fc0c51c6 100644 --- a/docs/COMPILING.md +++ b/docs/COMPILING.md @@ -5,13 +5,16 @@ - Download Git from [git-scm.com](https://www.git-scm.com) - Do NOT download the repository using the Download ZIP button on GitHub or you may run into errors! - Instead, open a command prompt and do the following steps... -1. Run `git clone https://github.com/FunkinCrew/funkin.git` to clone the base repository. -2. Run `git submodule update --init --recursive` to download the game's assets. +1. Run `cd the\directory\you\want\the\source\code\in` to specify which folder the command prompt is working in. + - For example, `cd C:\Users\YOURNAME\Documents` would instruct the command prompt to perform the next steps in your Documents folder. +2. Run `git clone https://github.com/FunkinCrew/funkin.git` to clone the base repository. +3. Run `cd funkin` to enter the cloned repository's directory. +4. Run `git submodule update --init --recursive` to download the game's assets. - NOTE: By performing this operation, you are downloading Content which is proprietary and protected by national and international copyright and trademark laws. See [the LICENSE.md file for the Funkin.assets](https://github.com/FunkinCrew/funkin.assets/blob/main/LICENSE.md) repo for more information. -2. Run `haxelib --global install hmm` and then `haxelib --global run hmm setup` to install hmm.json -3. Run `hmm install` to install all haxelibs of the current branch -4. Run `haxelib run lime setup` to set up lime -5. Platform setup +5. Run `haxelib --global install hmm` and then `haxelib --global run hmm setup` to install hmm.json +6. Run `hmm install` to install all haxelibs of the current branch +7. Run `haxelib run lime setup` to set up lime +8. Platform setup - For Windows, download the [Visual Studio Build Tools](https://aka.ms/vs/17/release/vs_BuildTools.exe) - When prompted, select "Individual Components" and make sure to download the following: - MSVC v143 VS 2022 C++ x64/x86 build tools @@ -19,10 +22,12 @@ - Mac: [`lime setup mac` Documentation](https://lime.openfl.org/docs/advanced-setup/macos/) - Linux: [`lime setup linux` Documentation](https://lime.openfl.org/docs/advanced-setup/linux/) - HTML5: Compiles without any extra setup -6. If you are targeting for native, you may need to run `lime rebuild PLATFORM` and `lime rebuild PLATFORM -debug` -7. `lime test PLATFORM` ! Add `-debug` to enable several debug features such as time travel (`PgUp`/`PgDn` in Play State). +9. If you are targeting for native, you may need to run `lime rebuild PLATFORM` and `lime rebuild PLATFORM -debug` +10. `lime test PLATFORM` ! Add `-debug` to enable several debug features such as time travel (`PgUp`/`PgDn` in Play State). -# Troubleshooting +# Troubleshooting - GO THROUGH THESE STEPS BEFORE OPENING ISSUES ON GITHUB! - During the cloning process, you may experience an error along the lines of `error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)` due to poor connectivity. A common fix is to run ` git config --global http.postBuffer 4096M`. - +- Make sure your game directory has an `assets` folder! If it's missing, copy the path to your `funkin` folder and run `cd the\path\you\copied`. Then follow the guide starting from **Step 4**. +- Check that your `assets` folder is not empty! If it is, go back to **Step 4** and follow the guide from there. +- The compilation process often fails due to having the wrong versions of the required libraries. Many errors can be resolved by deleting the `.haxelib` folder and following the guide starting from **Step 5**.