All Projects → JitseB → NPCLib

JitseB / NPCLib

Licence: MIT license
(Minecraft) NPCLib – Basic non-player character library.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to NPCLib

CompactNPCLib
Library to create NPCs
Stars: ✭ 22 (-87.98%)
Mutual labels:  spigot, npc
MinecraftManhunt
Minecraft Bukkit plugin to run Manhunt minigames, with Discord music integration
Stars: ✭ 20 (-89.07%)
Mutual labels:  spigot
chorus
📝 The first editor for Spigot configurations.
Stars: ✭ 133 (-27.32%)
Mutual labels:  spigot
RealIP
The Spigot, Bungee and Velocity plugin that parses client IP addresses passed from the TCPShield network.
Stars: ✭ 121 (-33.88%)
Mutual labels:  spigot
DiscordMC
A Discord <-> Minecraft Chat Gateway for Spigot
Stars: ✭ 29 (-84.15%)
Mutual labels:  spigot
triumph-gui
Simple lib to create inventory GUIs for Bukkit platforms.
Stars: ✭ 196 (+7.1%)
Mutual labels:  spigot
WheelCore
轮芯——为IndustrialWorld等插件设计的一个前置插件
Stars: ✭ 24 (-86.89%)
Mutual labels:  spigot
Xakkit
Server Software for Minecraft
Stars: ✭ 27 (-85.25%)
Mutual labels:  spigot
Staff-Chat
A staff-chat plugin that hooks into DiscordSRV
Stars: ✭ 25 (-86.34%)
Mutual labels:  spigot
WorldBorderAPI
A world border api that allows it to define a world border per player
Stars: ✭ 102 (-44.26%)
Mutual labels:  spigot
MinetopiaVehicles
A realistic vehicle plugin for your Minecraft server!
Stars: ✭ 52 (-71.58%)
Mutual labels:  spigot
AreaShop
A Bukkit/Spigot (Minecraft server) plugin that facilitates renting and buying WorldGuard regions
Stars: ✭ 55 (-69.95%)
Mutual labels:  spigot
StructureBlockLib
StructureBlockLib is a bukkit implementation for handling structures on spigot server.
Stars: ✭ 46 (-74.86%)
Mutual labels:  spigot
Osmium
Abstraction layer for Bukkit, Sponge and BungeeCord that allows for development on all platforms simultaneously.
Stars: ✭ 34 (-81.42%)
Mutual labels:  spigot
Bukkit Coding Tutorial
This is the repository for my Bukkit Coding series
Stars: ✭ 44 (-75.96%)
Mutual labels:  spigot
Origami
Bukkit/Spigot/Paper based Minecraft server used by Minebench.de | Looking for an 1.17 version? If so most patches are PRd into Paper now, Origami 1.17 will continue once patches that Paper wont accept are necessary.
Stars: ✭ 29 (-84.15%)
Mutual labels:  spigot
Depenizen
Addon to Denizen that provides script support for other major plugins.
Stars: ✭ 42 (-77.05%)
Mutual labels:  spigot
Parkour
The ultimate Parkour plugin.
Stars: ✭ 59 (-67.76%)
Mutual labels:  spigot
slack-emoji-upload
Slack emoji uploader, CLI. single binary, no dependencies. linux, osx, windows.
Stars: ✭ 28 (-84.7%)
Mutual labels:  npc
WorldGuardExtraFlagsPlugin
Extension for the WorldGuard plugin.
Stars: ✭ 47 (-74.32%)
Mutual labels:  spigot

Banner NPCLib – Basic non-player character library.
Release Build Status Versions Resource

This is an API made specifically for spigot servers (Minecraft). Current supported versions: 1.8.8 - latest. Lightweight replacement for Citizens. NPCLib only uses packets instead of registering the entity in the actual Minecraft server.

Preview (click to play video)

YouTube Video

Donate

PayPal

Alternatively, you can help the project by starring the repository or telling others about NPCLib. 😄

Developers

Usage

There are multiple ways you can make use of NPCLib.

  1. The first option is to shade npclib-plugin.jar in to your plugin.
  2. 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 NPCLib as a dependency in your plugin.yml!
  3. 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.

Maven repository

<repositories>
    <repository>
        <id>ossrh</id>
        <url>https://oss.sonatype.org/content/groups/public/</url>
    </repository>
</repositories>

Maven dependency

If you have NPCLib under your plugins folder, you may use the following:

<dependencies>
    <dependency>
        <groupId>net.jitse</groupId>
        <artifactId>npclib-api</artifactId>
        <version>2.11.1-SNAPSHOT</version>
        <scope>compile</scope>
    </dependency>
</dependencies>

If you do not want to have NPCLib in your plugins folder, you need to use the npclib-plugin artifact and shade it accordingly.

Always make sure to use the latest stable release. Click here to view the latest release.

Repacking the library

To make sure the classes won't be twice at the same place. I recommend repacking the library into your package. (Otherwise issue #79 might occur.) You can do that as follow:

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-shade-plugin</artifactId>
      <version>3.1.0</version>
      <!-- Do not include the <configuration>...</configuration> part if you are using Sponge! -->
      <configuration>
        <relocations>
          <relocation>
            <pattern>net.jitse.npclib</pattern>
            <!-- Replace this with your package! -->
            <shadedPattern>your.package</shadedPattern>
          </relocation>
        </relocations>
      </configuration>
      <executions>
        <execution>
          <phase>package</phase>
          <goals>
            <goal>shade</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Tutorial

Click here for an elaborate explanation on how to use NPCLib in your next project.

Versioning

For NPCLib I use the follow versioning system:

  • 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.
  • 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.
  • x.x.1: Where the 1 indicates another minor version of the library. When this number changes, a small bug has been fixed.

Building your own version

  1. Download or clone this repository.
  2. You can build the project using mvn clean install.

The API JAR will be under /api/target/ and the plugin JAR (which includes all necessary NMS code) will be under /plugins/target/.

License

NPCLib is licensed under the MIT license. Developers are free to use NPCLib for both private and commercial use. However, it would still be nice to acknowledge me.

Acknowledgement

I thank all those who have contributed to NPCLib over the course of its development.

Please view other credits here.

Copyright

Copyright (c) Jitse Boonstra 2018 All rights reserved.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].