# Community Packs Community Packs are our integrated system to dynamically add custom content made by the community without the requirement for additional code. # General Information [WIP]
This feature is available in **1.20.1-1.5+** and will **NOT** be added to outdated versions.
Community Packs is a feature that allows players to add NEW assets to the mod without the use of an add-on mod. --- #### Important- Update ChangesExisting worlds should be safe to update but always take a backup in case you encounter an issue!
To support community packs, some changes have been made. See additional pages for feature-specific changes. - Common, Client and Recipe configs now generate in `config/swem` - Community Pack features will likely break add-on mods. **PLEASE BE PATIENT AND ALLOW CREATOR'S TIME TO UPDATE THEIR MODS** --- #### Supported Features**Feature** | **Mod Version** | **Notes** |
Coats | **1.20.1-1.5 Beta +** | Custom coats that do not override default, and support coat cycling + breeding tags. |
Tack | **1.20.1-1.5 Release** | Custom tack that does not override default tack and can be purchased via EQ Shop. |
Animations | **1.20.1-1.5 Release** | Custom animations that can be triggered via command (loop). |
There can still be other errors that prevent a pack working, but this criteria means the pack is structured correctly!
**⮞ WHAT IF PACKS HAVE AN IDENTICAL NAME?** Community Packs that do not use recommended format could have a duplicate name like `free_coats` or `kofi_coats`. - Duplicate folders will merge into one with the files of both folders - Files will not override or replace each other **unless** they have identical names **Creators** - Avoid conflicting names with recommended unique format of `coatname_artist` in all files and packs - Avoid content 'options' with the same name - if you offer variants (ie braids vs roached) give them a unique name - Avoid creating packs with 'old' files that may override new versions (ie fixed or improved textures) - Update or remove old packs that may have any such files.Always check that merged files maintain the correct folder structure and file names are valid (ie not coat\_name\_copy)
**⮞ WHAT IF IT ASKS ME TO REPLACE FILES?** There is no correct answer to this: - Replacing existing files to update a texture error is usually safe. - Replacing existing files to update coat info for breeding tags, inspiration info is usually fine. - Replacing existing files with outdated files could revert changes (replace with pre-fix version) If you replace a file with a broken texture or non-functional json, you will need to fix it or re-download the original! **⮞ CAN I HAVE MULTIPLE COMMUNITY PACKS?** Yes. You can install multiple Community Packs, but you should read **\[4\] Performance** if adding a lot of additional content.Always read the Creator's Terms Of Use (TOU) as significant non-private alterations or reupload may be prohibited!
**⮞ CAN I REUPLOAD A COMMUNITY PACK +/- MODIFIED?** **✅**`JSON FILES` You can edit and distribute json files or overrides freely. **❌**`PNG FILES` You should not modify, re-upload, distribute or monetize Creator's work without explicit consent. `PNG FILES` Creators have the right to set and enforce appropriate use of their content. - You must not modify, re-upload, distribute or monetize Creator's work without explicit consent. `JSON FILES` Creators can set reasonable requests on json modification, but do not own this asset. **✅** You can provide **FREE** override files or packs. **❌** You must not create and distribute files that violate platform (ie Discord) or Community (ie SWEM) rules. **❌** You must not monetize file edits to profit off the original Creator(s) work without consent. **❌**You must not provide premade packs that include the content (pngs) of Creator(s) without consent. **❌** You must not remove artist credits, or add false credits. **❌** You must not remove artist reference, excluding reasonable modification. `Esperanza from Spirit` -> ✅ `Palomino (Dreamwork's Spirit: "Esperanza")` **❌** `N/A` **⮞ CAN I RENAME A PACK (AS A PLAYER / CLIENT)?** ** Multiplayer **No. This may prevent you from seeing any custom coats, even if you have all the correct files. ** Singleplayer **Yes. This can sometimes help you organize custom content or shorten pack IDs. - You must use a unique **lowercase** name with **no spaces** or **symbols** - You should not edit information **in use by an existing save** (will need to change coats / tack affected). **⮞ CAN I RENAME A COAT / TACK ITEM?** ** Multiplayer **No. This may prevent you from seeing any custom coats or tack, even if you have all the correct files. ** Singleplayer **Yes, though this is **not recommended**. - You must use a unique **lowercase** name with **no spaces** or **symbols** - You must set this for the file names of both `json`, `png`, and the texture path inside the `json` file. - You should not edit information **in use by an existing save** (will need to change coats / tack affected).You should use standard naming format `coatname_artist` with **appropriate artist credit** by name!
**⮞ CAN I EDIT CUSTOM CONTENT INFORMATION (JSON)?** ** Multiplayer **Yes. Important information: - Client-side (player) edits will only apply to your singleplayer worlds. - Server-side edits will apply to all players, regardless of their individual pack settings. `Texture Path` Players must use the same path to avoid black horses (missing texture) ** Singleplayer **Yes, depending on type:**Content** | **Variable** | **Comments** |
Coats | ✅ Artist Credits \* ✅ Inspiration \* ✅ `lapis_cyclable` ✅ `obtainable_by_breeding` ✅ `base_colors` **❌** Model | Can include capital letters, spaces and symbols **inside the "" entry**. Can include capital letters, spaces and symbols **inside the "" entry**. Effect will apply to future lapis/redstone changes. **Must be true/false.** Effect will apply to future breeding. **Must be true/false.** Effect will apply to future breeding. Must use **valid tags.** Must use Legacy until additional models are supported. |
Tack | TBC | |
Animations | TBC |
You must not remove or (unreasonably) modify Artist credits +/- reference and inspiration comments.
See individual pages for troubleshooting common issues for each feature.
**⮞ CAN I USE THE OFFICIAL SWEM COMMUNITY PACK ON A SERVER?** Yes. You can use this on a multiplayer server provided it is free to all players, not re-uploaded externally or monetized. You should not modify the contents, except to remove unwanted files or edit obtaining information (tags, breeding etc). **⮞ CAN I USE CREATOR'S COMMUNITY PACK ON A SERVER?**Always read the Creator's Terms Of Use (TOU) as public multiplayer use, alterations or reupload may be prohibited!
PCs with limited resources or low performance may have a limit on how much custom content it can realistically support.
This section explains how to use **PREMADE** Community Packs \[1\] - see [Creators' Corner](https://wiki.swequestrian.com/books/swequestrian-mod/page/creators-corner-wip) to create your own.
Read **\[2\] Modifying Community Packs** before you edit any Community Pack files.
To install your custom content, you need to download or create a Community Pack or Content Pack. - You can install multiple packs if they have a unique and valid name such as `artist_packname`. - Content packs will merge into community packs of the same name, or work as a new pack if one does not exist. ** STEP ONE: GENERATE THE CONFIG FOLDER** This is only required the first time you add or update the 1.20.1-1.5+ mod file. 1. **\[Optional\]** Backup any existing saves files (recommended) 2. Install the latest 1.20.1-1.5 Beta file 3. Load the game to the menu screen 4. Exit the game ** STEP TWO: INSTALL THE COMMUNITY PACK** 1. Download or Create your Community Pack → Free Official Community Pack can be found [here](https://discord.com/channels/715626418893095012/737144919717707896/1266908931423469609)! → Free and Paid Community Packs can be found on many creators pages [here](https://discord.com/channels/715626418893095012/1198308571130122250)! 2. Check the file is ready to install → See **\[1\] Community & Content Packs** above (FAQ) 3. Copy the Community Pack 4. Go to `config > swem > community-packs` 5. Paste the Community Pack file → It should look like: `config > swem > community-packs > artist_pack_name` ** STEP THREE: VIEW THE CONTENT IN-GAME** 1. Load the game 2. Load into a save or (recommended) a new test world 3. See relevant pages: → [Coats](https://wiki.swequestrian.com/books/swequestrian-mod/page/coats-new) → [Tack](https://wiki.swequestrian.com/books/swequestrian-mod/page/tack-wip) → [Animations](https://wiki.swequestrian.com/books/swequestrian-mod/page/animations-wip) --- #### Known Issues If you find an issue, please report it to our bugs channel on [Discord](https://discord.com/channels/715626418893095012/898242623716855868). We ask that you look to see if your issue was reported first! \- **1.20.1-1.5.2** Pasture Blankets (equipped) disappear on world reload. --- #### ChangelogThis is not a complete list of version changes / fixes. It is a changelog of relevant wiki-related version information.
**MC Version** | **Release** | **Notes** |
1.20.1 | 1.20.1-1.5.2 | Bug Fix: Pasture Blankets not showing up on racks. |
1.20.1-1.5.0 | Public Release: Added support for custom tack and animations. | |
1.20.1-1.5-beta-7 | Bug Fix: Change JSON file formatting and fixed load errors. | |
1.20.1-1.5-beta-5 | Public Release: Added support for custom coats. |
You must read and follow the Content Creation Rules (below) to comply with SWEM's license and permitted use of assets.
**Star Worm Equestrian is PG13: appropriate for users of all ages.** Any content or creators that modify it to be or appear otherwise do so against the terms of use for this project.
**⮞ YOU MUST NOT SELL, PROMOTE OR FEATURE SWEM IN ANY CONTENT OR MEDIA THAT INCLUDES:** - Extreme violence or gore - Mature (18+) themes → Including realistic anatomy or animationsAvoid **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 agreement - `USE` → This creation `can/not` be used in content (images, videos) - credits are optional but appreciated. → This creation `can/not` be used privately in singleplayer or a small private group. → This creation `can/not` be used publicly in multiplayer. → This creation `can/not` be used in reasonable commercial services `with/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 EULA** - `DISTRIBUTION` → This creation `can/not` be reuploaded `with/without` consent `and/or` credits `and/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 etc - `ALTERATIONS` → This creation `can/not` be altered `with/without` consent and `with/without` credits for `public/private` use. ✅🚫 Texture ✅🚫 Information (json: name, description, color tags etc) ✅🚫 Other conditionsOfficial Community Pack version is updated to work with SWEM 1.5.2 - please use the Beta 5 pack found [here](https://discord.com/channels/715626418893095012/737144919717707896/1266908931423469609).
If you have a custom coat community pack for 1.20.1-1.5-beta7, you must modify it to stay compatible in newest release. 1. Close Minecraft 2. Locate your community pack(s) 3. Go inside `packname > jsons > coats` 4. Open the first coat file in a text editor 5. Change `"legacy": "default:coats/legacy/coat_artist.png"` to `"legacy": "legacy/coat_artist.png"` 6. Save and close the file 7. Repeat for all coat files +/- all outdated packs --- #### Creating A Community PackYou can skip step 1-3 by downloading a template community pack found on our [Discord](https://discord.com/channels/715626418893095012/748632231257440336/1266941242630209589).
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).
** READ ME: RESOURCES**📂 config | 📂swem | 📂community-packs | 📂artist\_packname | 📂jsons | 📂coats | 🗒️`artist_coat.json` files |
📂tack | 📂blanket | |||||
📂breast\_collar | ||||||
📂bridle | ||||||
📂girth\_strap | ||||||
📂halter | ||||||
📂horse\_armor | ||||||
📂leg\_wraps | ||||||
📂pasture\_blanket | ||||||
📂saddle | ||||||
📂saddle\_bag | ||||||
📂textures | 📂coats | 🗒️`artist_coat.png` files | ||||
📂tack | 📂blanket | |||||
📂breast\_collar | ||||||
📂bridle | ||||||
📂girth\_strap | ||||||
📂halter | ||||||
📂horse\_armor | ||||||
📂leg\_wraps | ||||||
📂pasture\_blanket | ||||||
📂saddle | ||||||
📂saddle\_bag | ||||||
📂tokens | 🗒️`token_name.png` files | |||||
🗒️ tokens.json | ||||||
Shown: The file structure for community packs, including correct placement inside `config > swem > community-packs` |
If you are making a pack for personal use, you can skip this. Content packs are aimed at Creators providing expansion content.
A Content Pack is exactly the same as a community pack, but differs in how and why it is used. - Content Packs use the same name as a 'core' community pack. - Content Packs merge into any packs with the same name, or work as a standalone if one does not exist. - Content Packs usually include less content, or content bundled by theme (ie Black Coats, Bay Coats)Unfortunately, downloads get renamed if they have the same name, ie `artist_pack [1]` and `artist_pack [2]` → There is no way to avoid this without **downloading packs one at a time**, or manually renaming them to merge files.
**RECOMMENDATION** → Set **one or two** tag(s) for a foal color you would expect to get the coat from **Example:** Black Foal -> Black Horse
**It is not recommended to modify packs from a Creator unless you intend to customize it and solve any issues.** ✅ You should follow this troubleshooting guide to identify your likely issue first. ✅ You should notify Creator's of potential problems with the **default pack** (might need a fix or update). **❌** You should NOT expect Creator's to troubleshoot an issue you might have caused by altering files!
**⮞ ISSUE \[3\]** - Check the community pack: → Pack is directly in `config > swem > community-packs` → Pack is a **folder** and not a zip file! **→** Pack has a valid **lowercase** name with **no spaces** ✅`artist_kofi` **❌** `Artist Kofi Coats` **→** Pack includes at least one `.json` and `.png` file in the **correct folder** 📁 jsons > 📁 coats > `JSON FILES HERE` 📁 textures > 📁 coats > 📁 legacy > `PNG FILES HERE` If this is **ALL** correct the issue is not the community pack structure. **Go back to Step \[4\] above.** **⮞ ISSUE \[4\]** - Identify a coat that is missing in game - Check the **.json** file for the coat → File is listed as a `JSON File` type → File is directly in `community-packs > artist_packname > jsons > coats` → File has a valid **lowercase** name with **no spaces** ✅`coatname_artist` **❌** `Coat - Artist` → File texture path uses ✅ `"legacy": "legacy/coatname_artist.png"` **❌** `"legacy": "default:legacy/` If this is correct, the most likely issue is formatting (invalid json). → Compare your json to the template and note any missing `"` `,` or `{ }` or different indentation → If unsure, delete and rewrite the .json file using a blank template → Reload the game and repeat **Step \[4\]** above. If this is **ALL** correct or changes did not work, paste your **.json** file in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord **⮞ ISSUE \[5\]** - Identify a coat with a black (missing) texture - Check the **.json** file for the coat → File uses `legacy` model line (not any for future models) → File texture path uses ✅ `"legacy": "legacy/coatname_artist.png"` **❌** `"legacy": "default:legacy/` → File texture path has the **exact** name used by the coat texture **.png** file - Check the .png file for the coat → File is listed as a `PNG File` type → File is directly in `community-packs > artist_packname > textures > coats > legacy` → File has a valid **lowercase** name with **no spaces** ✅`coatname_artist` **❌** `Coat - Artist` - `MULTIPLAYER SERVERS` → Client (player) has community pack(s) with the same name (ID) as those on the server. → Client (player) has **.png** files with the same names as those in the server pack. If you cannot check this due to permissions, you will need to contact server admins. **⮞ \[6\] OTHER OR NOTHING WORKED** - Create a post in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord → Describe your issue(s) and **what you have tried** → Upload your latest.log file to provide info that may help others assist you **DO NOT UPLOAD PAID/PRIVATE PACKS WITH TEXTURES FROM CREATORS WITHOUT CONSENT**This is the standard format used in the Beta pack. It is recommended to use a consistent naming format as shown here.
**Type** | **Texture + Name** | **Comment** |
**Bridle** | `name_bridle_icon` | Inventory Icon |
`name_bridle_legacy` | Horse Texture | |
`name_bridle_bit_legacy` | Horse Texture | |
`rack_bridle_name_blanket` | Bridle Rack Texture | |
**Blanket** | `name_blanket_icon` | Inventory Icon |
`name_blanket_legacy` | Horse Texture | |
`rack_saddle_name_blanket` | Saddle Rack Texture | |
`rack_saddle_5_name_blanket` | Blanket Rack (5X) Texture | |
**Saddle** | `name_saddle_icon` | Inventory Icon |
`name_saddle_legacy` | Horse Texture | |
`rack_saddle_name_saddle` | Saddle Rack Texture | |
`rack_horse_armor_name_saddle` | Armor Rack Texture | |
**Girth Strap** | `name_girth_strap_icon` | Inventory Icon |
`name_girth_strap_legacy` | Horse Texture | |
`rack_saddle_name_girth_strap` | Saddle Rack Texture | |
**Breast Collar** | `name_breast_collar_icon` | Inventory Icon |
`name_breast_collar_legacy` | Horse Texture | |
**Leg Wraps** | `name_leg_wraps_icon` | Inventory Icon |
`name_leg_wraps_legacy` | Horse Texture | |
`name_leg_wraps_hoof_legacy` | Horse Texture (hoof) | |
**Saddlebag** | `name_saddle_bag_icon` | Inventory Icon |
`name_saddle_bag_legacy` | Horse Texture | |
**Horse Armor** | `name_horse_armor_icon` | Inventory Icon |
`name_horse_armor_legacy` | Horse Texture | |
`name_horse_armor_wings_legacy` | Horse Texture **Optional (Default: Amethyst Tier)** | |
`rack_horse_armor_name_horse_armor` | Armor Rack Texture | |
**Halter** | `name_halter_icon` | Inventory Icon |
`name_halter_legacy` | Horse Texture | |
`rack_halter_lead_name_halter` | Lead Rack Texture | |
**Pasture Blanket** | `name_pasture_blanket_icon` | Inventory Icon **Optional (One or Both)** |
`name_pasture_blanket_armored_icon` | Inventory Icon **Optional (One or Both)** | |
`name_pasture_blanket_legacy` | Horse Texture **Optional (One or Both)** | |
`name_pasture_blanket_armored_legacy` | Horse Texture **Optional (One or Both)** | |
`rack_pasture_blanket_3_short_name` | Pasture Blanket Rack (3X) Texture | |
`rack_pasture_blanket_5_long_name` | Pasture Blanket Rack (5X) Texture |
**It is not recommended to modify packs from a Creator unless you intend to customize it and solve any issues.** ✅ You should follow this troubleshooting guide to identify your likely issue first. ✅ You should notify Creator's of potential problems with the **default pack** (might need a fix or update). **❌** You should NOT expect Creator's to troubleshoot an issue you might have caused by altering files!
**⮞ ISSUE \[2\]** - Check the community pack: → Pack is directly in `config > swem > community-packs` → Pack is a **folder** and not a zip file! **→** Pack has a valid **lowercase** name with **no spaces** ✅`artist_tackpack` **❌** `Artist: Tack Pack!` **→** Pack includes at least one `.json` and `.png` file in the **correct folder** 📁 jsons > 📁 tack > 📁 \[type\] > `JSON FILES HERE` 📁 textures > 📁 tack > 📁 \[type\] > `PNG FILES HERE` If this is **ALL** correct the issue is not the community pack structure. **Go back to Step \[3\] above.** **⮞ ISSUE \[3\]** - Identify an item that is missing in game - Check the **.json** file for the tack item → File is listed as a `JSON File` type → File is directly in `community-packs > artist_packname > jsons > tack > [type]` <- Correct folder for the tack type → File has a valid **lowercase** name with **no spaces** ✅`name_type` **❌** `Itemname - Type` → File information uses the correct template for the tack type → Folder contains **.json** files only - **no .pngs or any other file type** If this is correct, the most likely issue is formatting (invalid json). → Compare your **.json** to the template and note any missing `"` `,` or `{ }` or different indentation → If unsure, delete and repaste the .json file text from a valid template for the specific tack type → Reload the game and repeat **Step \[3\]** above. ** KNOWN ISSUE ** Opening or modifying a pack on a Mac creates a .DS\_store file. → This is usually invisible to Mac users and prevents the pack from working. [**Discord: Bug Report**](https://discord.com/channels/715626418893095012/1312075496640610325/1312075496640610325) If this is **ALL** correct or changes did not work, paste your **.json** file in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord **⮞ ISSUE \[4\]** - Identify an item with a missing or incorrect texture - Check the **.json** file for the coat → File uses the correct path: `"icon":` for inventory textures `(horse > legacy >) "type":` for horse textures ** Note: ** Specific items have more than one texture, such as bridles (bit = halter + bridle) and leg wraps (wraps + hoof) → File texture path has the **exact** name used by the coat texture **.png** file - Check the .png file for the coat → File is listed as a `PNG File` type → File is directly in `community-packs > artist_packname > textures > tack > [type]` → File has a valid **lowercase** name with **no spaces** ✅`name_type` **❌** `Item Name - Tack Type` → File uses the correct naming format (see **Files & Naming Format**) - `MULTIPLAYER SERVERS` → Client (player) has community pack(s) with the same name (ID) as those on the server. → Client (player) has **.png** files with the same names as those in the server pack. If you cannot check this due to permissions, you will need to contact server admins. **⮞ \[5\] OTHER OR NOTHING WORKED** - Create a post in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord → Describe your issue(s) and **what you have tried** → Upload your latest.log file to provide info that may help others assist you **DO NOT UPLOAD PAID/PRIVATE PACKS WITH TEXTURES FROM CREATORS WITHOUT CONSENT**This is a valid JSON File with no formatting errors! → Packs can still fail to register or work if the files and folders are incorrect or duplicated. → Packs can still fail to register if other files have format errors, or files have invalid or missing data.
[](https://wiki.swequestrian.com/uploads/images/gallery/2024-12/QYdimage.png)This is an invalid JSON where the `{` is missing after `"data":` making `"color":` invalid → You may not necessarily understand what it is telling you, but you can use this section to compare to examples. → If you cannot resolve your issue, sharing a screenshot of this output may assist helpers in tech help to find your issue.
It is recommended to provide a command list with Animation Packs, as they will not auto-fill in game.
This guide will not cover how to create animations, for information please read our \[RESOURCES\] on Discord. 1. Create your custom animation(s) in blockbench 2. Create an animation resource pack → Replace `assets > swem > animations > swem_horse.json` with a custom animation file → This must include all the existing animations **and** any new animations 3. Install the resource pack in the `resourcepack` folder 4. Use `/swem rrp anim**Credits:** Jenny
**HORSE TACK TEXTURES** 1. Download a copy of the latest SWEM .jar (mod file) 2. Unzip the .jar file to access the SWEM files 3. Download / Open Blockbench 4. File > Open Model → Open Horse Model: `assets > swem > geo > entity > horse > swem_horse` 5. View the blocks menu on the bottom right 6. Toggle all blocks to Off using the eye icon → This is to prevent accidental texturing of the wrong element → Each tack type renders specific blocks - ie painting neck for leg wraps will not show! 7. Toggle on only relevant elements for your chosen tack type → This might include multiple blocks - see chart below 8. ** TBC **Create a new texture that is 512 x 512 pixels (16x) → Alternatively, import a base texture to use as a template ** Note: ** These are found in `assets > swem > textures > entity > horse > [type]` 9. Switch to the paint tab and texture 10. Right click the completed texture in the texture menu > `save as` 11. Save the file as `name_type` or `name_type_descriptor` **✅** `midnight_blanket` `midnight_blanket_blue` → Using a descriptor is useful for multiple variant sets **✅** `blanket_blue` `blanket_red`Blockbench has a search function (magnifying glass) in the outliner (blocks) menu to search by name or keyword. | ||
**Tack Type** | **Group** | **Element(s)** |
Bridle (Western) | `Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleLeftBit` | WesternBridleLeftBit (5X) |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleLeftRein` | WesternBridleLeftRein | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleLeftRein1` | WesternBridleLeftRein1 | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleLeftRein2` | WesternBridleLeftRein2 | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleRightBit` | WesternBridleRightBit (5X) | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleRightRein` | WesternBridleRightRein | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleRightRein1` | WesternBridleRightRein1 | |
`Front > Neck > NeckJoint1 > Head > WesternBridle > WesternBridleRightRein2` | WesternBridleRightRein2 | |
** TBC: HEADPIECE ** | ||
Bridle (English) | ||
Bridle (Adv) | ||
Blanket | `Middle > BlanketMiddle` | Blanket Middle (2X) |
Saddle (Western) | `Middle > WesternSaddle` | WesternSaddle |
`Middle > WesternSaddle > WesternSaddleMiddle` | WesternSaddleMiddle (10X) | |
`Middle > WesternSaddle > WesternSaddleLeftSide` | WesternSaddleLeftSide (3X) | |
`Middle > WesternSaddle > WesternSaddleRightSide` | WesternSaddleRightSide (3X) | |
Saddle (English) | `Middle > EnglishSaddle > EnglishSaddleMiddle` | EnglishSaddleMiddle (3X) |
`Middle > EnglishSaddle > EnglishSaddleRightSide` | EnglishSaddleRightSide (4X) | |
`Middle > EnglishSaddle > EnglishSaddleLeftSide` | EnglishSaddleLeftSide (4X) | |
Saddle (Adv) | `Middle > AdventureSaddle` | AdventureSaddle |
`Middle > AdventureSaddle > AdventureSaddleMiddle` | AdventureSaddleMiddle (6X) | |
`Middle > AdventureSaddle > AdventureSaddleLeftSide` | AdventureSaddleLeftSide (3X) | |
`Middle > AdventureSaddle > AdventureSaddleRightSide` | AdventureSaddleRightSide (3X) | |
Girth Strap | `Middle > Belly > GirthStrapBelly` | GirthStrapBelly (2X) |
`Middle > GirthStrapMiddle` | GirthStrapMiddle (2X) | |
Breast Collar | `Front > BaseFront > BreastCollarBase` | BreastCollarBase (2X) |
`Front > BaseFront > BreastRight > BreastCollarBreastRight` | BreastCollarBreastRight | |
`Front > BaseFront > BreastLeft > BreastCollarBreastLeft` | BreastCollarBreastLeft | |
`Front > BaseFront > FrontLeft > BreastCollarFrontLeft` | BreastCollarFrontLeft (3X) | |
`Front > BaseFront > FrontRight > BreastCollarFrontRight` | BreastCollarFrontRight (3X) | |
`Middle > BreastCollarBelly` | BreastCollarBelly | |
`Middle > BreastCollarMiddle` | BreastCollarMiddle | |
Leg Wraps | Front > FrontLeft > FrontLeftLeg > .. > .. > LegWrapsFrontLeftHoof | LegWrapsFrontLeftHoof |
Front > FrontLeft > FrontLeftLeg > .. > .. > LegWrapsFrontLeft | LegWrapsFrontLeft | |
Front > FrontRight > FrontRightLeg > .. > .. > LegWrapsFrontRightHoof | LegWrapsFrontRightHoof | |
Front > FrontRight > FrontRightLeg > .. > .. > LegWrapsFrontRight | LegWrapsFrontRight | |
`Back > BackLeft > .. > .. > .. > .. > LegWrapsBackLeftHoof` | LegWrapsBackLeftHoof | |
`Back > BackLeft > Bone4 > KneeLeft > Bone6 > LegWrapsBackLeft` | LegWrapsBackLeft | |
`Back > BackRight > .. > .. > .. > .. > LegWrapsBackRightHoof` | LegWrapsBackRightHoof | |
`Back > BackRight > Bone7 > KneeRight > .. > LegWrapsBackRight` | LegWrapsBackRight | |
`Front > Neck > NeckJoint1 > Head > Skull > LegWrapsSkull` | LegWrapsSkull | |
`Front > . > . > . > Skull > BridgeOfNose > LegWrapsBridgeOfNose` | LegWrapsBridgeOfNose | |
Saddle Bag | `Back > Base > SaddleBag > SaddleBagLeft` | SaddleBagLeft |
`Back > Base > SaddleBag > SaddleBagRight` | SaddleBagRight | |
`Back > Base > BedRoll` | BedRoll (7X) | |
Horse Armor | `Front > FrontLeft > ArmorLeftShoulder` | ArmorLeftShoulder (4X) |
`Front > FrontRight > ArmorRightShoulder` | ArmorRightShoulder (4X) | |
`Front > Neck > NeckJoint1> MainNeck1 > ArmorNeck > ArmorNeck1` | ArmorNeck1 (3X) | |
`Front > Neck > NeckJoint1 > Head > ArmorHead > ArmorHead1` | ArmorHead1 (8X) | |
`Middle > ArmorCloth > ArmorClothLeft` | ArmorClothLeft | |
`Middle > ArmorCloth > ArmorClothRight` | ArmorClothRight | |
`Back > Base > ArmorButt > 10X` | ArmorButt (10X) | |
Wings | `Front > BaseFront > WingsScapular > LeftGROUP > WingsScapularLeft` | WingsScapularLeft |
`Front > BaseFront > WingsScapular > LeftGROUP > WingsMarginalLeft` | WingsMarginalLeft | |
`Front > BaseFront > WingsScapular > LeftGROUP > WingsMarginalLeft2` | WingsMarginalLeft2 | |
`Front > BaseFront > WingsScapular > LeftGROUP > WingsMarginalLeft2 > WingsAlulaLeft` | WingsAlulaLeft | |
`Front > BaseFront > WingsScapular > LeftGROUP > WingsMarginalLeft2 > WingsAlulaLeft > WingsFlightFeathersLeft` | WingsFlightFeathersLeft | |
`Front > BaseFront > WingsScapular > RightGROUP > WingsScapularRight` | WingsScapularRight | |
`Front > BaseFront > WingsScapular > RightGROUP > WingsMarginalRight` | WingsMarginalRight | |
`Front > BaseFront > WingsScapular > RightGROUP > WingsMarginalRight2` | WingsMarginalRight2 | |
`Front > BaseFront > WingsScapular > RightGROUP > WingsMarginalRight2 > WingsAlulaRight` | WingsAlulaRight | |
`Front > BaseFront > WingsScapular > RightGROUP > WingsMarginalRight2 > WingsAlulaRight > WingsFlightFeathersRight` | WingsFlightFeathersRight | |
Halter | `Front > Neck > NeckJoint1 > Head > Skull > HalterSkull` | HalterSkull |
`Front > Neck > NeckJoint1 > Head > Skull > BridgeOfNose > HalterBridgeOfNose` | HalterBridgeOfNose | |
`Front > Neck > NeckJoint1 > Head > Skull > Cheeks > HalterCheeks` | HalterCheeks | |
`Front > Neck > NeckJoint1 > Head > Mouth > HalterMouth` | HalterMouth | |
Pasture Blanket | `Front > FrontLeft > PBFrontLeft` | PBFrontLeft (4X) |
`Front > FrontRight > PBFrontRight` | PBFrontRight (4X) | |
`Middle > PBMiddle` | PBMiddle (5X) | |
`Back > Base > PBBack` | PBBack (6X) |
This feature is available in **1.20.1-1.5+** and will **NOT** be backported to any outdated versions.
#### Features Community packs add NEW custom coats in-game without overriding the default variants. - Supports simple breeding "color tags" - Supports lapis / redstone cycling (if enabled) - Supports summon command - Supports natural spawning **via compatible community datapacks** --- #### Important - Update Changes This update has made changes to coat NBT data, summon commands as well as some smaller (less gameplay significant) changes. Expand the drop-down to read more about specific changes and how that might impact you as a player or creator.**Feature** | **Changes** |
Summon | Minecraft `/summon` spawns white horses only (cannot randomize). ** NEW SWEM SUMMON COMMANDS** `/swem summon LEGACY swem:coat` Summon a default coat. **EX:** `swem:sweetboi` `/swem summon LEGACY pack_name:coat_artist` Summon a custom coat. **EX:** `kofi:hidalgo_arishant` `/swem summon random LEGACY` Summon a random coat |
Coat Data | Removed `Variant: #` NBT and changed to `Behaviors[6].Coat`
Data values for coat must set a value using ` *MC Commands are exempt from role keys (ie swem:mod) - which may be useful to servers.* **Identify a coat (ID)** `/data get entity @e[type=swem:swem_horse,sort=nearest,limit=1] Behaviors[6].Coat` **Change a coat** `/data modify entity @e[type=swem:swem_horse,limit=1,sort=nearest] Behaviors[6].Coat set value <"id:coat">` |
Model | Coats and commands must state a supported model - this will be expanded in future. `LEGACY` Default model and the only one currently implemented. |
This update has been modified to continue support for Ace's Datapack found [**HERE**](https://discord.com/channels/715626418893095012/840972393153691738/1022973584181841981) in our Discord.
⮞ **CAN CUSTOM COATS SUPPORT LAPIS / REDSTONE CYCLING?** Yes. This must be set to true for `lapis_cycling` in the coat json file, and `allowCoatCycling` in the [server config](https://wiki.swequestrian.com/books/swequestrian-mod/page/server-config) file. ⮞ **CAN CUSTOM COATS APPEAR FROM BREEDING DEFAULT +/- CUSTOM COATS?** Yes. This must be set to true for `obtainable_by_breeding` in the coat json file. You must set at least one `base_colors` tag - this will determine which color tags your horse can pass on if bred, as well as which foal color(s) can grow up into this coat. ⮞ **CAN I MAKE A CUSTOM COAT 'SECRET'?** Yes, but not in the same way as special default coats. You can set `lapis_cycling` and `obtainable_by_breeding` to **false** in the coat json file, which will prevent cycling and appearance by breeding or converting. **The coat will only appear if summoned via command.** If you have the right kind of knowledge, you could probably create a custom datapack or redstone system loop to check for and convert horses that meet 'secret coat criteria' (ie height and name), or other crafty ways to achieve this result.**It is not recommended to modify packs from a Creator unless you intend to customize it and solve any issues.** ✅ You should follow this troubleshooting guide to identify your likely issue first. ✅ You should notify Creator's of potential problems with the **default pack** (might need a fix or update). **❌** You should NOT expect Creator's to investigate issues you might have caused by altering their original files!
**⮞ ISSUE \[3\]** - Check the community pack: → Pack is directly in `config > swem > community-packs` → Pack is a **folder** and not a zip file! **→** Pack has a valid **lowercase** name with **no spaces** ✅`artist_kofi` **❌** `Artist Kofi Coats` **→** Pack includes at least one `.json` and `.png` file in the **correct folder** 📁 jsons > 📁 coats > `JSON FILES HERE` 📁 textures > 📁 coats > 📁 legacy > `PNG FILES HERE` If this is **ALL** correct the issue is not the community pack structure. **Go back to Step \[4\] above.** **⮞ ISSUE \[4\]** - Identify a coat that is missing in game - Check the **.json** file for the coat → File is listed as a `JSON File` type → File is directly in `community-packs > artist_packname > jsons > coats` → File has a valid **lowercase** name with **no spaces** ✅`coatname_artist` **❌** `Coat - Artist` → File texture path uses ✅ `"legacy": "legacy/coatname_artist.png"` **❌** `"legacy": "default:legacy/` If this is correct, the most likely issue is formatting (invalid json). → Compare your json to the template and note any missing `"` `,` or `{ }` or different indentation → If unsure, delete and rewrite the .json file using a blank template → Reload the game and repeat **Step \[4\]** above. If this is **ALL** correct or changes did not work, paste your **.json** file in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord **⮞ ISSUE \[5\]** - Identify a coat with a black (missing) texture - Check the **.json** file for the coat → File uses `legacy` model line (not any for future models) → File texture path uses ✅ `"legacy": "legacy/coatname_artist.png"` **❌** `"legacy": "default:legacy/` → File texture path has the **exact** name used by the coat texture **.png** file - Check the .png file for the coat → File is listed as a `PNG File` type → File is directly in `community-packs > artist_packname > textures > coats > legacy` → File has a valid **lowercase** name with **no spaces** ✅`coatname_artist` **❌** `Coat - Artist` - `MULTIPLAYER SERVERS` → Client (player) has community pack(s) with the same name (ID) as those on the server. → Client (player) has **.png** files with the same names as those in the server pack. If you cannot check this due to permissions, you will need to contact server admins. **⮞ \[6\] OTHER OR NOTHING WORKED** - Create a post in [Tech Help](https://discord.com/channels/715626418893095012/997404105704210432) in our Discord → Describe your issue(s) and **what you have tried** → Upload your latest.log file to provide info that may help others assist you ** DO NOT UPLOAD PAID/PRIVATE PACKS WITH TEXTURES FROM CREATORS WITHOUT CONSENT **This feature is available in **1.20.1-1.5+** and will **NOT** be backported to any outdated versions.
#### Features Community packs add NEW custom tack in-game without overriding the default variants. - Supports in-game purchase via tokens at an EQ Shop - Supports use on storage items such as tack racks (compatible items) - Supports buffs on armor items, including tier-specific perks and flight --- #### Important - Update Changes This update has not made any significant changes to default tack obtaining or use. Custom tack can be purchased via the **EQ Shop Block** using craftable **coins** . --- #### Frequently Asked Questions This section has drop-downs for FAQs and expanded information about Community Pack Tack. If your question is not answered here, check out [General Information.](https://wiki.swequestrian.com/books/swequestrian-mod/page/general-information-wip)This feature is available in **1.20.1-1.5+** and will **NOT** be backported to any outdated versions.
#### Features This update can support adding custom animations with or without overriding the default variants. It was not possible to add animations via community pack, **they require a resource pack.** - Animations must be triggered via the command `/swem rrp animCommunity Packs are available for SWEM **1.20.1-1.5+**. This feature will not be backported to older releases!
#### Update Changes - Important The community pack feature allows users to add NEW coats to the game instead of overriding existing coats (texture pack). To support this feature, the following changes were made:**Change** | **Information** |
Coats are named, not numbered | Coats cannot be altered via Variant NBT
**New Command:** `/swem set coat |
Coats appear white via /summon | Coats cannot be summoned via Minecraft's /summon. **New Command:** `/swem summon LEGACY swem:sweetboi` Default coats `/swem summon LEGACY pack_name:coat_artist` Custom coats `/swem summon random LEGACY` Random coat |
Coats apply to a specific model | Continue to use legacy (original) until new models are supported. |
Please read this information carefully and **backup your save** (recommended) **before** updating to 1.20.1-1.5.0+.
- Existing coats should be unaffected. - Texture packs (swem override) should be unaffected. - Datapack (fan-made) for [naturally spawning horses](https://discord.com/channels/715626418893095012/840972393153691738/1022973584181841981) is patched to work as normal! - Config will need to be copied (or edited again) in new folders to keep settings: → Common, Client and Recipe configs now generate in `config/swem` - **THIS UPDATE WILL PROBABLY BREAK ADD-ONS: PLEASE BE PATIENT AS CREATORS UPDATE THEIR MODS! →** Reported: Tre's Tackshop, Bagek's, Blossom EQ --- #### Frequently Asked Questions (Dropdown)If you have not altered configs already, you probably do not need to do so, these should all be DEFAULT settings.
--- #### Creating & Modifying Custom Community Packs To create a **new** community pack: **OPTION A: DOWNLOAD THE TEMPLATES (DISCORD)** - A downloadable (blank) Community Pack and JSON can be found [HERE](https://discord.com/channels/715626418893095012/748632231257440336/1266941242630209589). **OPTION B: CREATE A COMMUNITY PACK** 1. Inside `config > swem > community-packs`: → Create a folder with the pack name ✅ `kofi_coats` **❌** `Kofi Coats` 2. Inside `pack_name`: → Create a folder called `jsons` → Create a folder called `textures` 3. Inside `jsons`: → Create a folder called `coats` 4. Inside `textures`: → Create a folder called `coats` 5. Inside `textures > coats`: → Create a folder called `legacy` To add content to a new or existing community pack: 1. Create or download the coat **.png** file → Name it using `coat_artist_model` format ✅ `hidalgo_arishant_legacy` **❌** `Hidalgo Arishant-legacy` → Put this in `community-packs > pack_name > textures > coats > legacy` 2. Create or download a **.json** file with the coat credits and information → Name it the same as the coat .png! → Put this in `community-packs > pack_name > jsons > coats`📂 config | 📂swem | 📂community-packs | 📂pack\_1 | 📂jsons | 📂coats | 🗒️coat1\_artist.json | |
📂textures | 📂coats | 📂legacy | 🖼️coat1\_artist.png | ||||
📂pack\_2 | 📂jsons | 📂coats | 🗒️coat2\_artist.json | ||||
🗒️coat3\_artist.json | |||||||
📂textures | 📂coats | 📂legacy | 🖼️coat2\_artist.png | ||||
🖼️coat3\_artist.png | |||||||
Shown: The file structure for community packs, this example shows 2 packs (1 + 2) with 3 total coats. |
**File Type** | **Location** | **Description** |
🖼️ .png | `config > swem > community-packs > textures > coats > legacy` | Texture to be used for the custom coat. |
🗒️ .json | `config > swem > community-packs > jsons > coats` | Information on artist(s) and obtaining. |
**Credits** | The artist(s) to credit. This can be one, or multiple separated by a comma. |
**Inspiration** | The inspiration or reference, ie *"Secretariat"* or *"Bay Roan Sabino"* |
**Models** | The horse model it uses, this should use **legacy model (original)** until Destrier+ is added! |
**Lapis Cyclable** | Obtainable by cycling with lapis and redstone, if enabled. |
**Obtainable By Breeding** | Obtained by breeding, using color tags (below). |
**Base Colors** | Determines 'genetics' to pass on to foal, and selection of adult coats on growing up. |
Set tags you would expect to **get a coat from** (**IE:** black foal -> black horse) and **NOT** the genetics the horse might **pass on**. Color tags and breeding outcomes are very basic and realism (**IE:** bay = red + black will result in unrealistic breeding and coat selection outcomes such as chestnut foal -> bay horse). |
📂 TXP\_name | 📂 assets | 📂 swem | 📂 textures | 📂 entity | 📂 horse | 📂 coats | 🖼️ coat\_name.png |
🖼️ pack.png | 🖼️ coat\_name.png | ||||||
🗒️ pack.mcmeta | 📂 foal **(optional)** | ||||||
Shown: The file structure for texture packs overriding default horse +/- foal coats. |
**File Type** | **Description** | **Note** |
📂 TXP\_name | A folder with the name of your texture pack | |
🖼️ pack.png | PNG image for your pack - displayed in game. | This must remain named `pack.png` |
🗒️ pack.mcmeta | Info on your pack's credits, description and version(s) | This is a text-type document (ie notepad) |
🖼️ coat\_name.png | PNG for the coat to override. | This must be named as in swem files |
Coat names in SWEM files might not accurately align to in-game values. Example: `swem:sweetboi` = `13_m_sweetboi`
[](https://wiki.swequestrian.com/uploads/images/gallery/2024-07/image.png) **Shown:** Coat file names for all default SWEM coats in 1.20.1-1.5.0Avoid **editing** an agreement or expecting users to remain informed of any minor (or major) alterations.
Post your agreement where it can be **easily referenced** when browsing or downloading your content. → It is ideal to have a public reference (ie Kofi post) and provide it with files or included in descriptions. → It is not recommended to require access to an external source (ie Discord server) **unless you host files there!**
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 images you upload; nice if you do, but optional! → It should only be "required" that users **credit where appropriate** (inspiration or reference), and **not falsely claim.**
Avoid **prohibiting** inspiration or reference; **similarity is not proof of plagiarism!** → It is possible for users to have the same idea, share the same reference, or take respectful inspiration! → It should be expected that any work **clearly and** **directly** referenced or inspired by your creation is 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**! → It is your choice, but 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 **unsafe 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 agreement - `USE` → This creation `can/not` be used in content (images, videos) - credits are optional but appreciated. → This creation `can/not` be used privately in singleplayer or a small private group. → This creation `can/not` be used publicly in multiplayer. → This creation `can/not` be used in reasonable commercial services `with/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 EULA** - `DISTRIBUTION` → This creation `can/not` be reuploaded `with/without` consent `and/or` credits `and/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 etc - `ALTERATIONS` → This creation `can/not` be altered `with/without` consent and `with/without` credits for `public/private` use. ✅🚫 Texture ✅🚫 Information (json: name, description, color tags etc) ✅🚫 Other conditionsThis is not a complete list of version changes / fixes. It is a changelog of relevant wiki-related version information.
**MC Version** | **Release** | **Notes** |
Resource Packs enable you to modify certain assets of Minecraft or Mods, like SWEM.
#### Purpose You can use Resource Packs to: - Modify **default** horse coats - Modify entity animations - **1.20.1-1.5+** Add new animations - Modify default horse model - Modify item inventory or block textures --- #### Limitations Resource packs are an **override**, meaning the content a resource pack contains will **replace** the default asset. You cannot\* use Resource Packs to: - Add new coats\* - Add new entities or breeds (see section on model overrides) \* *There are some clever Resource Packs out there with entity variations, but this is not straightforward or simple!*Model Overrides are used at your own "risk" and support for issues should be sought via the **Pack** **Creator** not SWEM.
**How do they work?** - In simple terms, it works by adding extra blocks to the default model - If a coat artist leaves the blocks uncolored (invisible) you will see all / some of the default horse - If a coat artist colors the blocks in, you will see those additional blocks on the default horse `EXAMPLE` If a coat texture color in blocks added around the hoof, a horse would have "feathers" **Can I use more than one model?** - If you install multiple model override packs, only the **highest in load order will apply** - If you want models from different Creators, they would have to merge their packs **Can I use model overrides with a community pack or coat replacement resource pack?** - If the model does not modify (only add on to) the default model, custom coats should work fine - If not, this may 'break' default or custom coats `Example:` Horses with no mane or tail using some models - It might be rare to get a 'custom model coat' if you are mostly using ones designed for the default model **Can I use model overrides with an animation pack (ie Dressage animations)?** - **TBC** It is unlikely custom models will support all animation packs - If you load a model pack **above** an animation pack, it will override any animations they both share - If you load a model pack **below** an animation pack, it may not correctly animate the custom model **Can I use model overrides on a server?** - `SERVER` You may be able to install a model resource pack server-side - `CLIENT (PLAYER)` If you install a model override in multiplayer, only you will see it → Read the section about community packs + coat replacements above (may affect what you see in game) → **TBC** Server packs may override client side unless you can opt out of using it **RELEVANT INFORMATION (CREATORS)**Model overrides use copyrighted SW assets and must be **FREE USE ONLY** → You can accept **optional** donations → You can sell coat textures that require your add on, provided it is 100% your own work (no SW coat edits)
- You should not modify any of the core blocks involved in tack rendering - You should **add to** (not modify where possible) the model to avoid breaking default + custom coats - You will need to adjust the default animations for any additional blocks added - You should be able to (optional) add support for custom animations in animation packs → Consent may be required to include a modified animation from other Creators → **TBC** If add on models can support "new" custom animations via 1.20.1-1.5+ featuresThis is to **override one or more default coats** - to add **new** coats use a [Community Pack](https://wiki.swequestrian.com/books/swequestrian-mod/page/creators-corner-wip)!
This guide will not cover how to create a coat, for information please read our [resources](https://discord.com/channels/715626418893095012/748632231257440336/1117996750842630194) on Discord.📂 TXP\_name | 📂 assets | 📂 swem | 📂 textures | 📂 entity | 📂 horse | 📂 coats | 🖼️ coat\_name.png |
🖼️ pack.png | 🖼️ coat\_name.png | ||||||
🗒️ pack.mcmeta | 📂 foal **(optional)** | ||||||
Shown: The file structure for texture packs overriding default horse +/- foal coats. |
**File Type** | **Description** | **Note** |
📂 Pack Name | A folder with the name of your resource pack | |
🖼️ pack.png | PNG image for your pack - displayed in game. | This must remain named `pack.png` |
🗒️ pack.mcmeta | MCMETA file with your pack's description and version(s) | This must remain named `pack.mcmeta` |
🖼️ coat\_name.png | PNG for the coat to override. | This must be the name of a valid swem coat |
Coat names in files might not be identical to in-game names or values. **Example** `swem:sweetboi` = `13_m_sweetboi` → You must use the **file** names, a list of valid names can be found above
--- #### Custom Animation Overrides / Additions This guide will not cover how to create animations, for information please read our ** \[RESOURCES\] ** on Discord.📂 Pack Name | 📂 assets | 📂 swem | 📂 animations | 🗒️ swem\_horse.json |
🖼️ pack.png | 🗒️ swem\_horse\_foal.json | |||
🗒️ pack.mcmeta | ||||
Shown: The file structure for animation packs overriding default horse +/- foal coats. |
**File Type** | **Description** | **Note** |
📂 Pack Name | A folder with the name of your resource pack | |
🖼️ pack.png | PNG image for your pack - displayed in game. | This must remain named `pack.png` |
🗒️ pack.mcmeta | MCMETA file with your pack's description and version(s) | This must remain named `pack.mcmeta` |
🗒️ swem\_horse.json | JSON file with your new / modified animations | This must remain named `swem_horse.json` |