- Java 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| docs/images | ||
| gradle/wrapper | ||
| src/main | ||
| .gitignore | ||
| build.gradle | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| settings.gradle | ||
Palladium Power Designer
A mod that brings a GUI based power editor to Palladium! Allowing you to do most things without touching a single JSON file.
The initial idea behind this mod was to give developers a tool that makes creating the power trees easier. Especially when it comes to managing many nodes and connections, being able to physically move the nodes around is really helpful. It has since evolved into a full on editor, where the properties and abilities can be edited directly in the gui.
!! ~ THIS MOD IS A WIP! ~ !!
In its current state, it is completely usable for tree design. Also, all properties are editable, but not all of them are very intuitive. There are many plans for this, as seen below.
Features
- Custom GUI editor for power files
- A line waypoint system to completely control where lines travel and how they attach.
- Edit copies of existing powers, drafts, or create new files
- Ability editing
- All ability properties can be changed through the gui. (Some data types are unsupported right now, but still accept data)
- Multi-Edit for nodes (use
Ctrl+Clickto select multiple, orCtrl+Drag) - Item/Icon Browser
- Ability Browser
- And a bunch of other stuff I am forgetting
Getting Started
To begin using this, grab a release jar from the releases page on git. If you are a normal addon developer, add it to the mods folder.
Once in game, you can start editing! Open up the editor using the commands below, and right click to add a new node!
I have added an example power called super_ripoff.json (a bad superman power) to this mod that has a few examples in it. It was created entirely with this editor.
For Java developers:
Add the following repo to the build.gradle
// Palladium Power Designer (Forgejo releases)
exclusiveContent {
forRepository {
ivy {
name = "PPD Releases"
url = "https://git.threetag.net/BanditHelps/Palladium-Power-Designer/releases/download"
patternLayout {
artifact "[revision]/[module]-[revision].[ext]"
}
metadataSources {
artifact()
}
}
}
filter {
includeModule "net.threetag", "ppd"
}
}
Then add the following to your dependencies:
localRuntime "net.threetag:ppd:$ppd_version"
Finally, add to the gradle.properties the field ppd_version=preview-{version_id}}. The version id can be found on the Releases page!
Commands
/ppd tree editor new- Creates a blank power file and opens it with the editor/ppd tree editor <power_id.json>- Opens a COPY of an existing registered power. No changes are written to the original file. Rather, a copy is saved/ppd tree editor draft <draft_name.json>- Opens any file located in the.ppd_exports/.
Applying Changes
In order to save the power file when done making changes, simply use Ctrl+s or go to File > Save. It is important to know that right now, the editor does NOT apply changes directly to the power file in data/<mod_id>/palladium/powers/. Instead, it saves all changes in a folder named ./ppd_exports inside the minecraft instance. (This is so I am not liable if you break your power :D )
To "Apply" changes that you made, simply copy and paste the contents of the exported file to the real power.json. This tool is designed to change the files as little as possible. New abilities are added to the end of the files, and existing abilities are edited where they stand.
Planned Features
- Power Browser - Essentially turn the gui into a full on editor, allowing you to edit multiple power files at once.
- Support for other file types - Animation Controllers, Power Renderers, etc.
- Auto Generation of addon files - Similar to my VSCode extension, being able to set up entire projects at the click of a button
- File Validator - The ability to test what is wrong with a power WITHOUT relaunching the game
- Direct Addonpack Editing - Right now it only edits copies for safety.
- Support for /reload - (this might not be possible lol)
- Support for changes to the power_renderer (mainly the background)
- In game documentation viewer
Feature Requests/Bug Reports
For now, I think the best way is to use the Issues section of this git repo. Mark the issue title with either [BUG] or [REQUEST], and that should be good I think.
Note on AI Use
Some of the custom GUI code was written with AI assistance. There are no AI-generated images or textures in this project. The editor is drawn at runtime with Minecraft's own rendering (rectangles, text, and colors).
