Giter Club home page Giter Club logo

announcerplus's People

Contributors

jpenilla avatar renovate-bot avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

announcerplus's Issues

[Feature Request] Reorganize permission nodes

Move command permission nodes under a single node to aid in permission management i.e. announcerplus.abcxyz -> announcerplus.commands.abcxyz

edit: also group similar commands, i.e. send and sendtoast -> .send.chat and .send.toast

[Feature Request] Being able to have enchanted item on toast message via in-game command

Is your feature request related to a problem? Please describe.
No, just a suggestion.

Describe the solution you'd like
My idea was making something so you can make a toast message have an enchanted item when used the command in-game (/ap broadcasttoast/sendtoast).

Describe alternatives you've considered
The command would be the same but between the item and toast type, you add "-e" if you want it to be enchanted. For example: /ap broadcasttoast all netherite_ingot -e challenge "header" "footer".

[Bug Report] Incredible lag when announcement is sent

Describe the bug
When an announcement is being sent in-game, the server totally freezes for a few seconds, even with low player count. (20)

To Reproduce
Send an announcement.

Screenshots
(https://clipchamp.com/watch/wfjwpSFK7M3)

Server Software and Version:

  • Vendor: Pufferfish+ version git-PufferfishPlus-33
  • Minecraft Version: 1.20.4
  • This server is running Pufferfish+ version git-PufferfishPlus-33 (MC: 1.20.4) (Implementing API version 1.20.4-R0.1-SNAPSHOT) (Git: 94fa469 on HEAD)

Additional context
This only started happening recently. Think it was after 1.20.4 update.

[Bug Report] Clickable message is actually not clickable in MOTD

Describe the bug
As the title.

To Reproduce
Steps to reproduce the behavior:

  1. Write some clickable message following the MiniMessage format in the motd
  2. Join the server and click the clickable message
  3. The message is actually not clickable

Expected behavior
A clickable message in the motd should be actually clickable.

Screenshots
If applicable, add screenshots to help explain your problem.

Server Software and Version:

  • Vendor: git-Purpur-1761 (MC: 1.19.2)
  • Minecraft Version: 1.19.2
  • Output of /version command: Current: git-Purpur-1761 (MC: 1.19.2)*
    Previous: git-Purpur-1735 (MC: 1.19)
  • You are running the latest version

Additional context
The clickable message I set in the motd is:

    join-messages=[
        "",
        "<aqua>欢迎来到</aqua> <green><b>生存服</b></green><gray>·</gray><light_purple>第十七周目</light_purple> !",
        "点击下方 [链接] 查看更多信息 !",
        "<hover:show_text:'点击打开服务器 Wiki'><click:open_url:'https://wiki.mewcraft.cc'>[<color:#55ff99>Wiki</color>]</click></hover> <hover:show_text:'点击打开上古茶馆'><click:open_url:'https://bbs.mewcraft.cc'>[<color:#ffff99>茶馆</color>]</click></hover> <hover:show_text:'点击加入玩家交流群'><click:open_url:'https://qm.qq.com/cgi-bin/qm/qr?k=hXMrpi7526OY0Q0SDZemVw1VJEB58Cyh&authKey=Mp6lZ5bZ1l58nDf99s7z0NudcugDWbNx3wVSeKFSSyiBSL7VupJuQZoPmnBWm9gd&noverify=0'>[<color:#ff88ff>QQ群</color>]</click></hover> <hover:show_text:'点击查看服务器最近改动'><click:open_url:'https://bbs.mewcraft.cc/d/667-mc119'>[<color:#ffaa99>近期更新</color>]</click></hover>",
        "",
        "<aqua>当前内部版本</aqua>: <b><gold>Beta 0.1.15</gold></b>",
        ""
    ]

See here for MiniMessage preview.

Animations on gradients and rainbows where applicable

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Death Messages

Possibly add support for custom announcements on player death

[Bug Report] Title flicker when both is send (including Actionbar)

Describe the bug
If I run a sendtitle and I want to run a sendtitle again. They both display and flicker. This include the Actionbar.

To Reproduce
Steps to reproduce the behavior:

  1. Run :/ap sendtitle Player 1 300 1 "My Title" "My text here"
  2. wait a second*
  3. Run :/ap sendtitle Player 1 10 1 "My Title 2" "My text here 2"
  4. See the title go Brrrrr

Expected behavior
The second title that run should override the first one.

Screenshots
Here's a video of the title go brrr: Flickering title
Expected behavior (I used another plugin for this to demonstrate): Output by other plugin

Server Software and Version:

  • Vendor: PaperMC
  • Minecraft Version: 1.18.2
  • Output of /version command: This server is running Paper version git-Paper-237 (MC: 1.18.2) (Implementing API version 1.18.2-R0.1-SNAPSHOT) (Git: b55ba19)

[Feature Request] "CustomText" features with support for placeholders, formatting codes, hover text, click actions, multiple pages, etc.

I think that support for optional but fleshed out "CustomText" commands would be within the general scope of this plugin and would be a welcome addition to it's features.

What I mean is something similar to what the EssentialsX customtext command does, where you type a certain command (eg. /announcerplus customtext [filename/title] [optional player username]) and it returns you (or a specified player) a page in the chat with one or more lines containing text configured by the server admin. This works well with Bukkit's command aliases as well.

There are countless possible uses for this feature for any server owner, namely providing information to players such as rules, guides, etc, or to parse and display placeholders to them.

I was surprised to see this feature missing from this plugin, as it seems like it can very nearly accomplish it already. Originally I was going to use EssentialsX for this, but the customtext feature in that plugin does not support placeholders and other formatting. Other plugins I've seen on the issue are outdated or also lacking various features that AnnouncerPlus uses, such as what I listed in the title; support for PAPI, formatting codes, hover text, click actions, multiple pages, etc.

[Bug Report] no automessages are sent when random-message-order=false

Describe the bug
When I set random-message-order=false, no messages are sent to chat from the automessage config.
When I set random-message-order=true, messages are sent to chat from the automessage config.


To Reproduce
Steps to reproduce the behavior:

  1. download the provided configuration
  2. change the settings
  3. use /ap reload

Screenshots

random-message-order=false

2021-04-03_14 39 26

random-message-order=true

2021-04-03_14 40 29


Server Software and Version:

  • Vendor: Mohist
  • Minecraft Version: 1.12.2
  • Output of /version command: Mohist version 1.12.2-198 (MC 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT, Forge 14.23.5.2854)

Additional context
AnnouncerPlus 1.2.4
server is part of Bungeecord network.

chat formatting plugins on server:
VentureChat
AdvancedBan

Config files
AnnouncerPlus.zip

[Feature Request] permission for advertisement and others

**Is your request related to a problem? Please describe it.
Yes, to have different announcements, join and leave messages by permission I have to create different .conf files and if you have few it is not very annoying but if you have more than 10 as for example is my case it is very annoying to have to go into each .conf file to edit them.

Describe the solution you would like
add an option called permission: for each ad, bossbar, actionbar, join message, leave and other features so from the same .conf file to have all the automatic ads and each one with its own permission and the same for the join, leave messages so I can put different messages for each rank and from a menu that I create with a menu plugin they can choose which ads to see and which not, which join and leave message they want and the way the menu would work would be that I would be giving them a permission if they have the permission ad.store they would look at the store ad and so on with the rest.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Repository problems

These problems occurred while renovating this repository. View logs.

  • WARN: Package lookup failures

Warning

Renovate failed to look up the following dependencies: Failed to look up maven package com.mojang:datafixerupper.

Files affected: build.gradle.kts


Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

github-actions
.github/workflows/build.yml
gradle
gradle.properties
settings.gradle.kts
  • org.gradle.toolchains.foojay-resolver-convention 0.8.0
build.gradle.kts
  • org.jetbrains.kotlin.jvm 2.0.0
  • dev.folia:folia-api 1.19.4-R0.1-SNAPSHOT
  • com.github.MilkBowl:VaultAPI 1.7.1
  • net.essentialsx:EssentialsX 2.20.1
  • me.clip:placeholderapi 2.11.6
  • com.mojang:datafixerupper 7.0.14
  • net.kyori:adventure-bom 4.17.0
  • org.incendo:cloud-bom 2.0.0-rc.2
  • org.incendo:cloud-minecraft-bom 2.0.0-beta.8
  • org.incendo:cloud-translations-bom 1.0.0-SNAPSHOT
  • org.spongepowered:configurate-bom 4.1.2
  • io.insert-koin:koin-core 3.5.6
  • xyz.jpenilla:legacy-plugin-base 0.0.1+119-SNAPSHOT
  • org.bstats:bstats-bukkit 3.0.2
  • io.papermc:paperlib 1.0.8
gradle/libs.versions.toml
  • xyz.jpenilla:reflection-remapper 0.1.1
  • net.kyori.indra 3.1.3
  • net.kyori.indra.git 3.1.3
  • net.kyori.indra.licenser.spotless 3.1.3
  • com.diffplug.spotless 6.25.0
  • com.github.johnrengelman.shadow 8.1.1
  • xyz.jpenilla.run-paper 2.3.0
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 8.8

  • Check this box to trigger a request for Renovate to run again on this repository

More commands

Commands for sending Titles, Action bars, Toasts, etc to specified players or to the server

[Bug Report] Boss bar /actionbar/toast/title/sound does not work on folia

Describe the bug
Boss bar, action bar, toast, title and sound function does not work in folia 1.20.1
I understand that folia disabled Bossbar command, if that cause boss bar not working, thats ok. But I don't know why action bar, toast, title and sound function is not functioning, folia FAQ didn't mention that these are disabled:
image

To Reproduce
Steps to reproduce the behavior:

  1. Put plugin into plugins folder and run with default config
  2. (optional, adjust the time interval to 1 Second)

Expected behavior
Default demo.conf will show some random action bar, title, toast sound, bossbar and more

Screenshots
Only the commands working
image

Server Software and Version:

  • Vendor: folia
  • Minecraft Version: 1.20.1
    This server is running Folia version git-Folia-18 (MC: 1.20.1) (Implementing API version 1.20.1-R0.1-SNAPSHOT) (Git: 7c6e251 on HEAD)
    You are -17 version(s) behind

Additional context
AnnouncerPlus-1.3.5.jar

[Feature Request] The ability to toggle off the conversion of Minecraft color codes to MiniMessage codes within placeholders

Is your feature request related to a problem? Please describe.
As it stands, I cannot use placeholders in commands that broadcast messages to users if that placeholder contains it's own formatting codes (&6, etc), because this plugin parses those placeholders and replaces it automagically with the <code></code> format.

Describe the solution you'd like
The ability to toggle this feature off in general, and/or some way to disable it as-needed with certain placeholders. Perhaps by placing it within another like %NoReformat_{Placeholder}%

Describe alternatives you've considered
Avoiding the use of placeholders entirely, which is not possible for all uses.

Additional context
What I was trying to do is send a command using a broadcast plugin with the vault prefix/suffix as a placeholder to save time. Instead it returns a mess of formatting that doesn't work at all in Minecraft. In this case I can spend more time to make individual files for each group, but this issue would persist for other uses.

[Bug Report] Toast messages arent working on 1.20.4

Steps to reproduce the behavior:
/announcer sendtoast is not working properly, it doesnt show the toast.

23:34:21[WARN] Unexpected exception while parsing console command "announcer sendtoast pjindras netherite_helmet goal "Získáváš nový rank gradient:#7778fb:#8f8cfcRytíř." "Více na /ranky.""
org.bukkit.command.CommandException: Unhandled exception executing 'announcer sendtoast pjindras netherite_helmet goal "Získáváš nový rank gradient:#7778fb:#8f8cfcRytíř." "Více na /ranky."' in xyz.jpenilla.announcerplus.lib.cloud.comma
ndframework.bukkit.BukkitCommand(ap)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:178) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.dispatchCommand(CraftServer.java:1001) ~[purpur-1.20.4.jar:git-Purpur-2134]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.dispatchServerCommand(CraftServer.java:986) ~[purpur-1.20.4.jar:git-Purpur-2134]
at net.minecraft.server.dedicated.DedicatedServer.handleConsoleInputs(DedicatedServer.java:540) ~[purpur-1.20.4.jar:git-Purpur-2134]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:487) ~[purpur-1.20.4.jar:git-Purpur-2134]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1548) ~[purpur-1.20.4.jar:git-Purpur-2134]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1236) ~[purpur-1.20.4.jar:git-Purpur-2134]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:323) ~[purpur-1.20.4.jar:git-Purpur-2134]
at java.lang.Thread.run(Unknown Source) ~[?:?]
Caused by: java.lang.NullPointerException: audiences(...) must not be null
at xyz.jpenilla.announcerplus.command.Commands.commandManager$lambda$0(Commands.kt:49) ~[AnnouncerPlus-1.3.6.jar:?]
at xyz.jpenilla.announcerplus.lib.cloud.commandframework.bukkit.BukkitCommand.execute(BukkitCommand.java:115) ~[AnnouncerPlus-1.3.6.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
... 8 more

Server Software and Version:

  • Vendor: Purpur
  • Minecraft Version: 1.20.4
    Current: git-Purpur-2134 (MC: 1.20.4)*

Additional context
Add any other context about the problem here.

[Feature Request] Add the ability to schedule a repeat announcement with a configurable interval.

Is your feature request related to a problem? Please describe.

The plugin is epic and works fine as it is but it will be nice to have the repeating/scheduling feature added to make it even more epic.

Describe the solution you'd like A clear and concise description of what you want to happen.

I would like to have the ability to schedule an announcement and make repeat announcement with an user configurable interval.

An example of real world usage would be as follows...

An hourly reminder for members to stay hydrated or join the dedicated discord server with links.
[Hello welcome to JMP's epic server, please join us on our epic Discord https://discord.gg/jmp...]

A daily reminder to complete the daily quest to earn rewards.
[Nice to see you again trooper! Do you know you can complete daily quest to earn epic rewards?]

An event reminder that notify online members about an upcoming server events.
[Hi y'all we are hosting an epic PvP event this coming weekend on 8 PM EST...]

As for time interval, a simple one that sync with system time should be enough for most usage; however, we know the developer of this plugin is an overachiever, you may as well add ability to schedule the task by hours, minute, or down to seconds and ticks.

Describe alternatives you've considered

I've considered asking Essentalsx developer to add this feature but I figured I can ask here too.

Additional context
Add any other context or screenshots about the feature request here.

Ok I fired up Photoshop and send about an hour to make this. I hope it helps with virtual

sss

[Bug Report] When i want send toast message with Fire icon, i receive this error

When i want send toast message with Fire icon, i receive this error

18:22:45[WARN] Exception in thread "pool-48-thread-5" java.lang.NullPointerException: Cannot invoke "it.unimi.dsi.fastutil.objects.ObjectArrayList.get(int)" because "this.wrapped" is null
18:22:45[WARN] at it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap$MapIterator.nextEntry(Object2ObjectOpenHashMap.java:631)
18:22:45[WARN] at it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap$KeyIterator.next(Object2ObjectOpenHashMap.java:1034)
18:22:45[WARN] at org.bukkit.craftbukkit.v1_20_R1.inventory.CraftMetaItem.(CraftMetaItem.java:439)
18:22:45[WARN] at org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack.getItemMeta(CraftItemStack.java:615)
18:22:45[WARN] at org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack.getItemMeta(CraftItemStack.java:309)
18:22:45[WARN] at org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack.getItemMeta(CraftItemStack.java:301)
18:22:45[WARN] at Vulcan-2.7.5.jar//me.frep.vulcan.spigot.Vulcan_LG.Vulcan_o(Vulcan_LG.java:781)
18:22:45[WARN] at Vulcan-2.7.5.jar//me.frep.vulcan.spigot.Vulcan_GK.Vulcan_M(Vulcan_GK.java:43)
18:22:45[WARN] at Vulcan-2.7.5.jar//me.frep.vulcan.spigot.Vulcan_t_.lambda$onPacketPlayReceive$0(Vulcan_t_.java:64)
18:22:45[WARN] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
18:22:45[WARN] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
18:22:45[WARN] at java.base/java.lang.Thread.run(Unknown Source)

[Bug Report] click:open_url doesn't work for Folia server

Describe the bug
We had used click:open_url in our automessage, we also used it in /ap send and /ap broadcast. However, the url is not clickable.

To Reproduce
Steps to reproduce the behavior:

  1. /send player click:open_url:'https://docs.advntr.dev/minimessage'CLICK
  2. Player click on the link
  3. Nothing happen

Expected behavior
Minecraft client should ask players if they want to open the link

Screenshots
image
No reaction after clicking the CLICK

Server Software and Version:

  • Vendor: Folia
  • Minecraft Version: 1.20.4
  • Output of /version command: This server is running Folia version git-Folia-"25ee657" (MC: 1.20.4) (Implementing API version 1.20.4-R0.1-SNAPSHOT) (Git: 25ee657)
    You are running the latest version
    Previous version: git-Folia-"e97b1ee" (MC: 1.20.4)

Additional context
Works on paper server

[Bug Report] Recursive scheduling of asynchronous tasks in case of missing messages;

Describe the bug
If no messages are available on the broadcast, the plugin cyclically schedules to process a message queue with no messages in it, which causes constant scheduling.

To Reproduce

  1. Set -Xms=-Xmx=1G
  2. Remove all messages from demo.conf (messages=[])
  3. Wait a while (1 day?)
  4. See the memory leak

Expected behavior
Ignoring scheduling of tasks without messages, or optimizing scheduling

Screenshots
image
image

Server Software and Version:

  • Vendor: Any
  • Minecraft Version: 1.20.4
  • Output of /version command: git-Purpur-2176 (MC: 1.20.4)*

Suggestions for solutions
Remove recursive scheduling

diff --git a/src/main/kotlin/xyz/jpenilla/announcerplus/config/message/MessageConfig.kt b/src/main/kotlin/xyz/jpenilla/announcerplus/config/message/MessageConfig.kt
index 699be5b..d4a8fe9 100644
--- a/src/main/kotlin/xyz/jpenilla/announcerplus/config/message/MessageConfig.kt
+++ b/src/main/kotlin/xyz/jpenilla/announcerplus/config/message/MessageConfig.kt
@@ -204,15 +204,13 @@ class MessageConfig : SelfSavable<CommentedConfigurationNode>, KoinComponent {
   @Transient
   private val broadcastQueue = ArrayDeque<Message>()
 
-  fun broadcast(skipInitialDelay: Boolean = false) {
-    stop()
-    broadcastQueue.clear()
-    broadcastQueue.addAll(shuffledMessages())
-    broadcastTask = announcerPlus.asyncTimer(if (skipInitialDelay) 0L else initialDelay.ticks, interval.ticks) {
+  fun broadcast() {
+    broadcastTask = announcerPlus.asyncTimer(initialDelay.ticks, interval.ticks) {
       if (broadcastQueue.isNotEmpty()) {
         broadcast(broadcastQueue.removeFirst())
       } else {
-        broadcast(true)
+        // Removed recursion to prevent out of memory errors with empty messages
+        broadcastQueue.addAll(shuffledMessages())
       }
     }
   }

[Feature Request] Customizability Settings for sounds being played

Is your feature request related to a problem? Please describe.
This is not really a problem, more of a customization limit.

Describe the solution you'd like
Have the config file changed in a way that you can choose what output the sound gets played in (master, ambient, hostile, ...)
Get a volume option that could be set in numbers from 0 to 100
Get a pitch option to adjust the sound pitch amount

{
join-sounds="minecraft:entity.strider.happy"
    sound-volume="82"
    sound-pitch="46"
}

This could be cool to add but might need more effort, animated sounds, or different sounds played one after the other.
This would be configured somewhat similarly to how text is animated with tags.

<piano><fast><hostile.46> pitch.0:pitch.1:pitch.2:pitch.0:pitch.1:pitch.2
<xylo><slow><master.82> pitch.0:pitch.1:pitch.2:pitch.0:pitch.1:pitch.2

I'm using the noteblock sounds here because it would be impossible to have a tag for every single sound in the game.

Describe alternatives you've considered
I tried inputting the same command you'd use in a command block
/playsound block.note_block.xylophone master @p ~ ~ ~ 100 2 Obviously this did not work.

Additional nitpicks
Config is sometimes hard to read, perhaps adding some structure with big titles could help players configure it easily without
having to read every line carefully to make sure they're in the right section. Perhaps something like this to give you an idea:

#~~~~~~~~~~~~~~~~~~~ #
#   JOIN SETTINGS    #
#~~~~~~~~~~~~~~~~~~~~#

join-section {
    # Settings relating to showing an Action Bar to the joining Player
    action-bar-settings {
        # Seconds of duration for the Action Bar to stay on screen
        duration-seconds=8
        # Should the fade out animation of the Action Bar be enabled?
        enable-fade-out=false
        # The text for the Action Bar. Set to "" (empty string) to disable. Accepts animations
        text=""

[Feature Request] Particles on player join and announcement

Is your feature request related to a problem? Please describe.
It's not related to a problem.

Describe the solution you'd like
I suggest that when a player joins or in an announcement, there are particles on players.

Describe alternatives you've considered
On each announcement (can be actionbar, bossbar...) an extra option that is particle= so when something is announced, there are particles on the player. Particles would last the same duration as the announcement. (Like for example, if the bossbar is there for 12 seconds, particles too)

And on join-section, adding particle= too but maybe particle-duration too?

If it isn't much, one being particle=CUSTOM and you can set RGB color.

[Bug Report] /ap sendtoast fails with error

Describe the bug
When running the /ap sendtoast command nothing happens and the following trace shows:

[12:35:36 INFO]: MajesticFudgie issued server command: /announcer sendtoast MajesticFudgie netherite_helmet goal "Header here" "Body Here"
[12:35:36 WARN]: [AnnouncerPlus] Plugin AnnouncerPlus v1.3.7 generated an exception while executing task 155
java.lang.IncompatibleClassChangeError: Found interface com.mojang.serialization.DataResult, but class was expected
        at AnnouncerPlus-1.3.7.jar/xyz.jpenilla.announcerplus.task.ToastTask.buildAdvancement(ToastTask.kt:131) ~[AnnouncerPlus-1.3.7.jar:?]
        at AnnouncerPlus-1.3.7.jar/xyz.jpenilla.announcerplus.task.ToastTask.displayToasts(ToastTask.kt:93) ~[AnnouncerPlus-1.3.7.jar:?]
        at AnnouncerPlus-1.3.7.jar/xyz.jpenilla.announcerplus.task.ToastTask.poll(ToastTask.kt:72) ~[AnnouncerPlus-1.3.7.jar:?]
        at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.20.6.jar:1.20.6-82-0ad09de]
        at org.bukkit.craftbukkit.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.20.6.jar:1.20.6-82-0ad09de]
        at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.20.6.jar:?]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
        at java.base/java.lang.Thread.run(Thread.java:1570) ~[?:?]

To Reproduce
Steps to reproduce the behavior:

  1. Run /ap sendtoast command
  2. Nothing happens in game, stack trace in console

Expected behavior
Toast displays

Screenshots
N/A

Server Software and Version:

  • Vendor: Paper
  • Minecraft Version: 1.20.6
  • Output of /version command: This server is running Paper version 1.20.6-82-master@0ad09de (2024-05-18T20:25:01Z) (Implementing API version 1.20.6-R0.1-SNAPSHOT)
  • Plugin Version: 1.3.7 (Latest GH Version/Release)

Additional context
Add any other context about the problem here.

[Feature Request] Support 1.20.2

Is your feature request related to a problem? Please describe.

[18:29:29 INFO]: [AnnouncerPlus] Enabling AnnouncerPlus v1.3.5
[18:29:30 ERROR]: Error occurred while enabling AnnouncerPlus v1.3.5 (Is it up to date?)
java.lang.ExceptionInInitializerError: null
        at xyz.jpenilla.announcerplus.AnnouncerPlus.initToastTask(AnnouncerPlus.kt:115) ~[AnnouncerPlus-1.3.5.jar:?]
        at xyz.jpenilla.announcerplus.AnnouncerPlus.enable(AnnouncerPlus.kt:88) ~[AnnouncerPlus-1.3.5.jar:?]
        at xyz.jpenilla.announcerplus.lib.xyz.jpenilla.pluginbase.legacy.PluginBase.onEnable(PluginBase.java:49) ~[AnnouncerPlus-1.3.5.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:281) ~[paper-api-1.20.2-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:189) ~[paper-1.20.2.jar:git-Paper-201]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:104) ~[paper-1.20.2.jar:git-Paper-201]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:507) ~[paper-api-1.20.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R2.CraftServer.enablePlugin(CraftServer.java:644) ~[paper-1.20.2.jar:git-Paper-201]
        at org.bukkit.craftbukkit.v1_20_R2.CraftServer.enablePlugins(CraftServer.java:555) ~[paper-1.20.2.jar:git-Paper-201]
        at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:627) ~[paper-1.20.2.jar:git-Paper-201]
        at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:424) ~[paper-1.20.2.jar:git-Paper-201]
        at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:308) ~[paper-1.20.2.jar:git-Paper-201]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1086) ~[paper-1.20.2.jar:git-Paper-201]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:315) ~[paper-1.20.2.jar:git-Paper-201]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.IllegalStateException: Cannot find Advancement$Builder#build
        at xyz.jpenilla.announcerplus.task.ToastTask.<clinit>(ToastTask.kt:174) ~[AnnouncerPlus-1.3.5.jar:?]
        ... 15 more
