• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

fpsHUD Mod [updated 1.2.0v]

Oof

New member
Hi everyone,

I designed a simple HUD mod based on my experience playing 7DTD on pvp servers. The vanilla HUD lacked things that I felt would be useful for people playing in groups or fighting other players. This is not by any means a professional mod, its my first mod ever, but I do plan on keeping it up-to-date. This is completely open-sourced.  

Features

  • Compact party system that shows the stamina of all members.
  • Navigation system that shows degrees in increments of 15 degrees for better callouts.
  • Larger tool belt blocks for increased ease of use.
  • Simple design to provide you with information without clutter. (day, time, elevation, temperature and core temperature)
  • Simple KDZ info at a glance (player kills, deaths, zombies killed)
  • Clean XP bar with level and amount of XP left for next level.
  • Food and Water bar under Health and Stamina bar.
  • Simplified Chat Box with darker background.
  • Server-side friendly - does not require players to download & install this mod on their end.


How to Install
Download the repository (master Branch) and move into your Mods folder. That's it.

Repository: https://github.com/lloan/7DTD-fpsHUD 

Direct download: https://github.com/lloan/7DTD-fpsHUD/archive/master.zip

Credit

Utilized Sirillion's HUD modlet as a base to learn from as it modifies a lot of the HUD, thanks to them. Also received help from the modding community via Discord. Thanks to GanTheGrey for pointing me in the right direction with controllers - helped keep xp bar up-to-date. Thanks to Chaos.Blend for directing me to uTinyRipper so that I could modify the texture for the navigation into more of a fortnite navigation. If I'm missing anyone, just send me a direct message on Discord. 

Here is a quick snapshot of what the HUD mod looks like.

 
screenshot.jpg


Here is a breakdown of features:

screenshot-info.jpg


Changelog

1.2.0v - 9.23.20
- Fix issue with lag caused after opening containers
- Updated position of xp bar as it overlapped when opening map.
 

1.1.0v - 8.25.20
- Center text for popup information with toolbelt
- Toolbelt icons made slightly smaller, they were too large.
- Center environmental information under compass
- Make sure party component works with 8 party members.
- Modify colors for stats HUD Bar
- Make stealth bar larger - easier to see.
- Add dark background for player information bars (health,stamina,food,water)
- Modify size of toolbelt durability bar
- Modify positioning and size of toolbelt numbers
- Minimized code where possible
- Party component moved up to top left corner.
- Chat component made slightly more compact.
- screenshot image updated

 
Last edited by a moderator:
A really good looking mod!👍
Though there are some issues with lagging when looting, getting in and/or out of containers.

 
Last edited by a moderator:
A really good looking mod!👍
Though there are some issues with lagging when looting, getting in and/or out of containers.
Hi Eternal,

Are you running your own server? Send me the server specs - this mod would not give you the lag you're talking about as it doesn't interfere with Loot containers. I was on a server that was using this before and had someone thinking (not the owner) that this mod was causing the issue, but the boy had a potato computer. I know lag is frustrating, but its not always the mods/server - the game is in alpha. In order to provide some help, what makes you think this is causing the lag on your server? Take a look at the resource logs and see what is going on. More than happy to help. 

 
Changelog

1.1.0v - 8.25.20
- Center text for popup information with toolbelt
- Toolbelt icons made slightly smaller, they were too large.
- Center environmental information under compass
- Make sure party component works with 8 party members.
- Modify colors for stats HUD Bar
- Make stealth bar larger - easier to see.
- Add dark background for player information bars (health,stamina,food,water)
- Modify size of toolbelt durability bar
- Modify positioning and size of toolbelt numbers
- Minimized code where possible
- Party component moved up to top left corner.
- Chat component made slightly more compact.
- screen shot image updated


Modlet updated.

screenshot.jpg


 
Hi, i have a server with 12GB ram and after 15/30 minutes it shakes when opening an inventory its  because of the mod? on console show 

Calling Animator.GotoState on Synchronize layer on yellow color

 
EternalHate said:
I take it back. The lag was something on my end I think. Because it works well now. :)
Just in case, make sure to update to the latest version. I simplified the code a bit, hopefully that helps if it was causing issues at all. 

Hi, i have a server with 12GB ram and after 15/30 minutes it shakes when opening an inventory its  because of the mod? on console show 

Calling Animator.GotoState on Synchronize layer on yellow color
I see a lot of servers have that issue with inventory, but they don't have my HUD mod installed. That console information you're getting isn't something you would get from my HUD mod though, odd. If you have more mods, try adding them one by one until you find the culprit. However, it can very well be an issue with the game itself. As we all know, they JUST added the inventory sorting mechanism, wonder if that has anything to do with it. 

 
Just in case, make sure to update to the latest version. I simplified the code a bit, hopefully that helps if it was causing issues at all. 

I see a lot of servers have that issue with inventory, but they don't have my HUD mod installed. That console information you're getting isn't something you would get from my HUD mod though, odd. If you have more mods, try adding them one by one until you find the culprit. However, it can very well be an issue with the game itself. As we all know, they JUST added the inventory sorting mechanism, wonder if that has anything to do with it. 
In windows.xml if you move the code below from "windowCompass" to "HUDLeftStatBars" and reposition the hud elements again, that will get rid of the 'Calling Animator.GotoState on Synchronize layer' error that pops up everytime someone opens a container and seems to create a lot of lag in multiplayer games.


 

