Skip to content

Commit 6348b9f

Browse files
committed
And nuke readme please, thanks
1 parent 7c1a03e commit 6348b9f

File tree

1 file changed

+1
-135
lines changed

1 file changed

+1
-135
lines changed

README.md

Lines changed: 1 addition & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -1,143 +1,9 @@
1-
OUTATED, maybe I will update on one good day
2-
31
<img src="src/main/resources/icon/icon.png" align="right" width="190px" alt="mod logo"/>
42

53
[![Discord link to the "LopyMine's Project" discord server](https://cdn.modrinth.com/data/cached_images/21f178aff2b64844fefeaf94a3a3a418440fd43f.png)](https://discord.gg/NZzxdkrV4s) [![Support Link-Banner [Boosty]](https://cdn.modrinth.com/data/cached_images/dce91fef079649dee277c52a998fc068e745e99e.png)](https://boosty.to/lopymine/donate)
64

7-
### Mossy - Template Fabric Mod
5+
### Mossy - Template Fabric Mod for Mossy Projects
86

97
---
108

119
Mossy is a template Fabric mod with some additional tweaks and code templates.
12-
13-
### Tweaks and templates
14-
---
15-
### Done
16-
1) Multi-version modding by [Stonecutter](https://stonecutter.kikugie.dev/) plugin
17-
2) Easy player setting (uuid and nickname)
18-
3) Mod Menu Integration
19-
4) Fast YACL configuration for config screen (WIP)
20-
5) Mod Config template
21-
6) Versioned AWs and Mixins
22-
7) Fast `gradle.properties`, AWs and mixins generation for each version (for 1st point)
23-
8) Split run folder for `runs/client` and `runs/server`
24-
### Planned
25-
9) Add support for multi-loaders
26-
27-
# How to set up it
28-
Basically, there are two ways:
29-
1) You can fork this template mod and make your mod
30-
2) You can integrate Mossy build system into your ready-made mod
31-
32-
But we will focus on the second way. In this way you will need to copy files `stonecutter.gradle`, `settings.gradle`, `gradle.properties`, `build.gradle`, `LICENSE`, `Mossy/src/main/resources/fabric.mod.json` and optional `.gitignore`.
33-
34-
Then you will need to set up `gradle.properties`.
35-
36-
## About `gradle.properties`
37-
- `Mod Properties` contains mod info
38-
- `Main Dependencies` like `Build Dependencies`, but not versioned
39-
- `Build Dependencies` contains build properties, usually they versioned
40-
- `Multi-Versions` basically contains only one property, it's a `multi_versions`, versions in it should be separated with space ' '
41-
- `Additional Dependencies` contains additional depends, and you can add it easily:
42-
```properties
43-
# If you want to have it versioned, just write:
44-
dep.MOD_ID=[VERSIONED]
45-
# and add this property to every `Mossy/versions/[MINECRAFT VERSION]/gradle.properties`, if it's boring for you, just remove `gradle.properties` and reload gradle, each `gradle.properties` with last versions of depends will be generated.
46-
#
47-
# If you want to have static version, just write:
48-
dep.MOD_ID=MOD_VERSION
49-
#
50-
# READ ME
51-
# MOD_ID should be taken from Modrinth.
52-
# `dep.` part is important.
53-
```
54-
55-
After you can reload gradle and check all updates.
56-
57-
Also don't forgot to add your dependency in `build.gradle` with this value
58-
59-
## About Mixins and AWs
60-
61-
After reloading gradle, in your `resources` folder you will find `mixins` and `aws` folders. In them, you will find generated mixins and AWs for each minecraft version. What version they are for is indicated in their name.
62-
63-
You might be surprised that all mixins have a `.json5` extension instead of `.json`. This is needed to support comments which are needed for the [Stonecutter](https://stonecutter.kikugie.dev/) plugin. In build all mixins will be converted to `.json` by [j52j](https://github.com/kikugie/j52j).
64-
65-
To understand how comments work, I recommend to check the [Stonecutter docs](https://stonecutter.kikugie.dev/stonecutter/introduction).
66-
67-
AWs, in turn, have nothing unusual.
68-
69-
## About `fabric.mod.json`
70-
In Mossy, `fabric.mod.json` has some features you should know, here are the main ones:
71-
```json5
72-
// ...
73-
// Other code
74-
"depends": {
75-
"fabricloader": ">=${fabric_loader}",
76-
"minecraft": ">=${minecraft}",
77-
"java": ">=${java}",
78-
"fabric-api": ">=${fabric_api}"
79-
}, // needs because we have multi-versions
80-
"accessWidener": "aws/${minecraft}.accesswidener", // needs to get path to AW for current minecraft version
81-
"mixins": [
82-
"mixins/${minecraft}-${modId}.mixins.json" // needs to get path to mixing config for current minecraft version
83-
]
84-
// Other code
85-
// ...
86-
```
87-
88-
## About `player/player.properties`
89-
90-
`Mossy/player/player.properties` is just a properties file, which uses to set up minecraft runs config with properties, to set up your nickname and uuid if they are present. If you want to add it, just create `player` folder in your project, and file `player.properties` with this content:
91-
92-
```properties
93-
# Player properties
94-
# If you don't want to change any properties, just remove it
95-
player_nickname=Cool boy
96-
player_uuid=Your UUID here
97-
# After changes, you need to delete "/.idea/runConfigurations" folder and reopen project and reload gradle
98-
```
99-
100-
## About `.json5` files
101-
At now plugin j52j will convert all `.json5` files in `Mossy/src/main/resources/` to `.json` in build, check [this](https://github.com/kikugie/j52j?tab=readme-ov-file#configuring-the-plugin) if you wanna to safe some files from converting.
102-
103-
# How to use it
104-
105-
## Switching current minecraft version
106-
107-
After settings and reloading gradle, you should have gradle tasks in the `stonecutter` category, select the one and you will switch the active minecraft version of the game to the selected one.
108-
- `Refresh active project` will refresh project and update comments.
109-
- `Reset active project` will switch current minecraft version to first of the `multi_versions` in main `gradle.properties` file.
110-
111-
You can check current minecraft version in `stonecutter.gradle` file.
112-
For more info check the [Stonecutter docs](https://stonecutter.kikugie.dev/stonecutter/introduction).
113-
114-
<details>
115-
<summary>Showcase</summary>
116-
<br>
117-
<img src="img/switching_version.gif" width="400" alt="Showcase"/>
118-
</details>
119-
120-
## Launching current minecraft version
121-
To run current minecraft version with your mod you will need to execute run configuration with the same version, that in `stonecutter.gradle`, to switch it, read previous text above.
122-
123-
Also, your game folder is now split to `Mossy/runs/client` and `Mossy/runs/server`, boop.
124-
125-
<details>
126-
<summary>Showcase</summary>
127-
<br>
128-
<img src="img/launching_minecraft.gif" width="600" alt="Showcase"/>
129-
<img src="img/launched_mod.png" width="600" alt="Showcase"/>
130-
</details>
131-
132-
## Building mod
133-
To build your mod for each minecraft version which you write in main `gradle.properties`, you can just start specified gradle task `chiseledBuild` in `project` group, after execution you can go to `Mossy/versions/[MINECRAFT VERSION]/build/libs/your_builded_mod.jar`.
134-
135-
<details>
136-
<summary>Showcase</summary>
137-
<br>
138-
<img src="img/building_mod.gif" width="400" alt="Showcase"/>
139-
140-
And after executing `chiseledBuild` task you can check your mods, here is example for minecraft 1.20.1:
141-
142-
<img src="img/mod.png" width="500" alt="Showcase"/>
143-
</details>

0 commit comments

Comments
 (0)