miuu-console-unlocker/README.md

65 lines
2.8 KiB
Markdown

# Marble It Up! Ultra Console Unlocker
This is a mod of [Marble It Up! Ultra](https://marbleitup.com/) which allows you to access the in-game console, which is useful for logging exact scores, enabling quick resets, and using console command for other mods, among other things.
## Installation
1. Install the MIUU Mod Loader.
2. Download the mod from the Releases page.
3. Extract the zip into your `Mods` folder.
4. You should be able to use the console with `~` in-game!
## Adding custom console commands to a mod
Adding custom commands to your own mod is pretty simple. In a class, define a method annotated with a `ConsoleCommand` annotation, which can have the following parameters (all optional):
Name | Type | Description
--- | --- | ---
`name` | `string` | The name of the command. You can leave it out and it will use the name of the method instead.
`description` | `string` | The description of this command, which gets printed when running the `help` command.
`paramsDescription` | `string` | A small description of what parameters the command takes, usually inside square brackets.
`hidden` | `bool` | Set to true to make this command not appear in the `help` command.
The method has a few requirements:
* It should be a `public static` method.
* It should either return `void` or `string`.
* If it returns a string, that string will be printed to the console.
* The method should take either zero or one arguments, with the one argument being of type `params string[]` containing the parameters typed by the user.
If a method meets all the requirements and is annotated, it should automatically become a usable console command in-game.
### Example commands
A simple example command with no parameters:
```c#
[ConsoleCommand(description = "Prints a hello world message to the console")]
public static string HelloWorld()
{
return "Hello World!";
}
```
A simple example command which takes parameters:
```c#
[ConsoleCommand(description = "Concatenates and prints two arguments together", paramsDescription = "[string1, string2]")]
public static string ConcatStrings(params string[] args)
{
if (args.Length != 2)
return "Must provide two arguments!";
return args[0] + args[1];
}
```
## Build
If you just want to use the mod, refer to the Installation section above. These instructions are if you want to compile the mod itself.
1. Clone the git repository.
2. Install the MIUU Mod Loader, so the Harmony dll is present.
3. Edit `UserProperties.xml` to remove the `UserPropertiesNotSetUp` property and point `GameDir` to your MIUU installation directory.
* **Optional but recommended**: To prevent this file from showing as changed in git, run the git command `git update-index --skip-worktree UserProperties.xml`
4. Open `ConsoleUnlocker.sln` in Visual Studio.
5. Click Build -> Build Solution, and it will build directly into your MIUU Mods directory.