Code:
            <rect name="playerInfo" size="700,100" depth="99" pos="500,0" controller="CharacterFrameWindow">
                <sprite depth="3" pos="-40,4" height="20" width="150" color="[darkGrey]" foregroundlayer="true" type="sliced"/>
                <sprite depth="4" pos="-40,4" height="20" width="150" color="{xpcolor}" sprite="menu_empty3px" type="filled" fill="{xp}" globalopacitymod="1.5"
                        controller="ToolbeltWindow" standard_xp_color="85,125,180,200" updating_xp_color="[green]"
                        deficit_xp_color="[red]" xp_fill_speed="3.5"/>

                <rect>
                    <panel name="header" height="15" depth="1" pos="9999,9999" backgroundspritename="ui_game_panel_header">
                        <label depth="2" name="characterName" pos="42,-6" width="150" height="32" text="" font_size="32"/>
                        <label depth="2" name="levelNumber" pos="240,-10" width="80" height="28" text="" color="[lightGrey]"/>
                    </panel>

                    <rect visible="{showcharacter}" pos="9999,9999" >
                        <panel name="previewFrame" depth="0" pos="0,0" width="10" on_press="true" on_hover="true" disableautobackground="true" snap="false">
                            <rect>
                                <texture depth="2" name="playerPreview" material="Materials/Transparent Colored" size="8,8" globalopacity="false"/>
                            </rect>
                        </panel>
                    </rect>

                    <label depth="5" name="TextContent" pos="-35,4" font_size="18" color="[white]" justify="left" pivot="topleft" text="Level: {playerlevel} - {playerxptonextlevel}" controller="PlayerStatsWindow"/>
                    <label name="playerXP" font_size="18" pos="135,4" controller="PlayerStatsWindow" color="[white]" depth="5" effect="outline" text="KDZ - {playerpvpkills} | {playerdeaths} | {playerzombiekills}" justify="left"/>
                </rect>

            </rect>

 
Great mod! however with the experimental 19.1 they introduced a ten slot tool belt so you might want to do an update for 19.1

 
@nightshade I'll probably update it this week and include @sneakpeak's suggestion as well for performance. I'll probably have 2 versions as some servers are not moving to A19.1 just yet. Thanks a ton!

 
In windows.xml if you move the code below from "windowCompass" to "HUDLeftStatBars" and reposition the hud elements again, that will get rid of the 'Calling Animator.GotoState on Synchronize layer' error that pops up everytime someone opens a container and seems to create a lot of lag in multiplayer games.


 

<rect name="playerInfo" size="700,100" depth="99" pos="500,0" controller="CharacterFrameWindow">
<sprite depth="3" pos="-40,4" height="20" width="150" color="[darkGrey]" foregroundlayer="true" type="sliced"/>
<sprite depth="4" pos="-40,4" height="20" width="150" color="{xpcolor}" sprite="menu_empty3px" type="filled" fill="{xp}" globalopacitymod="1.5"
controller="ToolbeltWindow" standard_xp_color="85,125,180,200" updating_xp_color="[green]"
deficit_xp_color="[red]" xp_fill_speed="3.5"/>

<rect>
<panel name="header" height="15" depth="1" pos="9999,9999" backgroundspritename="ui_game_panel_header">
<label depth="2" name="characterName" pos="42,-6" width="150" height="32" text="" font_size="32"/>
<label depth="2" name="levelNumber" pos="240,-10" width="80" height="28" text="" color="[lightGrey]"/>
</panel>

<rect visible="{showcharacter}" pos="9999,9999" >
<panel name="previewFrame" depth="0" pos="0,0" width="10" on_press="true" on_hover="true" disableautobackground="true" snap="false">
<rect>
<texture depth="2" name="playerPreview" material="Materials/Transparent Colored" size="8,8" globalopacity="false"/>
</rect>
</panel>
</rect>

<label depth="5" name="TextContent" pos="-35,4" font_size="18" color="[white]" justify="left" pivot="topleft" text="Level: {playerlevel} - {playerxptonextlevel}" controller="PlayerStatsWindow"/>
<label name="playerXP" font_size="18" pos="135,4" controller="PlayerStatsWindow" color="[white]" depth="5" effect="outline" text="KDZ - {playerpvpkills} | {playerdeaths} | {playerzombiekills}" justify="left"/>
</rect>

</rect>

I guess that must be why my friends and I had freezes for a second after closing almost any menu in multiplayer the other day. I tried a quick and dirty way of fixing it by changing it like you outlined in the meantime but I messed up the offsets when I tried repositioning 😛 I’ll just wait for an official update lol.

Anyway - super clean looking HUD, very readable, decently large for high res monitors. I really like this!

 
For stable A19 version, not A19.1 experimental version.

Modlet updated. 

Code:
1.2.0 - 9.23.20
[COLOR=#cc7832]- [/COLOR]Fix issue with lag caused after opening containers
[COLOR=#cc7832]- [/COLOR]Updated position of xp bar as it overlapped when opening map.
 
Back
Top