diff --git a/EpochSilicon.app/Contents/Info.plist b/EpochSilicon.app/Contents/Info.plist
index 85c9743..c9ea5e6 100644
--- a/EpochSilicon.app/Contents/Info.plist
+++ b/EpochSilicon.app/Contents/Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
epochsilicon
CFBundleIdentifier
- com.eburk.epochsilicon
+ com.burkey.epochsilicon
CFBundleIconFile
icon.icns
CFBundleShortVersionString
@@ -17,7 +17,7 @@
MacOSX
CFBundleVersion
- 99
+ 133
NSHighResolutionCapable
NSSupportsAutomaticGraphicsSwitching
diff --git a/FyneApp.toml b/FyneApp.toml
index f14931c..2a10f0b 100644
--- a/FyneApp.toml
+++ b/FyneApp.toml
@@ -1,6 +1,6 @@
[Details]
Icon = "Icon.png"
Name = "EpochSilicon"
- ID = "com.eburk.epochsilicon"
+ ID = "com.burkey.epochsilicon"
Version = "1.2.4"
- Build = 100
+ Build = 134
diff --git a/LICENSE b/LICENSE
index 784a2b0..0b338c5 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,5 +1,6 @@
MIT License
+Copyright (c) 2025 Evan Burkey
Copyright (c) 2025 tairasu
Permission is hereby granted, free of charge, to any person obtaining a copy
diff --git a/Makefile b/Makefile
index 7406d31..860028c 100644
--- a/Makefile
+++ b/Makefile
@@ -17,6 +17,7 @@ build-dev:
build: build-dev
build-release:
+ @rm -rf ./EpochSilicon.app
@echo "Building optimized release version..."
CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 go build \
-ldflags="-s -w -X main.appVersion=$$(grep Version FyneApp.toml | cut -d'"' -f2)" \
@@ -40,15 +41,25 @@ build-release:
clean:
rm -rf EpochSilicon.app
rm -f EpochSilicon.dmg
+ rm -f EpochSilicon.zip
rm -f epochsilicon
-dmg: build-release
- @echo "Preparing DMG staging directory..."
+sign: build-release
+ codesign --timestamp --options runtime -s "Developer ID Application: Evan Burkey (2TXG4AP658)" ./EpochSilicon.app/Contents/Resources/rosettax87/rosettax87
+ codesign --timestamp --options runtime -s "Developer ID Application: Evan Burkey (2TXG4AP658)" ./EpochSilicon.app/Contents/Resources/rosettax87/libRuntimeRosettax87
+ codesign --timestamp --options runtime -s "Developer ID Application: Evan Burkey (2TXG4AP658)" ./EpochSilicon.app
+ @/usr/bin/ditto -c -k -rsrc --sequesterRsrc --keepParent ./EpochSilicon.app EpochSilicon.zip
+ xcrun notarytool submit --keychain-profile "EpochSilicon" --wait ./EpochSilicon.zip
+ xcrun stapler staple ./EpochSilicon.app
+
+dmg: build-release sign
+ echo "Preparing DMG staging directory..."
@rm -rf dmg-staging
@mkdir dmg-staging
- @cp -R EpochSilicon.app dmg-staging/
+ @/usr/bin/ditto --rsrc ./EpochSilicon.app dmg-staging/EpochSilicon.app
@ln -s /Applications dmg-staging/Applications
- @echo "Creating DMG file..."
- @hdiutil create -volname EpochSilicon -srcfolder dmg-staging -ov -format UDZO EpochSilicon.dmg
- @echo "DMG created: EpochSilicon.dmg"
- @rm -rf dmg-staging
\ No newline at end of file
+ hdiutil create -volname EpochSilicon -srcfolder dmg-staging -ov -format UDZO EpochSilicon.dmg
+ @rm -rf dmg-staging
+ codesign --timestamp -i com.burkey.epochsilicon -s "Developer ID Application: Evan Burkey (2TXG4AP658)" ./EpochSilicon.dmg
+ xcrun notarytool submit --keychain-profile "EpochSilicon" --wait ./EpochSilicon.dmg
+ xcrun stapler staple ./EpochSilicon.dmg
diff --git a/README.md b/README.md
index 4c41555..2ee5be7 100644
--- a/README.md
+++ b/README.md
@@ -1,29 +1,13 @@
-
EpochSilicon
-
-
-
-
-
-
-
-

-

