Giter Club home page Giter Club logo

azlink's Introduction

Azuriom

Azuriom

PHP CI Style CodeFactor Latest release Chat

Azuriom is a complete open-source web solution for game servers. Enjoy dozens of extensions for endless possibilities. Already trusted by over 1,800 servers, cumulating more than two millions users.

Screenshot

Supported Games

Azuriom natively supports the following games:

You can implement your own game like it was done for Flyff or Dofus 1.29.

You can find the how-to in the documentation

Documentation

Azuriom's documentation is available on our website.

Installation

You can find system requirements and installation guide on our documentation.

Community

You can ask for support and talk on our Discord server.

Contributing

Contributions are always welcome!

See the contribution guidelines for ways to get started.

Please adhere to this project's code of conduct.

Translations

You can contribute to translating Azuriom on our Crowdin.

Security

If you discover any security related issues within Azuriom, please send an e-mail to [email protected] instead of using the issue tracker. All security vulnerabilities will be promptly addressed.

Support us

If you like this project, please consider supporting us on GitHub sponsors.

License

Azuriom is licensed under the GNU General Public License v3.0 or later.

azlink's People

Stargazers

 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

azlink's Issues

Change/add/remove money in game

Hello,

I am sharing my suggestion which could be practical and requested by many people.

The addition of the following commands:
/azlink add {number money} / add points to the player
/azlink del {number money} / remove points from the player

This allows our players to use their points in game, but also to earn shop points during events.

Unable to send data to the website: java.io.IOException: Invalid response code (403 - Forbidden)

Bonjour

Lorsque j'essaie la commande "/azlink setup" suivi du lien du site avec le code je reçois l'erreur suivante :
ERROR [AzLink] Unable to send data to the website: java.io.IOException: Invalid response code (403 - Forbidden)

Avez-vous une idée de l'origine du problème ? Je n'ai pas plus de détails
J'utilise la version de Paper pour Minecraft 1.20.4 avec la dernière version Legacy de AzLink

Merci

SkinRestorer v15 support

Bonjour, visiblement de ce que j'ai compris AZLINK n'est plus a jour par rapport a SkinsRestorer.

[01:37:02 ERROR]: Error occurred while enabling AzLink v1.3.2 (Is it up to date?)
java.lang.NoClassDefFoundError: net/skinsrestorer/api/exception/SkinRequestException
        at com.azuriom.azlink.bukkit.AzLinkBukkitPlugin.onEnable(AzLinkBukkitPlugin.java:90) ~[AzLink.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:541) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugin(CraftServer.java:560) ~[paper-1.18.2.jar:git-Paper-388]
        at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugins(CraftServer.java:474) ~[paper-1.18.2.jar:git-Paper-388]
        at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:665) ~[paper-1.18.2.jar:git-Paper-388]
        at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:432) ~[paper-1.18.2.jar:git-Paper-388]
        at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:316) ~[paper-1.18.2.jar:git-Paper-388]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1164) ~[paper-1.18.2.jar:git-Paper-388]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:316) ~[paper-1.18.2.jar:git-Paper-388]
        at java.lang.Thread.run(Thread.java:840) ~[?:?]
