5 Commits

Author SHA1 Message Date
aa65c34683 Add release keystore for APK signing
- Added rr3-release.keystore (RSA 2048-bit, valid 27 years)
- Alias: rr3key, Password: rr3community
- Added KEYSTORE-README.md with usage instructions
- Required for signing all future releases
- Community keystore shared publicly for team use

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 19:16:47 -08:00
c5253880a0 Phase 4: Add Special Events Offline Support (Discord Phase 2 Complete!)
- Created OfflineEventsManager.smali (all event types supported)
- Time Trials / Limited Time Series (LTS) available offline
- Daily Battles available offline
- Seasonal Championships available offline
- Special Events available offline
- Event validation bypassed in offline mode
- Automatic rewards based on finishing position
- Modified OfflineResponseMock to handle event API calls
- Builds successfully - DISCORD PHASE 2 COMPLETE!

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 18:05:23 -08:00
3d380d3c6b Phase 3: Add Offline Currency System
- Created OfflineCurrencyManager.smali (unlimited currency for offline)
- Sets 100M M\$ and 10M Gold on initialization
- Provides getCash/getGold methods for offline play
- Supports both unlimited and tracked currency modes
- Modified MainActivity to initialize currency manager
- Builds successfully

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 18:00:24 -08:00
5bf771f4c1 Phase 2: Add Network Bypass for offline mode
- Created OfflineModeManager.smali (toggle offline mode)
- Created OfflineResponseMock.smali (mock API responses)
- Modified NetworkImpl to check offline mode
- Modified MainActivity initialization
- Builds successfully

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 17:48:44 -08:00
c25e937818 Phase 1: Add LocalSaveManager for offline mode
- Created LocalSaveManager.smali with JSON save/load functionality
- Implements save file at /sdcard/Android/data/com.ea.games.r3_row/files/offline_save.json
- Added currency helper methods (getCurrency, setCurrency)
- Initialized in MainActivity.onCreate()
- Save structure includes: player, currency, dailyReward, cars, progress

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 17:24:35 -08:00
1623 changed files with 252922 additions and 0 deletions

60
KEYSTORE-README.md Normal file
View File

@@ -0,0 +1,60 @@
# RR3 Release Keystore
This keystore is used to sign all RR3 offline mod releases.
## Keystore Details
- **File:** rr3-release.keystore
- **Alias:** rr3key
- **Password:** rr3community
- **Key Algorithm:** RSA 2048-bit
- **Validity:** 10,000 days (~27 years)
- **Created:** 2026-02-18
## Usage
### Signing an APK
```bash
# Step 1: Zipalign
zipalign -v -p 4 input.apk aligned.apk
# Step 2: Sign
apksigner sign --ks rr3-release.keystore \
--ks-key-alias rr3key \
--ks-pass pass:rr3community \
--key-pass pass:rr3community \
--out signed.apk \
aligned.apk
# Step 3: Verify
apksigner verify -v signed.apk
```
### Windows PowerShell
```powershell
# Zipalign
& "path\to\zipalign.exe" -v -p 4 input.apk aligned.apk
# Sign
& "path\to\apksigner.bat" sign --ks rr3-release.keystore --ks-key-alias rr3key --ks-pass pass:rr3community --key-pass pass:rr3community --out signed.apk aligned.apk
# Verify
& "path\to\apksigner.bat" verify -v signed.apk
```
## Important Notes
⚠️ **Keep this keystore safe!** All future updates must be signed with the same key, otherwise users will have to uninstall the old version before installing updates.
⚠️ **This is a community keystore** with a simple password for ease of use. It's shared publicly in this repository.
## Certificate Information
- **Owner:** CN=RR3Community, OU=Modding, O=Community, L=Unknown, ST=Unknown, C=US
- **Valid until:** 02/18/2026 19:16:33.AddDays(10000).ToString('yyyy-MM-dd')
## Files in This Release
All APKs should be signed with this keystore before distribution.

Binary file not shown.

BIN
build/apk/assets.dex Normal file

Binary file not shown.

BIN
build/apk/classes.dex Normal file

Binary file not shown.

BIN
build/apk/classes2.dex Normal file

Binary file not shown.

BIN
build/apk/classes3.dex Normal file

Binary file not shown.

BIN
build/apk/classes4.dex Normal file

Binary file not shown.

BIN
build/apk/classes5.dex Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

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