Do you love the powerful input control (vehicles, buttons, etc.) of addons such as WireMod, but hate the resulting huge load times? Would you prefer a lightweight, virtually lag-less, easier to use script? It is for this purpose I have created ElectroMod: using only four scripts (two autoruns, a tool, and an overwrite of the numpad script) I have been able to create powerful, modular input control, without the extra scripts and tools of other addons.
Where can I get it?
First Release: 0.95
How does it work?
ElectroMod uses a system of “Electro Sets.” These Sets are basically virtual numpads - all but set Zero, the default numpad, are unusable as numpad keys. However, they can be accessed through “ElectroBinds.” Binds can be created using the one and only tool of ElectroMod, the ElectroBind tool, and sets can be toggled through a slider in the tool’s context menu or console commands. You can always see what set you have active through the indicator on the right-hand side of your HUD. When a numpad-controlled device is spawned (including through duping) it is automatically placed into your currently selected ElectroSet. Through the ElectroSets and Binding, you can create many more devices than with just the numpad, buttons that don’t require a precious numpad key, and vehicle-input controlled contraptions.
Uhh… WTF… I still don’t get it?
Here’s a couple of simple tutorials that should further explain things:
Binding Turrets to a Jeep’s Primary Fire:
Creating a Soda-Machine Death Trap:
So, this works with all numpad-controlled devices?
Yes indeed, ElectroMod does not require any special setup for new numpad-controlled tools - it’s all part of the ElectroSet system. Certain less-than-optimally-coded tools may require an extension (all automatically loaded scripts, see the For Devs section) to re-register their numpad controls. New input devices (anything that can trigger a numpad output) also require a simple extension to the tool, which can be done through the extension system without actually modifying the tool itself.
What can I do to help?
For now, suggest added features, critique the HUD, and most importantly, suggest numpad-controlled tools and input devices (anything that can trigger a numpad output) for me to test and add support for, if necessary.
For Devs: Highly Modular
I recently finished up the “extensions” system, which allows files to be automatically loaded by the addon based on the prefix (“sv_” on server, “cl_” sent to the client, and “sh_” loaded on both.) There is also a “tool_” prefix which works like a shared file, but is used to distinguish between general shared files and those that modify the ElectroBind tool. The ElectroBind tool is built in such a way that it is easy to add functions to the left click, right click, and reload, and a custom Tool Control Panel allows the easy addition of tool options - all without actually modifying the original tool file. The Vehicle control script is actually included with the default download as an extension, as long with a simple HUD display ConVar toggle.
More Little Stuff:
-Full Duplication Support (however, all binds in an entity will be moved to your current set, so make sure your contraption doesn’t have multiple sets in it)
-Works when other players use your input device. (i.e. Player A makes and binds the vehicle, player B will trigger player A’s binds when using the vehicle.)
-To reiterate: numpad-controlled entities spawned while your ElectroSet is set to anything other than 0 (which will show on the HUD as numpad) can be used through binds-only. Entities spawned while your ElectroSet is 0 can be controlled normally through the numpad.
Please remember this is in no way associated with WireMod, nor is it intended to be a replacement - WireMod still has all the mathematical gates, displays, etc. Electromod is designed for clean input control (vehicles, buttons, etc.)