45 Commits
Author SHA1 Message Date
6a49df36cc revert perf + fix: windows performance optimizations + x360 fixes + ps3 hdd corruption fix (#27)
revert perf + fix: windows performance optimizations + x360 fixes + ps3 hdd corruption fix (#27)

windows optimizations include:

- adding WPO/LTCG
- fixing potential memory leaks
- reducing unneeded busy waits

xbox 360 fixes include:

- all item names displaying as black
- adding newer dlcs crashing game

ps3 fix was that, when holding the ps button, it'd corrupt the hdd. NEEDS TESTING! just a guess fix since I don't have a PS3.

---------

Co-authored-by: pieeebot <piebot00@gmail.com>
Co-authored-by: piebot <piebot00@gmail.com>
Co-authored-by: str1k3r <115313679+S1l3ntStr1ke87@users.noreply.github.com>
Co-authored-by: str1k3r <1+str1k3r@noreply.localhost>
Co-authored-by: pieeebot <10+pieeebot@noreply.neolegacy.dev>
Co-authored-by: qloak <53+qloak@noreply.neolegacy.dev>
Reviewed-on: cafeberry/cafeberry#27
Co-authored-by: qloak <realminecart@gmail.com>
2026-08-14 10:48:38 +00:00
bad3a41225 perf + fix: windows performance optimizations + x360 fixes + ps3 hdd corruption fix (#27)
title

windows optimizations include:

- adding WPO/LTCG
- fixing potential memory leaks
- reducing unneeded busy waits

xbox 360 fixes include:

- all item names displaying as black
- adding newer dlcs crashing game

ps3 fix was that, when holding the ps button, it'd corrupt the hdd. NEEDS TESTING! just a guess fix since I don't have a PS3.

---------

Co-authored-by: pieeebot <piebot00@gmail.com>
Co-authored-by: piebot <piebot00@gmail.com>
Co-authored-by: str1k3r <115313679+S1l3ntStr1ke87@users.noreply.github.com>
Co-authored-by: str1k3r <1+str1k3r@noreply.localhost>
Co-authored-by: pieeebot <10+pieeebot@noreply.neolegacy.dev>
Co-authored-by: qloak <53+qloak@noreply.neolegacy.dev>
Reviewed-on: cafeberry/cafeberry#27
Co-authored-by: qloak <realminecart@gmail.com>
2026-08-14 05:09:20 +00:00
str1k3r 46caf4727c fix: g_bResolutionSetByCMD causing windows64 to not compile sometimes 2026-08-13 19:09:39 -04:00
str1k3r 47ea98fc86 fix: widescreen check only working if res was not cmd set 2026-08-13 00:21:01 -04:00
str1k3r d0362d2458 fix: res set over cmd not applying 2026-08-12 21:36:08 -04:00
str1k3r 82783c0812 feat(Windows64): safely exit game & get monitors size that has the game window instead of primary 2026-08-12 18:18:41 -04:00
str1k3r bd0cc59a54 chore: update .gitignore 2026-08-11 21:25:56 -04:00
str1k3r 81d41a6a04 feat(Windows64): use screen size instead of window size, fix exit game, fix oprhaned saves on exit without saving 2026-08-11 20:27:34 -04:00
str1k3r 0031cae3e3 fix: m_fScreen Width & Height missing .0f for 8th gen consoles 2026-08-11 18:45:04 -04:00
str1k3r 251cd8e304 feat(Windows64): fetch screen size instead of hardcoding & cleanup project filter 2026-08-11 18:36:29 -04:00
str1k3r df2a4d85ef fix: save space indicator & windows64 image scaling 2026-08-11 15:29:53 -04:00
str1k3r b737c3eccb feat(Windows64): ReloadSkin on another thread & improved screen height to swf 2026-08-10 00:28:30 -04:00
str1k3r 77a4ee39b5 fix: postbuilds 2026-08-09 23:43:30 -04:00
str1k3r 7fb2db5ed7 fix: SD3 lib being copied & update paths 2026-08-09 22:45:13 -04:00
str1k3r 90a2391e92 fix: SDL3 dll not being copied 2026-08-09 10:58:07 -04:00
str1k3r 36afa4a59f feat: SDL3 4JLibs 2026-08-09 00:34:21 -04:00
str1k3r eb317d8fbd chore: Bump 4JLibs 2026-08-08 21:08:50 -04:00
str1k3r af2040a849 fix: 4JLibs building, windows64 files not copying & add buildsteps to solution filter 2026-08-08 20:56:23 -04:00
str1k3r 9cba342973 feat: update submodule, more proper 4JLibs checks 2026-08-08 19:58:37 -04:00
str1k3r 8055f4dfc7 fix: world thumbnails 2026-08-08 15:09:57 -04:00
str1k3r 3ea3c08372 update submodule
SDL was being a bitch
2026-08-08 15:00:18 -04:00
str1k3r 9a729de7c3 fix: submodule tracking unneeded files 2026-08-08 14:19:49 -04:00
str1k3r 274f2ddc61 fix: submodule 2026-08-08 14:11:30 -04:00
str1k3r 831ec7292d fix: save space indicator
Credits to smartcmd for the base of this
2026-08-08 14:08:00 -04:00
str1k3r 13285fbffa feat: 4JLibs submodule 2026-08-08 14:06:08 -04:00
str1k3r 3866e525f1 fix(Windows64): 720p crash, Update README & .gitignore 2026-08-03 21:55:05 -04:00
str1k3r 9254fbcdb3 fix: ps3 zip not ignoring .self, stop tracking .vcxproj.user 2026-08-03 18:28:00 -04:00
str1k3r e8d19516e6 fix: windows64 release build
Release is actually a "Debug without extra shit" so we dont use _FINAL_BUILD
2026-08-03 16:32:30 -04:00
str1k3r 8bae3cfbc1 fix: ps3 zip 2026-08-03 15:27:43 -04:00
str1k3r 7f4227d902 fix: my mistake on workflow 2026-08-03 15:14:31 -04:00
str1k3r d9327ff1f5 fix: dangling build on workflow 2026-08-03 15:11:57 -04:00
str1k3r d770e58992 fix: workflows throwing GHES error 2026-08-03 15:03:16 -04:00
str1k3r 0889edf3bd chore: make the SPU Tasks SLN use $(Configuration) & $(Platform) 2026-08-03 14:40:28 -04:00
str1k3r 6e13d5d4c0 fix: PS3 & Windows64 ContentPackage, Exclude PSVita libs & OldSDK from other plats 2026-08-03 14:27:03 -04:00
str1k3r cffdcb1971 fix: release workflow notes 2026-08-03 10:31:04 +00:00
str1k3r eb80f3e52b fix(PS3): SPU Tasks not being built 2026-08-02 20:47:50 -04:00
str1k3r bd6eca9d44 fix: orbis workflow 2026-08-02 18:02:45 -04:00
str1k3r 236e3a80f6 fix: plat workflows and add dropdown for config 2026-08-02 17:37:24 -04:00
str1k3r 689848ac45 fix(orbis): set workingdir 2026-08-02 17:16:18 -04:00
str1k3r b7e90137b9 fix: orbis postbuild on runner (i beg of you) 2026-08-02 16:45:38 -04:00
str1k3r 14ceff64d9 fix: each plat workflow 2026-08-02 16:08:28 -04:00
str1k3r 5600ce994b fix(Orbis): preprocessor definitions 2026-08-02 15:21:46 -04:00
str1k3r 766888e6d5 fix: workflow fetching every commit 2026-08-02 15:03:57 -04:00
str1k3r 5febd74496 feat: cleaned up workflow & fix xbox360 output paths 2026-08-02 14:50:13 -04:00
f17ce45d6d feat: Orbis & PSVita builds, Durango postbuild & More (#10)
This fixes Orbis & PSVita builds along with adds a Durango postbuild and moves PS3 to the new SonyLeaderboardManager introduced in TU19

This also fixes the Orbis strings and gets some of the other Windows64 build configurations mostly building.

---------

Co-authored-by: str1k3r <115313679+S1l3ntStr1ke87@users.noreply.github.com>
Co-authored-by: str1k3r <1+str1k3r@noreply.localhost>
Co-authored-by: 552eden <552eden@gmail.com>
Co-authored-by: ubergamer-pie <16+ubergamer-pie@noreply.localhost>
Co-authored-by: str1k3r <15+str1k3r@noreply.neolegacy.dev>
Co-authored-by: pieeebot <10+pieeebot@noreply.neolegacy.dev>
Reviewed-on: pieeebot/cafeberry#10
2026-08-02 13:40:35 +00:00
206 changed files with 1595 additions and 1481 deletions
+22 -9
View File
@@ -7,37 +7,50 @@ on:
description: 'Configuration for the build (e.g. Debug, Release).'
required: true
default: 'Release'
type: choice
options:
- Debug
- Release
- ContentPackage
- ReleaseForArt
jobs:
build:
runs-on: windows-2022
runs-on: sdk-orbis
strategy:
matrix:
platform: [ORBIS]
platform: [Orbis]
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
$platform = if ("${{ matrix.platform }}" -eq "Orbis") { "ORBIS" }
& "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" MinecraftConsoles.sln `
/p:Configuration=${{ inputs.configuration }} `
/p:Platform=${{ matrix.platform }} `
"/p:Platform=$platform" `
/m
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/PS4_GAME/* "-x!*.ipdb" "-x!*.iobj"
- name: Stage artifacts
run: |
New-Item -ItemType Directory -Force -Path staging
Copy-Item LCE${{ matrix.platform }}.zip staging/
Copy-Item LCE${{ matrix.platform }}.zip staging/
Copy-Item "./ORBIS_${{ inputs.configuration }}/Minecraft.Client.pkg" staging/LCEOrbis.pkg
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+16 -6
View File
@@ -7,10 +7,16 @@ on:
description: 'Configuration for the build (e.g. Debug, Release).'
required: true
default: 'Release'
type: choice
options:
- Debug
- Release
- ContentPackage
- ReleaseForArt
jobs:
build:
runs-on: windows-2022
runs-on: sdk-ps3
strategy:
matrix:
@@ -19,6 +25,10 @@ jobs:
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
@@ -27,9 +37,8 @@ jobs:
/p:Platform=${{ matrix.platform }} `
/m
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.a" "-x!*.pch" "-x!*.elf" "-x!*.self" "-x!*.map"
- name: Stage artifacts
run: |
@@ -37,7 +46,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+18 -7
View File
@@ -7,10 +7,16 @@ on:
description: 'Configuration for the build (e.g. Debug, Release).'
required: true
default: 'Release'
type: choice
options:
- Debug
- Release
- ContentPackage
- ReleaseForArt
jobs:
build:
runs-on: windows-2022
runs-on: sdk-psvita
strategy:
matrix:
@@ -19,6 +25,10 @@ jobs:
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
@@ -27,17 +37,18 @@ jobs:
/p:Platform=${{ matrix.platform }} `
/m
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/PSVITA_GAME/*
- name: Stage artifacts
run: |
New-Item -ItemType Directory -Force -Path staging
Copy-Item LCE${{ matrix.platform }}.zip staging/
Copy-Item LCE${{ matrix.platform }}.zip staging/
Copy-Item "./PSVita_${{ inputs.configuration }}/Minecraft.Client.vpk" staging/LCEPSVita.vpk
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+55 -19
View File
@@ -24,54 +24,84 @@ jobs:
}
build:
runs-on: windows-2022
needs: validate
strategy:
matrix:
configuration: [Release]
platform: [PS3, Windows64] #[PS3, PSVita, Xbox 360, ORBIS, Windows64]
platform: [Windows64, Xbox360, Orbis, PSVita, PS3]
include:
- platform: Windows64
sdk_label: windows-2022 # str1k3r - can run on any runner
- platform: Xbox360
sdk_label: sdk-xbox360
- platform: Orbis
sdk_label: sdk-orbis
- platform: PSVita
sdk_label: sdk-psvita
- platform: PS3
sdk_label: sdk-ps3
runs-on: [windows-2022, "${{ matrix.sdk_label }}"]
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
$platform = if ("${{ matrix.platform }}" -eq "Xbox360") { "Xbox 360" } elseif ("${{ matrix.platform }}" -eq "Orbis") { "ORBIS" } else { "${{ matrix.platform }}" }
& "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" MinecraftConsoles.sln `
/p:Configuration=${{ matrix.configuration }} `
/p:Platform=${{ matrix.platform }} `
"/p:Platform=$platform" `
/m
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ matrix.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build (Windows64)
if: matrix.platform == 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./x64/${{ matrix.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build
run: |
if ("${{ matrix.platform }}" -eq "Windows64") {
7z a -r "LCEWindows64.zip" "./x64/${{ matrix.configuration }}/*" "-x!*.pdb" "-x!*.pch" "-x!*.ilk"
} elseif ("${{ matrix.platform }}" -eq "Orbis") {
7z a -r "LCEOrbis.zip" "./ORBIS_${{ matrix.configuration }}/PS4_GAME/*"
} elseif ("${{ matrix.platform }}" -eq "PSVita") {
7z a -r "LCEPSVita.zip" "./PSVita_${{ matrix.configuration }}/PSVITA_GAME/*"
} elseif ("${{ matrix.platform }}" -eq "PS3") {
7z a -r "LCEPS3.zip" "./PS3_${{ matrix.configuration }}/*" "-x!*.a" "-x!*.pch" "-x!*.elf" "-x!*.self" "-x!*.map"
} elseif ("${{ matrix.platform }}" -eq "Xbox360") {
7z a -r "LCEXbox360.zip" "./X360_${{ matrix.configuration }}/*" "-x!*.pdb" "-x!*.pch" "-x!*.xdb"
} else {
7z a -r "LCE${{ matrix.platform }}.zip" "./${{ matrix.platform }}/${{ matrix.configuration }}/*" "-x!*.ipdb" "-x!*.iobj" "-x!*.pdb" "-x!*.pch" "-x!*.ilk"
}
- name: Stage artifacts
run: |
New-Item -ItemType Directory -Force -Path staging
Copy-Item LCE${{ matrix.platform }}.zip staging/
Copy-Item "LCE${{ matrix.platform }}.zip" staging/
- name: Stage exe
if: matrix.platform == 'Windows64'
run: |
Copy-Item ./x64/${{ matrix.configuration }}/Minecraft.Client.exe staging/
if ("${{ matrix.platform }}" -eq "Windows64") {
Copy-Item "./x64/${{ matrix.configuration }}/Minecraft.Client.exe" staging/
} elseif ("${{ matrix.platform }}" -eq "PSVita") {
Copy-Item "./PSVita_${{ matrix.configuration }}/Minecraft.Client.vpk" staging/LCEPSVita.vpk
} elseif ("${{ matrix.platform }}" -eq "Orbis") {
Copy-Item "./ORBIS_${{ matrix.configuration }}/Minecraft.Client.pkg" staging/LCEOrbis.pkg
}
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
compression-level: 0
release:
needs: build
runs-on: windows-2022
steps:
- name: Download all build artifacts
uses: https://github.com/actions/download-artifact@v3
uses: https://github.com/christopherHX/gitea-download-artifact@v4
with:
path: downloaded
@@ -88,9 +118,15 @@ jobs:
} catch {
$body = $fallback
}
} else {
$body = $fallback
}
"description<<EOF`n$body`nEOF" | Out-File -Append -Encoding utf8 -NoNewline:$false $env:GITHUB_OUTPUT
$delimiter = "EOF_$([System.Guid]::NewGuid().ToString('N'))"
$content = "description<<$delimiter`n$body`n$delimiter`n"
$utf8NoBom = New-Object System.Text.UTF8Encoding($false)
[System.IO.File]::AppendAllText($env:GITHUB_OUTPUT, $content, $utf8NoBom)
- name: Publish Release
uses: akkuman/gitea-release-action@v1
+14 -3
View File
@@ -7,6 +7,12 @@ on:
description: 'Configuration for the build (e.g. Debug, Release).'
required: true
default: 'Release'
type: choice
options:
- Debug
- Release
- ContentPackage
- ReleaseForArt
jobs:
build:
@@ -19,6 +25,10 @@ jobs:
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
@@ -29,7 +39,7 @@ jobs:
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.pdb" "-x!*.pch" "-x!*.ilk"
- name: Stage artifacts
run: |
@@ -37,7 +47,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+21 -8
View File
@@ -7,29 +7,41 @@ on:
description: 'Configuration for the build (e.g. Debug, Release).'
required: true
default: 'Release'
type: choice
options:
- Debug
- Release
- ContentPackage
- ReleaseForArt
jobs:
build:
runs-on: windows-2022
runs-on: sdk-xbox360
strategy:
matrix:
platform: [Xbox 360]
platform: [Xbox360]
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
run: |
$platform = if ("${{ matrix.platform }}" -eq "Xbox360") { "Xbox 360" }
& "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" MinecraftConsoles.sln `
/p:Configuration=${{ inputs.configuration }} `
/p:Platform=${{ matrix.platform }} `
"/p:Platform=$platform" `
/m
- name: Zip Build (Consoles)
if: matrix.platform != 'Windows64'
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
- name: Zip Build
run: 7z a -r LCE${{ matrix.platform }}.zip ./X360_${{ inputs.configuration }}/* "-x!*.pdb" "-x!*.pch" "-x!*.xdb"
- name: Stage artifacts
run: |
@@ -37,7 +49,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+21 -28
View File
@@ -1,44 +1,35 @@
/*Debug
/*Release
/*ContentPackage
/*ContentPackage_NO_TU
/*ContentPackage_SYMBOLS
/*ReleaseForArt
.vs
/x64
/ipch
.vs/
.vscode
/*Debug
/*Release*
/*ContentPackage*
# Minecraft.Client
/Minecraft.Client/x64/
/Minecraft.Client/x64
/Minecraft.Client/x64_*
/Minecraft.Client/*Debug
/Minecraft.Client/*Release
/Minecraft.Client/*ContentPackage
/Minecraft.Client/*ContentPackage_NO_TU
/Minecraft.Client/*ContentPackage_SYMBOLS
/Minecraft.Client/*ReleaseForArt
/Minecraft.Client/*Release*
/Minecraft.Client/*ContentPackage*
/Minecraft.Client/Windows64/GameHDD
# Minecraft.world
/Minecraft.World/x64/
/Minecraft.World/x64
/Minecraft.World/x64_*
/Minecraft.World/*Debug
/Minecraft.World/*Release
/Minecraft.World/*ContentPackage
/Minecraft.World/*ContentPackage_NO_TU
/Minecraft.World/*ContentPackage_SYMBOLS
/Minecraft.World/*ReleaseForArt
/Minecraft.World/*Release*
/Minecraft.World/*ContentPackage*
# PS3 SPU
/Minecraft.Client/PS3/SPU_Tasks/objFiles/
/Minecraft.Client/PS3/SPU_Tasks/Texture_blit/PS3*
/Minecraft.Client/PS3/SPU_Tasks/LevelRenderer_FindNearestChunk/PS3*
/Minecraft.Client/PS3/SPU_Tasks/LevelRenderer_cull/PS3*
/Minecraft.Client/PS3/SPU_Tasks/CompressedTileStorage_compress/PS3*
/Minecraft.Client/PS3/SPU_Tasks/CompressedTile/PS3*
/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PS3*
# PS3 SPU Tasks
/Minecraft.Client/PS3/SPU_Tasks/objFiles
/Minecraft.Client/PS3/SPU_Tasks/*/PS3*
/Minecraft.Client/PS3/SPU_Tasks/*/Debug
/Minecraft.Client/PS3/SPU_Tasks/*/Release
/Minecraft.Client/PS3/SPU_Tasks/*/ContentPackage
# Misc
*.ppu.o
*.pkg
/*.gp4p
/*.vpk
@@ -46,4 +37,6 @@
*-app
*.sdf
*.opensdf
*.v11.suo
*.v11.suo
*.vcxproj.user
*.aps
+5
View File
@@ -0,0 +1,5 @@
[submodule "Minecraft.Client/Windows64/4JLibs"]
path = Minecraft.Client/Windows64/4JLibs
url = https://gitea.str1k3r.xyz/pieeebot/Cafeberry-4JLibs
ignore = untracked
branch = main
@@ -0,0 +1,80 @@
param(
[string]$ProjectDir,
[string]$Platform,
[string]$Configuration
)
if ($ProjectDir -match "Minecraft.World") {
$BaseDir = "$ProjectDir..\Minecraft.Client\"
} elseif ($ProjectDir -match "Minecraft.Client") {
$BaseDir = $ProjectDir
} else {
Write-Host "4JLibs: Unknown project directory: '$ProjectDir'"
exit 1
}
switch ($Platform) {
"x64" { $LibsDir = Join-Path $BaseDir "Windows64\4JLibs\"; $ExpectedCount = 4; $PlatformName = "Windows64" }
"Durango" { $LibsDir = Join-Path $BaseDir "Durango\4JLibs\"; $ExpectedCount = 4; $PlatformName = "Durango" }
"Xbox 360" { $LibsDir = Join-Path $BaseDir "Xbox\4JLibs\"; $ExpectedCount = 5; $PlatformName = "Xbox" }
"PS3" { $LibsDir = Join-Path $BaseDir "PS3\4JLibs\"; $ExpectedCount = 4; $PlatformName = "PS3" }
"Orbis" { $LibsDir = Join-Path $BaseDir "Orbis\4JLibs\"; $ExpectedCount = 4; $PlatformName = "Orbis" }
"PSVita" { $LibsDir = Join-Path $BaseDir "PSVita\4JLibs\"; $ExpectedCount = 4; $PlatformName = "PSVita" }
default { Write-Host "4JLibs: Unknown platform: '$Platform'"; exit 1 }
}
if ($Configuration -match "ContentPackage" -or $Configuration -match "Release") {
$BuildConfig = "Release"
} elseif ($Configuration -match "Debug") {
$BuildConfig = "Debug"
} else {
Write-Host "4JLibs: Configuration did not match any known patterns, defaulting to Debug"
$BuildConfig = "Debug"
}
if (-not (Test-Path $LibsDir)) {
Write-Host "4JLibs: $PlatformName 4JLibs directory not found"
exit 1
} elseif (-not (Test-Path "$LibsDir\Headers\$PlatformName")) {
Write-Host "4JLibs: $PlatformName 4JLibs Headers directory not found"
exit 1
} elseif (-not (Test-Path "$LibsDir\Headers")) {
Write-Host "4JLibs: Headers directory not found"
exit 1
}
$incPath = Join-Path $LibsDir "inc"
$libsPath = Join-Path $LibsDir "libs"
$incCount = (Get-ChildItem -Path $incPath -Filter "*.h" -ErrorAction SilentlyContinue).Count
if ($BuildConfig -eq "Release") {
$libCount = (Get-ChildItem -Path $libsPath -Filter "*_r.lib" -ErrorAction SilentlyContinue).Count
} else {
$libCount = (Get-ChildItem -Path $libsPath -Filter "*_d.lib" -ErrorAction SilentlyContinue).Count
}
if ($incCount -lt $ExpectedCount) {
Write-Host "4JLibs: Copying header files for $PlatformName"
xcopy "$LibsDir\Headers\$PlatformName\*" "$incPath" /E /I /Y
} else {
Write-Host "4JLibs: inc files already present, skipping copy."
}
if ($libCount -lt $ExpectedCount) {
Write-Host "4JLibs: Building 4JLibs for $PlatformName in $BuildConfig"
& "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" `
(Join-Path $LibsDir "4JLibs.sln") `
/p:Configuration=$BuildConfig `
/p:Platform=$PlatformName `
/v:minimal `
/m
if ($LASTEXITCODE -ne 0) {
Write-Host "4JLibs: Build failed with exit code: $LASTEXITCODE"
exit $LASTEXITCODE
}
} else {
Write-Host "4JLibs: libs already present, skipping build."
}

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 196 KiB

Before

Width:  |  Height:  |  Size: 308 KiB

After

Width:  |  Height:  |  Size: 308 KiB

Before

Width:  |  Height:  |  Size: 252 KiB

After

Width:  |  Height:  |  Size: 252 KiB

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 1.9 MiB

Before

Width:  |  Height:  |  Size: 2.0 MiB

After

Width:  |  Height:  |  Size: 2.0 MiB

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 1.1 MiB

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Before

Width:  |  Height:  |  Size: 103 KiB

After

Width:  |  Height:  |  Size: 103 KiB

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 91 KiB

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Before

Width:  |  Height:  |  Size: 103 KiB

After

Width:  |  Height:  |  Size: 103 KiB

Before

Width:  |  Height:  |  Size: 123 KiB

After

Width:  |  Height:  |  Size: 123 KiB

Some files were not shown because too many files have changed in this diff Show More