{"id":50280914,"url":"https://github.com/minecraft-gilde/farmwelt-plugin","last_synced_at":"2026-05-28T00:04:32.174Z","repository":{"id":354676234,"uuid":"1220678044","full_name":"minecraft-gilde/farmwelt-plugin","owner":"minecraft-gilde","description":"Das Farmwelt-Plugin der Minecraft Gilde","archived":false,"fork":false,"pushed_at":"2026-04-29T14:35:23.000Z","size":168,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-29T16:27:25.962Z","etag":null,"topics":["folia","folia-plugin","minecraft","minecraft-plugin","paper","paper-plugin"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/minecraft-gilde.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-25T07:22:37.000Z","updated_at":"2026-04-29T14:34:49.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/minecraft-gilde/farmwelt-plugin","commit_stats":null,"previous_names":["minecraft-gilde/farmwelt-plugin"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/minecraft-gilde/farmwelt-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Ffarmwelt-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Ffarmwelt-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Ffarmwelt-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Ffarmwelt-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/minecraft-gilde","download_url":"https://codeload.github.com/minecraft-gilde/farmwelt-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Ffarmwelt-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33588350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["folia","folia-plugin","minecraft","minecraft-plugin","paper","paper-plugin"],"created_at":"2026-05-28T00:04:31.300Z","updated_at":"2026-05-28T00:04:32.168Z","avatar_url":"https://github.com/minecraft-gilde.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Farmwelt\n\n[![CI](https://img.shields.io/github/actions/workflow/status/minecraft-gilde/farmwelt-plugin/build.yml?branch=main\u0026label=build)](https://github.com/minecraft-gilde/farmwelt-plugin/actions/workflows/build.yml)\n[![Release](https://img.shields.io/github/v/release/minecraft-gilde/farmwelt-plugin?label=release)](https://github.com/minecraft-gilde/farmwelt-plugin/releases)\n[![License](https://img.shields.io/github/license/minecraft-gilde/farmwelt-plugin)](LICENSE)\n![Java](https://img.shields.io/badge/Java-21-orange)\n![Paper](https://img.shields.io/badge/Paper-1.21.x-blue)\n![Folia](https://img.shields.io/badge/Folia-supported-brightgreen)\n[![Discord](https://img.shields.io/badge/Discord-Join-5865F2?logo=discord\u0026logoColor=white)](https://discord.minecraft-gilde.de)\n\nFarmwelt ist ein Paper/Folia-Plugin für Minecraft-Server. Es stellt einen zentralen `/farmwelt`-Befehl mit GUI bereit und kann Ressourcenabbau in normalen Welten erkennen, warnen und optional sichtbar blockieren.\n\nDas Plugin soll Spieler in Farmwelten lenken und Moderatoren entlasten. Es ist kein klassisches Anti-Grief-Plugin, ersetzt keine Claim-Protection und schützt keine Grundstücke. Der Ressourcenmonitor erkennt konfigurierten Ressourcenabbau in der Wildnis; Grundstücke/Claims bleiben bei aktivem GriefPrevention-Hook ausgenommen.\n\n## Hauptfunktionen\n\n- Zentrale `/farmwelt`-GUI mit konfigurierbaren Farmwelt-Einträgen.\n- Teleport über konfigurierbare Befehle, zum Beispiel BetterRTP.\n- Ressourcenmonitor für normale Welten.\n- Weltbezogene Ressourcenregeln für Overworld, Nether und End.\n- Claim-Ausnahme über GriefPrevention.\n- `audit`-Modus zum Beobachten ohne Spielerwarnung und ohne Blockieren.\n- `warn`-Modus mit Spielerwarnungen und Staff-Benachrichtigungen.\n- `enforce`-Modus mit sichtbarem Blockabbruch ab konfigurierter Schwelle.\n- Explosionsschutz im `enforce`-Modus: erkannte Ressourcen werden aus Explosionslisten entfernt.\n- Violation-Zähler mit Zeitfenster und Cooldowns.\n- `/farmwelt info`, `/farmwelt reload` und Debug-Befehle.\n- GitHub Action für den Gradle-Build.\n\n## Voraussetzungen\n\n- Paper/Folia-kompatibler Server.\n- Java 21.\n- Minecraft/Paper API 1.21.x, das Projekt baut aktuell gegen `paper-api:1.21.11-R0.1-SNAPSHOT`.\n- BetterRTP ist optional, aber für die Standard-Teleportbefehle empfohlen.\n- GriefPrevention ist optional, aber für Claim-Ausnahmen empfohlen.\n- EssentialsX ist keine Abhängigkeit.\n\nIn `paper-plugin.yml` sind BetterRTP und GriefPrevention als optionale Server-Abhängigkeiten eingetragen:\n\n- `BetterRTP`: `required: false`, `join-classpath: false`.\n- `GriefPrevention`: `required: false`, `join-classpath: true`.\n\nDas Plugin startet auch ohne BetterRTP. Dann schlagen aber die standardmäßig konfigurierten BetterRTP-Befehle fehl, bis andere Teleportbefehle konfiguriert werden.\n\n## Installation\n\n1. Plugin bauen oder eine fertige JAR verwenden.\n2. Die JAR aus `build/libs/` in den `plugins`-Ordner des Servers legen.\n3. Server starten.\n4. `plugins/Farmwelt/config.yml` prüfen.\n5. BetterRTP-Ziele und Welt-Namen prüfen.\n6. GriefPrevention-Hook prüfen, falls Claim-Ausnahmen genutzt werden.\n7. `/farmwelt info` ausführen.\n8. `/farmwelt` als Spieler testen.\n\n## Build\n\nLinux/macOS:\n\n```bash\n./gradlew build\n```\n\nWindows PowerShell:\n\n```bat\n.\\gradlew.bat build\n```\n\nDie Plugin-JAR wird unter `build/libs/` erzeugt. Der Archivname beginnt mit `Farmwelt`, aktuell zum Beispiel `Farmwelt-0.1.0-SNAPSHOT.jar`.\n\n## Release\n\nGitHub Actions baut automatisch eine Release-JAR, wenn ein GitHub Release veröffentlicht wird. Der Workflow `.github/workflows/release.yml` verwendet den Release-Tag als Plugin-Version und lädt die fertige JAR direkt als Asset in den GitHub Release hoch.\n\nDie vollständige Reihenfolge mit Befehlen steht in [docs/RELEASE.md](docs/RELEASE.md).\n\n## Befehle\n\n| Befehl | Zweck | Permission | Empfohlen für |\n| --- | --- | --- | --- |\n| `/farmwelt` | Öffnet die Farmwelt-GUI. | `farmwelt.use` | Spieler |\n| `/farmwelt info` | Zeigt Version, geladene Farmwelten, Monitor-Modus, Hook-Status und Jail-Modus. | `farmwelt.admin` | Admins |\n| `/farmwelt reload` | Lädt die Farmwelt-Konfiguration neu. | `farmwelt.admin` | Admins |\n| `/farmwelt debug claim` | Prüft den Claim-Provider und ob die aktuelle Spielerposition in einem Claim liegt. | `farmwelt.admin` | Admins/Technik |\n| `/farmwelt debug monitor` | Schaltet einen Debug-Modus um; danach kann ein Block per Rechtsklick geprüft werden. | `farmwelt.admin` | Admins/Technik |\n| `/farmwelt debug violations [spieler]` | Zeigt den aktuellen Violation-Status des eigenen oder eines online Spielers. | `farmwelt.admin` | Admins/Moderation |\n\n`/farmwelt info` und `/farmwelt reload` können auch aus der Konsole ausgeführt werden. Die Debug-Befehle sind Spielerbefehle, weil sie Positionen, Rechtsklicks oder online Spieler verwenden.\n\n## Permissions\n\n| Permission | Bedeutung | Empfohlene Gruppe | Hinweis |\n| --- | --- | --- | --- |\n| `farmwelt.use` | Darf `/farmwelt` verwenden. | Spieler | Standardmäßig `true`. |\n| `farmwelt.admin` | Darf Info-, Reload- und Debug-Befehle verwenden. | Admins/Technik | Standardmäßig `op`. |\n| `farmwelt.bypass` | Wird vom Ressourcenmonitor ignoriert. | Admins, ggf. Builder | Spieler mit Bypass erhalten keine Warnungen und werden nicht blockiert. |\n| `farmwelt.notify` | Erhält Staff-Benachrichtigungen. | Moderation/Admins | Wird für Audit- und Violation-Meldungen verwendet. |\n\nDie tatsächlich verwendeten Permission-Namen können für Bypass und Notify in der Config angepasst werden:\n\n```yaml\nresource-monitor:\n  bypass-permission: farmwelt.bypass\n  notify-permission: farmwelt.notify\n```\n\n## Betriebsmodi\n\nDer Modus wird über `resource-monitor.mode` gesetzt.\n\n### `audit`\n\n`audit` erkennt Ressourcenabbau, loggt Ereignisse und kann Staff informieren. Spieler werden nicht gewarnt und Blöcke werden nicht blockiert. Dieser Modus ist für die Einführung und Fehlersuche gedacht.\n\n### `warn`\n\n`warn` zählt Verstöße im konfigurierten Zeitfenster. Ab den Schwellen in `actions.warning` und `actions.notify-staff` werden Spieler gewarnt und Staff kann informiert werden. Blöcke werden nicht blockiert.\n\n### `enforce`\n\nGeschützte Item-Loots aus `protected-items`, zum Beispiel Elytren in End-City-Item-Frames, werden in `enforce` sofort blockiert, wenn `actions.cancel-break.enabled` aktiv ist.\n\n`enforce` zählt Verstöße, warnt Spieler und kann Ressourcenabbau ab der `cancel-break`-Schwelle abbrechen. Zusätzlich entfernt der Ressourcenmonitor erkannte Ressourcenblöcke aus Explosionslisten, wenn `actions.cancel-break.enabled` aktiv ist. Explosionen selbst werden dabei nicht komplett abgebrochen; nur die geschützten Ressourcen bleiben stehen. Es gibt keinen Kick. Eine Jail-Eskalation ist zwar als optionale Config-Stufe vorhanden, aber standardmäßig deaktiviert und sollte nicht ohne Tests aktiviert werden.\n\n## Weltregeln\n\nWeltregeln stehen unter `resource-monitor.world-rules`.\n\n```yaml\nresource-monitor:\n  world-rules:\n    world:\n      type: overworld\n      resources: []\n\n    world_nether:\n      type: nether\n      resources: []\n\n    world_the_end:\n      type: end\n      protected-items:\n        - ELYTRA\n      resources: []\n```\n\n- Overworld, Nether und End verwenden jeweils die Liste `resources`.\n- `protected-items` schützt Item-Loot aus Item Frames in überwachten Welten. Die Standardconfig nutzt das für Elytren im normalen End.\n- Es gibt keine Höhenprüfung: Ein Material in `resources` wird auf jeder Y-Höhe erkannt.\n- Nur Materialien in diesen Listen zählen als relevante Ressourcen.\n- Eine Welt muss in `monitored-worlds` stehen und darf nicht in `ignored-worlds` stehen.\n- Die Standardconfig nutzt bewusst breite Materiallisten für Minecraft/Paper 1.21.11, unter anderem Holz/Stämme, Erze, Amethyst, Sand/Gravel/Clay/Mud, Terracotta, Eis, Nether- und End-Ressourcen. Entferne Materialien, die in deiner Hauptwelt ausdrücklich erlaubt sein sollen.\n\n## Claims / GriefPrevention\n\nWenn `resource-monitor.claim-protection.enabled` aktiv ist, prüft das Plugin GriefPrevention per Hook. Entscheidend ist beim Ressourcenmonitor die Position des abgebauten Blocks, nicht die Spielerposition. Abbau innerhalb von Claims wird ignoriert, sofern `skip-inside-claims: true` gesetzt ist.\n\nDadurch bleiben Grundstücke nutzbar und der Monitor greift vor allem in der Wildnis. Die Debug-Ausgabe `/farmwelt debug claim` prüft dagegen die aktuelle Spielerposition, damit Admins den Hook schnell testen können.\n\nStandardauszug:\n\n```yaml\nresource-monitor:\n  claim-protection:\n    enabled: true\n    provider: GriefPrevention\n    skip-inside-claims: true\n    fail-mode: disable-monitor\n    ignore-height: true\n```\n\nBei `fail-mode: disable-monitor` bleibt der Ressourcenmonitor sicherheitshalber inaktiv, wenn der konfigurierte Claim-Provider fehlt oder nicht verfügbar ist.\n\n## BetterRTP-Integration\n\nFarmwelt implementiert keine eigene Random-Teleport-Logik. Ein Klick in der GUI führt den pro Farmwelt konfigurierten Befehl aus.\n\nStandardbeispiel:\n\n```yaml\nfarmworlds:\n  overworld:\n    enabled: true\n    display-name: \"Farmwelt\"\n    icon: GRASS_BLOCK\n    slot: 11\n    lore:\n      - \"Normale Farmwelt\"\n      - \"Für Holz, Sand, Erde und weitere Ressourcen\"\n    teleport:\n      type: command\n      sender: player\n      command: \"betterrtp:rtp world Farmwelt\"\n```\n\n`sender: player` führt den Befehl als Spieler aus. Dadurch können BetterRTP-Permissions, Cooldowns und Limits normal greifen. `sender: console` ist ebenfalls implementiert und führt den Befehl über die Konsole aus; dann müssen Platzhalter und Zielbefehl entsprechend sicher konfiguriert werden.\n\nUnterstützte Platzhalter im Teleportbefehl:\n\n- `{player}`\n- `{world}` und `{display-name}`: Anzeigename des GUI-Eintrags\n- `{id}`: Config-ID des Farmwelt-Eintrags\n\n## Beispiel-Config\n\nGekürztes Beispiel mit den wichtigsten Bereichen:\n\n```yaml\nfarmworlds:\n  overworld:\n    enabled: true\n    display-name: \"Farmwelt\"\n    icon: GRASS_BLOCK\n    slot: 11\n    lore:\n      - \"Normale Farmwelt\"\n    teleport:\n      type: command\n      sender: player\n      command: \"betterrtp:rtp world Farmwelt\"\n\nresource-monitor:\n  enabled: true\n  mode: audit\n  monitored-worlds:\n    - world\n    - world_nether\n    - world_the_end\n  ignored-worlds:\n    - farmwelt\n    - netherfarm\n    - endfarm\n  bypass-permission: farmwelt.bypass\n  notify-permission: farmwelt.notify\n  violation-window-seconds: 600\n\n  claim-protection:\n    enabled: true\n    provider: GriefPrevention\n    skip-inside-claims: true\n    fail-mode: disable-monitor\n    ignore-height: true\n\n  audit:\n    notify-staff: true\n    log-to-console: true\n    log-cooldown-seconds: 120\n\n  actions:\n    warning:\n      enabled: true\n      after-blocks: 5\n      cooldown-seconds: 60\n      message: \"\u0026eBitte nutze für Ressourcen die Farmwelten mit \u00266/farmwelt\u0026e.\"\n    notify-staff:\n      enabled: true\n      after-blocks: 10\n      cooldown-seconds: 60\n      message: \"\u0026e[Farmwelt] \u0026f{player} baut Ressourcen in \u00267{world} \u0026fab.\"\n    cancel-break:\n      enabled: true\n      after-blocks: 15\n      cooldown-seconds: 10\n      message: \"\u0026cDer Ressourcenabbau in dieser Welt ist jetzt blockiert.\"\n      actionbar-message: \"\u0026cRessourcenabbau blockiert! Nutze \u0026e/farmwelt\u0026c.\"\n    jail:\n      enabled: false\n      mode: notify-only\n\n  world-rules:\n    world:\n      type: overworld\n      resources:\n        - OAK_LOG\n        - PALE_OAK_LOG\n        - SAND\n        - GRAVEL\n        - MUD\n        - COAL_ORE\n        - DEEPSLATE_COAL_ORE\n        - IRON_ORE\n        - DIAMOND_ORE\n        - AMETHYST_CLUSTER\n    world_nether:\n      type: nether\n      resources:\n        - NETHERRACK\n        - NETHER_QUARTZ_ORE\n        - ANCIENT_DEBRIS\n        - GLOWSTONE\n    world_the_end:\n      type: end\n      protected-items:\n        - ELYTRA\n      resources:\n        - END_STONE\n        - CHORUS_PLANT\n```\n\n## Empfohlener Live-Betrieb\n\n1. Zuerst `mode: audit` verwenden.\n2. Logs und Staff-Meldungen prüfen.\n3. Weltregeln, Claim-Hook und Materiallisten korrigieren.\n4. Danach `mode: warn` aktivieren.\n5. Schwellenwerte und Cooldowns beobachten.\n6. Erst nach Tests `mode: enforce` aktivieren.\n7. Optionale harte Sanktionen wie `actions.jail` zunächst deaktiviert lassen.\n\n`enforce` sollte erst aktiviert werden, wenn die wichtigsten Welten, Claims und Ressourcenlisten auf dem Live-Setup getestet wurden.\n\n## Performance-Hinweise\n\n- Der Ressourcenmonitor reagiert auf Blockabbau-Events sowie im `enforce`-Modus auf Block- und Entity-Explosionen.\n- Bei Explosionen werden nur erkannte Ressourcenblöcke aus der Explosionsliste entfernt; andere Blöcke der Explosion bleiben unverändert.\n- Der Ressourcenmonitor bricht früh ab, wenn der Monitor deaktiviert ist, die Welt nicht überwacht wird oder der Spieler Bypass hat.\n- Die Materiallisten werden beim Laden der Config in Material-Sets vorbereitet und nicht pro Event aus der Config gelesen.\n- Die Claim-Prüfung erfolgt erst nach Welt-, Bypass- und Ressourcenprüfung.\n- Audit-, Warn-, Notify- und Blockiermeldungen haben konfigurierbare Cooldowns. Der Audit-Cooldown gilt pro Spieler, Material und Kategorie; wiederholte Treffer setzen die Ruhezeit zurück.\n- Debug-Befehle sind Diagnosewerkzeuge und sollten nur für Admins verfügbar sein.\n\n## Troubleshooting\n\n### `/farmwelt` öffnet keine GUI\n\n- Spieler hat `farmwelt.use` nicht.\n- `farmworlds` fehlt oder enthält keine aktivierten gültigen Einträge.\n- Ein Eintrag hat ein ungültiges Icon, einen ungültigen Slot oder keine Teleport-Konfiguration.\n- Es gibt Config-Fehler im Serverlog.\n\n### Klick teleportiert nicht\n\n- BetterRTP ist nicht installiert oder nicht aktiv.\n- Der konfigurierte Befehl ist falsch.\n- Der Spieler hat bei `sender: player` keine BetterRTP-Permission.\n- BetterRTP-Cooldown oder Limit blockiert den Teleport.\n- Der Weltname im BetterRTP-Befehl stimmt nicht.\n\n### Ressourcen werden nicht erkannt\n\n- `resource-monitor.enabled` ist `false`.\n- `mode` ist kein gültiger Wert (`audit`, `warn`, `enforce`).\n- Welt steht nicht in `monitored-worlds`.\n- Welt steht in `ignored-worlds`.\n- Es gibt keine passende `world-rules`-Regel für die Welt.\n- Block ist nicht in der passenden Ressourcenliste.\n- Spieler hat `farmwelt.bypass`.\n- Block liegt in einem Claim und Claim-Ausnahmen sind aktiv.\n- GriefPrevention fehlt und `fail-mode: disable-monitor` deaktiviert den Monitor.\n\n### Ressourcen werden in Claims erkannt\n\n- GriefPrevention ist nicht installiert oder nicht aktiv.\n- `claim-protection.enabled` ist `false`.\n- `skip-inside-claims` ist `false`.\n- `provider` ist falsch geschrieben.\n- Der Hook ist laut `/farmwelt info` nicht aktiv.\n\n### Enforce blockiert nicht\n\n- `resource-monitor.mode` ist nicht `enforce`.\n- Die `cancel-break`-Schwelle wurde noch nicht erreicht.\n- `actions.cancel-break.enabled` ist `false`.\n- Spieler hat Bypass.\n- Der Block wird nicht als Ressource erkannt.\n- Der Block liegt in einem Claim.\n\n### Explosionen zerstören Ressourcen\n\n- `resource-monitor.mode` ist nicht `enforce`.\n- `actions.cancel-break.enabled` ist `false`.\n- Welt steht nicht in `monitored-worlds` oder steht in `ignored-worlds`.\n- Der Block wird nicht als Ressource erkannt.\n- Block liegt in einem Claim und Claim-Ausnahmen sind aktiv.\n- Ein anderes Plugin verändert die Explosion nach Farmwelt erneut.\n\n## Entwicklungshinweise\n\n- Java/Gradle-Projekt mit Java 21 Toolchain.\n- Hauptpackage: `de.minecraftgilde.farmwelt`.\n- Hauptklasse: `FarmweltPlugin`.\n- Build: `./gradlew build` bzw. `.\\gradlew.bat build`.\n- CI: `.github/workflows/build.yml` führt den Gradle-Build mit Temurin Java 21 aus.\n- Release: `.github/workflows/release.yml` baut bei veröffentlichten GitHub Releases eine JAR und lädt sie als Release-Asset hoch.\n- Wichtige Bereiche:\n  - `command/`: `/farmwelt` und Subcommands.\n  - `gui/`: Farmwelt-GUI.\n  - `listener/`: GUI-Klicks und Ressourcenmonitor.\n  - `service/`: Teleport, Claims, Ressourcen-Erkennung, Violations, Nachrichten, Jail-Aktion.\n  - `config/`: Config-Laden und vorbereitete Regeln.\n- Falls Code-Kommentare ergänzt werden, sollen sie auf Deutsch sein.\n\nWeitere operative Details stehen in [docs/ADMIN_GUIDE.md](docs/ADMIN_GUIDE.md). Der technische Aufbau ist in [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) dokumentiert.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminecraft-gilde%2Ffarmwelt-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fminecraft-gilde%2Ffarmwelt-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminecraft-gilde%2Ffarmwelt-plugin/lists"}