{"id":14969550,"url":"https://github.com/jitseb/npclib","last_synced_at":"2025-04-09T12:08:00.413Z","repository":{"id":48587237,"uuid":"129355717","full_name":"JitseB/NPCLib","owner":"JitseB","description":"(Minecraft) NPCLib – Basic non-player character library.","archived":false,"fork":false,"pushed_at":"2023-07-16T08:05:57.000Z","size":643,"stargazers_count":196,"open_issues_count":25,"forks_count":49,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-09T12:07:48.002Z","etag":null,"topics":["library","minecraft","npc","spigot"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JitseB.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2018-04-13T06:07:35.000Z","updated_at":"2025-02-01T04:35:17.000Z","dependencies_parsed_at":"2024-09-23T05:02:04.839Z","dependency_job_id":"b3a313d0-03ac-4106-89e4-ec442854ba1f","html_url":"https://github.com/JitseB/NPCLib","commit_stats":{"total_commits":265,"total_committers":18,"mean_commits":"14.722222222222221","dds":"0.24905660377358485","last_synced_commit":"dc03141353d0ed28aec3458c2872134162a5f297"},"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JitseB%2FNPCLib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JitseB%2FNPCLib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JitseB%2FNPCLib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JitseB%2FNPCLib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JitseB","download_url":"https://codeload.github.com/JitseB/NPCLib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248036067,"owners_count":21037092,"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":["library","minecraft","npc","spigot"],"created_at":"2024-09-24T13:42:01.797Z","updated_at":"2025-04-09T12:08:00.397Z","avatar_url":"https://github.com/JitseB.png","language":"Java","funding_links":["https://paypal.me/jitseboonstra"],"categories":[],"sub_categories":[],"readme":"![Banner](https://i.imgur.com/WL6QeUA.png)\nNPCLib – Basic non-player character library.\u003cbr\u003e\n[![Versions](https://img.shields.io/badge/MC-1.8.8%20--%201.16.5-blue.svg)](https://github.com/JitseB/NPCLib/releases)\n[![Resource](https://img.shields.io/badge/SpigotMC-Resource-orange.svg)](https://www.spigotmc.org/resources/npclib.55884/)\n=\n\nThis is an API made specifically for spigot servers (Minecraft). Current supported versions: **1.8.8 - 1.16.5**. Lightweight replacement for Citizens. NPCLib only uses packets instead of registering the entity in the actual Minecraft server.\n\n### Preview (click to play video)\n[![YouTube Video](http://img.youtube.com/vi/LqwdqIxPIvE/0.jpg)](http://www.youtube.com/watch?v=LqwdqIxPIvE \"NPCLib – Basic non-player character library (Minecraft).\")\n\n## Donate\n\n[![PayPal](https://cdn.rawgit.com/twolfson/paypal-github-button/1.0.0/dist/button.svg)](https://paypal.me/jitseboonstra)\n\nAlternatively, you can help the project by starring the repository or telling others about NPCLib. :smile:\n\n## Developers\n\n### Usage\n\nThere are multiple ways you can make use of NPCLib.\n\n1. The first option is to shade `npclib-plugin.jar` in to your plugin.\n2. The second option is to put `npclib-plugin.jar` under your `plugins` folder. By doing this, you no longer need to shade the API JAR. Though, do not forget to add `NPCLibPlugin` as a dependency in your `plugin.yml`!\n3. The third option (and the one I recommend most) is to shade the library using Maven. I recently added NPCLib to the OSSRH (OSS Repository Hosting) which allows you to easily import NPCLib into your project.\n\n#### Maven repository\n```xml\n\u003crepositories\u003e\n    \u003crepository\u003e\n        \u003cid\u003eossrh\u003c/id\u003e\n        \u003curl\u003ehttps://oss.sonatype.org/content/groups/public/\u003c/url\u003e\n    \u003c/repository\u003e\n\u003c/repositories\u003e\n```\n\n#### Maven dependency\n\nIf you have NPCLib under your `plugins` folder, you may use the following:\n```xml\n\u003cdependencies\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003enet.jitse\u003c/groupId\u003e\n        \u003cartifactId\u003enpclib-api\u003c/artifactId\u003e\n        \u003cversion\u003e2.11.1-SNAPSHOT\u003c/version\u003e\n        \u003cscope\u003ecompile\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\n#### Gradle\n```gradle\n    compileOnly 'net.jitse:npclib-api:2.11.1-SNAPSHOT'\n ```\n\n\nIf you do not want to have NPCLib in your `plugins` folder, you need to use the `npclib-plugin` artifact and [shade it](https://maven.apache.org/plugins/maven-shade-plugin/) accordingly.\n\nAlways make sure to use the latest stable release. [Click here](https://github.com/JitseB/NPCLib/releases/latest) to view the latest release.\n\n#### Repacking the library\nTo make sure the classes won't be twice at the same place. I recommend repacking the library into your package. (Otherwise [issue #79](https://github.com/MinecraftLibraries/NPCLib/issues/79) might occur.) You can do that as follow:\n```xml\n\u003cbuild\u003e\n  \u003cplugins\u003e\n    \u003cplugin\u003e\n      \u003cgroupId\u003eorg.apache.maven.plugins\u003c/groupId\u003e\n      \u003cartifactId\u003emaven-shade-plugin\u003c/artifactId\u003e\n      \u003cversion\u003e3.1.0\u003c/version\u003e\n      \u003c!-- Do not include the \u003cconfiguration\u003e...\u003c/configuration\u003e part if you are using Sponge! --\u003e\n      \u003cconfiguration\u003e\n        \u003crelocations\u003e\n          \u003crelocation\u003e\n            \u003cpattern\u003enet.jitse.npclib\u003c/pattern\u003e\n            \u003c!-- Replace this with your package! --\u003e\n            \u003cshadedPattern\u003eyour.package\u003c/shadedPattern\u003e\n          \u003c/relocation\u003e\n        \u003c/relocations\u003e\n      \u003c/configuration\u003e\n      \u003cexecutions\u003e\n        \u003cexecution\u003e\n          \u003cphase\u003epackage\u003c/phase\u003e\n          \u003cgoals\u003e\n            \u003cgoal\u003eshade\u003c/goal\u003e\n          \u003c/goals\u003e\n        \u003c/execution\u003e\n      \u003c/executions\u003e\n    \u003c/plugin\u003e\n  \u003c/plugins\u003e\n\u003c/build\u003e\n```\n#### Tutorial\n**[Click here](https://github.com/JitseB/NPCLib/blob/master/DOCUMENTATION.md) for an elaborate explanation on how to use NPCLib in your next project.**\n\n### Versioning\nFor NPCLib I use the follow versioning system:\n* 1.x.x: Where the 1 indicates the major version of the library. When this number changes, it's highly likely there're big API changes.\n* x.1.x: Where the 1 indicates the minor version of the library. When this number changes, a feature is added or a high priority bug is fixed.\n* x.x.1: Where the 1 indicates another minor version of the library. When this number changes, a small bug has been fixed.\n\n### Building your own version\n\n1. [Download](https://github.com/JitseB/NPCLib/archive/master.zip) or clone this repository.\n2. You can build the project using `mvn clean install`.\n\nThe API JAR will be under `/api/target/` and the plugin JAR (which includes all necessary NMS code) will be under `/plugins/target/`.\n\n## License\n\nNPCLib is licensed under the [MIT license](https://github.com/JitseB/NPCLib/blob/master/LICENSE.md).\nDevelopers are free to use NPCLib for both private and commercial use. However, it would still be nice to acknowledge me.\n\n## Acknowledgement\n\nI thank all those who have [contributed](https://github.com/JitseB/NPCLib/graphs/contributors) to NPCLib over the course of its development.\n\nPlease view other credits [here](https://github.com/JitseB/NPCLib/blob/master/CREDITS.md).\n\n## Copyright\n\nCopyright (c) Jitse Boonstra 2018 All rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjitseb%2Fnpclib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjitseb%2Fnpclib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjitseb%2Fnpclib/lists"}