View Single Post
Author Message
Psyk0tik
Veteran Member
Join Date: May 2012
Location: Homeless
Old 04-11-2022 , 16:32   [L4D & L4D2] Late Model Precacher
Reply With Quote #1



Rate this plugin

Donate to Motivate

Late Model Precacher

Table of contents
About

Catches unprecached models and tries to precache them to prevent crashes.

This plugin addresses the rare occurrence of a well-known UTIL_SetModel crash that has existed for as long as both L4D games have been around. The crash can occur even on completely vanilla servers, but can occur more frequently on modded servers that run plugins utilizing models.

If a model cannot be precached, this plugin will block UTIL_SetModel and the entity will (probably) just be invisible or be a giant ERROR sign.

Disclaimer: This plugin only helps prevent crashes related to unprecached models (UTIL_SetModel crashes). If this plugin is detecting a lot of unprecached models on your server on a regular basis, there may be severe underlying issues with your server that need to be addressed.

Do not use this plugin as a "global precacher" for models. When a model is late-precached, players will experience a stutter (more obvious on low-end computers), so it's best to make sure that plugins utilizing models properly precache them inside OnMapStart().

Example:
PHP Code:
L 04/11/2022 13:15:48SourceMod error session started
L 04
/11/2022 13:15:48Info (map "l4d_hospital03_sewers") (file "C:\l4d1ds\left4dead\addons\sourcemod\logs\errors_20220411.log")
L 04/11/2022 13:15:48: [l4d_late_model_precacher.smxUTIL_SetModelModel models/props_unique/spawn_apartment/coffeeammo.mdl is not precachedPrecaching late
Credits

epz/epzminion - For the idea and solution.

SourceMod Team - For continually updating/improving SourceMod.

Requirements

1. SourceMod 1.10 or higher
2. DHooks 2.2.0-detours15 or higher
3. Knowledge of installing SourceMod plugins.

Notes

1. I do not provide support for listen/local servers but the plugin should still work properly on them.
2. I will not help you with installing or troubleshooting problems on your part.
3. If you get errors from SourceMod itself, that is your problem, not mine.
4. MAKE SURE YOU MEET ALL THE REQUIREMENTS AND FOLLOW THE INSTALLATION GUIDE PROPERLY.

Features

1. Precaches any model that is not precached prior to being used.
2. Blocks the game from setting an entity's model if the model failed to be precached.

Changelog

Spoiler


Installation

1. Delete files from old versions of the plugin.
2. Place "l4d_late_model_precacher.txt" in the "addons/sourcemod/gamedata" folder.
3. Place "l4d_late_model_precacher.smx" in the "addons/sourcemod/plugins" folder.
4. Place "l4d_late_model_precacher.sp" in the "addons/sourcemod/scripting" folder.

Uninstalling/Upgrading to Newer Versions

1. Delete "l4d_late_model_precacher.sp" from the "addons/sourcemod/scripting" folder.
2. Delete "l4d_late_model_precacher.smx" from the "addons/sourcemod/plugins" folder.
3. Delete "l4d_late_model_precacher.txt" from the "addons/sourcemod/gamedata" folder.
4. Follow the Installation guide above. (Only for upgrading to newer versions.)

Disabling

1. Move "l4d_late_model_precacher.smx" to the "plugins/disabled" folder.
2. Unload "Late Model Precacher" by typing "sm plugins unload l4d_late_model_precacher" in the server console.

Third-party Revisions Notice

If you would like to share your own revisions of this plugin, please rename the files so that there is no confusion for users.

Download

Source | Latest Version | All Official Releases
__________________

Last edited by Psyk0tik; 06-01-2022 at 12:49. Reason: Updated main post
Psyk0tik is offline