Features:
- SettingsActivity accessible via Menu button (keycode 82)
- Configure server URL and mode (online/offline) in-game
- Test connection before saving settings
- Switch to offline mode with one tap
- Sync settings from web admin panel
- Real-time status messages with emoji indicators
Implementation:
- Created 13 SettingsActivity Smali files (main + inner classes)
- Created activity_settings.xml UI layout
- Added SettingsActivity to AndroidManifest.xml (portrait mode)
- Modified MainActivity.smali to handle Menu button press
- Integrated with existing ServerManager for Nimble SDK overrides
- Settings stored in SharedPreferences (rr3_server_config.xml)
APK:
- Built and signed: RR3-v14-Settings-Menu.apk (103 MB)
- Keystore: rr3-release.keystore (alias: rr3key)
- Ready for distribution
Related server changes:
- ServerSettingsController.cs with 3 API endpoints
- DeviceSettings.cshtml admin page
- UserSettings database model and migration
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- NEW: ServerSelectionActivity as main launcher
- Beautiful startup menu (Offline/Online modes)
- URL input dialog with custom port support
- Quick select presets (Official/Local/Custom)
- 'Remember my choice' persistence
- Help dialog for first-time users
- NEW: ServerManager for Nimble SDK URL overrides
- Automatically configures all EA endpoints
- Supports custom ports (:8443, :3000, etc.)
- Comprehensive error handling and logging
- Modified MainActivity to read Intent extras
- Reads mode (online/offline) from ServerSelectionActivity
- Configures custom server before game init
- Maintains backward compatibility
- Modified AndroidManifest.xml
- ServerSelectionActivity is now LAUNCHER
- UnpackAssetsActivity no longer exports MAIN intent
- Intent extras preserved through activity chain
- Added XML layouts
- activity_server_selection.xml (main menu UI)
- dialog_server_input.xml (URL input dialog)
- Server URL format: https://domain.com:port
- SharedPreferences: rr3_server_config.xml
Ready for Phase 2: Community server backend implementation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Move init calls from onCreate() to Handler.postDelayed()
- Create OfflineInitRunnable inner class for delayed execution
- Add try-catch wrapper for safety
- Add detailed logging for debugging
This fixes the crash caused by offline managers trying to access
Context/SharedPreferences before Android system fully initializes.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- 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>
- 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>
- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide
This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)
Total: 44,417 files, 538.51 MB Smali source code