用途:管理 MapleStory Worlds 默认玩家角色模型 DefaultPlayer。玩家进入世界时依据该模型生成玩家实体,模型 ID 由 DefaultUserEnterLeaveLogic 的 PlayerUri 指定,需用 msw-general 的 ModelBuilder 操作,而非手改 JSON。
主要能力:DefaultPlayer 由 ./Global/Player.model(基类,含 Components 列表与 Properties 链接)和 ./Global/DefaultPlayer.model(继承 player,覆盖 Values)两个 .model 文件组成。基类包含 TransformComponent、MovementComponent、RigidbodyComponent、StateComponent、AvatarRendererComponent、CameraComponent、PlayerComponent 等原生组件;DefaultPlayer.model 另有 script.PlayerHit、script.PlayerAttack。可通过 ModelBuilder.read(...).value(...) 改属性,component() 加组件,removeComponent() 删组件,snapshot() 查基类组件。
使用方式:修改移速示例:b.value(null, "speed", 2.0, "float").value("MovementComponent", "InputSpeed", 2.0, "float").write("./Global/DefaultPlayer.model")。自定义脚本 .mlua 须放在 ./RootDesk/MyDesk/ 下,写入后用 Maker Refresh 生成 .codeblock,再通过 component("script.XXX") 添加。触发角色动作应使用 StateComponent:ChangeState("ATTACK")(键为大写),不要直接写 AvatarBodyActionSelectorComponent.ActionState,否则会被状态机下一帧覆盖。选择器组件位于根实体的孙级实体,需通过 AvatarRendererComponent:GetBodyEntity()/GetFaceEntity()(仅 ClientOnly)或 GetFirstChildComponentByTypeName(..., true) 获取。
适用场景:调整默认玩家移动/跳跃/重力/相机/HP 等参数、增减组件、绑定自定义玩家逻辑。
限制:从基类继承的原生组件不可在 DefaultPlayer.model 重复添加或删除,改动基类需修补 Player.model 且通常不建议;脚本组件未在 .codeblock 注册会被静默丢弃。角色服装/外观装备属 msw-avatar 技能范围。具体收费与平台信息暂未提供。