Coder Social home page Coder Social logo

jonas-peeters / easyscoreboards Goto Github PK

View Code? Open in Web Editor NEW
8.0 3.0 6.0 596 KB

A Sponge plugin to create easily scoreboards for your Minecraft server

License: MIT License

Java 100.00%
scoreboard sponge countdown sponge-plugin minecraft minecraft-plugin

easyscoreboards's Issues

Work with 0 players online

I'm attempting to setup a restart setup with the countdown, but the esb commands dont complete when no one is online

Can we add more than one countdown?

Hello,
Can we add more than one countdown with this plugin and i want "title broadcast" in last 10secconds than every minute and maybe a way to change the title message, is it possible?

Suggestion: You guys should get a Discord channel.

Server thread/ERROR

[00:07:58] [Server thread/ERROR] [Sponge]: The Scheduler tried to run the task de_yottaflops_easyscoreboard-S-9 owned by Plugin{id=de_yottaflops_easyscoreboard, name=Easy Scoreboards, version=2.1.1, description=A plugin to easily create scoreboards for lobbys, source=D:\mods\【P】EasyScoreboards.jar}, but an error occured.
java.lang.ArrayIndexOutOfBoundsException: 0
at de.YottaFLOPS.EasyScoreboard.Commands.Countdown.CountdownStart.lambda$execute$0(CountdownStart.java:143) ~[CountdownStart.class:?]
at org.spongepowered.api.scheduler.Task$Builder.lambda$execute$0(Task.java:139) ~[Task$Builder.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(SchedulerBase.java:183) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SyncScheduler.executeTaskRunnable(SyncScheduler.java:81) ~[SyncScheduler.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SchedulerBase.startTask(SchedulerBase.java:179) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SchedulerBase.processTask(SchedulerBase.java:165) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2379]
at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(Unknown Source) [?:1.8.0_131]
at org.spongepowered.common.scheduler.SchedulerBase.runTick(SchedulerBase.java:108) [SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SyncScheduler.tick(SyncScheduler.java:51) [SyncScheduler.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.common.scheduler.SpongeScheduler.tickSyncScheduler(SpongeScheduler.java:191) [SpongeScheduler.class:1.10.2-2281-5.2.0-BETA-2379]
at org.spongepowered.mod.SpongeMod.onTick(SpongeMod.java:271) [SpongeMod.class:1.10.2-2281-5.2.0-BETA-2379]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_17_SpongeMod_onTick_ServerTickEvent.invoke(.dynamic) [?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:635) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:591) [EventBus.class:?]
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:274) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:602) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]

Wrong player info

Every player see the info of the first player who joined the server.

Conflict with tab manager

For some reason easy scoreboard messes up the order of TabManager.
So I can not put alphabetically the groups in tab (a-z)

Command Output

Can you please make something so that the scoreboard looks like command output? Thanks. Example: /baltop

Client Crash When Line Length Too Long

There seems to be client-crashes when a line on the scoreboard is longer than the maximum expected character count (16 I believe, needs testing).

Can you implement a length limitation to prevent this issue?

NetworkDispatcher exception
io.netty.handler.codec.DecoderException: java.io.IOException: Packet 0/34 (SPacketParticles) was larger than I expected, found 190 bytes extra whilst reading packet 34

Yellow zero next nickname -> Why ?

Hi there,

The plugin works properly but I have a simple issue: I have a yellow zero in tab next the player name... And i can't remove it.

With the command /scoreboard objectives setdisplay list it works for 0,1s but it appears again...

Wrong money value

I'm using the %PLAYERBALANCE% placeholder, and it's showing the value wrongly. I have TotalEconomy as economy plugin, it's reporting that my balance is 979:

1

But, in the scoreboard, it's reporting a wrong value:

2

I don't know where it's getting this value. My config:

scoreboard {
  countdown {
    chat=true
    command="say The countdown is over"
    time=11
    title=true
    xp=false
  }
  hideFor=" "
  lines=[
    "number=%TPS%, text=&f&l ➤ TPS",
    "number=-1, text=&b&l✖ MagiBeta ✖",
    "number=%ONLINECOUNT%, text=&f&l ➤ Jogadores",
    "number=%PLAYERBALANCE%, text=&f&l ➤ Money"
  ]
  showForAll=true
}

