{"id":15104542,"url":"https://github.com/httpedor/attributesetter","last_synced_at":"2025-10-23T00:30:41.068Z","repository":{"id":248439351,"uuid":"828672226","full_name":"httpedor/AttributeSetter","owner":"httpedor","description":"Minecraft mod that let's you define entity and item attributes through datapacks","archived":false,"fork":false,"pushed_at":"2024-12-06T17:22:50.000Z","size":143,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"fabric-1.20.1","last_synced_at":"2025-01-30T16:40:49.063Z","etag":null,"topics":["fabric","forge","forge-mod","java","minecraft","minecraft-mod","modding"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/httpedor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-14T21:14:51.000Z","updated_at":"2024-12-06T17:22:53.000Z","dependencies_parsed_at":"2024-10-24T05:15:00.727Z","dependency_job_id":"cebbe15a-b7c5-4c71-8300-eb98bae6b9e8","html_url":"https://github.com/httpedor/AttributeSetter","commit_stats":{"total_commits":12,"total_committers":2,"mean_commits":6.0,"dds":0.08333333333333337,"last_synced_commit":"aa5c0b55a325661848cdd7f1a80ccaf26f067159"},"previous_names":["httpedor/customentityattributes","httpedor/attributesetter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/httpedor%2FAttributeSetter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/httpedor%2FAttributeSetter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/httpedor%2FAttributeSetter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/httpedor%2FAttributeSetter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/httpedor","download_url":"https://codeload.github.com/httpedor/AttributeSetter/tar.gz/refs/heads/fabric-1.20.1","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237754152,"owners_count":19360654,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fabric","forge","forge-mod","java","minecraft","minecraft-mod","modding"],"created_at":"2024-09-25T20:01:34.698Z","updated_at":"2025-10-23T00:30:41.059Z","avatar_url":"https://github.com/httpedor.png","language":"Java","readme":"# AttributeSetter\n\nAttributeSetter Is a simple lightweight mod that can change the default attributes of any living entity through datapacks, inspired by [Jackiecrazy's Attributizer](https://github.com/Jackiecrazy/attributizer)\n\n\n# How To Use\nIf you have any questions, you can visit the [Discord](https://discord.gg/fNp78qTqW7)\n## Entities\nInside your datapack namespace folder, create a `attributesetter\\entity` folder, and inside it, you can put as many json files as you want, with this format:\n```json5\n{\n  \"minecraft:creeper\": [\n    {\n      \"attribute\": \"minecraft:generic.max_health\",\n      \"uuid\": \"0e1c07ef-d456-4567-b748-96b6f84b409e\", //optional\n      \"value\": 5,\n      \"operation\": \"BASE\" // optional, default operation is BASE\n    },\n    {\n      \"attribute\": \"minecraft:generic.follow_range\",\n      \"value\": 10,\n      \"operation\": \"ADDITION\"\n    }\n  ],\n  \"#minecraft:raiders\": [\n    {\n      \"attribute\": \"minecraft:generic.max_health\",\n      \"value\": 8,\n      \"operation\": \"ADDITION\"\n    }\n  ],\n  \"anymob\": [ //This expands to \"example:anymob\" because of the filename\n    {\n      \"attribute\": \"projectile_damage:generic\",\n      \"value\": 10,\n      //default operation is BASE\n    }\n  ]\n}\n```\nThis file should be at `data/example/attributesetter/entity/example.json`\n\nIn the example above, all creepers will have 5 health, and +10 follow range. All entities tagged as raiders will have +8 health. The mob \"example:anymob\" will have 10 projectile damage.\n### Object Key\nWhich entity ID will be changed. If the first character is a # the key is treated as a tag. If no namespace is provided, it uses the filename. For example, if I'm in file \"alexsmobs.json\", and I'm editing entity \"void_worm\", instead of typing \"alexsmobs:voidworm\", I can just type \"voidworm\"\n\n### Attribute\nWhich attribute should be changed, supports modded attributes.\n\n### Operation\nCan be `ADDITION`, `MULTIPLY_BASE`, `MULTIPLY_TOTAL`, and `BASE`. The first three are explained in the [MC Wiki](https://minecraft.fandom.com/wiki/Attribute#Operations), and BASE means it will override the default base value for that attribute. Default is BASE\n\n## Items\nInside your datapack namespace folder, create a `attributesetter\\item` folder, and inside it you can put as many json files as you want, with this format:\n\n```json5\n{\n  \"minecraft:stick\": [\n    {\n      \"attribute\": \"minecraft:generic.attack_damage\",\n      \"uuid\": \"0e1c07ef-d456-4567-b748-96b6f84b409e\", //optional, but you should generate one if you are adding more than one modifier\n      \"value\": 5,\n      \"operation\": \"ADDITION\", //Optional, default value is ADDITION\n      \"slot\": \"mainhand\" //Optional, default value is the appropriate slot if it's an armor, or mainhand if it's not. Supports CuriosAPI(not trinkets)\n    },\n    {\n      \"attribute\": \"minecraft:generic.max_health\",\n      \"value\": 1,\n      \"operation\": \"MULTIPLY_TOTAL\",\n      \"slot\": \"offhand\"\n    }\n  ],\n  \"#c:swords\": [\n    {\n      \"attribute\": \"minecraft:generic.max_health\",\n      \"value\": 8,\n      \"operation\": \"ADDITION\"\n    }\n  ],\n  \"minecraft:diamond_chestplate\": [\n    {\n      \"attribute\": \"minecraft:generic.max_health\",\n      \"value\": 10\n      //Don't need the 'slot', it recognizes the item is equipable only in the chestplate slot and assigns the correct slot\n      //If you want to, you can still override the slot\n    }\n  ],\n  \"somemod:necklace\": [\n    {\n      \"attribute\": \"minecraft:generic.attack_damage\",\n      \"value\": 0.5,\n      \"operation\": \"MULTIPLY_BASE\",\n      \"slot\": \"necklace\" //Curios slot\n    }\n  ]\n}\n```\nThis file should be at `data/example/attributesetter/item/example.json`\n\nIn the example above, all swords have +8 health, and all sticks will deal +5 damage if in the main hand, and 2x health if in the offhand.\n### Object Key\nWhich item ID will be changed. If the first character is a # the key is treated as a tag. If no namespace is provided, it uses the filename. For example, if I'm in file \"alexsmobs.json\", and I'm editing item \"emu_leggings\", instead of typing \"alexsmobs:emu_leggings\", I can just type \"emu_leggings\"\n\n### UUID\nThis is how minecraft knows which item has which modifier. ~~If you only have one modifier in the item you can ignore this, but if you have more than one, you should generate a UUID for each one. You can use [this site](https://www.uuidgenerator.net/) to generate one. BASE operation doesn't need a UUID.~~ This is no longer needed, you can still specify UUIDs, but they are optional.\n\n### Attribute\nWhich attribute should be changed, supports modded attributes.\n\n### Operation\nCan be `ADDITION`, `MULTIPLY_BASE`, `MULTIPLY_TOTAL` and `BASE`. They are all in the [MC Wiki](https://minecraft.fandom.com/wiki/Attribute#Operations) except `BASE`, that removes all other modifiers for that attribute and sets the value to the one in the json file.\n\n### Slot\nCan be mainhand, offhand, head, chest, legs, feet, or any Curios slot. Default value is mainhand, if the item's class extends ArmorItem, the default value is based on the armor slot. This means that for most armors, you don't have to specify the slot. You still have to specify the Curios slot.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhttpedor%2Fattributesetter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhttpedor%2Fattributesetter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhttpedor%2Fattributesetter/lists"}