143 lines
4.5 KiB
Markdown
143 lines
4.5 KiB
Markdown
|
# File Formats
|
||
|
Inceptum uses several json formats to store metadata and configs.
|
||
|
All of these are subject to change, though automatic migrations will likely be provided.
|
||
|
|
||
|
## inceptum.json (Main Config)
|
||
|
```json
|
||
|
{
|
||
|
// Whether to show snapshots in the version selector for new instances
|
||
|
"snapshots": false,
|
||
|
// Whether to launch the GUI in dark mode.
|
||
|
// Configurable in Settings->Dark Theme
|
||
|
"darkTheme": true,
|
||
|
// Whether to require an account to launch the game.
|
||
|
// Intended to allow running the game from USB sticks on constrained networks
|
||
|
"enforceAccount": false,
|
||
|
// The currently selected account.
|
||
|
// Used to launch the game
|
||
|
"lastAccount": "some UUID",
|
||
|
// The update channel. Either "CI" or "Stable".
|
||
|
// I personally recommend the CI channel as it gets the latest fixes and features quicker
|
||
|
"channel": "CI",
|
||
|
// Configuration for the git integration.
|
||
|
// This is also used during instance creation, but you can pretty much ignore it if you use an external client or don't create modpacks
|
||
|
"git": {
|
||
|
// Authentication for git
|
||
|
// Used when pushing or pulling from remote repos
|
||
|
"instanceAuths": {
|
||
|
// The name of an instance. This is equal to its directory name
|
||
|
"someInstance": {
|
||
|
// The username to use for authentication
|
||
|
"username": "yourusername@gmail.com",
|
||
|
// The password to use for authentication
|
||
|
"password": "SomePassword"
|
||
|
},
|
||
|
"someOtherInstance": {
|
||
|
"username": "yourusername@gmail.com",
|
||
|
"password": "SomePassword"
|
||
|
}
|
||
|
},
|
||
|
// The username to use when creating commits
|
||
|
"commitUsername": "Inceptum",
|
||
|
// The E-Mail address to use when creating commits. This default address doesn't exist btw
|
||
|
"commitMail": "inceptum@jfronny.gitlab.io",
|
||
|
// Whether to sign commits.
|
||
|
// If you want this for additional security, don't use the git integration
|
||
|
"signCommits": false
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
## accounts.json
|
||
|
Do not EVER use this file manually!
|
||
|
NEVER upload it anywhere!
|
||
|
It stores your minecraft account login and CAN BE USED TO IMPERSONATE YOU!
|
||
|
|
||
|
## instance.json (Instance Metadata)
|
||
|
Please note that all entries except for "version" are optional
|
||
|
```json
|
||
|
{
|
||
|
// The version to use for launching this
|
||
|
// Can be a fabric loader version (as seen here) or a normal minecraft version (like "1.17.1")
|
||
|
"version": "fabric-loader-0.12.12-1.17.1",
|
||
|
// A custom java executable to use for launching this instance
|
||
|
"java": "/path/to/java",
|
||
|
// Sets the initial size of the Java heap
|
||
|
// In bytes (this is 2MB)
|
||
|
"minMem": 2097152,
|
||
|
// Sets the maximum size to which the Java heap can grow
|
||
|
// In bytes (this is 2GB)
|
||
|
"maxMem": 2147483648,
|
||
|
// Additional arguments to pass to minecraft
|
||
|
"arguments": {
|
||
|
// JVM arguments to add
|
||
|
// Use this for things like aikars flags or java agents
|
||
|
"jvm": [
|
||
|
"-Dsome.argument=value"
|
||
|
],
|
||
|
// Arguments to add when launching as a client
|
||
|
// Generally not needed, but can be used to do things like launching a server (I think)
|
||
|
"client": [
|
||
|
"someArgument"
|
||
|
],
|
||
|
// Arguments to add when launching as a server
|
||
|
// Things like "nogui" go here
|
||
|
"server": [
|
||
|
"nogui"
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
## *.imod (Mod Metadata)
|
||
|
```json
|
||
|
{
|
||
|
// Where the JAR file for this mod can be obtained
|
||
|
"sources": [
|
||
|
{
|
||
|
// The type of the source
|
||
|
// In this case, Modrinth
|
||
|
"type": "modrinth",
|
||
|
// The ID of the version on modrinth
|
||
|
"id": "31ES0yWr"
|
||
|
},
|
||
|
{
|
||
|
// The type of the source
|
||
|
// In this case, CurseForge
|
||
|
"type": "curseforge",
|
||
|
// The ID of the project on CurseForge
|
||
|
"projectId": 306612,
|
||
|
// The ID of the file on CurseForge
|
||
|
"fileId": 3609590
|
||
|
},
|
||
|
{
|
||
|
// The type of the source
|
||
|
// In this case, a direct download
|
||
|
"type": "direct",
|
||
|
// The name of the file this should be saved as
|
||
|
"fileName": "fabric-api-0.46.1+1.17.jar",
|
||
|
// The URL to download from
|
||
|
"url": "https://cdn.modrinth.com/data/P7dR8mSH/versions/0.46.1+1.17/fabric-api-0.46.1+1.17.jar",
|
||
|
// Dependencies for this file (optional)
|
||
|
"dependencies": [
|
||
|
// Dependencies in the same dependency format used int "sources"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
// The sha1 hash of this file
|
||
|
// Used to verify downloads and for modrinth
|
||
|
"sha1": "a7d86f36c5b27bdb0008a84c3ce91e2b095a2834",
|
||
|
// The murmur2 hash of this file
|
||
|
// Used for curseforge
|
||
|
"murmur2": "1020327834",
|
||
|
// A list of dependent mods by their file names
|
||
|
"dependents": [
|
||
|
"someMod.imod"
|
||
|
],
|
||
|
// A list of dependencies by their file names
|
||
|
"dependencies": [
|
||
|
"someOtherMod.imod"
|
||
|
]
|
||
|
}
|
||
|
```
|