1. When making a thread, please tag your thread accordingly using the menu to the left of the textfield where you name your thread where applicable. Server Advertisements and Mod Releases should be contained to their respective subforums.

Server Discussion StarryPy - A plugin driven server wrapper written in Python.

Discussion in 'Multiplayer' started by Carrots Are Mediocre, Jan 29, 2014.

  1. plzt

    plzt Seal Broken

    I'm not sure what you mean by the first sentence

    if I try 21024 I get a join failed. Error connecting to 127.0.0.1:21024
    if I try 21025 I get the above error and a server log of:
    2014-01-30 00:17:30,095 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID XXXXX
    2014-01-30 00:18:10,125 - starrypy - ERROR - Couldn't disconnect protocol.
     
    Indulgentu likes this.
  2. DJ Mikey

    DJ Mikey Astral Cartographer

    Looking Forward to using this!
     
    Carrots Are Mediocre likes this.
  3. Carrots Are Mediocre

    Carrots Are Mediocre Zero Gravity Genie

    Try downloading the new version. It has an error message if you haven't started the starbound server itself before running StarryPy.
     
  4. plzt

    plzt Seal Broken

    Ah, now I do feel like an idiot..... Though I have to say that the course of action is not at all obvious
    I assumed that running "python server.py" also started the server, rather than it being run AFTER the server had been started.
    Have got it going correctly now and initial examination is that it works fine!!

    What will happen if people connect to the server normally and therefore bypass the wrapper as opposed to <address>:21025?
    Will commands from the wrapper still work on them or not?
     
  5. Bunnky

    Bunnky Sandwich Man

    Yep, I assumed the wrapper started the server automatically.. Now that I tried starting the server first, its works.. However...

    I can join from IP:21025, AND IP:21024...
    They both join the same game, cept the :21025 port has the wrapper stuff, while the :21024 is vanilla..
    I did a test and I could break stuff in 21024, even though i disabled that ability in 21025..

    Also I wrote a batch script for starting the server and StarryPy together:

    Code:
    (at symbol)Echo off
    start /d "SERVER DIRECTORY HERE" starbound_server.exe
    ping -n 31 127.0.0.1 > nul
    python server.py
    Make a text file, copy/paste that code, then save as .bat.
    The Batch file launches the server, waits 30 seconds, then launches StarryPy.
     
  6. Carrots Are Mediocre

    Carrots Are Mediocre Zero Gravity Genie

    You have to use your firewall to block the 21024 port. There's nothing StarryPy can really do about that. If they manage to connect to vanilla, they are outside of the control of StarryPy.

    I will be writing a server launching plugin/watchdog in the near future.
     
  7. Planet protection is working against modded bullets (from editing vanilla non-damaging projectiles) that damage blocks?
     
  8. hbrewitt

    hbrewitt Tentacle Wrangler

    Quick query- I can connect as any player that isn't the UUID I put into the Config.json.
    The Owner UUID that is.

    Any solution to this?
     
    Last edited: Jan 30, 2014
  9. Maffi

    Maffi Astral Cartographer

    This is the intended behavior. Use password protection on the gameserver to restrict access.
     
  10. Maffi

    Maffi Astral Cartographer

    It should. Feel free to try though...
     
  11. hbrewitt

    hbrewitt Tentacle Wrangler

    I wasn't worried about restricting access- rather that I'm unable to connect as the owner?
    Thanks for your help anyway!
     
  12. Carrots Are Mediocre

    Carrots Are Mediocre Zero Gravity Genie

    I have just released version 1.1.0, I recommend all users upgrade.

    Partial list of changes:
    • Many fixes, large and small, regarding connection handling.
    • An admin messenger and whisper system. PMs are handled with the syntax@user:Message goes here, admin messaging with @@Message to the admins goes here, and server announcements with @@@Server announcement goes here.
    • Simplified syntax on /warp command. Removed coordinate warping for the time being due to syntactic issues and the current difficulties with translating arbitrary x/y's into a 3-tuple.
    • Alphabetically-sorted configuration output.
    • Improved output of /who and /planet commands.
    • Changed default planet protection level to UserLevels.REGISTERED instead of ADMIN.
    This release is backwards-compatible with the previous player DB format, though future ones may not be. There are some minor changes to the configuration options that will need to be accounted for. Please adapt your current configuration file into the format provided in config.json.example.
     
  13. Zelakto

    Zelakto Void-Bound Voyager

    You should add the command /admin to, because some people, like me go on a server that is a dev server (aka Starbound: Lets Fix All The Stuff Edition!) and can use it for testing and stuff. Watch bartwe's stream to try this out yourself.
     
  14. Silverforte

    Silverforte Spaceman Spiff

    Does this have a /broadcast function?
     
  15. Zelakto

    Zelakto Void-Bound Voyager

    No, but a nice suggestion.
     
  16. Zelakto

    Zelakto Void-Bound Voyager

    I think I found a bug, the server froze for a couple seconds, and StarryPy stopped working, which however, didn't stop the server. This happened while I was seeing what passthrough does and while doing /help passthrough.

    Code:
    2014-01-30 01:39:45,585 - starrypy.plugin.player_manager - INFO - Player Zelakto
    is now on a ship.
    2014-01-30 01:40:23,555 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID bae87707a15d43d9b575fbb468696b3f
    2014-01-30 01:40:23,555 - starrypy - ERROR - Couldn't disconnect protocol.
    2014-01-30 01:41:04,565 - starrypy.plugin_manager.PluginManager - ERROR - Error
    in plugin <Plugin instance: player_manager (version .1)> with function after_con
    nect_response.
    Traceback (most recent call last):
      File "C:\Users\Zackery\Desktop\StarryPy-master\plugin_manager.py", line 140, i
    n do
        res = getattr(plugin, command, lambda _: True)(data)
      File "C:\Users\Zackery\Desktop\StarryPy-master\core_plugins\player_manager\plu
    gin.py", line 73, in after_connect_response
        self.protocol.player.client_id = connection_parameters.client_id
    AttributeError: 'NoneType' object has no attribute 'client_id'
    2014-01-30 01:42:43,970 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID ef30a1a73aae4b03bd37ecd9c61f0eba
    2014-01-30 01:42:44,911 - starrypy.player_manager.manager - INFO - Adding new pl
    ayer with name: Punktech-28
    2014-01-30 01:42:47,342 - starrypy.plugin.player_manager - INFO - Player Punktec
    h-28 (UUID: 5809cd3eafe2969a7036b40dfaf2b81d, IP: 192.168.0.14) logged in
    2014-01-30 01:42:47,505 - starrypy.plugin.new_player_greeter_plugin - INFO - Gav
    e starter items to Punktech-28.
    2014-01-30 01:42:47,528 - starrypy.plugin.player_manager - INFO - Player Punktec
    h-28 is now on a ship.
    2014-01-30 01:44:29,040 - starrypy.plugin.player_manager - INFO - Player Punktec
    h-28 is now on a ship.
    2014-01-30 01:45:21,773 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID b5d8043b06204eb78743329b2e504a24
    2014-01-30 01:45:21,775 - starrypy - ERROR - Couldn't disconnect protocol.
    2014-01-30 01:46:02,786 - starrypy.plugin_manager.PluginManager - ERROR - Error
    in plugin <Plugin instance: player_manager (version .1)> with function after_con
    nect_response.
    Traceback (most recent call last):
      File "C:\Users\Zackery\Desktop\StarryPy-master\plugin_manager.py", line 140, i
    n do
        res = getattr(plugin, command, lambda _: True)(data)
      File "C:\Users\Zackery\Desktop\StarryPy-master\core_plugins\player_manager\plu
    gin.py", line 73, in after_connect_response
        self.protocol.player.client_id = connection_parameters.client_id
    AttributeError: 'NoneType' object has no attribute 'client_id'
    2014-01-30 01:46:54,101 - starrypy.plugin.player_manager - INFO - Player Zelakto
    is now on a ship.
    2014-01-30 01:48:25,384 - starrypy.plugin.player_manager - INFO - Player Punktec
    h-28 is now on a ship.
    2014-01-30 01:48:32,832 - starrypy.plugin.player_manager - INFO - Player Zelakto
    is now on a ship.
    2014-01-30 01:50:32,552 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID fb9f132690be4f2883d6c81d28ad65a9
    2014-01-30 01:50:32,555 - starrypy - ERROR - Couldn't disconnect protocol.
    2014-01-30 01:51:13,571 - starrypy.plugin_manager.PluginManager - ERROR - Error
    in plugin <Plugin instance: player_manager (version .1)> with function after_con
    nect_response.
    Traceback (most recent call last):
      File "C:\Users\Zackery\Desktop\StarryPy-master\plugin_manager.py", line 140, i
    n do
        res = getattr(plugin, command, lambda _: True)(data)
      File "C:\Users\Zackery\Desktop\StarryPy-master\core_plugins\player_manager\plu
    gin.py", line 73, in after_connect_response
        self.protocol.player.client_id = connection_parameters.client_id
    AttributeError: 'NoneType' object has no attribute 'client_id'
    2014-01-30 01:55:34,352 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID 4e2d1cdd4d0946a6b116187a0894a080
    2014-01-30 01:55:34,355 - starrypy - ERROR - Couldn't disconnect protocol.
    2014-01-30 01:56:15,365 - starrypy.plugin_manager.PluginManager - ERROR - Error
    in plugin <Plugin instance: player_manager (version .1)> with function after_con
    nect_response.
    Traceback (most recent call last):
      File "C:\Users\Zackery\Desktop\StarryPy-master\plugin_manager.py", line 140, i
    n do
        res = getattr(plugin, command, lambda _: True)(data)
      File "C:\Users\Zackery\Desktop\StarryPy-master\core_plugins\player_manager\plu
    gin.py", line 73, in after_connect_response
        self.protocol.player.client_id = connection_parameters.client_id
    AttributeError: 'NoneType' object has no attribute 'client_id'
    2014-01-30 01:56:42,098 - starrypy.plugin.player_manager - INFO - Player disconn
    ected: Punktech-28
    2014-01-30 02:00:32,770 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID f6763130a07b44a4bef2b4ad2c2b7c68
    2014-01-30 02:00:32,773 - starrypy - ERROR - Couldn't disconnect protocol.
    2014-01-30 02:01:13,782 - starrypy.plugin_manager.PluginManager - ERROR - Error
    in plugin <Plugin instance: player_manager (version .1)> with function after_con
    nect_response.
    Traceback (most recent call last):
      File "C:\Users\Zackery\Desktop\StarryPy-master\plugin_manager.py", line 140, i
    n do
        res = getattr(plugin, command, lambda _: True)(data)
      File "C:\Users\Zackery\Desktop\StarryPy-master\core_plugins\player_manager\plu
    gin.py", line 73, in after_connect_response
        self.protocol.player.client_id = connection_parameters.client_id
    AttributeError: 'NoneType' object has no attribute 'client_id'
    2014-01-30 02:01:52,743 - starrypy.plugin.player_manager - INFO - Player disconn
    ected: Zelakto
    2014-01-30 02:01:56,131 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID 8db61b7c751549aebb37274bbc17bbd9
    2014-01-30 02:01:57,536 - starrypy.plugin.player_manager - INFO - Player Zelakto
    (UUID: 034b919e7a813755d30d579165266e9a, IP: 192.168.0.14) logged in
    2014-01-30 02:01:57,551 - starrypy.plugin.player_manager - INFO - Player Zelakto
    is now on a ship.
    2014-01-30 02:04:35,859 - starrypy.plugin.player_manager - INFO - Player Zelakto
    is now on a ship.
    2014-01-30 02:05:32,020 - starrypy - INFO - Created StarryPyServerProtocol with
    UUID 9c71482539fc4f5bbf321799dc0a627e
    2014-01-30 02:05:32,023 - starrypy - ERROR - Couldn't disconnect protocol.
    

    Edit: StarryPy doesn't want to do anything anymore. I launch it and nothing happens.
     
    Last edited: Jan 30, 2014
  17. Carrots Are Mediocre

    Carrots Are Mediocre Zero Gravity Genie

    The absolute newest version has a function that does much the same. If an admin prefaces his line with @@@ it performs a server broadcast.

    Are you running the most recent version?
     
  18. Indulgentu

    Indulgentu Aquatic Astronaut

    It seems the following command is broken: /move_ship
    When I try to use it, it says that the command does not exist. Help?
     
  19. Carrots Are Mediocre

    Carrots Are Mediocre Zero Gravity Genie

    Try /help move_ship for the syntax. Basically, just /move_ship player_name to move your ship to a player, or /move_ship player1 player2 to move player1's ship to player2's location.

    Edit: If there are spaces in the username, surround it with quotes like /move_ship "Carrots are Mediocre"
     
  20. Zelakto

    Zelakto Void-Bound Voyager

    Haha, nope. Must of updated it shortly after I installed the older one.
     
    Last edited: Jan 30, 2014

Share This Page