This report is based specifically on the situation I encountered. An item with an invalid class, parameter, or model can cause a crash. It is consistently reproducible when the item is in the character’s hands. This is most often a weapon, because the main menu renders the character with a weapon in hands, but it can potentially be any item. For non-weapon items I cannot confirm the same behavior, because I have not tested or encountered that case.
Example
A custom weapon, or even a vanilla weapon whose class was changed from BoltActionRifle_InnerMagazine_Base to RifleBase, can crash due to a missing muzzle or another critical parameter. Another example: an incorrectly configured p3d model can lead to the same result. On the server the item may be invisible, but when you aim at it there is an interaction action. Picking it up into hands immediately puts the client into an infinite crash loop.
Important
Launching the game completely without mods does not clear the main menu / cached character state. The game still tries to load the character with broken items from cache and still logs crashes. I no longer have the original files. I am creating this thread because the problem has appeared for other people in modder Discords.
P.S.
I understand that this is ultimately caused by mod authors, server admins, or random incorrect changes. However, the fact remains that launching to the main menu without mods does NOT solve the crash. The game still attempts to load a character with broken items from cache.
Fix options
Temporary workaround: If the player or an admin can identify which item is crashing, the admin should fix its class to the correct one. If the player is loading directly to the server via the launcher, the admin can find the character in the DB and clear the item. Otherwise, loading to the main menu can still crash even after the item has been removed from the server DB, because the client cache still contains the broken item.
Proper fix: Correct the item shown in the crash log to the proper class/parameter, and the player must update the corresponding mod and load into the main menu/server. Once the item receives the correct parameters, the crashes stop.
Possible ideas: If possible, detect items with a missing p3d and replace them with a debug model. Or give players a way to clear/reset the character from the main menu — at minimum, remove the item from the hands slot.
Requested change
Add a fallback/protection for the main menu to break the crash loop. For example:
detect repeated crashes on startup/main menu caused by a character item;
temporarily ignore, move, drop, or delete the item from the hands slot;
or add a “Clear character cache / reset character” option in the Game Launcher.
This would allow players to recover without external DB access or admin intervention.