[18:29:30 INFO]: [AnnouncerPlus] Disabling AnnouncerPlus v1.3.5

Describe the solution you'd like
1.20.2 Support update

Describe alternatives you've considered
1.20.2 Support update

[Bug Report] Color codes do not work in Minecraft 1.12.2

Describe the bug
I tried all the message commands, I also tried on the test server, but when I type the color codes, the color code I wrote does not appear.

To Reproduce
Steps to reproduce the behavior:

  1. /ap <all_message_commands> &b&lTest &e&lMessage
  2. Color code will not appear.

Expected behavior
I want color codes like &a, &e&l, &f&o, &b&k, &7&m, &5&n, &r to work.

Screenshots

announcerplus color codes issue

Server Software and Version:

  • Vendor: Spigot
  • Minecraft Version: 1.12.2
  • Output of /version command: This server is running CraftBukkit version git-Spigot-79a30d7-f4830a1 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT)
    This is a final build for 1.12.2. Please see https://www.spigotmc.org/ for details about upgrading.

[Feature Request] Join, quit rate limit

Is your feature request related to a problem? Please describe.
Join, quit rate limit (prevent spam)

Describe the solution you'd like
Limit the amount of messages per player.

[Feature Request] Add the ability to localize admin commands

I'm creating a ready-made server solution and would like to translate the messages in the /help command into my language, so that it would be easier for future administrators using the plugin to understand the commands and their functionality.

