Skip to content

Dani-error/velar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fallback logo image

Library ported from and based of @juliarn/npc-lib to Kotlin.


Features

  • Bukkit & Forks (including Folia) supported via ProtocolLib or PacketEvents
  • Skin (Static and Dynamic loading)
  • Attributes (Status, Pose, Skin Layers)
  • Equipment (Main & Off-Hand, Armor)
  • Interaction (Interact & Attack)
  • Action Controller (Automatic Looking at Player, Player Imitation & Spawning etc.)
  • Kotlin DSL & Type-safe

Usage

Gradle (Kotlin DSL)
repositories {
    mavenCentral()
}

dependencies {
    implementation("io.github.dani-error.velar:<module>:1.1.0")
}

Replace <module> with one of the modules listed below.

Maven
<dependency>
  <groupId>io.github.dani-error.velar</groupId>
  <artifactId>MODULE</artifactId>
  <version>1.1.0</version>
</dependency>

Replace MODULE with one of the modules listed below.

Gradle (Groovy DSL)
repositories {
    mavenCentral()
}

dependencies {
    implementation 'io.github.dani-error.velar:<module>:1.1.0'
}

Replace <module> with one of the modules listed below.


Additional Repositories

You may need to add the following if you rely on transitive dependencies:

  • https://repo.papermc.io/repository/maven-public/ (PaperLib)
  • https://repository.derklaro.dev/releases/ (ProtocolLib via Derklaro’s repo; can also use JitPack)
  • https://repo.codemc.io/repository/maven-releases/ (PacketEvents)
  • https://s01.oss.sonatype.org/content/repositories/snapshots/ (for snapshot-only dependencies)
Shading

To avoid conflicts when multiple plugins ship the same dependencies, shade/relocate these packages:

  • io.papermc.lib
  • io.leangen.geantyref
  • io.github.retrooper
  • com.github.retrooper
  • dev.dani.velar

Modules

Module Name Artifact ID Description
API api Core Velar API (no platform-specific code).
Common common Abstract API implementations for building new platforms.
Bukkit bukkit Full Bukkit (and forks) implementation—includes API & Common.

All of them published in maven central.


Documentation

Full API reference and usage examples are available on the docs site.

Contributing

Contributions are welcome! To get started:

  1. Fork this repository.
  2. Create a feature branch:
    git checkout -b feature/<your-feature>
  3. Make your changes in Kotlin (follow existing style).
  4. Commit and push to your fork, then open a Pull Request against main.

Please include a short description of your changes. For larger features, open an issue first to discuss.


License

This project is MIT-licensed. See LICENSE for details.
(The original @juliarn/npc-lib is also MIT-licensed, and this port preserves that license.)

About

🤖 Asynchronous, high-performance Minecraft NPC library for 1.8-1.21 servers built on Kotlin.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •  

Languages