Loading...
  OR  Zero-K Name:    Password:   

Hel-K released

27 posts, 1156 views
Post comment
Filter:    Player:  
Page of 2 (27 records)
sort


5 months ago
Godde kidnapped my kittens to force me to release my widgets, so I had no other choice.

So here it is:
https://github.com/Helwor/Hel-K

here a demo of my placement system:
https://rumble.com/v3xxv54-demo-draw-placement-zero-k-widgets.html

how to install local widgets:
https://zero-k.info/mediawiki/Widget_Configuration#Using_custom_widgets

It's a big set of widget mainly focused on ergonomy and performance
placement building, targeting, selecting, controlling units, also zoomout play and debugging ...

I have to warn you that as of now, this might be unusable for most of people, as some options or settings might interfere.

Also many widgets are intricated together to form a system, there are some API I made, I also changed some vanilla widgets to achieve what I needed (they are included).

It's thousand of hours of work, which started when I didnt know anything about coding or how ZK function, and making it more universal and user friendly is not something I can achieve rapidly.

What I suggest is you copy the whole thing into LuaUI directory to give it a try, and progressively change the options/settings and deactivate widgets you spotted as undesirable. I've put my own options/settings in the Config folder that you can copy, which may be used as a start point if stuff doesnt work with current settings. Using the debug console (F8) or looking into the Spring/Infolog.txt (same) will show you where things gone wrong.

My own system of selection, EzSelector, contains the hotkeys themselves in a big table around the start of widget, you will have to edit it to change the hotkeys. Some hotkeys are very sophisticated and context dependant and might require some coding skill, if you want to change more than just the keys.

Note that deactivating vanilla widget will not put in place the original, for that you have to remove it physically from the Widgets folder (or handier to just change the file extension ...) and do a /luaui reload if you are ingame.

Most of my widgets options are in 'Hel-K' in the root of the option panel.

I cannot guarantee anything except that my kittens are safe now.

PS: Godde is very mean
+28 / -0
Best widget is probably the thing where you spam buildings, cuz u can make very good wind gens and stuff like that
+0 / -0

5 months ago
Can we expect more thorough documentation of these? What they do? What vanilla widgets you want to disable with them?
+0 / -0


5 months ago
I really like the mex connection free drawing widget, and the terraform widget that visualizes and shows total cost.
+0 / -0
5 months ago
Don't worry Helwor. I know you'll free your kittens from the clutches of Godde. Praise be the part-time god!
+0 / -0
5 months ago
FRrankHelwor it seems as so great work. Thank you and my respect. )
+2 / -0


5 months ago
Uh, why aren't these in the game? e.g. that building terraform height widget looks way better than the current one.
+2 / -0
THIS SHIT LOOKS AMAZING!! YOU GO GURL!!
+2 / -1


5 months ago
GBrankdyth68 that's actually a good question, long story short, it took me one year and half for a little widget to be accepted (persistent_build_spacing).
So I preferred doing my stuff on the side and advancing faster.
+2 / -0


5 months ago
What's needed to fully use the placement system (afaik)
That note can be found at https://github.com/Helwor/Hel-K/blob/main/NOTE%20Placement%20System%20requirements.txt

UtilsFunc.lua
bunch of useful funcs

gui_show_eco_action.lua (modified vanilla)
add the possibility to show grid and current build radius without having the build command active (draw placement remove the command build during placement)

cmd_mex_placement.lua (modified vanilla)
allow to work better in coordination of the placement system, add option for removing the right click mex on metal spot (preferable but EzTarget.lua come into play to have a move order

instead, EzTarget is not stand alone and might be explained on another note)

unit_initial_queue.lua (modified vanilla)
needed to manage pregame build placement (auto terraform included)

cmd_factory_plate_placer.lua (modified vanilla)
needed for allowing to shift order plate on a factory that is not yet build but just placed

cmd_hold_ctrl_to_place_and_morph.lua (modified vanilla)
allow insert order to work aswell for auto morph
(insert order is needed to force the engine to accept a build order on unfit terrain)

persistent_build_height2.lua
main terraform and elevation UI handler, lots of features you will discover
(you need to deactivate vanilla gui_persistent_build_height.lua)

draw_placements.lua
handling free handed placement drawing, build controls, lots of features to discover

