SapphireServer/Sapphire

Crash When Using Straight Shot - Debug Assertion Failed in `array`

Opened this issue · 0 comments

The world server crashes when a player using the Archer character class uses the "Straight Shot" ability. The crash is due to a debug assertion failure in the array header file, indicating an out-of-range array subscript.

Version: heads/master
Git Hash: 2a0e423

Steps to Reproduce:

Launch the world server with the specified version and Git hash.
Use the Archer character class in-game.
Use the "Straight Shot" ability.
Observe the world server crash.

Expected Behavior:
The world server should not crash when the "Straight Shot" ability is used by an Archer.

Actual Behavior:
The world server crashes with a debug assertion failure.

Logs:
Here are the relevant logs from the server at the time of the crash:

[16:55:53.536] [debug] EffectBuilder result:
[16:55:53.536] [debug] Targets afflicted: 1
[16:55:53.536] [debug] Sapphire::World::ActionIntegrityTask::onQueue
[16:55:53.833] [info] [TaskMgr] ActionIntegrityTask: ResultId#188, TargetId#1343029862, ElapsedTimeMs: 300
[16:55:53.833] [debug] Sapphire::World::FadeBNpcTask::onQueue
[16:55:53.833] [debug] Sapphire::World::RemoveBNpcTask::onQueue
[16:56:33.404] [info] [TaskMgr] ActionIntegrityTask: ResultId#189, TargetId#2097153, ElapsedTimeMs: 300
[16:56:33.404] [info] [TaskMgr] FadeBNpcTask: BNpc#1343029862, TerritoryId#10020, ElapsedTimeMs: 10000
[16:56:33.404] [info] [TaskMgr] RemoveBNpcTask: BNpc#1343029862, TerritoryId#10020, ElapsedTimeMs: 12000
[16:56:33.510] [debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[16:56:33.554] [debug] EffectBuilder result:
[16:56:33.558] [debug] Targets afflicted: 0
[16:56:34.122] [debug] [2097153] Zone IPC : Command ( 0191 )
[16:56:34.122] [debug]           DRAWN_SWORD | 2 ( p1:E000000000000000 p11:0 p12:E0000000 p2:1 p3:0 p4:0 )
[16:56:37.288] [debug] [2097153] Zone IPC : Command ( 0191 )
[16:56:37.288] [debug]           DRAWN_SWORD | 1 ( p1:100000000 p11:0 p12:1 p2:0 p3:0 p4:0 )
[16:56:45.519] [debug] [2097153] Zone IPC : Command ( 0191 )
[16:56:45.519] [debug]           TARGET_DECIDE | 3 ( p1:500D028C p11:500D028C p12:0 p2:0 p3:0 p4:0 )
[16:56:48.079] [debug] [2097153] Zone IPC : Command ( 0191 )
[16:56:48.079] [debug]           DRAWN_SWORD | 1 ( p1:100000001 p11:1 p12:1 p2:0 p3:0 p4:0 )
[16:56:48.079] [debug] [2097153] Zone IPC : Command ( 0191 )
[16:56:48.079] [debug]           DRAWN_SWORD | 2 ( p1:500D028C00000001 p11:1 p12:500D028C p2:0 p3:0 p4:0 )
[16:56:48.080] [debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[16:56:48.152] [debug] EffectBuilder result:
[16:56:48.152] [debug] Targets afflicted: 1
[16:56:48.152] [debug] Sapphire::World::ActionIntegrityTask::onQueue
[16:56:48.655] [info] [TaskMgr] ActionIntegrityTask: ResultId#191, TargetId#1343029900, ElapsedTimeMs: 300
[16:56:50.615] [debug] [2097153] Zone IPC : ActionRequest ( 0196 )

Debug Assertion Failure:
C:\program files\microsoft visual studio\2022\community\vc\tools\msvc\14.40.33807\include\array
line:533

Expression: array subscript out of range

Capture

The issue does not occur in the following version:
Version: heads/master-d
Git Hash: 072562b

Here are the relevant logs from the working version:

[info] [TaskMgr] ActionIntegrityTask: ResultId#39, TargetId#2097153, ElapsedTimeMs: 300
[info] [TaskMgr] ActionIntegrityTask: ResultId#39, TargetId#1343029257, ElapsedTimeMs: 300
[debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[debug] EffectBuilder result:
[debug] Targets afflicted: 1
[debug] Sapphire::World::ActionIntegrityTask::onQueue
[debug] dmg: pot: 1.3 (130) wd: 3 (1) ap: 0.96 det: 1  = 3.03947
[debug] EffectBuilder result:
[debug] Targets afflicted: 1
[debug] Sapphire::World::ActionIntegrityTask::onQueue
[info] [TaskMgr] ActionIntegrityTask: ResultId#40, TargetId#1343029257, ElapsedTimeMs: 300
[debug] Sapphire::World::FadeBNpcTask::onQueue
[debug] Sapphire::World::RemoveBNpcTask::onQueue
[debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[debug] EffectBuilder result:
[debug] Targets afflicted: 0
[debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[debug] EffectBuilder result:
[debug] Targets afflicted: 0
[debug] [2097153] Zone IPC : ActionRequest ( 0196 )
[debug] EffectBuilder result:
[debug] Targets afflicted: 0
[info] [TaskMgr] ActionIntegrityTask: ResultId#41, TargetId#2097153, ElapsedTimeMs: 300
[info] [TaskMgr] FadeBNpcTask: BNpc#1343029257, TerritoryId#10020, ElapsedTimeMs: 10000
[info] [TaskMgr] RemoveBNpcTask: BNpc#1343029257, TerritoryId#10020, ElapsedTimeMs: 12000
[debug] [2097153] Zone IPC : Command ( 0191 )
[debug]           DRAWN_SWORD | 2 ( p1:E000000000000000 p11:0 p12:E0000000 p2:1 p3:0 p4:0 )
[debug] [2097153] Zone IPC : Command ( 0191 )
[debug]           TARGET_DECIDE | 3 ( p1:E0000000 p11:E0000000 p12:0 p2:0 p3:0 p4:0 )
[debug] [2097153] Zone IPC : Command ( 0191 )
[debug]           DRAWN_SWORD | 1 ( p1:100000000 p11:0 p12:1 p2:0 p3:0 p4:0 )