# 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" ] } ```