The most ideal solution is to add the ability to localize all plugin messages so that they can be translated into other languages, as well as design them in a single style (I also want to make help commands in the same server style)

I’m not sure how much this will be a necessary functionality directly, but I’m sure that it will be an excellent addition to the existing functions of the plugin

[Bug Report] AnnouncerPlus not respecting Luckperms Weight

Describe the bug
When a player has multiple groups, with announcerplus.join.default true as default rank, and announcerplus.join.default false as a higher rank, it does not negate the permission.

To Reproduce
Weight 0 - Default rank: announcerplus.join.default true
Weight: 70 - Rank2: announcerplus.join.default false and announcerplus.join.subscriptionrank true
Weight: 90 - Rank3: Inherits default rank.

Player1: Has default rank, rank2 and rank3, but when the player joins/leaves the server, it sends both the default join message and the custom join message, rather than negating the default rank permission.

AnnouncerPlus thinks the default rank has the same weight as Rank 3, because Rank 3 inherits default.

Expected behavior
AnnouncerPlus should read the highest weight and shouldn't make default rank have same weight as rank 3, just because rank 3 inherits default.
Default has weight 0, and not anything higher just because of inheritance.

Server Software and Version:

  • Vendor: Purpur
  • Minecraft Version: 1.19.4
  • Output of /version command: git-Purpur-1985 (MC: 1.19.4)*

Additional context
I hope I explained it well enough so you understand.

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: Cannot find preset's package (github>whitesource/merge-confidence:beta)

Remove PlaceholderAPI processing from commands

Running commands through PlaceholderAPI can cause some edge case issues, see #112.

A solution to this could be removing PAPI processing for command strings and adding our own <player_name> and etc replacements for commands. This would allow the command being executed to handle PAPI if it wants to, or not. This wouldn't impact executing AP commands as they will process the placeholders as part of command execution.

This needs consideration to ensure we don't lose any functionality with this change. Also config upgrading logic will be necessary.

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.