Development Assistance Just a quick question

Discussion in 'Plugin Help/Development/Requests' started by TurtlesBeast23, Oct 3, 2018.

Thread Status:
Not open for further replies.
  1. Offline

    TurtlesBeast23

    For my Minecraft server I’m developing my own variant of Bukkit called the “Server Runtime Client” and the reason that I’m developing my own is so that it directly integrates with my model of being modular and managing everything on web interfaces and mobile apps.

    My Minecraft server’s chat and the chat function on my server’s website to chat and voice chat with your friends (which both share the same database for efficiency) both go through the same server via a TCP socket so that everything is accessible and synchronized via the same platforms.

    For example, whenever someone posts a message in the Minecraft server chat, it will initiate a TCP socket with my chat server and write to the stream the message that the player sent. Then, the server will perform all of it’s tests and then return an integer status code with 0 being pass and 1, 2, 3 being specific violations like profanity, and when you sign into your account on my Minecraft server’s website everything’s synced.

    Is this type of system efficient?
     
  2. Online

    timtower Administrator Administrator Moderator

    @TurtlesBeast23 Open connection would be better, start the chat server, let it listen, start the other 2 servers and keep that connection open.
    But a full blown server for the Bukkit side is not needed, plugin can do this as well.

    On another note: network stuff is slow, chat might be delayed because of this.
     
  3. Offline

    TurtlesBeast23

    Well, it’s just one server sending information to another server on a port via a local network so it’ll be faster than if it was external.
     
  4. Online

    timtower Administrator Administrator Moderator

    It is, but it still takes time, certainly for an in game chat it might be too much time. Needs to be processed as well.
     
  5. Offline

    TurtlesBeast23

    @timtower Another issue would be that one endpoint is written in Java and the other is written in Ruby, but that shouldn’t be an issue since the information is transmitted through bytes and all languages should be able to understand the data since it’s a universal thing.
     
  6. Online

    timtower Administrator Administrator Moderator

    @TurtlesBeast23 You sure that you want to combine that many languages?
    And you probably want to add a protocol layer of some sort, as you never know how long a message is and it might put 2 messages close enough to each other that the ruby side can't see the difference anymore.
     
  7. Offline

    TurtlesBeast23

    @timtower Like honestly, I like Java and it’s my preferred language, I develop a lot of server applications and JavaFX desktop electron applications, but I do like some variety of language in there as well and it gives an opportunity to hire developers.
     
  8. Online

    timtower Administrator Administrator Moderator

    @TurtlesBeast23 It makes it more difficult to maintain though.
    The variety in language is not really an argument, you need to pick a language that can give the best result.
    Hiring developers is also not an argument as you want to keep the amount low. You don't want to call 20 people if you need a protocol change. You want to call 1 that can do it in all programs.
     
Thread Status:
Not open for further replies.

Share This Page