XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEEDToolBox

【WinUI】XFE精英危险工具箱

公开
关注 0 Fork 0 Star 0
UTF-8

Original route planning controls

The current GMRouteSettingsComponent.as defines economical0, fastest1 and FSD boost2, an independent jet-cone flag, boost level0–3 and a cargo-mass slider. Find-OriginalGalaxyRouteSettings.py resolves the four exact callback registrations; Trace-OriginalGalaxyRouteSettings.py independently matches the original6891 and currentED5 controller bodies and actual vtable slots. No game process was accessed by this research.

The original 551FFF0 interface is object base+88. Its registered interface is base+58 (551FEC8, current 551FE98), with actual type global 5FDB224. The current controller table is 551FFC0:

Control Original slot/body Current body ABI
Mode F0 /3A6AF50 3A6AEB0 EDX integer0/1/2
Jet cone F8 /3A6B040 3A6AFA0 DL boolean
FSD boost level 100 /3A6AEB0 3A6AE10 XMM1 float, original rounding then uint<4
Virtual cargo mass 108 /3A6AE20 3A6AD80 XMM1 float

The float ABI is checked both at the callback's movaps xmm1,xmm6/indirect call and at the receiver's XMM1 use. These are actual original setters, including their refresh/save behavior. The plugin never substitutes direct memory writes.

Verification reads the controller's mode+5AC, cargo+5B0, boost-enabled+5B4 and level+5B8. Jet cone is original Settings integer key29: ready+5F8==2, index+560<count+530, rows+538 with stride248 and uint array+54. Both actual Settings getter/setter slots are checked. Missing data stays unavailable. All setters reject original view1 in the guarded context; only the mode setter additionally rejects view3.

route.plan optionally carries explicit routeOptions. Null fields preserve game values and an absent/empty override retains the original request path. Explicit overrides require the advertised capability, are validated before submission, execute only on the existing owning thread with the existing idle-FSD/entity/controller conditions, and must read back correctly before submitting the destination. Cargo capacity is additionally checked against the current player snapshot. This is an offline-tested implementation; live route computation and UI fidelity remain unconfirmed.

The separate StarClass mask path is now bound to the actual original UI setter; see StarClass evidence. The integration must advertise its own capability and require exact original mask readback. Other category masks and live original planner acceptance remain separate work.