2.1.0 - Number of line bug and error task

I use EasyScoreboards 2.1.0. I use PlaceholderAPI 3.8 for expansion of available value.
number of line bug because sort of number high to low from first line. It must sort of number low to high from first line. Please fix this bug.

Link picture Details : https://www.mx7.com/view2/zK6geOdfEgBRi4hz
My file config : https://drive.google.com/open?id=0B0YuIZTzdfDHdE9VOUFGTXFLU2s

Error task to run :

  1. In pastebin - http://pastebin.com/tuzJyYAu
  2. In github - https://gist.github.com/comdarksider/f5c29c52cb3b28fddfaac921148288dc

same scoreboard for all players....

sry but a new problem.

I have made a scoreboard with placeholders and for me it works.

image
image

BUT my friend joined and has MY scoreboard, my name in scoreboard, my ranks, my money....not his own.

image
sry this is a discord screenshot

BungeeCord problem on death

Hello,
I discovered a problem with EasyScoreboard which is installed on Sponge server, when it is connected on BungeeCord.
I got this error: https://pastebin.com/Hsf1TtSS
It is happend always, when player die.

I tried to do /esb hide and then die, everything okay, but with shown scoreboard, i got kick.

I'm using EasyScoreboard v2.2

flicker scoreboard

Sometimes there is a flicker

forge-1.12.2-14.23.2.2611-universal.jar
spongeforge-1.12.2-2611-7.1.0-BETA-2931.jar
EasyScoreboards.jar 2.3 latest

since 1.3 none command is working

since the new 1.3, no scoreboard plugin command is working...
neither reload or set ...
If i change the content in the config file, it's visible, but though i can't change anything ingame or via console...

Make line optional?

Hey a user named Siigari in #SpongeDev IRC was using your plugin and was wondering if you would kindly add support that the lines on /setline were optional.

What they mean by that, is having a "simple" scoreboard that doesn't have formatting or specific line orders and just orders things based on their natural ordering.

e.g.

image

This is technically a duplicate of #1 But I'm just recreating to reiterate that this is a feature that people actually want, and that they don't necessarily want the scoreboard "designed"

The information of the first person who is connected is displayed

https://i.imgur.com/og7rBGV.png

forge-1.12.2-14.23.2.2611-universal.jar
spongeforge-1.12.2-2611-7.1.0-BETA-2931.jar
EasyScoreboards.jar 2.3 latest

Edit:
EasyScoreboards.jar 2.5

Output of the command /sp plugins: EasyScoreboards.jar 2.3

mcmod.info
[
{
"modid": "de_yottaflops_easyscoreboard",
"name": "EasyScoreboards",
"version": "2.3",
"description": "A plugin to easily create scoreboards for lobbys, etc.",
"authorList": [
"YottaFLOPS"
],
"dependencies": [
"[email protected]"
],
"requiredMods": [
"[email protected]"
]
}
]

Spam in console

[15:17:48] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:49] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:51] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:53] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:55] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:57] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:17:59] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:01] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:03] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:05] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:07] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:09] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:11] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:13] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:15] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:17] [Server thread/INFO] [EasyScoreboards]: Building scoreboard
[15:18:19] [Server thread/INFO] [EasyScoreboards]: Building scoreboard

forge-1.12.2-14.23.2.2611-universal.jar
spongeforge-1.12.2-2611-7.1.0-BETA-2931.jar
EasyScoreboards.jar 2.3 latest

Bungeecord error with Scoreboard disconnecting players

12:04:19 [SEVERE] [Nynguus_] <-> DownstreamBridge <-> [Beta] - encountered exception
java.lang.IllegalArgumentException: Objective Test already exists in this scoreboard
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
    at net.md_5.bungee.api.score.Scoreboard.addObjective(Scoreboard.java:55)
    at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:126)
    at net.md_5.bungee.protocol.packet.ScoreboardObjective.handle(ScoreboardObjective.java:62)
    at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:77)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293)
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:280)
    at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:396)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:266)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:351)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:373)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926)
    at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:1018)
    at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:402)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:307)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
    at java.lang.Thread.run(Thread.java:745)

