[L4D1/Any][POC] Custom Skybox (with DD support)
1 Attachment(s)
Since the implementation of 'Delayed Downloader' technology is out: [L4D2] Black Screen Fix aka Delayed downloader
and is finally functioning correclty (at least in L4D1 linux), here is a concept of new technique using that in plugins. I recall you how DD works: - when player transition to a new map he downloads all files - when player join server in the middle-game (newcomer) he download nothing, such a way no black screen appears for him. Second part cause some negative effects, like newcomer see 'ERROR' instead of custom models. This is a POC of implementation resolving that issue: 1) Custom Skybox without "ERROR" (aka white 'smeared' skyes) when played didn't download required materials yet. Alpha-version could be found attached. Idea based on applying different "sv_skyname" ConVar for different players. However, in L4D changing sv_skyname in middle-game does not affect already joined players. So, we just wait until all transitional players loaded and change "sv_skyname" globally. That thing completely make the work we need. Edit source code and place Quote:
1 skybox sample is included. Technique is compatible with any game. Required: - to fill correct names of default skyboxes in DownloadSkyboxes() function to prevent downloading it. - fill any game default skybox in Timer_WaitConnection() function. Quote:
- players who transitioned to a new map, can see cutom skybox - players who joined in middle-game, see pre-defined default skybox 2) Soultion for 'ERROR' in custom models. I don't provide plugin here yet. Idea is simple. We use additional overlay model (clone) created over base model. Overlay model spawned using "prop_dynamic_ornament" entity. A sample can be found in Lux model changer. AFAIK, method by timocop and Lux. Next we: - change base model to custom - set overlay model to default - set SDKHook_SetTransmit to base model filtering newcomer players (so they only can see overlay with default model). - set SDKHook_SetTransmit to overlay model filtering transitional players (so they only can see base custom model). Such a way we resolve 'ERROR' for players who didn't download model files yet. For easy use by 3rd party plugins, such native could be implemented: Code:
DD_SetModel(int entity, char[] sNewModel, char[] sDefaultModel = ""); And if you are interested, maybe some help in finishing API appreciated. Currently, I have no mood to make it myself. |
Re: [L4D1/Any][POC] Custom Skybox (with DD support)
Please, move to Un-approved plugin, since it's just a P-O-C.
|
Re: [L4D1/Any][POC] Custom Skybox (with DD support)
Updated.
Quote:
|
Re: [L4D1/Any][POC] Custom Skybox (with DD support)
Hello, you can change the skybox using the stripper
Code:
modify: Code:
#include <sourcemod> |
Re: [L4D1/Any][POC] Custom Skybox (with DD support)
You totally didn't understand the purpose of the plugin as well as a goal of replication.
|
All times are GMT -4. The time now is 21:52. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.