Giter VIP home page Giter VIP logo

abs's People

Contributors

edenhofer avatar gobidev avatar net147 avatar staticrocket avatar tylerjl 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

abs's Issues

spigot.sh is_player_online function doesn't properly parse formatted server output

When using the /list command with Spigot, its output is all normal text. However, when using /list with Paper, part of the output is in bold. This seems to make the function fail and not properly report that there are players on the server, resulting on the server closing while players are online.

I would offer a fix but have no idea how to use sed, which seems to be doing the work as far as stripping any formatting that may be present.

Minecraftd possible improvement - Multiple servers

Hello,
Thanks for the minecraft-server aur package (and its variants), it has really made managing minecraft servers a lot better for me.

I made a few changes to minecraftd.sh so it supports multiple servers running at once, for my own use (works great for bungeecord networks). Thought i would open an issue letting you know and sharing them back, maybe it could be useful for you or others ๐Ÿ˜.

All subcommands work with the format: minecraftd servername subcommand. Subservers and their individual configurations are, by default, stored in /srv/minecraft/servers.
All configurations, except for game_user, were moved from /etc/conf.d to the subservers config, so each server may be customized independently. I've also added a new configuration, main_root, which determines where all the subservers are at. Defaults to /srv/${game}.

Here's my forked script: https://github.com/Misterio77/minecraftd/blob/master/minecraftd.sh

If you want, feel free to upstream any changes. This will probbaly break a lot of workflows, so it's understandable if you don't.
I'm kinda new to packaging to aur, but i plan on uploading my fork as an alternative, when i'm done with the systemd files (still haven't looked at them), if that's okay with you.

Backup full /srv/minecraft Directory

My server is now running on a Paper fork. It's easy enough to modify the the script to use the proper server jar. However, there doesn't seem to be a very good way to get minecraftd backup to actually back up the entire /srv/minecraft directory rather than individual sub-directories inside it. Any suggestions? It doesn't really like using /srv/minecraft/*. I know I'm probably overlooking some easy solution here.

Idle-server daemon causing unusable termux session

When running papermc with the idle-server daemon enabled in the config file and starting it via papermc start, the following error occurs if the user does not have a tmux session open for papermc (started by papermc console):
java.lang.NullPointerException: Cannot invoke "org.bukkit.command.CommandSender.hasPermission(String)" because the return value of "net.minecraft.commands.CommandListenerWrapper.getBukkitSender()" is null at net.minecraft.commands.CommandDispatcher.lambda$new$0(CommandDispatcher.java:210) ~[patched_1.17.1.jar:git-Paper-243] at com.mojang.brigadier.tree.CommandNode.canUse(CommandNode.java:78) ~[patched_1.17.1.jar:git-Paper-243] at com.mojang.brigadier.CommandDispatcher.parseNodes(CommandDispatcher.java:358) ~[patched_1.17.1.jar:git-Paper-243] at com.mojang.brigadier.CommandDispatcher.parse(CommandDispatcher.java:348) ~[patched_1.17.1.jar:git-Paper-243] at io.papermc.paper.console.BrigadierCommandHighlighter.highlight(BrigadierCommandHighlighter.java:28) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.getHighlightedBuffer(LineReaderImpl.java:3818) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.getDisplayedBufferWithPrompts(LineReaderImpl.java:3800) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.redisplay(LineReaderImpl.java:3700) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.doCleanup(LineReaderImpl.java:2427) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.cleanup(LineReaderImpl.java:2419) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:648) ~[patched_1.17.1.jar:git-Paper-243] at org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:418) ~[patched_1.17.1.jar:git-Paper-243] at net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:158) ~[patched_1.17.1.jar:git-Paper-243] at net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:141) ~[patched_1.17.1.jar:git-Paper-243] at net.minecraft.server.dedicated.DedicatedServer$1.run(DedicatedServer.java:113) ~[patched_1.17.1.jar:git-Paper-243]
This seems to be due to the idle-server daemon issuing list commands before the server is ready to accept input, which prevents any further input later on.

Minecraft server console locks up

I'm running a PaperMC server with the papermc package with the included papermc.sh script (which, as I understand, is just a copy of the minecraftd.sh script from the minecraft-server package).

And the problem is, when I exit the console not cleanly, i.e. not with ^B+d, like when SSH connection drops unexpectedly, I'm unable to enter the console again. The command just hangs and there's no way to exit it, ^C doesn't work.

Looking at the code:

abs/papermc/papermc.sh

Lines 418 to 426 in eaa5b2d

server_console() {
if socket_has_session "${SESSION_NAME}"; then
${SUDO_CMD} tmux -L "${SESSION_NAME}" wait-for -L "command_lock"
${SUDO_CMD} tmux -L "${SESSION_NAME}" attach -t "${SESSION_NAME}":0.0
${SUDO_CMD} tmux -L "${SESSION_NAME}" wait-for -U "command_lock"
else
echo "There is no ${SESSION_NAME} session to connect to."
fi
}

It seems like at the line 420 it locks the session with the wait-for command, and then unlocks it after the console was detached properly. But when not, the unlock command at the line 422 is never executed. So when trying to open the console again, it just keeps waiting forever on the line 420.

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.