DrawTerra2.lua
only handling the previsualization and can be deactivated, many options

-HasViewChanged.lua (API) managing viewable units, camera specs ...

-OnWidgetState (API) calls widgets that want it, to know which widget has been initialized/shutdown...

other camera mode than TA or COFC is not supported (but might work idk, also rotation in COFC has never been tested)

-- EXTRA

cmd_commandinsert2.lua (widget stand alone)
allow rapid/multi insertion via a virtual queue system (optionnable, but default options are best so far and work for sure)
auto disable the vanilla cmd_commandinsert.lua and can be switched back in option
NOTE: not perfectly working as it is a guess and can be resource hungry with many cons having many orders,
ideally engine would require to accept some mod with CMD_INSERT to calculate itself the best position according to received orders


MoveAwayFromLevelBuild.lua (widget stand alone)
the con move away from an elevated build he would step on (spire included)

FixAlreadyBuiltInQueue.lua (widget stand alone)
the con skip a next build order already achieved whenever he finish a current order

StopReclaim.lua (widget stand alone)
ordering a con to stop when he just started a build will order him to reclaim it (optionnable)

StriderHubAlt.lua (widget stand alone but can use -SelectionAPI.lua)
allow the alt key to work for athenas and strider hub as it work with factory (if strider hub is on repeat, order build with alt make it a one time build)
(working for athena is optionnable as it would then conflict the alt modkey for placing build)
allow the stop production action for athenas and strider hub to work as it work for factory

terra_unit_handler2.lua (widget stand_alone)
auto delete terra unit when the corresponding elevated build has been cancelled by user (not working in every situation, has yet to debug that)

gui_persistent_build_spacing.lua (replacing the vanilla one)
my original build spacer, the vanilla is mine but not has been fully accepted

PS: many of annexes and work arounds was needed to compensate for the lack of engine featured tools and callins


+1 / -0


5 months ago
erratum for MoveAwayFromLevelBuild.lua
this widget need extra:
-command_tracker.lua
-UnitsIDCard.lua
-AddSleepWake.lua

NB: several widgets has been updated on github
+0 / -0
Really fucking neat. Can these be put into the official client?
+1 / -0
For those who want to see this in "official" release - this release is 100K lines of LUA. Maintaining project this size is a titanic amount of effort, and "works for Helwor" does not necessarily mean it will work for everyone. This would need hundreds of hours of testing to make work well for general public, and will likely tank performance on low-end machines even more than current LUA widgets do.

PS: Thanks for putting in the effort FRrankHelwor! If SErankGodde does not release your kittens, we will stop worshiping him.
+0 / -0


5 months ago
FIrankLobHunter
Yes and no. Ideally engine, gadgets is the place for some of my widget to be converted into. As they are just work around to have the information and work I need and in a more accurate way. Some of my stuff cannot work perfectly due to that.
Also I prefered to go forward instead of rewriting everything to make it more modulable (Even tho I still did it whenever I could).
I would have liked some help to integrate all my stuff, I dont have the energy and time to adapt and convince ppl, as I said earlier, that processus was just too long.
+0 / -0

5 months ago
I'm quite allergic to Lua, so not of much help. I can do c++ python and rust fairly well though, so if you need engine work that I can help with.
+0 / -0
quote:
it took me one year and half for a little widget to be accepted


Ah yeah, been there. Pretty hard to keep motivated and keep working to get things accepted, though I understand why AUrankAdminGoogleFrog does it (ZK is enough of a maintenance nightmare already, partially because multiple authors, mostly not software engineers and partially because Spring+lua and its lack of tooling).
+0 / -0


5 months ago
Some ppl might have a crash/big lag when selecting a build to make, it's more likely an open gl compat issue, if that happen deactivate DrawTerra2.lua until I find some fix for that.
+0 / -0
5 months ago
Wish there were games running this mod
+0 / -0
5 months ago
quote:
Wish there were games running this mod




Its not a "mod" Flimsy it customization for game controls / interface, so you can just use it yourself any game.
+0 / -0
4 months ago
Thank you for your work on making the game better in your on way Helwor !
Loads of hours behind this, keep it up bro

Please Godde release the kittens now !
+1 / -0
Page of 2 (27 records)