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. FuzzyThor

    FuzzyThor Existential Complex

    Add your uuid to the starrypy config file
     
  2. teihoo

    teihoo Ketchup Robot

    OK, so registered users can't actually do anything on the planet? Is that planet also protected for certain players? Try /protect_list if it says planet is not protected, then this shouldnt happen... If it is, then registered users still can't build on it, only ppl in planet list or admins can. But for protection to be able to pick up items, i'll look into it, will have to play with those blocked packets a bit.
     
  3. teihoo

    teihoo Ketchup Robot

    I was a little busy with reworking the 1.x version. Since I can't really do stuff on 2.x, since some stuff is not yet done, and it feels like I'll have to do it all over again when Carrots completes his work. So... I've touched a few issues where changed player names cause all kinds of weird things on the server, so I've implemented /nick names like in version 2.x, but that dragged a whole bunch of things with it... so I had to changed planet protects, banning, nick protection etc. When doing that, I've also noticed missing stuff, bad help descriptions etc... the sad thing is, that I had to modify player.db, which is why it requires DB reset (you have to reassign individual ranks again, as well as bans, but protected planets and bookmarks/pois should stay, you just need to move JSONs to new config/bookmarks folder).

    Its not up in repository (yet) because it requires player.db reset - best way to install new version is to create a completely new StarryPy folder (name it StarryPy14 for example) and then copy your config.json from config to config folder (we'll update this one in a bit with the new settings you need), and also copy plugins/bookmarks and plugins/planet_warps *.json to config/bookmarks folder.

    If you want to use old config.json, please add SERVER_NAME:
    Code:
        "plugin_path": "plugins",
        "port_check": true,
        "reap_time": 10,
        "server_connect_timeout": 5,
        "server_name": "--ADD NAME--",
        "starbound_path": "/opt/starbound/",
        "upstream_hostname": "localhost",
        "upstream_port": 21024
    }
    And remove PLANET_WARPS plugin:
    Code:
            "planet_warps_plugin": {
                "auto_activate": true
            },
    Since I've been testing this myself, there will still be some stuff I overlooked. At the moment, when you ban someone and delete it from database, there's no way to unban by name anymore, but im working on a fix for this. Also planet protect will add original char name, so if they're using nicknames this could look odd when doing /protect_list, I'll fix that too eventually, but it works correctly, so a bit lower priority for now. Anyway I'm planning on bringing all these features to 2.x once the core is a bit more functional. I will also push this to my fork once I get these last issues fixed. Here's a working beta, for anyone that just can't wait, or wants to help me out with tests: https://dl.dropboxusercontent.com/u/13248066/StarryPy_v1.4.1beta.zip


    Added controls to prevent demoting last Owner
    Added /nick and /nick_set command to change players nickname on server, had to change DB - reset required
    Colored names have been adapted to look for original char name, if nicknamed
    Uptime update (displays server version also), Motd update (reads SERVER_NAME from config)
    Changes to commands, many have been changed and unified (example: /plugin_enable /plugin_disable, /ban /ban_list, /player_list /player_del ...)
    Merged planet_warps into bookmarks
    Moved JSON files to config/bookmarks
    Permissions change for plugin management from ADMIN to OWNER
    Fixed all Syntax to display in new line
    Fixed all help messages, added missing ones
    Reworked /whois to work on offline players
    Renamed commands to be more unified
    Added /whoami command
    Plannet protect by org_name
    Protect_everything via /protect_all command
    Ban by org_name, Nick stealing protection
    /whois for registered and moderators (limited output)
    Last seen in /whois (updated code, to actually update date of last login)
    Removed localization (commented out for now, as its not implemented anyway)

    Planned:
    /nick_del (reset the nickname to default one)
    Display players in protected planets with nicknames, enable removing of deleted players from ban list
    Claiming of planets (probably will work on it today / tomorrow)
    Looking into Ship protect (after claims)


    I know its not what you guys want (since everyone -including me- is waiting for 2.x to be completed), but I figure if I make this version feature complete, it can also serve as a feature base for 2.x finalization.

    Edit: I've pushed it to my fork under v14-dev branch - available here with all the differences.
     
    Last edited: Mar 10, 2014
  4. SweFox

    SweFox Guest

    You already gave me that via PM right :D?
     
  5. teihoo

    teihoo Ketchup Robot

    There more updates here, actually been working on this whole weekend. Its finally getting where I want it to be :)
     
  6. traxo

    traxo Phantasmal Quasar

    Sorry, haven't been online for a while.
    The problem is, that you're still in the master branch (in case you don't know what branches are in git: http://gitref.org/branching/ ). So after you cloned the repository you simply cd into "StarryPy_plugins" and then enter "git checkout web_gui".
    The weird thing is, that you said the nma_plugin is also missing. That one exists in all branches. o_O
    About the Chat: I can only guess, that you have a wrong value in the "serverurl" option. Are there any error messages in server.log, webgui.log or your browser's JavaScript Console?
     
  7. traxo

    traxo Phantasmal Quasar

    Oops, overlooked your question.
    You have two options:
    1. you use git:
    • Go to the folder where the "StarryPy_plugins" folder should be put
    • enter "git clone https://github.com/traxo-xx/StarryPy_plugins"
    • go into the folder "StarryPy_plugins
    • enter "git checkout web_gui"
    • now you can find the plugin under "StarryPy_plugins/plugins/web_gui"
    2. download the zip.
     
  8. teihoo

    teihoo Ketchup Robot

    Found a small error in web_gui_plugin.py:
    def on_client_disconnect(self):
    should be:
    def on_client_disconnect(self, data):
     
  9. traxo

    traxo Phantasmal Quasar

    Sounds cool. When will you push the commit? :)

    Oh, thanks. Will fix that right away!
     
  10. teihoo

    teihoo Ketchup Robot

    Need to fix display for protected planets and still looking into db upgrade tool but that part looks ugly because of SqlAlchemy. Hopefully tomorrow.
     
  11. Snowpup

    Snowpup Giant Laser Beams

    Ah this has changed. How do I add people to said planet list?
     
  12. FuzzyThor

    FuzzyThor Existential Complex

    /protect somename
     
  13. Snowpup

    Snowpup Giant Laser Beams

    Wonderful, thank you kindly!
     
  14. lordglythglyth

    lordglythglyth Pangalactic Porcupine

    how do u exit the shell without crashing the server?:/ crontrol A + D does nothing at all
     
  15. knoffel

    knoffel Starship Captain

    Start in screen.
     
  16. NuRRi

    NuRRi Starship Captain

    I dont get this wrapper to work.
    Am using ubuntu 12.4 and have installed python 2.7, python-dev and python-pip
    when using python server.py in the Starrybound folder

    I always get:

    Code:
    Traceback (most recent call last):
      File "server.py", line 11, in <module>
        import construct
    ImportError: No module named construct
    
    And yes i used sudo pip install -r requirements.txt before.

    If a take a look to the logs when installing the requirements.txt I see this error at the end:

    Code:
    running build_ext
    gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c conftest.c -o conftest.o
    unable to execute gcc: No such file or directory
    building 'twisted.test.raiser' extension
    gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c twisted/test/raiser.c -o build/temp.linux-x86_64-2.7/twisted/test/raiser.o
    unable to execute gcc: No such file or directory
    error: command 'gcc' failed with exit status 1
    
    I tried to install all the packages again but nothing works...
    Perhaps someone can help.

    Thx alot
     
  17. Higgins

    Higgins Tentacle Wrangler

    Install build-essential
     
    traxo and NuRRi like this.
  18. NuRRi

    NuRRi Starship Captain

    Thanks a lot Higgins. This fixed the problem.
     
    Higgins likes this.
  19. traxo

    traxo Phantasmal Quasar

    Made a new branch with some minor modifications to support org_name and make the name editable:

    https://github.com/traxo-xx/StarryPy_plugins/tree/web_gui_v14x-dev


    What changes did you make on the database? I only needed to modify my existing database with "alter table players add column org_name varchar(250)" to get StarryPy and the WebGUI to work with it. Didn't test anything else though.
     
  20. Snowpup

    Snowpup Giant Laser Beams

    For those that can't log-in because their username is locked or taken (somehow) how would I go about removing them?

    In other words, where is my player list located at for all players and their UUID's?
     

Share This Page