Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
UI is, well, a new minimal, unit focused UI for the game. The idea behind it is to hide most UI elements of the screen and allow the players to see more of the game itself, while still providing the most important functionalities for a unit focused map. This being my first UI design ever you might find a bug at some point, so please, if this happen let me know right away. UI requires patch 1.32+.
Importing UI is pretty simple, first you must import all 6 assets in the test map to yours and set their paths to exactly like in the test map:
After that go to the Trigger Editor and copy the UI library over to your map as well. UI requires the RegisterPlayerUnitEvent and GetMainSelectedUit libraries (vJASS and Lua) and onInit library as well (Lua only), so if you do not have them already, copy them as well. That's it, you done.
VERY IMPORTANT:
UI requires you to have the default game UI enabled, so if you are using mods like the Quenching Interface that alters the default game UI elements, disable them. UI also requires you to use only specific position of the Command Card. By default the Attack, Move, Hold, Stop and Patrol buttons are hidden (You can still use them through hotkeys) so only the other 7 buttons are visible. For Hero units who can learn abilities this is very important because you will need to change the Research(X,Y) positions of the abilities that can be learned.
The order of the visible buttons of the Command Card, from left to right are: (3,1) (0,2) (1,2) (2,2) (3,2) (1,1) (2,1).
I tested this using 2 clients over a local area network so this should be desync safe.
KNOWN BUGS
Starting the game while it is minimized bug the original UI for the player with the game minimized.
Tasyen
(v1.0)
Release
(v1.1)
Included the GetMainSelectedUnit library
fixed a bug of the Health/Mana persisting after player not owned unit is deselected
2 new global configuration variables:
GOLD_ICON: When different than an empty string will overwrite the gold icon
LUMBER_ICON: When different than an empty string will overwrite the lumber icon
(v1.2)
Fixed the bonus stats of a hero not showing up.
(v1.3)
Included a configuration to show the Shop Items/Units
Checking the Top Right check box will also show Food and Upkeep values
(v1.4)
Replaced the use of BlzFrameSetFrameSize with BlzFrameSetScale since the last patch breaks it.
(v1.5)
New variants of the Interface (v2 and v3). v3 is a larger version of v2
Are you tired of designing your maps with the old game UI? Do the large-scale battles feel too cluttery for you to enjoy? Don't look any further, this is the right UI for you. With an interesting re-arrangement of what you can get from old game UI...
Great looking UI, can't seem to manage to get it to work alongside spellbooks though (item based or ability based). Even when adjusting ability positions in the grid or filling the entire spellbook up. When a spellbook is used it seems to just provide the option to cancel the spellbook but provide none of the abilities within. Would anybody happen to know a work around?
Which UI frame holds the error text for things like "build more farms" and "not enough gold"? Such messages are hidden by this UI overhaul, but I do not see any code that obviously hides those. After mucking about I identified this line from the onInit method:
With this commented I can see the errors (of course the whole UI is nonfunctional but that's not the point), but as far as I can tell all that does is move one of the console UI's anchor points a little bit? The ConsoleUI frame is not referenced anywhere else in the library so I don't see how this one line can control the visibility of whatever holds the error text.
I don't need this personally I'm just trying to help someone retain such error messages when using this UI overhaul.
after loading the game, you need to repeat all frame api usage and make sure that all variables pointing at frames from before the loading are not used anymore or replaced by new frames.
after loading the game, you need to repeat all frame api usage and make sure that all variables pointing at frames from before the loading are not used anymore or replaced by new frames.
If there is no misunderstanding this system doesn't work in single player maps? My plan was to maybe use this system in campaign but you saying it won't work
No, Tasyen told you exactly how it can be used. It’s just a lot of effort because you have to detect the load and then rebuild the entire UI from scratch, replacing every single UI frame object with a new (identical) instance of that frame.
It can be used in single player maps, but not if the player saves and reloads the game. Presumably a campaign would be fine without saving/loading either. Tell people the UI will break if they do and they’ll just have to play each map without saving.
No, Tasyen told you exactly how it can be used. It’s just a lot of effort because you have to detect the load and then rebuild the entire UI from scratch, replacing every single UI frame object with a new (identical) instance of that frame.
It can be used in single player maps, but not if the player saves and reloads the game. Presumably a campaign would be fine without saving/loading either. Tell people the UI will break if they do and they’ll just have to play each map without saving.
Which UI frame holds the error text for things like "build more farms" and "not enough gold"? Such messages are hidden by this UI overhaul, but I do not see any code that obviously hides those. After mucking about I identified this line from the onInit method:
With this commented I can see the errors (of course the whole UI is nonfunctional but that's not the point), but as far as I can tell all that does is move one of the console UI's anchor points a little bit? The ConsoleUI frame is not referenced anywhere else in the library so I don't see how this one line can control the visibility of whatever holds the error text.
I don't need this personally I'm just trying to help someone retain such error messages when using this UI overhaul.
The error msg frame is not directly accessable, but it is anchored to ("ConsoleUI", 0), so doing something to ("ConsoleUI", 0) will also affect error msg.
I think it is hidden in this resource because "ConsoleUI" is moved in function main. That has different results then when moving it at 0s expired.
I mean how does moving Topleft (further up) hide bottom textures of "ConsoleUI" anyway, I assume it breaks something in the simpleframe pos logic.
I suggest to not move ConsoleUI and instead, replace the ConsoleUI Textures with blank files in game interface.
The default Background can be "hidden" by setting the used Textures in game interface to UI\Widgets\EscMenu\Human\blank-background.blp
Or in file war3mapSkin.txt
ConsoleTexture01=UI\Widgets\EscMenu\Human\blank-background.blp
ConsoleTexture02=UI\Widgets\EscMenu\Human\blank-background.blp
ConsoleTexture03=UI\Widgets\EscMenu\Human\blank-background.blp
ConsoleTexture04=UI\Widgets\EscMenu\Human\blank-background.blp
ConsoleTexture05=UI\Widgets\EscMenu\Human\blank-background.blp
ConsoleTexture06=UI\Widgets\EscMenu\Human\blank-background.blp
I have a formatting issue when I import this into my map - I deleted every other trigger except that copied from this map and formatting issue is still there. Strangely when I load this map and test it there is no formatting issue.
Any idea what may be the issue?
Edit: Jazz version (all versions have the same strangely)
Edit #2: On a brand new map it works, so something (not a trigger) is impacting the map I am using. Any ideas what I can look at?
I have added and changed a lot of things in the vjass v1 version of this UI and sharing screenshots to show, with changes explained in edited post above. Let me know if this is alright and if anyone is interested in adding these things to their maps. I have also cleaned up and removed a few things from default. As for the bug you mentioned @GodPoro I have not encountered it on LAN games but I also removed the right side checkbox in its entirety, so it could have something to do with having both checkboxes checked or something in the code of right side check box.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.