diff --git a/src/AcDream.Core/Physics/AnimationSequencer.cs b/src/AcDream.Core/Physics/AnimationSequencer.cs index fb33c0f..76de86a 100644 --- a/src/AcDream.Core/Physics/AnimationSequencer.cs +++ b/src/AcDream.Core/Physics/AnimationSequencer.cs @@ -434,7 +434,29 @@ public sealed class AnimationSequencer // cycle. Without this, the old RunForward → ??? link would // continue draining for ~100 ms before the new Falling cycle // starts, defeating the "skip the link" intent. - if (skipTransitionLink) + // + // 2026-05-03: ALSO do a full drain when transitioning between + // FORWARD-LOCOMOTION cycles (Walk↔Run, Walk↔WalkBackward, etc.) + // — i.e. when both old and new motion's low byte is in the + // {0x05 WalkForward, 0x06 WalkBackward, 0x07 RunForward} set. + // ClearCyclicTail alone leaves _currNode in the previous cycle's + // non-cyclic head (link frames from a Ready→walk transition), + // and the visible legs continue playing those head frames before + // reaching the new run cycle. The user-reported symptom: walk→run + // direct transition (release shift while W held) did not visibly + // switch the leg cycle — body advanced at walk pace until the + // next motion event (turn / stop) re-fired SetCycle and finally + // aligned the queue. Live cdb trace of retail acclient.exe + // 2026-05-03 (tools/cdb-scripts/walk_run_motion_trace.log) shows + // retail uses an additive add_to_queue with no truncate — the + // MotionTableManager's per-tick CheckForCompletedMotions handles + // the natural progression. We don't have that machinery, so we + // emulate via a hard reset on the locomotion-cycle transition. + uint oldLow = CurrentMotion & 0xFFu; + uint newLow = motion & 0xFFu; + bool oldIsForwardLoc = oldLow == 0x05u || oldLow == 0x06u || oldLow == 0x07u; + bool newIsForwardLoc = newLow == 0x05u || newLow == 0x06u || newLow == 0x07u; + if (skipTransitionLink || (oldIsForwardLoc && newIsForwardLoc)) { _queue.Clear(); _currNode = null; diff --git a/tools/cdb-scripts/walk_run_motion_trace.log b/tools/cdb-scripts/walk_run_motion_trace.log index 39a793e..41880c5 100644 --- a/tools/cdb-scripts/walk_run_motion_trace.log +++ b/tools/cdb-scripts/walk_run_motion_trace.log @@ -172,4 +172,388 @@ breakpoint 6 redefined [124] MotionTableManager::PerformMovement: motion=001af3e0 speedBits=15f356a0 holdkey=13cf1420 [125] CMotionTable::StopObjectMotion: motion=6500000d [126] MotionTableManager::PerformMovement: motion=001af3e0 speedBits=15f356a0 holdkey=13cf1420 -[127] CMotionTable::StopObjectMotion: motion=6500000f \ No newline at end of file +[127] CMotionTable::StopObjectMotion: motion=6500000f +[128] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[129] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[130] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[131] CMotionTable::DoObjectMotion: motion=8000003d +[132] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[133] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[134] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[135] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[136] CMotionTable::DoObjectMotion: motion=10000053 +[137] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[138] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[139] CMotionTable::StopObjectMotion: motion=6500000f +[140] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[141] CMotionTable::StopObjectMotion: motion=6500000d +[142] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[143] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[144] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[145] CMotionTable::DoObjectMotion: motion=8000003d +[146] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[147] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[148] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[149] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[150] CMotionTable::DoObjectMotion: motion=41000003 +[151] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[152] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[153] CMotionTable::StopObjectMotion: motion=6500000f +[154] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[155] CMotionTable::StopObjectMotion: motion=6500000d +[156] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[157] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[158] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[159] CMotionTable::DoObjectMotion: motion=8000003d +[160] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[161] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[162] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[163] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[164] CMotionTable::DoObjectMotion: motion=10000053 +[165] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[166] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[167] CMotionTable::StopObjectMotion: motion=6500000f +[168] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[169] CMotionTable::StopObjectMotion: motion=6500000d +[170] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[171] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[172] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[173] CMotionTable::DoObjectMotion: motion=8000003d +[174] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[175] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[176] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[177] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[178] CMotionTable::DoObjectMotion: motion=41000003 +[179] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[180] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[181] CMotionTable::StopObjectMotion: motion=6500000f +[182] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[183] CMotionTable::StopObjectMotion: motion=6500000d +[184] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[185] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[186] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[187] CMotionTable::DoObjectMotion: motion=8000003d +[188] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[189] CPhysicsObj::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[190] CPartArray::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[191] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[192] CMotionTable::DoObjectMotion: motion=10000054 +[193] MotionTableManager::add_to_queue: arg1=10000054 arg2=00000001 +[194] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[195] CMotionTable::StopObjectMotion: motion=6500000f +[196] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[197] CMotionTable::StopObjectMotion: motion=6500000d +[198] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[199] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[200] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[201] CMotionTable::DoObjectMotion: motion=8000003d +[202] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[203] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[204] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[205] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[206] CMotionTable::DoObjectMotion: motion=41000003 +[207] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[208] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[209] CMotionTable::StopObjectMotion: motion=6500000f +[210] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[211] CMotionTable::StopObjectMotion: motion=6500000d +[212] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[213] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[214] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[215] CMotionTable::DoObjectMotion: motion=8000003d +[216] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[217] CPhysicsObj::DoInterpretedMotion: motion=10000052 speedBits=001afcb4 +[218] CPartArray::DoInterpretedMotion: motion=10000052 speedBits=001afcb4 +[219] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[220] CMotionTable::DoObjectMotion: motion=10000052 +[221] MotionTableManager::add_to_queue: arg1=10000052 arg2=00000001 +[222] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[223] CMotionTable::StopObjectMotion: motion=6500000f +[224] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[225] CMotionTable::StopObjectMotion: motion=6500000d +[226] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[227] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[228] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[229] CMotionTable::DoObjectMotion: motion=8000003d +[230] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[231] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[232] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[233] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[234] CMotionTable::DoObjectMotion: motion=41000003 +[235] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[236] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[237] CMotionTable::StopObjectMotion: motion=6500000f +[238] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[239] CMotionTable::StopObjectMotion: motion=6500000d +[240] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[241] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[242] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[243] CMotionTable::DoObjectMotion: motion=8000003d +[244] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[245] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[246] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[247] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[248] CMotionTable::DoObjectMotion: motion=10000053 +[249] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[250] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[251] CMotionTable::StopObjectMotion: motion=6500000f +[252] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[253] CMotionTable::StopObjectMotion: motion=6500000d +[254] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[255] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[256] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[257] CMotionTable::DoObjectMotion: motion=8000003d +[258] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[259] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[260] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[261] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[262] CMotionTable::DoObjectMotion: motion=41000003 +[263] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[264] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[265] CMotionTable::StopObjectMotion: motion=6500000f +[266] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[267] CMotionTable::StopObjectMotion: motion=6500000d +[268] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[269] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[270] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[271] CMotionTable::DoObjectMotion: motion=8000003d +[272] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[273] CPhysicsObj::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[274] CPartArray::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[275] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[276] CMotionTable::DoObjectMotion: motion=10000054 +[277] MotionTableManager::add_to_queue: arg1=10000054 arg2=00000001 +[278] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[279] CMotionTable::StopObjectMotion: motion=6500000f +[280] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[281] CMotionTable::StopObjectMotion: motion=6500000d +[282] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[283] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[284] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[285] CMotionTable::DoObjectMotion: motion=8000003d +[286] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[287] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[288] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[289] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[290] CMotionTable::DoObjectMotion: motion=41000003 +[291] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[292] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[293] CMotionTable::StopObjectMotion: motion=6500000f +[294] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[295] CMotionTable::StopObjectMotion: motion=6500000d +[296] MotionTableManager::PerformMovement: motion=001afbe4 speedBits=16f5e1f8 holdkey=16fa5c38 +[297] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[298] CPhysicsObj::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[299] CPartArray::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[300] MotionTableManager::PerformMovement: motion=001afc14 speedBits=16f5e1f8 holdkey=16fa5c38 +[301] CMotionTable::DoObjectMotion: motion=6500000d +[302] MotionTableManager::add_to_queue: arg1=6500000d arg2=00000000 +[303] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[304] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[305] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[306] CMotionTable::DoObjectMotion: motion=8000003d +[307] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[308] CPhysicsObj::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[309] CPartArray::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[310] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[311] CMotionTable::DoObjectMotion: motion=10000054 +[312] MotionTableManager::add_to_queue: arg1=10000054 arg2=00000001 +[313] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[314] CMotionTable::StopObjectMotion: motion=6500000f +[315] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[316] CMotionTable::StopObjectMotion: motion=6500000d +[317] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[318] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[319] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[320] CMotionTable::DoObjectMotion: motion=8000003d +[321] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[322] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[323] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[324] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[325] CMotionTable::DoObjectMotion: motion=41000003 +[326] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[327] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[328] CMotionTable::StopObjectMotion: motion=6500000f +[329] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[330] CMotionTable::StopObjectMotion: motion=6500000d +[331] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[332] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[333] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[334] CMotionTable::DoObjectMotion: motion=8000003d +[335] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[336] CPhysicsObj::DoInterpretedMotion: motion=10000052 speedBits=001afcb4 +[337] CPartArray::DoInterpretedMotion: motion=10000052 speedBits=001afcb4 +[338] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[339] CMotionTable::DoObjectMotion: motion=10000052 +[340] MotionTableManager::add_to_queue: arg1=10000052 arg2=00000001 +[341] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[342] CMotionTable::StopObjectMotion: motion=6500000f +[343] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5ec78 holdkey=16fa4498 +[344] CMotionTable::StopObjectMotion: motion=6500000d +[345] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[346] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[347] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[348] CMotionTable::DoObjectMotion: motion=8000003d +[349] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[350] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[351] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[352] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[353] CMotionTable::DoObjectMotion: motion=41000003 +[354] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[355] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5ec78 holdkey=16fa4498 +[356] CMotionTable::StopObjectMotion: motion=6500000f +[357] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5ec78 holdkey=16fa4498 +[358] CMotionTable::StopObjectMotion: motion=6500000d +[359] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[360] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[361] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[362] CMotionTable::DoObjectMotion: motion=8000003d +[363] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[364] CPhysicsObj::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[365] CPartArray::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[366] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[367] CMotionTable::DoObjectMotion: motion=10000054 +[368] MotionTableManager::add_to_queue: arg1=10000054 arg2=00000001 +[369] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[370] CMotionTable::StopObjectMotion: motion=6500000f +[371] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[372] CMotionTable::StopObjectMotion: motion=6500000d +[373] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[374] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[375] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[376] CMotionTable::DoObjectMotion: motion=8000003d +[377] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[378] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[379] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[380] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[381] CMotionTable::DoObjectMotion: motion=10000053 +[382] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[383] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[384] CMotionTable::StopObjectMotion: motion=6500000f +[385] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[386] CMotionTable::StopObjectMotion: motion=6500000d +[387] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[388] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[389] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[390] CMotionTable::DoObjectMotion: motion=8000003d +[391] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[392] CPhysicsObj::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[393] CPartArray::DoInterpretedMotion: motion=10000054 speedBits=001afcb4 +[394] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[395] CMotionTable::DoObjectMotion: motion=10000054 +[396] MotionTableManager::add_to_queue: arg1=10000054 arg2=00000001 +[397] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[398] CMotionTable::StopObjectMotion: motion=6500000f +[399] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[400] CMotionTable::StopObjectMotion: motion=6500000d +[401] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[402] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[403] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[404] CMotionTable::DoObjectMotion: motion=8000003d +[405] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[406] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[407] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[408] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[409] CMotionTable::DoObjectMotion: motion=41000003 +[410] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[411] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[412] CMotionTable::StopObjectMotion: motion=6500000f +[413] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[414] CMotionTable::StopObjectMotion: motion=6500000d +[415] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[416] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[417] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[418] CMotionTable::DoObjectMotion: motion=8000003d +[419] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[420] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[421] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[422] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[423] CMotionTable::DoObjectMotion: motion=41000003 +[424] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[425] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e978 holdkey=16fa3328 +[426] CMotionTable::StopObjectMotion: motion=6500000f +[427] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e978 holdkey=16fa3328 +[428] CMotionTable::StopObjectMotion: motion=6500000d +[429] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[430] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[431] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[432] CMotionTable::DoObjectMotion: motion=8000003d +[433] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[434] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[435] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[436] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[437] CMotionTable::DoObjectMotion: motion=41000003 +[438] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[439] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e9f8 holdkey=16fa6538 +[440] CMotionTable::StopObjectMotion: motion=6500000f +[441] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e9f8 holdkey=16fa6538 +[442] CMotionTable::StopObjectMotion: motion=6500000d +[443] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[444] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[445] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[446] CMotionTable::DoObjectMotion: motion=8000003d +[447] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[448] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[449] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[450] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[451] CMotionTable::DoObjectMotion: motion=10000053 +[452] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[453] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[454] CMotionTable::StopObjectMotion: motion=6500000f +[455] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[456] CMotionTable::StopObjectMotion: motion=6500000d +[457] MotionTableManager::PerformMovement: motion=001afc60 speedBits=16f5e1f8 holdkey=16fa5c38 +[458] CMotionTable::StopObjectMotion: motion=6500000d +[459] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[460] MotionTableManager::PerformMovement: motion=001afc2c speedBits=16f5e1f8 holdkey=16fa5c38 +[461] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[462] MotionTableManager::PerformMovement: motion=001afbe4 speedBits=16f5e1f8 holdkey=16fa5c38 +[463] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[464] CPhysicsObj::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[465] CPartArray::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[466] MotionTableManager::PerformMovement: motion=001afc14 speedBits=16f5e1f8 holdkey=16fa5c38 +[467] CMotionTable::DoObjectMotion: motion=6500000d +[468] MotionTableManager::add_to_queue: arg1=6500000d arg2=00000000 +[469] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[470] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[471] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[472] CMotionTable::DoObjectMotion: motion=8000003d +[473] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[474] CPhysicsObj::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[475] CPartArray::DoInterpretedMotion: motion=41000003 speedBits=001afcb4 +[476] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[477] CMotionTable::DoObjectMotion: motion=41000003 +[478] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[479] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5eb78 holdkey=16fa6a48 +[480] CMotionTable::StopObjectMotion: motion=6500000f +[481] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5eb78 holdkey=16fa6a48 +[482] CMotionTable::StopObjectMotion: motion=6500000d +[483] MotionTableManager::PerformMovement: motion=001afc60 speedBits=16f5e1f8 holdkey=16fa5c38 +[484] CMotionTable::StopObjectMotion: motion=6500000d +[485] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[486] MotionTableManager::PerformMovement: motion=001afc2c speedBits=16f5e1f8 holdkey=16fa5c38 +[487] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[488] MotionTableManager::PerformMovement: motion=001afbe4 speedBits=16f5e1f8 holdkey=16fa5c38 +[489] MotionTableManager::add_to_queue: arg1=41000003 arg2=00000000 +[490] CPhysicsObj::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[491] CPartArray::DoInterpretedMotion: motion=6500000d speedBits=001afcc0 +[492] MotionTableManager::PerformMovement: motion=001afc14 speedBits=16f5e1f8 holdkey=16fa5c38 +[493] CMotionTable::DoObjectMotion: motion=6500000d +[494] MotionTableManager::add_to_queue: arg1=6500000d arg2=00000000 +[495] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[496] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[497] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e4f8 holdkey=16fa5218 +[498] CMotionTable::DoObjectMotion: motion=8000003d +[499] MotionTableManager::add_to_queue: arg1=8000003d arg2=00000000 +[500] CPhysicsObj::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[501] CPartArray::DoInterpretedMotion: motion=10000053 speedBits=001afcb4 +[502] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e4f8 holdkey=16fa5218 +[503] CMotionTable::DoObjectMotion: motion=10000053 +[504] MotionTableManager::add_to_queue: arg1=10000053 arg2=00000003 +[505] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e4f8 holdkey=16fa5218 +[506] CMotionTable::StopObjectMotion: motion=6500000f +[507] MotionTableManager::PerformMovement: motion=001afc40 speedBits=16f5e4f8 holdkey=16fa5218 +[508] CMotionTable::StopObjectMotion: motion=6500000d +[509] CPhysicsObj::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[510] CPartArray::DoInterpretedMotion: motion=8000003d speedBits=001afcb4 +[511] MotionTableManager::PerformMovement: motion=001afc24 speedBits=16f5e4f8 holdkey=16fa5218Detached diff --git a/tools/cdb-scripts/walk_run_motion_trace.log.console b/tools/cdb-scripts/walk_run_motion_trace.log.console index e69de29..3b916dc 100644 Binary files a/tools/cdb-scripts/walk_run_motion_trace.log.console and b/tools/cdb-scripts/walk_run_motion_trace.log.console differ