咒语旅团

咒语旅团

查看统计:
Constant crashes that occur 10-60 minutes in game
Underclocked my CPU, tested RAM, tested disk, updated drivers, tweaked settings, etc. etc.

Latest Crash:

Engine & Environment:
Unity engine version 2022.3.49f1 is in use, with PhysX running multithreaded (32 workers) and various subsystems (SteamAudio, networking, etc.) initializing properly.

Crash Details:
The log shows repeated warnings: “Look rotation viewing vector is zero” from Quaternion.LookRotation, which indicates that a zero-length vector is being used to compute a rotation.
The error occurs during enemy death and damage handling (e.g., EnemyDespawnOnDeath:SpawnDeathEffect and HealthContainer:HealthDepleted), involving network RPC calls.

Implications & Recommendations:
Input Validation: Ensure that direction vectors passed to Quaternion.LookRotation are non-zero.
Error Handling: Implement fallback rotations or skip rotation calculations when the vector is zero.

Code Review: Revisit enemy and health processing logic, particularly in multithreaded contexts, to prevent race conditions or invalid data that may lead to this error.

Previous Crash:

Engine & Environment:
Running Unity engine version 2022.3.49f1 with Direct3D 11 on an NVIDIA RTX 4090.
Multiple PhysX MultithreadedTaskDispatcher instances with 32 workers are in use.
Subsystem Initialization:
Input (including Windows.Gaming.Input) and SteamAudio subsystems initialize without issues.
The log shows proper asset unloading and memory cleanup routines before the crash.

Crash Details:
The crash is triggered shortly after asset unloading, with a "Crash!!!" message.
The stack trace indicates repeated symbol resolution failures in UnityPlayer.dll, with numerous "Attempt to access invalid address" errors.

Implications & Recommendations:
The errors point to potential memory corruption or race conditions during asset unloading/cleanup.
Investigate thread safety and memory management during the unloading phase.
Review any recent changes to asset handling and ensure proper synchronization between threads.

Previous Crash:

Engine & Environment:
Unity engine version 2022.3.49f1 is used.
PhysX MultithreadedTaskDispatcher is running with 32 workers.
Running on an NVIDIA GeForce RTX 4090 with Direct3D 11.
The new input system is active and an Xbox One controller is detected.
SteamAudio initializes HRTF successfully.

Subsystem Initialization & Warnings:
Warnings indicate issues with refresh rate and vsync, leading to CPU-side delta time calculations.
Asset unloading routines are executed (unused serialized files and assets are being unloaded) prior to the crash.

Crash Details:
The crash is triggered shortly after asset unloading with a "Crash!!!" message.
The stack trace shows repeated failures to resolve symbols in UnityPlayer.dll ("Attempt to access invalid address").

Implications & Recommendations:
Memory Management: Review and validate the asset unloading and memory cleanup processes, ensuring no race conditions or invalid memory accesses.
Subsystem Synchronization: Check for potential synchronization issues between PhysX, input handling (including joystick events), and other subsystems.
Debugging: Utilize debug builds and profiling tools to isolate the function(s) in UnityPlayer.dll responsible for the invalid memory access.

Engine & Hardware Environment:
Unity engine version 2022.3.49f1 is running.
PhysX MultithreadedTaskDispatcher is active with 32 workers.
Operating on an NVIDIA GeForce RTX 4090 using Direct3D 11.

Subsystem Initialization & Runtime Warnings:
The new input system is initialized, with Windows.Gaming.Input active.
SteamAudio successfully loads the default HRTF.
Warnings are logged regarding refresh rate drift and broken vsync, switching delta time calculation to CPU-side timestamping.

Asset Unloading & Memory Management:
Multiple cycles of unloading unused serialized files and assets are executed.
Each unloading step logs detailed timings (UnloadTime, Total, and substeps like FindLiveObjects, MarkObjects, etc.).

Crash Details:
The crash is triggered after several asset unloading cycles, indicated by a "Crash!!!" message.
The stack trace repeatedly shows errors in resolving symbols within UnityPlayer.dll, with messages like “Attempt to access invalid address.”
The failure to resolve symbols hints at potential memory corruption or invalid memory accesses during or after the unloading process.

Implications & Recommendations:
Memory Management Review: Examine the asset unloading routines for possible race conditions or improper memory handling.
Subsystem Synchronization: Ensure that subsystems (PhysX, input, SteamAudio, etc.) properly synchronize during asset cleanup to avoid data corruption.
Debugging & Profiling: Use debug builds and profiling tools to trace the point of failure in UnityPlayer.dll, isolating functions leading to invalid memory access.


Full summary: The crash logs indicate race conditions and improper handling of vectors and memory during multithreaded asset unloading and enemy processing—problems that point to a coding or synchronization issue in the game itself.

Incredible game, but unfortunately near the end of my patience with this one. Anyone face this and resolve it?
< >
正在显示第 1 - 2 条,共 2 条留言
BoltBlasterLuk  [开发者] 2 月 21 日 上午 7:32 
Hi there,

I'm sorry to hear you're experiencing crashes. Could you check if you're running the latest version of The Spell Brigade? You can do this by verifying the integrity of your game files.

If so, would you mind reaching out to us at Discord? We have a dedicated support channel there were you can log these kind of errors and someone can help you with them.
Yewbie 3 月 2 日 下午 4:11 
I have this too, let me know if you find a fix please!

In other games i've similar problems but if I was able to force it to dx11 it would resolve the issue...

I think it has something to do with a certain type of intel processor.
< >
正在显示第 1 - 2 条,共 2 条留言
每页显示数: 1530 50