Skip to content

[Client] Mobile - #21

Draft
MaatheusGois wants to merge 45 commits into
GregHib:mainfrom
MaatheusGois:main
Draft

[Client] Mobile#21
MaatheusGois wants to merge 45 commits into
GregHib:mainfrom
MaatheusGois:main

Conversation

@MaatheusGois

@MaatheusGois MaatheusGois commented Aug 23, 2026

Copy link
Copy Markdown

MaatheusGois and others added 6 commits August 23, 2026 03:20
Scaffold an Android Gradle app that hosts the desktop client via software rendering, stubbed native libraries, and a voidawt compatibility layer.

Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the client filling the phone, wire touch/keyboard, and add a RoboVM host so the 634 client can boot on iOS.

Co-authored-by: Cursor <cursoragent@cursor.com>
Stop the keyboard from resizing the game surface, and hide system bars so the viewport stays full-screen.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace silent javax.sound stubs with ByteRing + AudioTrack (Android) and AudioQueue (iOS) so the 634 mixer can play music/SFX; document the path in ARCHITECTURE.

Co-authored-by: Cursor <cursoragent@cursor.com>
@MaatheusGois
MaatheusGois marked this pull request as draft August 23, 2026 18:43
MaatheusGois and others added 23 commits August 23, 2026 16:47
Detect UI presses that need typing (key listeners / login text widgets), hide the keyboard FAB, and bridge through AwtHost so the system IME opens without a floating button.

Co-authored-by: Cursor <cursoragent@cursor.com>
Expand the READMEs with server prerequisites, install/launch commands, adb reverse, arm64 JDK notes for Simulator, and updated touch/keyboard controls.

Co-authored-by: Cursor <cursoragent@cursor.com>
Document desktop/Android/iOS from void-client only: how to launch and how to point each client at the game server IP, without monorepo server targets.

Co-authored-by: Cursor <cursoragent@cursor.com>
Wire launcher mipmaps / adaptive icons and iOS AppIcon assets from the branding 1024px source so both mobile clients show the Void mark on the home screen.

Co-authored-by: Cursor <cursoragent@cursor.com>
Ignore transient SurfaceView shrinks from system-bar flashes and re-apply the last stable size on resume/focus so the game does not stick at roughly half size.

Co-authored-by: Cursor <cursoragent@cursor.com>
Opens/closes the console without relying on the ` key, shows the soft keyboard after open, and dismisses the IME early on multi-touch so close gestures can finish.

Co-authored-by: Cursor <cursoragent@cursor.com>
Desktop keeps the classic 350px band; Android/iOS use 175px so the purple overlay covers less of the game.

Co-authored-by: Cursor <cursoragent@cursor.com>
Phones have no desktop pointer, so joystick aim needs a drawn sprite instead of the old crosshair.

Co-authored-by: Cursor <cursoragent@cursor.com>
The arrow stayed on screen after DualShock unplug because padActive never cleared.

Co-authored-by: Cursor <cursoragent@cursor.com>
Open IME only on real text fields, lift the chatbox above the keyboard without resizing the canvas, persist server hosts, harden Android FS present/resume, switch iOS fonts to CoreText, and document the physical-device workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
UIRequiresFullScreen is off so Stage Manager / Split View can resize the game window.

Co-authored-by: Cursor <cursoragent@cursor.com>
…ve the IME.

Co-authored-by: Cursor <cursoragent@cursor.com>
…io focus.

Declare all iPad orientations and drop UIRequiresFullScreen so Stage Manager can resize; settle display size after 3s idle. MixWithOthers keeps PiP/other audio alive, and iOS login lift gets extra IME padding.

Co-authored-by: Cursor <cursoragent@cursor.com>
Added a new asset link to the README.
Persist preferred NPC/object/item actions for tap, auto-login with saved
creds, and DualShock/Xbox mapping on iOS to match Android.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Avoid JAWT Finalizer crashes and noisy ha_Sub2 probe failures by forcing
the pure-Java software renderer during Auto Setup and toolkit switches.

Co-authored-by: Cursor <cursoragent@cursor.com>
Skip toolkit benchmark on mac but still dismiss the Auto Setup overlay
so pending login can proceed without a manual click.

Co-authored-by: Cursor <cursoragent@cursor.com>
Ports a Microbot-shaped bot layer into src-microbot (Rs2* facades, combat script, VirtualMouse) plus clarifying 634 renames and a clickable canvas panel for combat/pause toggles.

Co-authored-by: Cursor <cursoragent@cursor.com>
Rename Class373/Class324 (and backends) to MouseHandler/BitmapFont*,
expose clear draw/input helpers, and organize Void/Microbot/Rs2 files
into sibling Gradle source roots while staying in the default package.

Co-authored-by: Cursor <cursoragent@cursor.com>
Gives packet Buffer / shaders / caches readable names, resolves the jaclib.memory.Buffer clash in s_Sub3, and replaces Microbot lambdas/BooleanSupplier so device builds can AOT.

Co-authored-by: Cursor <cursoragent@cursor.com>
MaatheusGois and others added 16 commits August 28, 2026 13:22
Drop the src-* prefix so roots mirror client domains (fonts, input, menu, void, microbot, rs2) and keep Gradle / decode docs in sync.

Co-authored-by: Cursor <cursoragent@cursor.com>
Split the flat 634 tree into leaf Gradle srcDirs (toolkit/gl, shaders/*, scene/*, net/*, …) while keeping the default package; Android/iOS flatten **/*.java into generated/client.

Co-authored-by: Cursor <cursoragent@cursor.com>
Apply RENAMES.md mappings for ha/oa/aa/ba/… and *Sub* peers (GraphicsToolkit, OpenGLToolkit, GlToolkitSub*, Shader*, BufferCache*, NodeBase*, …), skipping single-letter types that break literals and locals.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Clarify Node/list/cache/IO/font/menu APIs and related call sites without touching JNI natives or opaque counters.

Co-authored-by: Cursor <cursoragent@cursor.com>
Continue evidence-based deob of cache/JS5, prefs, console, friends, and related APIs with comments; keep desktop and iOS compiling.

Co-authored-by: Cursor <cursoragent@cursor.com>
Continue camera, applet lifecycle, loading, containers, HUD/UI, and related APIs with comments; add client Architecture.md; keep desktop and iOS compiling.

Co-authored-by: Cursor <cursoragent@cursor.com>
Camera orbit, viewport sync, and server-picker looked up stale field/method
names via Class.forName; add a deob skill check so renames keep AwtHost in sync.

Co-authored-by: Cursor <cursoragent@cursor.com>
CoreText CTM/text-matrix combos rendered upside-down or empty on device; draw through UIKit and keep alpha when blitting. Also set idleTimerDisabled on UIApplication, not UIWindow.

Co-authored-by: Cursor <cursoragent@cursor.com>
AwtHost and ServerPrefs look up members by name; silent failures break camera/viewport unless strings move with renames.

Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the purple console band consuming taps while the keyboard closes, gate IME dismiss to the prompt strip, and deploy via robovmInstall plus a DeviceCtl JSON overflow patch so iPad installs stay fresh.

Co-authored-by: Cursor <cursoragent@cursor.com>
Strip/decorate now parse item args so names like Overload (4) replay cleanly, hide the soft keyboard on submit so inventory stays visible, and deobfuscate the item-def island plus an always-on learn-to-deobfuscate rule.
…obs.

Map DisplayModeManagerContainer206 to NpcComposition and clarify combatLevel/attack paths; leave the stock level-demote gate commented until combat attack prefs exist.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant