Full overview can be viewed on the official page here.
Built for .NET Framework 4.5.
This tool allows you to bind buttons on an external application to custom tech functions, which means you no longer have to bind LMB+Shift+Up+F to toggle hueshift!
Available out of the box>_
- Binding buttons to actions, which translate into running these functions in-game.
- Spawning items from JSON files (StarCheat exports).
- Running code directly from a text field.
- 'Neat' interface that snaps to the side of your monitor, which you can fold to get it out of the way.
- Running actions without losing focus of the game. No alt-tabbing back in!
Never forget: In the Starbound.config (in giraffe_storage, not the mod folder), set "safeScripts" to false. This allows certain functions that this mod needs to function.
The filePath should refer to the 'actions.txt' file in the root of the mod folder. The tempPath should refer to the 'temp.txt' file in the root of the mod folder.
- Open SilverIO.lua in /tech/blink.
- Set the filePath and tempPath to the full path to the actions.txt and temp.txt file respectively. Note that that path should contains forward slashes, and not backslashes.
- Save the file and close it.
The config is located in the Controller folder, and the write file is the same 'actions.txt' file in the root of the mod folder.
- Open the controller in /Controller.
- Open the configuration window by selecting the three dots.
- Select the config file and write file. It is recommended to select the option that loads the data from the file, to make two test functions available.
The basics to adding content>_
- Start the game.
- Select a character with the blink tech active.
- Select one of the test functions in the controller, and see if they work!
- Write angry comments on this thread because something isn't working correctly.
Of course, the included functionality probably isn't going to be a reason to set up the controller. That is, unless you're really into spawning custom items directly into the game.
The mod shouldn't take long to set up, depending on how experienced you are in understanding the structure of Lua.
Combining this mod with your own script
Making your own functions compatible
- In your own blink file, put silverIO.init(), silverIO.uninit(), silverIO.input(args) and silverIO.update(args) in the function they belong in. It is highly recommended to insert the calls at the beginning of each function.
- At the top of your blink file (before any existing code), put require "/tech/blink/silverIO.lua".
- Remove the blink.lua file included with this mod.
You can either move your functions over, or reference to them. In this example, we'll add a reference to prevent damaging the structure of the existing code.
In the silverIO.lua file, create a new function for your action. For example:
The code in this function will be executed when running your action through the controller. You could set your self.hueshifting = not self.hueshifting (or whatever variable you use) here, to toggle the status of your hueshift.Code:function silverIO.toggleHueshift() end
Since your own update code isn't modified, everything should still work as intended.
The next step is binding the action in your controller. Detailed information on this can be found in the included readme file, but without diving into parameters all that matters is setting the action value to the name of the function (inside the silverIO table); toggleHueshift.
Of course, if you're having a hard time setting up the mod or combining it with your own, don't hesitate to ask me in the discussion thread! Suggestions are welcome, but don't expect more Lua functions included (the included ones are mostly there to test if the mod works properly).