Updating Scoreboard

Also update the server every x ticks when the placeholder is the number value.

NoSuchMethodError: me.rojo8399.placeholderapi

This errors occur approx 40 times in log before the world can be started. It's the same everytime, just:

java.lang.NoSuchMethodError: me.rojo8399.placeholderapi.PlaceholderService.replacePlaceholders(Lorg/spongepowered/api/entity/living/player/Player;Ljava/lang/String;)Lorg/spongepowered/api/text/Text;

Example:

[23:24:42] [Server thread/ERROR] [Sponge/]: The Scheduler tried to run the task de_yottaflops_easyscoreboard-S-10 owned by Plugin{id=de_yottaflops_easyscoreboard, name=Easy Scoreboards, version=2.1.1, description=A plugin to easily create scoreboards for lobbys, source=/home/minecraft/multicraft/servers/server70279/./mods/plugins/EasyScoreboards.jar}, but an error occured.
java.lang.NoSuchMethodError: me.rojo8399.placeholderapi.PlaceholderService.replacePlaceholders(Lorg/spongepowered/api/entity/living/player/Player;Ljava/lang/String;)Lorg/spongepowered/api/text/Text;
	at de.YottaFLOPS.EasyScoreboard.Main.makeScoreboard(Main.java:194) ~[Main.class:?]
	at de.YottaFLOPS.EasyScoreboard.Main.setScoreboard(Main.java:340) ~[Main.class:?]
	at java.lang.Iterable.forEach(Iterable.java:75) ~[?:1.8.0_121]
	at de.YottaFLOPS.EasyScoreboard.Main.updateAllScoreboards(Main.java:331) ~[Main.class:?]
	at de.YottaFLOPS.EasyScoreboard.Utils.Runnables.lambda$startPlaceholderTask$2(Runnables.java:85) ~[Runnables.class:?]
	at org.spongepowered.api.scheduler.Task$Builder.lambda$execute$0(Task.java:139) ~[Task$Builder.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(SchedulerBase.java:183) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SyncScheduler.executeTaskRunnable(SyncScheduler.java:81) ~[SyncScheduler.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SchedulerBase.startTask(SchedulerBase.java:179) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SchedulerBase.processTask(SchedulerBase.java:165) ~[SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2597]
	at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4707) [?:1.8.0_121]
	at org.spongepowered.common.scheduler.SchedulerBase.runTick(SchedulerBase.java:108) [SchedulerBase.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SyncScheduler.tick(SyncScheduler.java:51) [SyncScheduler.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.common.scheduler.SpongeScheduler.tickSyncScheduler(SpongeScheduler.java:191) [SpongeScheduler.class:1.10.2-2281-5.2.0-BETA-2597]
	at org.spongepowered.mod.SpongeMod.onTick(SpongeMod.java:271) [SpongeMod.class:1.10.2-2281-5.2.0-BETA-2597]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_30_SpongeMod_onTick_ServerTickEvent.invoke(.dynamic) [?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:632) [EventBus.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:588) [EventBus.class:?]
	at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:274) [FMLCommonHandler.class:?]
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:602) [MinecraftServer.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471) [MinecraftServer.class:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_121]

TPS goes over 20

Sometimes, the scoreboard shows the TPS over 20, I think you could fix this.

Multipage scoreboard

It would be helpful. A few boards, which are switched after some time. As a slideshow.

Then it will be easier to structure the information.

Also add the command /esb showall

Add something to separate variables from text

I want to show the TPS text in my scoreboard, but it's recognized as variable. You could add a prefix/suffix for variables, like ~. Then, we would use:

/esb set 7 "&f&l TPS: ~TPS~"

Showing Wrong Playername

Using EasyScoreboards-2.1.1 on SpongeForge 1.10.2-2281-5.2.0-BETA-2350 with PlaceholderAPI 3.11

So, anyone logging into the server receives all of the information for whichever character was logged in first. Example: Character1 logs in followed by Character2 and Character3. Character1 displays there own player information, but -2 and -3 both display Character1's player information.

Just thought you'd like to know... I don't think that this was happening with PlaceholderAPI 3.9. I just updated that today...

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.