Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Beat Saber 1.37 #3

Merged
merged 55 commits into from
Jul 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
6b8cd76
Remove old files
michael-r-elp Jul 10, 2024
2802bc9
Update build scripts
michael-r-elp Jul 10, 2024
1d160bb
Bump deps
michael-r-elp Jul 10, 2024
679cea1
Update workflow
michael-r-elp Jul 10, 2024
d3aa9bb
Update includes and logger, add export macro
michael-r-elp Jul 10, 2024
4d6dfac
Remove legacy code, from main
michael-r-elp Jul 10, 2024
544da1b
Remove all legacy strings
michael-r-elp Jul 10, 2024
adbd785
Remove qpm.shared from gitignore
michael-r-elp Jul 10, 2024
02b03ac
Fix casing
michael-r-elp Jul 10, 2024
6224174
Remove ID define
michael-r-elp Jul 10, 2024
70ac1d1
Temporary remove questui includes
michael-r-elp Jul 18, 2024
af73cdb
Cleanup ObjectInstances.hpp
michael-r-elp Jul 18, 2024
3d572c7
Remove all UI
michael-r-elp Jul 18, 2024
df3d881
build script temp disable -Dev suffix
michael-r-elp Jul 19, 2024
75f5557
Remove old QSoundsConfig
michael-r-elp Jul 19, 2024
62eb2c0
RJM config
michael-r-elp Jul 19, 2024
4cdd863
Add RJM dependency
michael-r-elp Jul 19, 2024
b31ed85
Fix buildQMOD not finding sounds
michael-r-elp Jul 19, 2024
cc6ae62
Bump mod template to 1.37.0
michael-r-elp Jul 19, 2024
ac9d138
Fixup sound loading, code cleanup, fixing logging
michael-r-elp Jul 19, 2024
d00f261
Fix include path
michael-r-elp Jul 19, 2024
0bc58a7
Temp rename because git doesn't see changed casing
michael-r-elp Jul 19, 2024
73f926c
Fix casing
michael-r-elp Jul 19, 2024
91e2448
Fix build workflow qmod creation
michael-r-elp Jul 19, 2024
44478e8
Small tweaks
michael-r-elp Jul 20, 2024
2999888
Temp delete AsyncAudioClipLoader due to git windows having casing issues
michael-r-elp Jul 21, 2024
b9fa637
Readd AsyncAudioClipLoader
michael-r-elp Jul 21, 2024
3f49057
Reimplement fix for HitSounds not playing more than once
michael-r-elp Jul 21, 2024
0e4ace7
Use ArrayW
michael-r-elp Jul 21, 2024
4437258
Config, add missing initial values for some sounds
michael-r-elp Jul 21, 2024
f97cc21
Move logger to own include, fix audio loader
michael-r-elp Jul 21, 2024
be322b6
WIP: Initial basic UI implementation POC
michael-r-elp Jul 21, 2024
e3c6ac0
Cleanup CMakeList
michael-r-elp Jul 21, 2024
e362fcf
Cleanup unused variables
michael-r-elp Jul 21, 2024
54c278f
Cleanup remove includes
michael-r-elp Jul 22, 2024
949bbfa
Move export func to separate header
michael-r-elp Jul 22, 2024
27fe05a
Add ClipLoader to Setup function
michael-r-elp Jul 22, 2024
15f8f33
Add name to config class, might need that
michael-r-elp Jul 22, 2024
c5e2144
Split up hooks into separate cpp files
michael-r-elp Jul 22, 2024
258d395
WIP UI: Add left side panel, with tabs, UI tweaks
michael-r-elp Jul 23, 2024
e848169
Add BasicUIAudioManager to ObjectInstances temp
michael-r-elp Jul 24, 2024
df8b79a
Final UI
michael-r-elp Jul 24, 2024
7fcb6c3
Fix SoundList not updating
michael-r-elp Jul 24, 2024
71ec0a5
Fix crash on BackButtonPressed when Menu Audio not loaded
michael-r-elp Jul 25, 2024
ac11b6b
Fix brief freezes when loading mp3 audio
michael-r-elp Jul 25, 2024
423000b
Fix crash when Loader in VC is null
michael-r-elp Jul 25, 2024
d8b4097
Add System::Type include
michael-r-elp Jul 25, 2024
db6c046
Fix crash on selection
michael-r-elp Jul 25, 2024
d818dae
Ensure cover image is actually included in qmod
michael-r-elp Jul 26, 2024
c2cd647
Fix HitSounds don't support streaming
michael-r-elp Jul 26, 2024
3e6f4de
Fix position of no sounds found text
michael-r-elp Jul 26, 2024
7ae814a
Remove the word sound from the Level Cleared sound button
michael-r-elp Jul 26, 2024
7f62c82
Add BombExplosionSounds, completing the list of possible editable gam…
michael-r-elp Jul 26, 2024
e67ae3d
Remove thread limit from build script
michael-r-elp Jul 28, 2024
96277b0
Add example explosion sound, update rl notes
michael-r-elp Jul 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 30 additions & 48 deletions .github/workflows/BuildQSounds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,48 +21,31 @@ on:

