HLFX.Ru Forum > Теория и практика > Half-Life SDK > How to force a mod to use it's own player models? I noticed that the HL1 mods will look for player models in valve folder too...
This is a general question, not much of a coding I guess...
I have made some custom models for my mod (and not just for it), I loaded the mod and in the player model selection screen I can see the models I put in my mod fodler's "models\player" folder; however I can also see the models from "valve\models\player" folder... This is undesirable as the models for my mod (and for most of the 3rd party mods like The Specialists for example, use different animations... Thus the animations for the default models are broken...
My question is is there away to restrict the mod to only load the player models from it's own directory?
E.G.: ".\modname\models\player\" folder?
Alternative "fix" would be to create versions of the default "valve" folder player models, but this works only until you download a new model for HL1... And you know something that fits in HL1, may not fit in another mod...
I think this is something to go with the parameters in the liblist.gam (however I don't have fallback dir setup for valve... so it's strange for me...)
Here's the liblist.gam file content:
code:
game "FlatLine Arena"
url_info "https://flatline-arena.droppages.com/"
url_dl "https://flatline-arena.droppages.com/"
version "1.4.7RC1"
size ""
svonly "0"
cldll "cl_dlls\client.dll"
hlversion "1110"
type "multiplayer_only"
nomodels "0"
mpentity "info_player_deathmatch"
icon "flarena"
gamedll "dlls\mp.dll"
Take a note that the goal here is NOT to disable the player model selection; just to limit it to the content of the mod, that's why the "nomodels" value is set to 0, instead of 1...
I'm attaching screenshot, any advice on this will be greatly appreciated. Thanks.
It's impossible. The only way is to hardcode model names in server dll code and choose different variants from VGUI menu using ClientCommand, like TFC classes.
The workaround like I pointed is to have the default models for valve in your mod with the correct animations. (and to clean up your valve folder assuming a pesky server downloads player model you're not going to use...)
Дядя Миша писал: Just a default behavior of filesystem.
Yes, even if "fallback_dir" in liblist.gam set to some name, not "valve", GameUI dialog will show ALL of the player models. I mean, first in the list from mod_folder_hd (if flag "Enable HD models is active"), then from mod_folder_addon, then from mod_folder, then from fallback_dir, and finally from valve folder.
Цитата:
Napoleon321 писал: Allow mods to implement their own GameUI #1763
GameUI source code will never be opened 'cause it uses VGUI2 and some steam-related shit, such as engine filesystem code (potentialy dangerous to open source, 'cause of cheaters and other "kulkhazkers"). If valve was interested, VGUI2 and GameUI wolud have been open-source for a long time by now. (Sorry for my english, I forgot some of grammar forms).
The easiest way is to set models in StudioDrawPlayer, and not forget to precache these models an the server side.
Дядя Миша я знаю. Но их никак не убрать, не имея доступа к файловой системе. Чтобы запретить читать модели из папок, что находятся ниже по иерархии чтения. А получить доступ к файловой системе можно из GameUI.dll, и там всё настроить. Valve не откроют ни GameUI, ни VGUI2, им даже насрать на реквесты, что касаются игровых библиотек, которые давно открыты. Подумать только, с 2013 года не могут решить проблему с инпутом, это когда мыш в линуксе и в винде при m_rawinput 1 работает по-ублюдски. И это при пяти-шести пуллреквестах, и как минимум, десятке багрепортов.
Добавлено 15-06-2021 в 00:56:
А не, стоп. В сраной каэсочке и всех официальных модах они это поправили. А вот обновить SDK на гитхабе никак не получается.
Well, Thank you for the details here. I was thinking about coding the models into the server; but that's not going to be convenient... Having in mind that the default system uses info keys (they don't affect the precache as far as I know), only the used model is precached; however if I hardcode them then they will be always precached... and we have the free edicts issue (I love Catch 22...)
Yeah about the GameUI and VGUI2 I also think they will not unlock it.. ; still I was hoping maybe for few extra lines of code there that can potentially be added by Valve and make the life of the modders easier... I mean they are still updating a game release 20+ years ago...
Edit: I'm sorry for answering in English here; I do understand Russian; however if I start writing you'll have quite some fun on my behalf
Napoleon321 писал: and we have the free edicts issue
This is not a problem. -num_edicts 4096 in command line for hl.exe is the solution. By the way, models don't use edicts. It use MAX_MODELS (512) engine limit.
HLFX.Ru Forum > Теория и практика > Half-Life SDK > How to force a mod to use it's own player models? I noticed that the HL1 mods will look for player models in valve folder too...