Isekai Mugen Soul Online Isekai Mugen Soul Online

Isekai Mugen Soul Online Devlog #2: Gameplay Mechanics in Action, The T-Pose Mystery & Asset Credits

A deep dive into our working gameplay mechanics: expanded 52m clearing, live farming, punch combat, the subjugation pipeline, and the engineering post-mortem of the AnimatorAvatar T-pose bug.

Isekai Mugen Soul Online Devlog #2: Gameplay Mechanics in Action, The T-Pose Mystery & Asset Credits

Welcome to Devlog #2 of Isekai Mugen Soul - Online!

In this update, we share the concrete mechanics running live in our production build, how we quadrupled the size of the starter clearing, and the fascinating technical post-mortem of how we diagnosed and eliminated a persistent animation retargeting bug.


⚔️ Mechanics Built & Running Live

1. The Expanded 52-Meter Homestead Clearing

Based on playtesting, our original 13 m radius clearing felt too intimate once construction began. We expanded CLEARING_RADIUS_M to 26 meters (a 52-meter diameter clearing, providing $2,123\text{ m}^2$ of open buildable ground—a 4× increase in surface area).

  • An organic, dense tree wall seamlessly encloses the clearing, backed by an invisible mathematical barrier that guarantees no player can tunnel or glitch through.
  • Interior trees, rocks, and bushes are scattered throughout for harvesting timber.

Isekai Mugen Soul Online — Expanded Clearing & Slime Encounters Live production capture: The expanded clearing with a starter cabin, water well, artisan workbench, tilled farm plots, and wild slimes.

2. Base Construction & Real-Time Farming

Pressing [B] opens Build Mode:

  • Snapping Ghost Cursor: A green bounding volume snaps to the 2m grid in front of the player, verifying boundaries and collision in real time (turns red if obstructed).
  • Structures Available:
    • [1] Small Cabin (15 Wood, 5 Stone)
    • [2] Farm Plot (2 Wood)
    • [3] Wooden Fence (1 Wood)
    • [4] Stone Water Well (4 Wood, 10 Stone)
    • [5] Storage Chest (5 Wood)
    • [6] Artisan Workbench (6 Wood, 4 Stone)
  • Farming Lifecycle:
    • Walk up to an empty plot and press [E] to plant Wheat, Potatoes, or Mana Herbs (plays Farm_PlantSeed animation).
    • Press [E] to water dry soil (plays Farm_Watering; soil visibly darkens when hydrated; rainfall also auto-waters).
    • Watch crops grow across 3 visual stages (Sprout $\rightarrow$ Growing Stalks $\rightarrow$ Golden Mature Heads).
    • Press [E] to harvest mature crops (plays Farm_Harvest).
  • Artisan Crafting:
    • Walk up to the Artisan Workbench and press [E] to bake fresh Golden Bread (3 Wheat $\rightarrow$ Bread: $+25$ HP), Roast Potatoes ($+20$ HP), or brew Mana Tea ($+35$ MP).

3. Real-Time Combat & Punch Combo System

  • Responsive Striking: Press [J], stationary-click on the trackpad, or tap number keys [1]–[9] to strike with a fluid 2-hit punch combo (Punch_Jab and Punch_Cross).
  • Frustum Tab-Targeting: Press [Tab] to lock onto nearby enemies, or click directly on any monster. A glowing 3D ground ring rotates under the locked target, and a Target Health Frame tracks their vitals.
  • Floating Combat Text: Authoritative server damage (12–19 damage per strike) erupts as bouncing 3D floating damage numbers above the monster.
  • Mob Counter-Attacks: Striking a monster provokes aggro, prompting it to pursue and retaliate against the player.

4. The 30% HP Subjugation Pipeline in Action

When a monster's health is weakened to $\le 30%$:

  • The targeting ring switches to a pulsing golden aura.
  • The target banner flashes: ⚡ WEAKENED — READY TO SUBJUGATE!.
  • An on-screen prompt [E] Subjugate Creature (✨) lights up.
  • Pressing [E] executes the subjugation formula, despawning the monster and converting it into a persistent Unique NPC Companion (such as "Aqua" or "Pip").
  • The companion sports a luminous turquoise aura, a floating golden halo, and dynamic follower AI that stays by your side as you explore.

🔍 Engineering Post-Mortem: The Great T-Pose Mystery

During character integration, we encountered an insidious animation bug: while our character's torso and legs animated smoothly during runs and dances, the arms remained locked horizontally in a stiff T-pose across nearly all locomotion and idle clips.

The Investigation: Ruling Out the Obvious