env:
module_id: QuestSounds
version: 1.4.1-Dev.${{ github.run_number }}
BSVersion: 1.28.0_4124311467
# ndkname: android-ndk-r24
#version: 1.4.1-Dev.${{ github.run_number }}

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
name: Checkout
with:
submodules: true
lfs: true

- uses: seanmiddleditch/gha-setup-ninja@v3

# - name: Install Powershell
# run: sudo apt-get install -y powershell

# - name: Cache Android NDK
# id: cache-ndk
# uses: actions/cache@v2
# env:
# cache-name: cache-ndk
# with:
# path: ndk
# key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.ndkname }}
# restore-keys: |
# ${{ runner.os }}-${{ env.cache-name }}-${{ env.ndkname }}

# - name: Install Android NDK
# if: steps.cache-ndk.outputs.cache-hit != 'true'
# run: |
# wget -q -O ndk.zip https://dl.google.com/android/repository/${ndkname}-linux-x86_64.zip
# unzip -q ndk.zip
# mv ${ndkname} ndk

# - name: Create ndkpath.txt
# run: |
# cd ndk
# pwd > ${GITHUB_WORKSPACE}/ndkpath.txt
- name: Get Version
shell: pwsh
run: |
$branchParts = '${{ github.ref_name }}'.Split('/'); $branchMain = $branchParts[0]; if ($branchParts[0] -match "^\d+$") { $branchMain = 'pr'; $branchSub = "$($branchParts[0])." } elseif ($branchParts.Length -eq 2) { $branchSub = "$($branchParts[1].Replace('.', '-'))." }; echo "version=$((Get-Content ./qpm.shared.json -Raw | ConvertFrom-Json).config.info.version.Split('-')[0])-$($branchMain).${{ github.run_number }}+$($branchSub)ra${{ github.run_attempt }}.$($env:GITHUB_SHA.Substring(0, 7))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

# Not sure this is used in this workflow
- name: Get BSVersion
shell: pwsh
run: |
echo "BSVersion=$((Get-Content ./mod.template.json -Raw | ConvertFrom-Json).packageVersion)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

- uses: seanmiddleditch/gha-setup-ninja@v5

- name: Create ndkpath.txt
run: |
Expand All @@ -74,30 +57,31 @@ jobs:
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: cargo-build.yml
name: linux-qpm-rust
name: linux-qpm
path: QPM
repo: RedBrumbler/QuestPackageManager-Rust
repo: QuestPackageManager/QPM.CLI

- name: QPM Collapse
run: |
chmod +x ./QPM/qpm-rust
./QPM/qpm-rust collapse
chmod +x ./QPM/qpm
./QPM/qpm collapse

