UGX-Mods

Call of Duty: Black Ops 3 => Help Desk => Modding => Topic started by: Nelonn on April 25, 2017, 07:42:33 pm

Title: How to change HUD ?
Post by: Nelonn on April 25, 2017, 07:42:33 pm
Is there any way to change HUD ? I would like to have good ol' WAW display, with points counter and ammo counter.
Title: Re: How to change HUD ?
Post by: MakeCents on April 25, 2017, 09:29:54 pm
Is there any way to change HUD ? I would like to have good ol' WAW display, with points counter and ammo counter.

Unfortunately some of the hud we can and some we can't. You can override some of the images of the hud, but you can't manipulate where it is, or anything like that.  A lot is lui and we can't edit that.

I've overritten the perk hud myself, by modifying the perk scripts, and replacing with a gsc hud. We have 24 hud elements available so we could do some, but I don't think we could do all in gsc huds.
Title: Re: How to change HUD ?
Post by: Archaicvirus on April 25, 2017, 09:51:07 pm
Quote from: MakeCents link= date=1493155794
Unfortunately some of the hud we can and some we can't. You can override some of the images of the hud, but you can't manipulate where it is, or anything like that.  A lot is lui and we can't edit that.

I've overritten the perk hud myself, by modifying the perk scripts, and replacing with a gsc hud. We have 24 hud elements available so we could do some, but I don't think we could do all in gsc huds.
 If you could clarify this for me, when you do x = NewClientHudElement() that counts as 1/24. Alright so when you do Destroy() or hud::destroyElem(), then you have 0/24 available to you again? Is it relative to the client or server? Let's say you spawn one shader on all player's screen, does each player have 23/24 elements left to use or does it take 4 elements (assuming a 4-player game) ? Curious because I'm using a lot of elements between buildables and quest item shaders.
Title: Re: How to change HUD ?
Post by: MakeCents on April 26, 2017, 01:38:46 am
If you could clarify this for me, when you do x = NewClientHudElement() that counts as 1/24. Alright so when you do Destroy() or hud::destroyElem(), then you have 0/24 available to you again? Is it relative to the client or server? Let's say you spawn one shader on all player's screen, does each player have 23/24 elements left to use or does it take 4 elements (assuming a 4-player game) ? Curious because I'm using a lot of elements between buildables and quest item shaders.

Good questions. I assume that the player gets 24 additional hud elements, whether it was created on all players or on the player themselves, it still counts as 1 off. I tested by creating hud elements in a row over and over until they stopped showing. I got 24 added before it stopped.
Title: Re: How to change HUD ?
Post by: Harry Bo21 on April 26, 2017, 12:13:30 pm
It's a combined limit

So 1 client elem would be one his element to that player but not the others

1 server element would take 1 his element on "each" player

Eg if you use 24 client elems on some one, then try a hud elem on everyone, that'll push that one player over 24

Are we sure the limit really is 24 tho? Was allegedly increased from waw onwards - and consider most of what was hud controlled before is now not included in this
Title: Re: How to change HUD ?
Post by: Nelonn on April 26, 2017, 06:59:43 pm
Well hopefully we will be able to change hud completly in the future...
Title: Re: How to change HUD ?
Post by: Archaicvirus on April 28, 2017, 01:08:08 am
I found this in hud_util_shared: createServerIcon( shader, width, height, team ), but there's no comment section on it. I'm assuming this is the method to create a 'server' element, so essentially that will just take one element from each player? Usually when I do hud elements I just use a for loop to draw a shader for each player in game, but I also have situations where only one player should see the shader, sort of like the bow quests from der eisendrach. I'll just have to keep track of how many are drawn, but I doubt I'll really have that many at one time though. Thanks for the replies.