Jump to content

fpsHUD Mod [updated 1.2.0v]


Oof
 Share

Recommended Posts

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.

 spacer.png

 

Here is a breakdown of features:

 

spacer.png

 

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

Edited by Oof
1.1.0v update (see edit history)
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

On 8/23/2020 at 6:29 PM, EternalHate said:

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. 

Link to comment
Share on other sites

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.

 

spacer.png

Link to comment
Share on other sites

On 8/27/2020 at 2:11 AM, 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. 

 

3 minutes ago, LobitoGz said:

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. 

Link to comment
Share on other sites

  • 2 weeks later...
On 8/29/2020 at 8:21 PM, Oof said:

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.


 

Spoiler

            <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>

 

 

Link to comment
Share on other sites

On 9/7/2020 at 7:59 AM, sneakpeak said:

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.


 

  Hide contents


            <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!

  • Like 1
Link to comment
Share on other sites

1 hour ago, CrazyAluminum said:

80%UI -> 100%UI

Hardly a fix I'd say.

 

From the screenshot he is either running it scaled down or at a higher resolution. But it also looks like it is running on a ultra wide monitor.

 

The issue is likely a missing anchor point for that entry. If it was anchored property it wouldn't move when changing the resolution/aspect ratio/scale. I am sure the mod author will rectify it if that is the case.

Link to comment
Share on other sites

1 hour ago, Sirillion said:

Hardly a fix I'd say.

 

From the screenshot he is either running it scaled down or at a higher resolution. But it also looks like it is running on a ultra wide monitor.

 

The issue is likely a missing anchor point for that entry. If it was anchored property it wouldn't move when changing the resolution/aspect ratio/scale. I am sure the mod author will rectify it if that is the case.

I am running an ultrawide but I did try it @ 1920x1080 and it was still like that. I do have my UI shrunk. I am wiping my server and will try 100% soon. 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...