Skip to content
NGSpace edited this page Aug 17, 2024 · 22 revisions

Caution

Wiki has moved to https://ngspace.github.io/wiki
Information on this website might be outdated.


Note

FULL VARIABLE LIST FOUND HERE



Welcome to the hudder wiki!


Here is a tutorial on how to make your own hud


Creating the hud

Step 1 - Locating your hudder config folder: you can do this simply by going to Hudder's options menu and clicking the text at the bottom of "general". After that your file explorer should open up with Hudder's config folder!

Step 2 - Creating the hudder file: Simply create a file (or use one that already exists [don't modify hud.json!]), open it in your preferred editor (let's be honest it's prob notepad) and start writing!

Step 3 - Open Hudder's options menu and make sure that the "main file" option is set to your hud file's name.

Step 4 - Start writing your hud!


Actually writing the hud

Normal text

You just write it, writing "words are beautiful" in the file will show "words are beautiful" in game.

Character escaping and Color Codes

Most of what you'll write will probably be normal text, variables, conditions etc. But in some cases you'll want to use reserved characters (';','%','#','&','{') as normal text (ex. you want to use '%' without Hudder considering it a condition). In those cases you'll need to add a backslash before the character (ex. '%').

Color codes work as minecraft intended.


Text sections

You want to put text in the bottom right corner instead of top left? no problemo! use sections like ;bottomright; (note that only text after it is written will be affected)

you can skip to the "Inventory management and "methods"" section to learn more about sections


Basic variables (fps, memory usage etc)

Let's say you want to add some real basic stuff like an fps count and all that stuff, well it's pretty simple! all you need to do is write the name of the variable between curly brackets and Hudder will do the rest! (ex. {fps}, {used_memory} etc.)

A full list of variables can be found here!


Basic conditions

So, you got a fancy new FPS meter but it still doesn't feel quite right? Want to know when you need to buy a new computer because the frame rate is 999 instead of 1000? Use conditions! Conditions are a bit more advanced than variables since they have a real structure and if it is not followed unexpected behavior can occur! But not to fear! I am here to help you understand them! Conditions are structured like this (Note there is no limit to the number of conditions I just put 2 cuz I am lazy, could be 1, 2, how many you possibly need):

%condition 1, "condition 1 is true", condition 2, "condition 2 is true", "neither condition is true"%

Want some examples? well here ya go! &%fps<30, "4", fps<60, "e", "a"%{fps} - This will show the fps meter in different colors depending if it's below 30 or 60 fps.

%ping>5, "{ping}", ""% - This will show your ping only if it is above 5!

%is_slime, "Slime chunk!"% - This will show "Slime chunk!" if you are standing inside a slime chunk.


Advanced Variables

This one is really advanced and most casual users probably won't use it but it is still quite useful:

Setting custom variable values - {variable=10} will set {variable} to 10. {var=fps} will set var to your fps count.

Math - {math_result=fps+10+math_result} will do as you could've guessed. use * for multiplications, / for divisions, ^ for powers and % for remainder.


Inventory management and "methods"

you can use ;[method], and, it's, parameters; to call builtin methods. they are built similar to conditions except the parameters are not predefinied and can be variables (which can be changed as specified in the section above).

List of methods (not full list) (Note: [] parameters are required, <> parameters are optional):

;selectedslot, [x position on screen], [y position on screen], <scale>;
;helmet, [x position on screen], [y position on screen], <scale>;
;chestplate, [x position on screen], [y position on screen], <scale>;
;leggings, [x position on screen], [y position on screen], <scale>;
;boots, [x position on screen], [y position on screen], <scale>;
;item, [Item] , [x position on screen], [y position on screen], <scale>;
;slot, [Slot number] , [x position on screen], [y position on screen], <scale>;
;load, [hudder file];

Advanced conditions and while loops

From this point you'll need a basic understanding of programming to understand what I am trying. You'll need to know what a tab character is.

Note that when I say indentation I am specifically talking about tabs, note that some editors will automatically replace tabs with spaces so be sure to disable that (No, notepad doesn't do that)!

You can use #if to do advanced if conditions (unlike "basic" conditions you can only have 1 condition without an else statement)

#if is multi-lined so big conditions are not just one line

#while is similar except it repeats itself until the condition is false

Here is a working example of both (Please do not use this, it will crash your pc):

#if fps<60
	{math=10+20}
	{crashmypc=true}
{xx=0}
{yy=0}
#while crashmypc
	#if yy>height
		{crashmypc=false}
	;hand, xx,yy,1;
	{xx=xx+16}
	#if xx>width
		{yy=yy+16}
		{xx=0}

Magnificent, isn't it? Looks like I peaked early when I came up with this piece of art.