Creating A Community Pack [HIDDEN]
Note To Content Creators
This update will support you in sharing your content to a wider audience, especially for anyone without coding experience.
- You will no longer need to create resource packs that override a limited number of default options for coat or tack.
- You can add limitless (within reason) options to expand the game without creating a separate mod (add-on).
- You can integrate your content into some existing features of the mod, such as coat cycling and breeding tags.
To properly transition away from texture packs or add-ons (if you prefer to), we recommend:
- Read this page carefully to fully understand creating community packs.
- Create simple, clear and easy to follow / enforce Terms Of Use (TOU) or fair-use guidelines if you plan to share your work.
- Upload your content in an appropriate player-friendly format, such as Community Pack, Content Pack or premade files.
Continuing to use resource packs (including to override default or add content to unsupported versions) is up to you!
Content Creation Rules
You MUST NOT sell or trade for profit any assets created and owned by SWEM
→ Modified versions of the horse model
→ Modified versions of any blocks or items
→ Modified version of any default coats
→ Modified textures of any blocks or items
→ Shading layers
→ Free materials: template resource packs, template community packs, json files (not in a working community pack)You can provide FREE content that accepts an OPTIONAL donation
→ Includes modified horse models (ie resource pack override to add-on "breeds")
→ Does not include default coat modifications without explicit permissionYou MUST NOT modify, re-upload, or sell the work of creators without consent / allowed by TOU.
→ Includes the Official Community Pack (free) featuring donated works from community artistsYou can sell content that is at least 90%* your own work
→ Models for entities, blocks or items
→ Textures for entities, including coats using the freely provided shading layer or standard features (eyes, nose, hoof etc)
→ Textures for blocks or items
→ Animations
* 90% accounts for the 10% which can be accredited to fair inspiration, reference or color picking.You MUST NOT sell, promote or feature SWEM in any custom content or media that includes:
→ Extreme violence or gore
→ 18+ content or mature themes
Star Worm Equestrian is and always will be age appropriate to all users (PG13).
Any content or creators that modify it to be otherwise do so outside the terms of use of this project.
Terms Of Use Information
WARNING
Creating a complicated or highly restrictive TOU will set you up for frustration when it is inevitably violated or misinterpreted.
To protect your content within the very limited legal recourse for TOUs we encourage creators to share their creations in a similar way to mods; allow public or private use with minimal restrictions, provided the creator receives the download or support.
- If you choose to share your content publicly, it is your responsibility to clearly inform users of appropriate use.
- It is unreasonable to expect users to be remain informed of alterations to TOU after the time of download.
- It recommended to:
→ Post your full TOU in a public source that can be accessed by anyone without membership or sign up/in.
→ Include your TOU as a text file in any premade community packs.
→ Include your TOU as a link or summary in any location your files are hosted or downloaded.
RECOMMENDATIONS
Avoid requiring credit for use in media; it should be encouraged but no credits does not equal insult!
→ It is not standard practice to credit every creation (ie mods) in casual images; nice if you do, but optional!
→ It should only be "required" to credit where appropriate (promotion, inspiration or reference), and not falsely claim.
Avoid prohibiting inspiration or reference; similarity is not proof of plagiarism!
→ It is possible for creators to have a similar idea, share the same reference, or take respectful inspiration!
→ It should be expected that work(s) clearly and directly referenced or inspired by your creation is fairly credited.
Avoid restrictive use policies that are difficult to monitor and enforce.
→ It is an unfortunate reality that players +/- servers will violate agreements, especially if they are restrictive.
→ There is limited legal recourse to address this; so state what you are willing and able to action if necessary!
Consider providing content in a compact format with minimal individual downloads!
→ Players and servers will be less likely to distribute (or more likely to use) easily accessible files.
→ It is suggested to provide creator pack(s) in bundles such as 'Bays', 'Pintos', '2023 Coats'
Avoid uploading to unsecure file hosting sites or encouraging users to engage in unsafe internet habits.
→ It is recommended to use popular sites such as Kofi, Google Drive.
EXAMPLE TERMS OF USE (NOT A LEGAL CONTRACT OR LICENSE)
OWNERSHIP & AGREEMENT
→ The creator (name) retains all rights of ownership to this content
→ The right to use this content is granted to you (player) in accordance with this agreementUSE
→ This creationcan/not
be used in content (images, videos) - credits are optional but appreciated.
→ This creationcan/not
be used privately in singleplayer or a small private group.
→ This creationcan/not
be used publicly in multiplayer.
→ This creationcan/not
be used in reasonable commercial serviceswith/without
consent.
✅🚫 Offered as part of a service (ie random / selected coat change) requiring real money
✅🚫 Offered as a prize or reward for activity or events requiring real money
✅🚫 Offered as an unlock via crowdfunding or engagement (ie server cost covered -> unlock)
NOTE: Commercial services must abide by Minecraft's EULADISTRIBUTION
→ This creationcan/not
be reuploadedwith/without
consentand/or
creditsand/or
payment.
✅🚫 Limited private use by friends or small groups
✅🚫 Custom Community Packs (folder)
✅🚫 Custom Modpacks (zip)
✅🚫 Exceptions: Paid vs Free, Commissions (paid) or Gifts (prizes)
✅🚫 Other: File Hosting Sites, Discord Servers etcALTERATIONS
→ This creationcan/not
be alteredwith/without
consent andwith/without
credits forpublic/private
use.
✅🚫 Texture
✅🚫 Information (json: name, description, color tags etc)
✅🚫 Other conditions
Updating A Community Pack
Official Community Pack [VERSION TBC] has been updated to support the latest release.
If you have a custom coat community pack for 1.20.1-1.5-beta7 you must make changes to stay compatible in newest release.
- Close Minecraft
- Locate your community pack(s)
- Go inside
packname > jsons > coats
- Open the first coat file in a text editor
- Change
"legacy": "default:coats/legacy/coat_artist.png"
to"legacy": "legacy/coat_artist.png"
- Save and close the file
- Repeat for all coat files +/- all outdated packs
Creating A Community Pack
You can skip step 1-3 by downloading a template community pack found [HERE].
You can skip or delete any folder that will not be used for your content (ie tack folders if you will not add any tack).
STEP ONE: CREATE THE PACK FOLDER STRUCTURE
- Create a new folder (this can be in community packs, or elsewhere to paste in later)
- Name your community pack:
→ It must be in lowercase letters with no spaces
→ It is recommended to useartist_packname
such asyourname_kofi
oryourname_bays
- Go inside the empty pack folder
- Create two new folders here:
→jsons
to store the information files
→textures
to store the coat and tack files - Add the [TOKENS FILE].
STEP TWO: CREATE THE JSONS FOLDER STRUCTURE
- Go inside the empty
jsons
folder - Create two new folders here:
→coats
to store .json information files for coats
→tack
to store .json information files for tack - Go inside the empty
tack
folder - Create 10 new folders here:
→blanket
→breast_collar
→bridle
→girth_strap
→halter
→horse_armor
→leg_wraps
→pasture_blanket
→saddle
→saddle_bag
STEP THREE: CREATE THE TEXTURES FOLDER STRUCTURE
- Go inside the empty
textures
folder - Create three new folders here:
→coats
→tack
→tokens
- Go inside the empty
coats
folder - Create one new folder here:
→legacy
to store .png texture files for coats - Go inside the empty
tack
folder - Create 10 new folders here:
→blanket
→breast_collar
→bridle
→girth_strap
→halter
→horse_armor
→leg_wraps
→pasture_blanket
→saddle
→saddle_bag
📂 config |
📂swem |
📂community-packs |
📂artist_packname |
📂jsons |
📂coats |
🗒️ |
📂tack |
🗒️ |
|||||
📂textures | 📂coats | 🗒️artist_coat.png files |
||||
📂tack | 🗒️artist_tack.png files |
|||||
📂tokens | 🗒️token_name.png files |
|||||
🗒️ tokens.json |
||||||
Shown: The file structure for community packs, including correct placement inside |
STEP FOUR: CREATE A TOKENS FILE
This is only required if you are adding tack items, which will use tokens to buy (craft) that tack item!
[Expand] About Tokens
Tokens are a form of currency to exchange for tack pieces. This is so every item does not need a crafting recipe.
- Tokens are redeemed at an EQ Shop block - this displays all purchases possible for the given token.
- You must set a crafting recipe to create tokens at a crafting table.
- You can set a yield of 1-64 tokens per crafting.
- You must create at least one Token Example
Creatorname Coin
- You can name them whatever you want; tokens coins, credits etc.
- You can create multiple themed or tiered tokens Example
Basic Token
Valuable Token
- You can set custom pricing for your items in their individual .json files Example Saddles cost 5 Creator Coins
RECOMMENDATIONS
→ Keep tokens to a minimum; each one is a new item added to the game.
→ Set a unique name that is unlikely to be duplicated (confusing to players) such as Yourname Token
or Packname Coin
→ Set a recipe that is unlikely to be duplicated with Minecraft recipes or tokens for other creators.
→ Use Content Packs or individual files to 'add-on' to a core pack, rather than creating many individual packs + tokens.
WARNING TO CREATORS (+ SURVIVAL SP / SERVERS THAT USE COMMUNITY PACKS)
→ Removing or renaming tokens will void any currently in game - players that crafted them will lose them!
→ This is why is is recommended to think carefully about what tokens you add and support them long term.
[Expand] Token Template
{
"name": "Example Coin",
"tokens": {
"token_1": {
"texture": "tokens/example_coin.png",
"recipe": {
"count": 4,
"pattern": [
" R ",
"ODO",
" G "
],
"key": {
"R": {
"item": "minecraft:redstone"
},
"O": {
"item": "minecraft:obsidian"
},
"D": {
"item": "minecraft:diamond"
},
"G": {
"item": "minecraft:gold_ingot"
}
}
}
}
- Open a blank text editor file using Notepad (Windows) or [MAC ALTERNATIVE]
- Paste in the template code (above)
- Edit the template to your preferences
→name
the token item's name in game ✅"name": "Example Coin",
→texture
the texture path (location) and (future) name in files ✅"texture": "tokens/example_coin.png",
→count
the number of tokens crafted in one go ✅"count": 4,
→pattern
the position of crafting items in a crafting table grid (see example below)
→key
the assigned items for pattern (see example below) - [Optional] To add additional tokens:
→ Put a comma after the final curly bracket}.
→ Paste another copy of the template on the next line - Save the file as a .json file by using
save as
and naming the filetokens.json
→ The file type should display asJSON File
- Paste this folder directly into your community pack
artist_packname > tokens.json
[Expand] Token Recipes & Keys
pattern
refers to the 9 slots in a crafting grid, with each slot being a potential space to place one item.
"pattern": [
" R ",
"ODO",
" G "
Shown above is an example where 5 items are placed in a crafting grid; one slot in top row, three in middle and one bottom row.
Each occupied slot has a letter or symbol that is later defined under key
- this says which item that will be.
- The letters you choose do not matter, but they can only specify ONE type of item.
- If a slot is unused, it is recommended to use a space (no letter or symbol)
→ Example: Empty row ✅" "
"key": {
"R": {
"item": "minecraft:redstone"
},
"O": {
"item": "minecraft:obsidian"
},
"D": {
"item": "minecraft:diamond"
},
"G": {
"item": "minecraft:gold_ingot"
}
}
Shown above is the key
section which defines those letters; R
for redstone, O
for obsidian, D
for diamond, G
for gold ingot.
- Note that each item comes in it's own little code section which is correctly indented (positioned)
- Each letter is defined as ONE specific item, and that item includes the ID
minecraft:item_name
- This would allow you to specify IDs of other mods such as
swem:item_name
→ The recipe will not work if it specifies an item the player does not have the mod for, or cannot obtain.
Shown: Overlay of json information vs in-game crafting.
"pattern": [
" / ",
"# #",
" / "
],
"key": {
"/": {
"item": "minecraft:blaze_rod"
},
"#": {
"item": "minecraft:gold_ingot"
}
}
Shown above is another example with four items in the crafting grid; top row middle, middle row left + right, bottom row middle.
This example uses symbols instead of letters, which are less clear but work fine.
The key section states two items, /
for blaze rod and #
for gold ingot.
HELPFUL RESOURCES
JSON files require correct formatting, including indentation (position on the page). If this is confusing, try:
- Editing the example template file provided [DISCORD LINK]
- Using a recipe generator for datapacks HERE
→ Search for and drag your items into the crafting grid
→ Scroll down and copy the relevant sections (pattern and key)
→ Recommendation: Copy from"pattern"
to the last"
for crafting items, such as "minecraft:gold_ingot"
→ Open your tokens file, select the same points ("pattern" to ") and paste
Creating Tack (inc json, textures for horse, racks x2, icons)
Creating Coats (inc json, textures for horse)
-> Optional: Xaeros icon
Testing