-
-
-A user-friendly launcher for Turtle WoW on Apple Silicon Macs, with one-click patching of winerosetta, rosettax87 and d9vk.
+A user-friendly launcher for Project Epoch on Apple Silicon Macs, with one-click patching of winerosetta, rosettax87 and d9vk.
## Prerequisites
Before you begin, ensure you have the following:
-* A working version of **CrossOver** installed (the trial version is sufficient and can still be used after expiration).
- - I recommend using CrossOver v25.0.1 or later. Older versions will cause issues.
-* The **Turtle WoW Client** downloaded from the official website.
+* A working version of **CrossOver** installed (the trial version is sufficient and can still be used after expiration).
+ - You must use CrossOver v25.0.1 or later. Older versions will cause issues.
+* A 3.3.5a World of Warcraft client. You can easily get the client from [Project Epoch's download page](https://project-epoch.com/play)
+* Place the client in an folder you have rights to. Your user directory (example: `/Users/username/Epoch`) is a good default choice. Avoid spaces in your path!
## Credits
@@ -33,30 +17,34 @@ All credit for the core translation layer `winerosetta` and `rosettax87` goes to
[https://github.com/Lifeisawful/rosettax87](https://github.com/Lifeisawful/rosettax87)
+EpochSilicon is a fork of [https://turtlesilicon.github.io/](TurtleSilicon), credit for the base of the application goes to tairasu.
+
## Features
-* **Apple Silicon Compatibility:** Runs 32-bit DirectX9 World of Warcraft (v1.12) on M1/M2/M3/M4 Macs without "illegal instruction" errors.
+* **Apple Silicon Compatibility:** Runs 32-bit DirectX9 World of Warcraft (v3.3.5a) on M1/M2/M3/M4 Macs without "illegal instruction" errors.
* **Performance Optimization:**
* Integrates `rosettax87` for accelerated x87 FPU instructions
* Uses `d9vk` for efficient DirectX9 via Vulkan/Metal translation
- * Achieves significant FPS improvements (20 FPS → 200+ FPS in many scenarios)
-* **Vanilla-Tweaks Support:** Optional integration with automatic application.
-* **Automated Setup:** One-click patching for both CrossOver and Turtle WoW installations.
+ * Achieves significant FPS improvements
+* **Automated Setup:** One-click patching for both CrossOver and Epoch installations.
* **Simple Interface:** Easy to use GUI with status indicators and configuration options.
## Usage
+### Installation
+
+
+
### Method 1: Using the Pre-built Application
-1. Launch `TurtleSilicon.app`.
- * (The app is not signed, so you will get a "this app is damaged" message. Open Terminal and enter `xattr -cr /Applications/TurtleSilicon.app` to bypass it)
-3. **Set CrossOver Path**:
+1. Launch `EpochSilicon.app`.
+2. **Set CrossOver Path**:
* If CrossOver is installed in the default location (`/Applications/CrossOver.app`), this path will be pre-filled.
* Otherwise, click "Set/Change" and navigate to your `CrossOver.app` bundle.
-4. **Set TurtleWoW Directory Path**:
- * Click "Set/Change" and select the folder where you have your Turtle WoW client files.
-5. **Apply Patches**:
- * Click "Patch TurtleWoW".
+3. **Set Warcraft Directory Path**:
+ * Click "Set/Change" and select the folder where you have your WoW 3.3.5a client files.
+4. **Apply Patches**:
+ * Click "Patch Epoch".
* Click "Patch CrossOver".
* Status indicators will turn green once patching is successful for each.
6. **Start RosettaX87 Service**:
@@ -64,13 +52,11 @@ All credit for the core translation layer `winerosetta` and `rosettax87` goes to
* This will run the RosettaX87 service in the background and is required for launching the game.
* The service will automatically stop when you close the launcher.
7. **Configure Options (Optional)**:
- * **Enable vanilla-tweaks**: Check this box to use vanilla-tweaks, which provides various game improvements and fixes.
- * If vanilla-tweaks hasn't been applied yet, TurtleSilicon will automatically offer to apply it when you launch the game.
* **Enable Metal Hud**: Shows FPS counter in-game.
* **Show Terminal**: Displays terminal output during game launch for debugging.
8. **Launch Game**:
* Once both paths are set, both components are patched, and the RosettaX87 service is running, the "Launch Game" button will become active. Click it.
-9. **Enjoy**: Experience a significantly smoother Turtle WoW on your Apple Silicon Mac!
+9. **Enjoy**: Experience a VM free, smoother Project Epoch on your Apple Silicon Mac!
### Method 2: Running from Source Code
@@ -78,12 +64,12 @@ If you prefer to run the application directly from source code:
1. **Clone the repository**:
```sh
- git clone https://github.com/tairasu/TurtleSilicon.git
+ git clone https://git.burkey.co/eburk/EpochSilicon
```
2. **Navigate to the directory**:
```sh
- cd TurtleSilicon
+ cd EpochSilicon
```
3. **Run the application**:
@@ -97,10 +83,7 @@ If you prefer to run the application directly from source code:
## Recommended settings
-1. Set "Terrain distance" as low as possible. This reduces the overhead stress on the CPU
-2. Turn Vertex Animation Shaders on. Otherwise you get graphic glitches on custom models.
-3. Set Multisampling to 24-bit color 24-bit depth **2x** to make portraits load
-4. Add `SET shadowLOD "0"` to your Config.wtf inside the WTF directory
+TBD
## Build Instructions
@@ -130,10 +113,10 @@ If you prefer to build manually:
```sh
GOOS=darwin GOARCH=arm64 fyne package
# Then manually copy the resource directories
-cp -R rosettax87 winerosetta TurtleSilicon.app/Contents/Resources/
+cp -R rosettax87 winerosetta EpochSilicon.app/Contents/Resources/
```
-In either case, this will create a `TurtleSilicon.app` file in the project directory, which you can then run.
+In either case, this will create a `EpochSilicon.app` file in the project directory, which you can then run.
Make sure you have an `Icon.png` file in the root of the project directory before building.
diff --git a/main.go b/main.go
index 9e0d1b0..409c3b4 100644
--- a/main.go
+++ b/main.go
@@ -11,7 +11,7 @@ import (
const appVersion = "0.1.0"
func main() {
- PEApp := app.NewWithID("com.eburk.epochsilicon")
+ PEApp := app.NewWithID("com.burkey.epochsilicon")
PEWindow := PEApp.NewWindow("EpochSilicon v" + appVersion)
PEWindow.Resize(fyne.NewSize(650, 500))
PEWindow.SetFixedSize(true)
diff --git a/winerosetta/libSiliconPatch.dll b/winerosetta/libSiliconPatch.dll
deleted file mode 100644
index d49eda0..0000000
Binary files a/winerosetta/libSiliconPatch.dll and /dev/null differ
diff --git a/winerosetta/vanilla-tweaks.exe b/winerosetta/vanilla-tweaks.exe
deleted file mode 100755
index b1e92f4..0000000
Binary files a/winerosetta/vanilla-tweaks.exe and /dev/null differ