Networked client on the existing Godot 4.7 + libgr2 renderer:
- net: m2dev wire protocol (libsodium KX + XChaCha20), auth/select/game
phases, EntityStore world model, ~all GC/CG headers. char create/delete,
private shop / mall / cube, SHOP_GC_START_EX, guild, party (+ CG_PARTY_SET_STATE),
quests, dragon soul, refine, safebox, exchange.
- UI: in-game windows migrated 1:1 from the reference uiscript/root .py —
char status (/stat), inventory+equipment, select-item ([SELECT_ITEM] quest
token), system-option + game-option + ESC system menu, private-shop 39-grid,
party info board, shop tabs, atlas, minimap, quickbar, chat, …
- EterGrnLib polish: GR2 material blend/two-sided, LOD crossfade, motion-event
dispatch, contact shadow, ray-AABB picking, weapon grip pre-transform.
Portable asset IO (A1) — all extension/libgr2/formats/mtproto reads routed
through godot::FileAccess (res:// PCK works on iOS/Android); standalone-lib
*_path() kept for the non-Godot CTests. AssetResolver + PropertyRegistry
switched to a baked index (bake_asset_index.gd) instead of std::filesystem.
Mobile builds: build-{android,ios}.sh, export-android.sh, pack-assets.sh,
gen-debug-keystore.sh. Assets ship as a zip mounted at runtime by
project/asset_pack.gd (adb push now; HTTP download is a drop-in later).
ctest 10/10, 34 GDScript suites, macOS/iOS/Android all build.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013EJxkHiNKS4kybHS3XKyAJ
129 lines
3.6 KiB
INI
129 lines
3.6 KiB
INI
[preset.0]
|
|
|
|
name="macOS"
|
|
platform="macOS"
|
|
runnable=true
|
|
advanced_options=false
|
|
dedicated_server=false
|
|
custom_features=""
|
|
export_filter="all_resources"
|
|
include_filter=""
|
|
exclude_filter=""
|
|
export_path="../build/export/mtgodot-poc.app"
|
|
patches=PackedStringArray()
|
|
encryption_include_filters=""
|
|
encryption_exclude_filters=""
|
|
seed=0
|
|
encrypt_pck=false
|
|
encrypt_directory=false
|
|
script_export_mode=2
|
|
|
|
[preset.0.options]
|
|
|
|
export/distribution_type=1
|
|
binary_format/architecture="arm64"
|
|
custom_template/debug=""
|
|
custom_template/release=""
|
|
debug/export_console_wrapper=1
|
|
application/icon=""
|
|
application/icon_interpolation=4
|
|
application/bundle_identifier="org.internal.mtgodotpoc"
|
|
application/signature=""
|
|
application/app_category="Games"
|
|
application/short_version="1.0"
|
|
application/version="1.0"
|
|
application/copyright=""
|
|
display/high_res=true
|
|
xcode/platform_build="14C18"
|
|
xcode/sdk_version="13.1"
|
|
xcode/sdk_path="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk"
|
|
xcode/sdk_name="macosx13.1"
|
|
codesign/codesign=0
|
|
codesign/identity=""
|
|
codesign/certificate_file=""
|
|
codesign/certificate_password=""
|
|
codesign/entitlements/allow_jit_code_execution=false
|
|
codesign/entitlements/allow_unsigned_executable_memory=false
|
|
codesign/entitlements/allow_dyld_environment_variables=false
|
|
codesign/entitlements/disable_library_validation=true
|
|
notarization/notarization=0
|
|
privacy/microphone_usage_description=""
|
|
privacy/camera_usage_description=""
|
|
privacy/location_usage_description=""
|
|
privacy/address_book_usage_description=""
|
|
privacy/calendar_usage_description=""
|
|
privacy/photos_library_usage_description=""
|
|
privacy/desktop_folder_usage_description=""
|
|
privacy/documents_folder_usage_description=""
|
|
privacy/downloads_folder_usage_description=""
|
|
privacy/network_volumes_usage_description=""
|
|
privacy/removable_volumes_usage_description=""
|
|
ssh_remote_deploy/enabled=false
|
|
|
|
[preset.1]
|
|
|
|
name="Android"
|
|
platform="Android"
|
|
runnable=true
|
|
advanced_options=false
|
|
dedicated_server=false
|
|
custom_features=""
|
|
export_filter="all_resources"
|
|
include_filter=""
|
|
exclude_filter=""
|
|
export_path="../build/export/mtgodot-poc.apk"
|
|
patches=PackedStringArray()
|
|
encryption_include_filters=""
|
|
encryption_exclude_filters=""
|
|
seed=0
|
|
encrypt_pck=false
|
|
encrypt_directory=false
|
|
script_export_mode=2
|
|
|
|
[preset.1.options]
|
|
|
|
custom_template/debug=""
|
|
custom_template/release=""
|
|
gradle_build/use_gradle_build=true
|
|
gradle_build/gradle_build_directory="res://android"
|
|
gradle_build/android_source_template=""
|
|
gradle_build/compress_native_libraries=false
|
|
gradle_build/export_format=0
|
|
gradle_build/min_sdk=""
|
|
gradle_build/target_sdk=""
|
|
architectures/armeabi-v7a=false
|
|
architectures/arm64-v8a=true
|
|
architectures/x86=false
|
|
architectures/x86_64=false
|
|
version/code=1
|
|
version/name="1.0"
|
|
package/unique_name="org.internal.mtgodotpoc"
|
|
package/name=""
|
|
package/signed=true
|
|
package/app_category=2
|
|
package/retain_data_on_uninstall=false
|
|
package/exclude_from_recents=false
|
|
package/show_in_android_tv=false
|
|
package/show_in_app_library=true
|
|
package/show_as_launcher_app=false
|
|
launcher_icons/main_192x192=""
|
|
launcher_icons/adaptive_foreground_432x432=""
|
|
launcher_icons/adaptive_background_432x432=""
|
|
launcher_icons/adaptive_monochrome_432x432=""
|
|
graphics/opengl_debug=false
|
|
xr_features/xr_mode=0
|
|
screen/immersive_mode=true
|
|
screen/support_small=true
|
|
screen/support_normal=true
|
|
screen/support_large=true
|
|
screen/support_xlarge=true
|
|
user_data_backup/allow=false
|
|
command_line/extra_args=""
|
|
apk_expansion/enable=false
|
|
apk_expansion/SALT=""
|
|
apk_expansion/public_key=""
|
|
permissions/internet=true
|
|
permissions/access_network_state=true
|
|
permissions/access_wifi_state=true
|
|
permissions/wake_lock=true
|