- name: QPM Dependencies Cache
id: cache-qpm-deps
uses: actions/cache@v2
env:
cache-name: cache-qpm-deps
with:
path: /home/runner/.local/share/QPM-Rust/cache
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('qpm.json', '.github/BuildQSounds.yml') }}
path: /home/runner/.local/share/QPM-RS/cache
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('qpm.shared.json') }}
restore-keys: |
${{ runner.os }}-${{ env.cache-name }}-
${{ runner.os }}-${{ env.cache-name }}

- name: QPM Restore
- name: QPM Set Version & Restore
run: |
./QPM/qpm-rust restore
./QPM/qpm package edit --version ${{ env.version }}
./QPM/qpm restore

- name: Check dependency Folders
run: |
Expand All @@ -107,15 +91,13 @@ jobs:
echo "Checking libs"
ls -lh ${GITHUB_WORKSPACE}/extern/libs
echo ""
echo "Checking QPM-Rust/cache Folder"
ls -lh $HOME/.local/share/QPM-Rust/cache
echo "Checking QPM/cache Folder"
ls -lh $HOME/.local/share/QPM-RS/cache
echo ""

- name: Build
run: |
cd ${GITHUB_WORKSPACE}
./QPM/qpm-rust package edit --version ${{ env.version }}
./QPM/qpm-rust qmod build
pwsh -Command ./build.ps1 -actions

- name: Get Library Name
Expand All @@ -124,32 +106,32 @@ jobs:
cd ./build/
pattern="lib${module_id}*.so"
files=( $pattern )
echo ::set-output name=NAME::"${files[0]}"
echo "NAME=${files[0]}" >> $GITHUB_OUTPUT

- name: Package QMOD
run: |
cd ${GITHUB_WORKSPACE}
pwsh -Command ./buildQMOD.ps1 -package
./QPM/qpm qmod zip -i ./build/ -i ./extern/libs/ -f ./Cover.jpg -i ./Examples/ ${module_id}_${version}.qmod


- name: Upload non-debug artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: ${{ steps.libname.outputs.NAME }}
path: ./build/${{ steps.libname.outputs.NAME }}
if-no-files-found: error


- name: Upload debug artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: debug_${{ steps.libname.outputs.NAME }}
path: ./build/debug/${{ steps.libname.outputs.NAME }}
if-no-files-found: error


- name: Upload QMOD
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: ${{ env.module_id }}-(UNZIP-for-QMOD).qmod
path: ./${{ env.module_id }}_${{ env.version }}.qmod
Expand Down
101 changes: 28 additions & 73 deletions .github/workflows/Release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,85 +9,64 @@ on:

env:
module_id: QuestSounds
BSVersion: 1.28.0_4124311467
ndkname: android-ndk-r24

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
name: Checkout
with:
submodules: true
lfs: true

- uses: seanmiddleditch/gha-setup-ninja@v3

#- name: Install Powershell
# run: sudo apt-get install -y powershell
- uses: seanmiddleditch/gha-setup-ninja@v5

- name: Get the tag name
run: echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV

#- name: Cache Android NDK
# id: cache-ndk
# uses: actions/cache@v2
# env:
# cache-name: cache-ndk
# with:
# path: ndk
# key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.ndkname }}
# restore-keys: |
# ${{ runner.os }}-${{ env.cache-name }}-${{ env.ndkname }}

#- name: Install Android NDK
# if: steps.cache-ndk.outputs.cache-hit != 'true'
# run: |
# wget -q -O ndk.zip https://dl.google.com/android/repository/${ndkname}-linux-x86_64.zip
# unzip -q ndk.zip
# mv ${ndkname} ndk

#- name: Create ndkpath.txt
# run: |
# cd ndk
# pwd > ${GITHUB_WORKSPACE}/ndkpath.txt
- name: Get BSVersion
shell: pwsh
run: |
echo "BSVersion=$((Get-Content ./mod.template.json -Raw | ConvertFrom-Json).packageVersion)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

- name: Create ndkpath.txt
run: |
echo "$ANDROID_NDK_LATEST_HOME" > ${GITHUB_WORKSPACE}/ndkpath.txt

- name: Get QPM
if: steps.cache-qpm.outputs.cache-hit != 'true'
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: cargo-build.yml
name: linux-qpm-rust
path: QPM
repo: RedBrumbler/QuestPackageManager-Rust

- name: Get QPM
if: steps.cache-qpm.outputs.cache-hit != 'true'
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: cargo-build.yml
name: linux-qpm
path: QPM
repo: QuestPackageManager/QPM.CLI
- name: QPM Collapse
run: |
chmod +x ./QPM/qpm-rust
./QPM/qpm-rust collapse
chmod +x ./QPM/qpm
./QPM/qpm collapse

- name: QPM Dependencies Cache
id: cache-qpm-deps
uses: actions/cache@v2
env:
cache-name: cache-qpm-deps
with:
path: /home/runner/.local/share/QPM-Rust/cache
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('qpm.json', '.github/BuildQSounds.yml') }}
path: /home/runner/.local/share/QPM-RS/cache
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('qpm.shared.json') }}
restore-keys: |
${{ runner.os }}-${{ env.cache-name }}-
${{ runner.os }}-${{ env.cache-name }}

- name: QPM Restore
- name: QPM Set Version & Restore
run: |
./QPM/qpm-rust restore
./QPM/qpm package edit --version ${{ env.version }}
./QPM/qpm restore


- name: Check dependency Folders
run: |
Expand All @@ -98,14 +77,12 @@ jobs:
ls -lh ${GITHUB_WORKSPACE}/extern/libs
echo ""
echo "Checking QPM-Rust/cache Folder"
ls -lh $HOME/.local/share/QPM-Rust/cache
ls -lh $HOME/.local/share/QPM-RS/cache
echo ""

- name: Build
run: |
cd ${GITHUB_WORKSPACE}
./QPM/qpm-rust package edit --version ${{ env.version }}
./QPM/qpm-rust qmod build
pwsh -Command ./build.ps1 -actions

- name: Get Library Name
Expand All @@ -114,40 +91,18 @@ jobs:
cd ./build/
pattern="lib${module_id}*.so"
files=( $pattern )
echo ::set-output name=NAME::"${files[0]}"
echo "NAME=${files[0]}" >> $GITHUB_OUTPUT

- name: Package QMOD
run: |
cd ${GITHUB_WORKSPACE}
pwsh -Command ./buildQMOD.ps1 -package -release
./QPM/qpm qmod zip -i ./build/ -i ./extern/libs/ -f ./Cover.jpg -i ./Examples/ ${module_id}_${version}.qmod

- name: Release
uses: softprops/action-gh-release@v1
with:
name: ${{ env.module_id }} ${{ env.version }} for Beat Saber ${{ env.BSVersion }}
files: |
./${{ env.module_id }}.qmod
./${{ env.module_id }}_${{ env.version }}.qmod
body_path: ./rl-notes.md
draft: true

#- name: Create Release
# id: create_release
# uses: actions/create-release@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# tag_name: ${{ github.ref }}
# release_name: ${{ env.module_id }} ${{ github.ref }} for Beat Saber ${{ env.BSVersion }}
# body_path: ./rl-notes.md
# draft: true
# prerelease: false
#- name: Upload QMOD Release Asset
# id: upload-release-QMOD
# uses: actions/upload-release-asset@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ steps.create_release.outputs.upload_url }}
# asset_path: ./${{ env.module_id }}.qmod
# asset_name: ${{ env.module_id }}.qmod
# asset_content_type: application/qmod
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,6 @@ ndkpath.txt

# Other files
extern/

qpm.shared.json
extern/
*.backup

*.log
Expand Down
Loading
Loading