Code Monkey home page Code Monkey logo

superadvancements's Introduction

๐Ÿช™ SuperAdvancements

Advanced & Customizable Advancement API, made for SpigotMC and PaperMC 1.12+.

Background

Click to Expand

Advancements are one of the core features of Minecraft, and have been widely sought-out to modify and develop with. With a lack of understanding and documentation, it can be difficult to create custom advancements.

This API serves to solve this by creating a simple and easy-to-use API that supports all versions of Minecraft where they exist, 1.12.2 and above. Featuring Bukkit, Spigot, and Paper support, this API is designed to be as flexible as possible, allowing for easy developing.


โ“ Why?

  • Small: The API aims to be as small, compact, and useful as possible, while also maintaining quality-of-life features.
  • Simple: SuperAdvancements aims to have as much documentation and minimalization as possible in order to make usage seamless and comfortable.
  • Flexible: SuperAdvancements is designed to be as flexible as possible, allowing for easy customization and modification. We often have API methods that directly access the methods we are using, allowing for even more modification.
  • Transparent: SuperAdvancements is completely open source, has multiple issue reporting and support channels, and downloadable from your favorite repositories to depend and modify with.

๐Ÿ“ฅ Installation

GitHub License Project Status GitHub release (latest by date)

Maven
<project>
    
    <!-- Import CodeMC Repo -->
    
    <repositories>
        <repository>
            <id>codemc-releases</id>
            <url>https://repo.codemc.io/repository/maven-releases/</url>
        </repository>
    </repositories>
    
    <dependencies>
        <!-- Replace [VERSION] with your Project Version -->

        <!-- 'superadvancements-spigot' for developing with Strings and BaseComponents -->
        <dependency>
            <groupId>me.gamercoder215.superadvancements</groupId>
            <artifactId>superadvancements-spigot</artifactId>
            <version>[VERSION]</version>
        </dependency>

        <!-- 'superadvancements-paper' for developing with Adventure Components -->
        <dependency>
            <groupId>me.gamercoder215.superadvancements</groupId>
            <artifactId>superadvancements-paper</artifactId>
            <version>[VERSION]</version>
        </dependency>
    </dependencies>
    
</project>
Gradle (Groovy)
repositories {
    maven { url 'https://repo.codemc.io/repository/maven-releases/' }
}

dependencies {
    // Replace [VERSION] with your Project Version

    // 'superadvancements-spigot' for developing with Strings and BaseComponents
    implementation 'me.gamercoder215.superadvancements:superadvancements-spigot:[VERSION]'

    // 'superadvancements-paper' for developing with Adventure Components
    implementation 'me.gamercoder215.superadvancements:superadvancements-paper:[VERSION]'
}
Gradle (Kotlin DSL)
repositories {
    maven(url = "https://repo.codemc.io/repository/maven-releases/")
}

dependencies {
    // Replace [VERSION] with your Project Version

    // 'superadvancements-spigot' for developing with Strings and BaseComponents
    implementation("me.gamercoder215.superadvancements:superadvancements-spigot:[VERSION]")

    // 'superadvancements-paper' for developing with Adventure Components
    implementation("me.gamercoder215.superadvancements:superadvancements-paper:[VERSION]")
}

superadvancements's People

Contributors

dependabot[bot] avatar gmitch215 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

empirewar

superadvancements's Issues

Does not work with 1.20.2

Bug Type

In-Game Errors

SuperAdvancements Version

1.0.2

Server Version

1.20.2

Description

The NMS maps for 1.20.2 do not work properly and

Advancement bruhMoment = Advancement.builder()
  .key(new NamespacedKey(Main.getInstance(), "bruh_moment"))
  .criteria("bruh_moment", new ACriteria(ATrigger.impossible()))
  .display(BukkitDisplay.builder(AFrame.CHALLENGE)
    .title("Bruh Moment")
    .description("The moment of bruh")
    .coordinates(0, 0)
    .backgroundTexture("textures/block/dirt.png")
    .icon(new ItemStack(Material.SALMON))
    .build()
  )
  .reward(new AReward(1000))
  .build();
BukkitAdvancementManager.register(bruhMoment);

Expected Behavior

Creates a new advancement called "Bruh Moment" that cannot be obtained normally.

Actual Behavior

Gives an error:

[10:56:26 INFO]: [Test] Enabling Test v1.0
[10:56:26 ERROR]: Error occurred while enabling Test v1.0 (Is it up to date?)
java.lang.UnsupportedOperationException: null
	at com.google.common.collect.ImmutableMap.put(ImmutableMap.java:781) ~[guava-32.1.2-jre.jar:?]
	at me.gamercoder215.superadvancements.v1_20_R2.Wrapper1_20_R2.register(Wrapper1_20_R2.java:1304) ~[?:?]
	at me.gamercoder215.superadvancements.advancement.BukkitAdvancementManager.register(BukkitAdvancementManager.java:60) ~[?:?]
	at me.dragin.test.coi.COIStuff.inst(COIStuff.java:75) ~[?:?]
	at me.dragin.test.Main.onEnable(Main.java:30) ~[?:?]
	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:266) ~[spigot-api-1.20.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:342) ~[spigot-api-1.20.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:480) ~[spigot-api-1.20.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.craftbukkit.v1_20_R2.CraftServer.enablePlugin(CraftServer.java:548) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at org.bukkit.craftbukkit.v1_20_R2.CraftServer.enablePlugins(CraftServer.java:462) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:577) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:400) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at net.minecraft.server.dedicated.DedicatedServer.e(DedicatedServer.java:250) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:954) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:298) ~[spigot-1.20.2-R0.1-SNAPSHOT.jar:3900-Spigot-a0f3d48-dc45a67]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.