Gadget Core

**Third Party Disclaimer**

*This page describes software not developed by SmashGames. Software listed on this page has not been tested and is not endorsed by Roguelands Wiki, Fandom, SmashGames, or their respective employees. Use it at your own risk. By downloading any third party software, you acknowledge that you cannot hold anyone responsible for any adverse effects to your devices, your game, or your online accounts.*

*Created by **SuperKael***
**Gadget Core** is an open-source modding API and loader **designed for Roguelands**. Its goal is to simplify the process of adding new items, creatures, and more to the game, and simultaneously minimize the chances of mod conflicts.

### Features

* Multiplayer chat using the console (` key)
* Syncronizes mods across the network
* Simplifies the modding process
* An universal crafting table for mods ()
* In-game configuration menu for mods
* In-game download menu for mods and auto-update (In the Mod Browser)

### Download

Link: https://github.com/SuperKael/Gadget-Core/releases

### Install

1. Download and run the latest Gadget Core installer from here
2. Select Roguelands folder and install. (Default: *C:/Program Files (x86)/Steam/steamapps/common/Roguelands*)
3. Run Roguelands once to allow Gadget Core do its first-time setup.
4. To install a mod, drop the .zip into **Roguelands/GadgetCore/Mods/** or use the Mod Browser to automatically install.
5. To uninstall Gadget Core, run the installer and select the uninstall option.

### Mod Creation

Check Unity Project guide or ask on the Discord server for help in creating Roguelands mods.

To add a mod to the Mod Browser, a request has to be added on GitHub by the author.

## Mod List

Gadget Core features a **Mod Browser** that downloads and installs mods while in-game. It can be accessed from the Mod Config Menu.

## Command List

GadgetCore provides a console/chat when pressing `.

Arguments in angle brackets `< >` are required.

Arguments in square brackets `[ ]` are optional.

Arguments that contain multiple words require quotation marks `" "`.

help
Shows available commands
/help <page> or /help all
debugmode
Toggles debug mode.
op
Grants operator permissions to a given player.
/op <player>
The host is the default operator.
deop
Removes operator permissions from a given player.
/deop <player>
execute
Forces another player to use a command.
/execute <player> <command>
reloadmod
Reloads a mod.
/reloadmod <mod>
githublogin
Logs into or out of GitHub (for Mod Browser use)
/githublogin <auth token>
reloadgadget
Reloads a gadget.
/reloadgadget <gadget>
give
Spawns items
/give [player] <item name/id> [quantity] [property]=[value] (List of ItemIDs)
Modded items have as id the registry name (*Challenge+:CorruptCharm*)
Quantity needs to be specified everytime an optional property is added. Quantity will not spawn multiple pieces of gear, instead it will show a "quantity number".
Properties are:
tier = 0 (common), 1 (rare), 2 (epic), 3 (legendary)
exp = 0-15600+ (Gear will MAX at 15600)
mod1, mod2, mod3, aspect1, aspect2, aspect3 = 201-224 (Gear Mods, found in Item IDs)
mod1lvl / mod1count / aspect1lvl / aspect1count = Amount/Level of gear mods
if Challenge+ is installed, *corrupted* changes the corruption level.

givechip
Spawns a chip.
/givechip [player] <chip name/id> (Combat Chip IDs)
giveexp
Give yourself experience.
/giveexp <player/weapon/offhand/helmet/armor/rings/droids> <amount>
giveportals
Give yourself portal uses.
/giveportals <planet name/id> <amount>
godmode
Toggles god mode.
/godmode
spawnentity
Spawns an entity into the world.
/spawnentity <enemy id> [x offset] [y offset] (Enemy IDs)
reflect
Performs simple runtime commands.
/reflect <mode> [parameters]
Aliases: *refl, reflector*
Modes:
Help - Shows information about a mode.
/reflect help <mode>
Read - Reads the value of a field or reference and prints out the value in the console.
/reflect read <identifier> [container]
Write - Writes the value of a field or reference from a string value.
/reflect write <identifier> [container] <value>
Watch/EndWatch - Start/Stops watching the value of a member, and reports whenever the value changes.
/reflect watch <identifier> [container] [interval]
/reflect unwatch <identifier>
Using/Unusing - Designates/Undesignates a namespace as being used to simplify type resolution.
/reflect using <namespace>
/reflect unusing <namespace>
ResolveType/Member/Reference/Ref - Resolves the specified identifier (type/member/reference) to simplify future mode usage.
/reflect resolvetype <identifier>
/reflect resolvemember <identifier>
/reflect resolvereference <identifier>
Invoke - Executes the specified method.
/reflect invoke <identifier> [container] [args]
## Changelog

A changelog is a log or record of all notable changes made to a project.

v1.0
Unifies items, chips, tiles, entities.
v1.1
Adds in-game mod configuration menu, mod sync across network, automatically installs Mono Patch, ability to unpack .zip.
v1.1.3
Adds Asset Bundle loading and UMF compatibility.
v2.0-BETA
Adds standalone installer, save backups, Generic RPCs system, SyncVars, Stat Modifiers, and automatic config-reloading.
v2.0
Support for custom planets, custom crafting stations. Added a basic Universal Crafter crafting station in the Market if there's a mod that adds recipes.
v2.0.2.0
Modifies Roguelands primary assembly for easier modding.
v2.0.3.0
Adds Mod Browser.
v2.0.4.0
Support for advanced recipe processors. Adds a large number of console commands.
v2.0.4.1
Adds auto-update check.
v2.0.4.3
Support for custom allegiances and dialogue
v2.0.5.0
Adds search bar to Mod Browser. Improvements to NPCs, dialog, entities, networking features and debugging utilities.
v2.0.6.0
Adds support for custom Races, Uniforms, and Augments. Adds a framework for mods to add entirely nwe character features.
v2.0.6.3 Adds support for MacOS (using Crossover)

 Bugfixes
 Contents
 Decorations
 Dependencies
 Overhauls