Caused by: java.lang.ClassNotFoundException: net.skinsrestorer.api.exception.SkinRequestException
        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:151) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
        ... 12 more```

Support vanish plugins

Hi,

I noticed that AzLink does not support Vanish plugins (CMI/Essentials/SuperVanish & PremiumVanish).
I find this very annoying, so that's why I'm posting my suggestion here!

SkinsRestorerAPI is not initialized yet!

[03:56:40] [Server thread/ERROR]: Error occurred while enabling AzLink v1.3.3 (Is it up to date?)
java.lang.IllegalStateException: SkinsRestorerAPI is not initialized yet! (Are you trying to access it without softDepends?)
	at net.skinsrestorer.api.SkinsRestorerProvider.get(SkinsRestorerProvider.java:37) ~[SkinsRestorer (1).jar:?]
	at com.azuriom.azlink.bukkit.integrations.SkinRestorerIntegration.<init>(SkinRestorerIntegration.java:21) ~[AzLink.jar:?]
	at com.azuriom.azlink.bukkit.AzLinkBukkitPlugin.onEnable(AzLinkBukkitPlugin.java:93) ~[AzLink.jar:?]
	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:541) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugin(CraftServer.java:560) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugins(CraftServer.java:474) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:665) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:432) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:316) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1164) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:316) ~[paper-1.18.2.jar:git-Paper-"fbf0b57"]
	at java.lang.Thread.run(Thread.java:840) ~[?:?]

AuthMe : Update password after change

Bug description

When player register from in-game it's successfully register to the website, but when player change their password from the website, the authme password still same as before and there is no changes with their new password.

Also password that has been change from ingame still not updated in website

Step to reproduce

  1. Register the account from ingame
  2. Change password from website

Errors / Logs

No response

Web server

Nginx

Database type

MySQL

PHP version

8.1

Additional context

No response

Menu suggestion

Could you implement an option that when using a command opens a menu showing you the categories and packages of the store?
Example:
Using the /buy command will open a menu with the store pages.
image
Then select a category to show you the packages.
image
and when you select one I will send you a message in the chat with the direct link.
image

RE - Support Vanish plugins

Hello !
I updated AzLink on my server, and so the .yml file appeared, I set the value to true and here are the errors it makes when the server starts:

java.lang.IllegalStateException: ServerPingEvent may only be triggered asynchronously.
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:610) ~[patched_1.16.5.jar:git-Paper-794]
at com.azuriom.azlink.bukkit.AzLinkBukkitPlugin.getOnlinePlayers(AzLinkBukkitPlugin.java:133) ~[?:?]
at com.azuriom.azlink.common.AzLinkPlugin.getServerData(AzLinkPlugin.java:147) ~[?:?]
at com.azuriom.azlink.common.tasks.FetcherTask.lambda$run$1(FetcherTask.java:40) ~[?:?]
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:101) ~[patched_1.16.5.jar:git-Paper-794]
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:485) ~[patched_1.16.5.jar:git-Paper-794]
at net.minecraft.server.v1_16_R3.MinecraftServer.b(MinecraftServer.java:1432) ~[patched_1.16.5.jar:git-Paper-794]
at net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:436) ~[patched_1.16.5.jar:git-Paper-794]
at net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1347) ~[patched_1.16.5.jar:git-Paper-794]
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1135) ~[patched_1.16.5.jar:git-Paper-794]
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:291) ~[patched_1.16.5.jar:git-Paper-794]
at java.lang.Thread.run(Thread.java:831) [?:?]

INFORMATIONS

Server version: Paper 1.16.5 794
Plugin version: AzLink 1.0.2

Unable to send data to the website

Hey, i have this error:
[AzLink] Unable to send data to the website: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

how to fix?

Allow to use another IP for the AzLink port

My server uses TCPShield to protect itself from attacks and it is not possible to communicate on any other port than 25565.
Since AzLink requires the use of another port, it is impossible for the site to connect to AzLink since it tries to connect using the IP address that redirects to TCPShield, not my server.

Allowing another IP to be used for the AzLink port would allow the correct IP to be displayed on the site, while still allowing it to connect to AzLink.

Add support for LimboAuth

Add AzLink support for LimboAuth, because AuthMe is too outdated and either nLogin or LimboAuth are way better, because both have better security, more frequent updates and more features.

Api azuriom to azlink and azlink to azuriom

[EN]
Good morning,

As a dev I would like an API link like:
If you want to obtain stats or actions taken in game from azurium.
If we want to get azuriom plugin (web) API links from azlink.

Example for azlink:
I am a player I do the command /timeVote -> [GET] my.site/vote/api/time/{player} => return time
I am a repetitive task /BoardCard numberVote -> [GET] my.site/vote/api/numberVote => return number of vote

Example for azurium:
I follow the player stats page -> [GET] db.mon.site/minecraft/player_stat => return list of player with stat

There you go ^^


[FR]
Bonjour,

En temps que dev je souhaiterais un lien d'api du style:
Si on veux get depuis azurium les stat ou des actions faite en jeu.
Si on veux get depuis azlink des liens d'api des plugins (web) azuriom.

Exemple pour azlink:
Je suis joueur je fais la commande /timeVote -> [GET] mon.site/vote/api/time/{player} => return time
Je suis une tache répétitive /BoardCard numberVote -> [GET] mon.site/vote/api/numberVote => return number of vote

Exemple pour azurium:
Je suis la page des stat joueurs -> [GET] db.mon.site/minecraft/player_stat => return list of player with stat

Voila ^^

Add support for CS2

I think it's interesting to add support for CSGO as well, so we can use the feature: Execute commands when user is online on server (only available with AzLink)

image

I believe that many prefer to activate the privileges only when the player connects to the server.

Make the Skin Restorer implementation async

When we connect to the server and it checks for the player skin with the SkinAPI plugin it takes alot of time to process and make the connection to the server very long 👍
image

The best would be to make this async

Feature request: Idea of multiple placeholders (PAPI) with AzLink

🇫🇷 Bonjour, me voici avec une nouvelle suggestion !
Je me suis rappelé qu'AzLink proposait un placeholders pour la monnaie de la boutique définie dans le Panel Admin, donc ça m'a donné une idée de placeholders qui en aiderait plus d'un avec le plugin Vote d'Azuriom, je m'explique,
L'idée que j'ai eu ce serait d'ajouter différents placeholders en lien avec les votes, telles que :

  • Un placeholders permettant de savoir le délai d'un vote. (%azlink_vote_ID_cooldown%)
    » Si vote disponible, résultat = True
    » Si vote en cours, résultat = *Cooldown*

  • Un placeholders permettant de savoir le nombre total de sites de votes. (%azlink_vote_total_sites%)

  • Un placeholders permettant de savoir le nombre de votes disponible. (%azlink_vote_total_available%)
    » Si tous les sites disponibles, résultat = *Total*
    » Si aucun site disponible, résultat = False

  • Un placeholders permettant de savoir si un site de vote en particulier est disponible. (%azlink_vote_ID_available%)
    » Si site de vote disponible, résultat = True
    » SI site de vote indisponible, résultat = False

  • Un placeholder permettant de récupérer le pseudo du classement. (%azlink_vote_name_[1-10]%)

  • Un placeholder permettant de récupérer la position d'un joueur du classement. (%azlink_vote_position_[1-10]%)

--> Précision : Je ne liste pas les votes totaux, mensuels ou autre car ça reste entièrement possible avec des plugins.


🇬🇧 Hello, here I am with a new suggestion!
I remembered that AzLink offered a placeholder for the store currency defined in the Admin Panel, so it gave me an idea of placeholders that would help more than one with the Azuriom Vote plugin, let me explain,
The idea I had is to add different placeholders related to votes, such as :

  • A placeholder allowing to know the delay of a vote. (%azlink_vote_ID_cooldown%)
    » If vote available, result = True
    » If vote in progress, result = *Cooldown*

  • A placeholder for the total number of voting sites (%azlink_vote_total_sites%)

  • A placeholder to know the number of available votes. (%azlink_vote_total_available%)
    » If all sites available, result = *Total*
    » If no sites available, result = False

  • A placeholder for whether a particular voting site is available. (%azlink_vote_ID_available%)
    » If voting site available, result = True
    » If voting site unavailable, result = False

  • A placeholder to retrieve the nickname of the leaderboard. (%azlink_vote_name_[1-10]%)

  • A placeholder to get the position of a player in the leaderboard. (%azlink_vote_position_[1-10]%)

--> Note: I don't list total votes, monthly or otherwise, as this is entirely possible with plugins.

Forge version

Hello
Do you have an idea when AzLink for for can be release ?

Error on my Minecraft Server with Azuriom / AZLink

Bug description

Every X Time, the server sends this error message to the console: [12:52:19] [Craft Scheduler Thread - 864 - AzLink/ERROR]: [AzLink] Unable to send data to the website: java.net.SocketTimeoutException: Connect timed out, I started talking to support, who told me it was probably my host, or the ports... I obviously changed host, bought a VPS from OVH, opened the ports with the verification of a competent sys admin, all is good. However, the AZLink is time out again, today at 12h52 for no reason. The problem is that when a player votes during this time, his vote is not counted.

Step to reproduce

To reproduce this bug you need to open a minecraft server, link an Azuriom CMS, and wait, the host is Hetzner and the web host is Hetzner, I'd like to point out that we tried to take a machine for the votes at Hetzner too to see if the network was more opti, same problem.

Errors / Logs

[12:52:19] [Craft Scheduler Thread - 864 - AzLink/ERROR]: [AzLink] Unable to send data to the website: java.net.SocketTimeoutException: Connect timed out

Web server

Apache

Database type

MySQL

PHP version

No response

Additional context

No response

enchantment

If someone is banned on the website, they should also be in the server using the azlink.

Instant commands on Paper 1.20.2

Hello,

I have this reccuring error in the minecraft server console :

[17:06:45 WARN]: [io.netty.channel.ChannelInitializer] Failed to initialize a channel. Closing: [id: 0x81ca4ad8, L:/172.45.0.4:25588 - R:/172.45.0.1:50970]
java.lang.NoClassDefFoundError: io/netty/handler/codec/http/HttpRequestDecoder
        at com.azuriom.azlink.common.http.server.HttpChannelInitializer.initChannel(HttpChannelInitializer.java:22) ~[AzLink.jar:?]
        at com.azuriom.azlink.common.http.server.HttpChannelInitializer.initChannel(HttpChannelInitializer.java:11) ~[AzLink.jar:?]
        at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:129) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:112) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:1114) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.DefaultChannelPipeline.access$100(DefaultChannelPipeline.java:46) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1463) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1115) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:650) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:514) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:429) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:486) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[netty-transport-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.97.Final.jar:4.1.97.Final]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.ClassNotFoundException: io.netty.handler.codec.http.HttpRequestDecoder
        ... 21 more

Commands seems to be currently passed, but this error occurs since the 1.20.2 minecraft update.
I'm using paper, latest version.

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.