Our initial diagnostic sweeps proved that the basics were sound:

  • Bone hierarchy was verified correct (root > pelvis > spine_01..03 > clavicle_l > upperarm_l > lowerarm_l > hand_l).
  • All 65 bones had active _linkedTransformNode targets in Babylon.js.
  • All 48 arm animation tracks were successfully rebound with zero rejected targets.
  • Bone quaternions were changing frame-by-frame.

Yet when we measured the world-space distance from hand_l to spine_02, the numbers revealed the truth:

Animation Clip Arm Span (Hand to Spine) Upper Arm Vertical Angle (elbowUp)* Observed Pose
A_TPose 0.691 m 0.000 Bind T-pose (horizontal)
Idle_Loop (Buggy) 0.682 m -0.031 Stiff horizontal T-pose
Walk_Loop (Buggy) 0.685 m +0.020 Stiff horizontal T-pose
Dance_Loop 0.738 m -0.828 Arms moving freely

*elbowUp: 0.000 = straight out horizontally; -1.000 = hanging straight down.

The arms were technically moving, but only by a negligible ~7 cm around the bind pose!

Character Animation Lab — T-Pose Bug The bug: Character playing Idle_Loop in the isolated animation lab, but arms remain pinned horizontally in the bind pose.

The Smoking Gun: AnimationGroup.reset()

In our loading code, before retargeting each animation group from the library onto the character avatar, we had written:

// Ensure the source clip is not playing mid-frame
source.stop();
source.reset();

The intention was to ensure the source rig was at rest. But inside Babylon.js (animationGroup.ts lines 616–620), inspect what .reset() actually does when an animation is stopped:

if (!this._isStarted) {
    this.play();
    this.goToFrame(0);
    this.stop(true);
    return this;
}

source.reset() evaluates Frame 0 of that animation onto the source transform nodes!

When Babylon's AnimatorAvatar.retargetAnimationGroup() ran immediately afterward, it captured those transform nodes' current world matrices as the source rest reference pose ($S_{\text{rest}}$). For an idle or walk animation where every frame is close to Frame 0: $$\Delta = K \cdot S_{\text{rest}}^{-1} \approx I$$ The retargeting algorithm calculated that the animation delta was approximately zero, and applied that zero delta to the target's bind pose—locking the arms directly to the target's rest T-pose! Only wild clips like Dance_Loop (which deviate dramatically from Frame 0) ever moved the arms out of the horizontal plane.

The Fix & Verification

We eliminated source.reset(). Before retargeting each clip, we explicitly return the source skeleton and all its linked transform nodes to their true bind rest pose:

for (const group of container.animationGroups) group.stop();
for (const sk of container.skeletons) {
  sk.returnToRest();
  for (const b of sk.bones) {
    b._linkedTransformNode?.computeWorldMatrix(true);
  }
}

Character Animation Lab — Fixed Natural Pose The fix: Idle_Loop playing with natural downward-hanging arms. Live bone spread telemetry confirms elbowUp = -0.931 and span drops to 0.35m.

The results speak for themselves:

Animation Clip Fixed Arm Span Fixed elbowUp Result
Idle_Loop 0.351 m -0.931 Arms resting naturally at sides
Walk_Loop 0.304 m -0.936 Natural walking arm swing
Jog_Fwd_Loop 0.359 m -0.863 Natural running arm pump
Punch_Cross 0.418 m -0.775 Full forward punch extension

🎨 Community & Asset Attributions

Even in this early prototype stage, achieving a cohesive, nostalgic visual presentation would be impossible without the incredible contributions of the indie game development community.

We extend our deepest gratitude and credit to Quaternius (quaternius.com / itch.io), whose masterfully crafted 3D asset packs (released under the CC0 / Quaternius Asset License) power our prototype:

  • Universal Base Characters & Hairstyles: The 65-joint modular rigged character models.
  • Modular Fantasy Outfits: The Ranger and Peasant clothing sets seamlessly bound to our skeleton.
  • Universal Animation Libraries (UAL 1 & 2): 86 skeletal animation clips spanning locomotion, combat punch combos, 3-phase jumps, farming (planting, watering, harvesting), and wood chopping.
  • Ultimate Nature Kit: The lush pine trees, rocks, clovers, ferns, and mushrooms that form our 52-meter forest enclosure.
  • Dungeon Bestiary Monsters: The charming Slimes and Goblins populating our clearing and outer forest.

Thank you, Quaternius, for empowering solo and indie developers worldwide with top-tier modular game art!


Stay tuned for our upcoming playtest sessions, and follow along as we continue expanding the world of Isekai Mugen Soul Online!