Giter VIP home page Giter VIP logo

starrypy3k's People

Contributors

amorporkian avatar dopeghoti avatar germaniumsystem avatar kamilion avatar kharidiron avatar tsunder avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

starrypy3k's Issues

Chat emotes

Add emote commands to chat window (/me (dance) and things like that.)

Party Chat

Allow members of the same party to talk privately with each other.

Add command documentation

Just a simple MarkDown file, or a page on the website enumerating the different commands that are available, and how to use them, grouped by role.

Chat censoring

If possible, have a dictionary that will check chat for cussing or rude words.

No more need to patrol chat for cussing etc.

Also allow the plugin to reload when adding new dictionary words on the fly.

Can not kick a player who DCed - and can not connect after

So a user crashes or the game kicks them out for what ever reason.

They then can't log back in as the error is along the lines of "As user is logged in already"

Can't not kick the player and the command doesn't reply either.

Reap time set to 1

Planet Backups

Plugin to aid in the process of backing up planets players have done work on.

StarryPy3k is running, but players are unable to connect

Thanks a lot for keeping this tool updated!

I tried running StarryPy3k on my server. It seemed StarryPy3k did launch, but whenever one of my character tries connecting to it, it shows "Joine failed" No server response" on Starbound client.

Here're logs of starbound_server and StarryPy3k.
(starbound_server log)
http://pastebin.com/paQ8YMut

(StarryPy3k log)
http://pastebin.com/d2tF4ser

(Misc. information)
Server IP:192.168.10.200
Client IP:192.168.10.100

Server OS: Ubuntu server 16.04 LTS
Python version: 3.5.2

Starbound server version: Unstable, release date 2016/7/20

Example configuration is woefully incomplete

I'll shortly be submitting a PR with a more complete example configuration file (and updating the README to reflect this), hopefully removing the needed step of starting and killing the proxy before being able to properly configure it.

defaulting specific roles for new users

I can't find a way to do this - is it possible to setup default roles for users?

IE if i want to give everyone planet protect functions in addition to the general commands.

If this is already possible please close this issue.

New Player Greeter

Plugin to greet new players, and provide them with some started items.

Error in chat

2016-09-20 19:03:34 - WARNING - starrypy.plugin.chat_enhancements # Sender [user] is sending a message that the wrapper isn't handling correctly

Uptime plugin

Query how long the StarryPy server has been running.

Cute, non-essential plugin.

Planet Visitor Announcer

Announce (to everyone on a planet) when a new person arrives on the same world.

This is a highly optional plugin, so I'm far less worried about getting it done soon.

Protecting Instance worlds.

I would like to protect my custom instance worlds and things like the outpost.

People are going nuts on it and crashing the server with an immense amounts of items on the floor.

Claims

Let users claim a planet for building.

Should tie into the planet protect system.

This will require a bit of work, so pushing it off for now.

Add filtering of unknown species

Currently, a player with an unknown (modded) species joining a server will cause the server to effectively crash. This bug has persisted through at least three minor versions of Starbound and a thread regarding the bug has sat for over 3 weeks.
Until ChuckleFish addresses this issue, the ability to whitelist species via the wrapper could be quite helpful.

A working proof of concept can be found here but it should be taken with a grain of salt. It appears to work fine but it was written by someone with very little knowledge of python.

StarryPy3k's RAM usage with Starbound 1.0.3

Hi,

It appears StarryPy3k's RAM usage has risen again since Starbound 1.0.3 hit. It is not as severe as before, but I saw python3 was using up 1.0 GByte of RAM after 3 hours of operation. During that operation, StarryPy3k logged almost 200 connections received and 60 errors.

As a side note, the server has been having a minor connection hiccups since Starbound 1.0.3. I am not sure if this is due to either StarryPy3k or Starbound. Starbound itself is eating up to 8 GByte of RAM after 3 hours of operation, with almost 30 logged errors.

Planet protection won't save when StarryPy3k quits

Hi,

It seems like what we do with /protect command won't save when StarryPy3k quits.
The last night we protected a few ships and planets and added a few players to their builder list. After restarting both StarryPy3k and Starbound, all the protection were gone.

Ban/unban issue

Concerning the un-ban command. If you unban via IP, the next reboot, the person is banned again. You must unban via the original name that was banned.

Planet Protect Plugin

While planet protect is already in and working, the setting on it is a bit restrictive; it blocks all on_entity_interact packets. This leads to people not being able to sit in chairs, use teleporters, open doors, etc.

/me command shows up universally

When using /me the end result comes up in universal chat.

Please make it so that the /me shows up in the current players chat status (E.G. local/universal)

Name sanitization

Sanitize player names always/upon join and when using /nick

remove coloring ^.*;
remove duplicate spaces
remove special/typeable characters (Limit to alphanumeric?)
maybe truncate name length

Users cannot be demoted

Currently, once a user is promoted, there is no way to demote/remove roles from them.

Using /promote (lower rank) (username) does not work.

IRC chat relay throws exceptions

Attempting to use .universe and .local commands in IRC to send messages to the game results in the following excepting being thrown:

AttributeError: 'MockPlayer' object has no attribute 'alias'
2016-08-01 16:54:48 - ERROR - starrypy.plugin.command_dispatcher # Unknown exception encountered. Ignoring.
Traceback (most recent call last):
  File "/home/steam/src/StarryPy3k/plugins/command_dispatcher.py", line 131, in run_command
    connection)
  File "/usr/lib/python3.5/asyncio/coroutines.py", line 209, in coro
    res = yield from res
  File "/home/steam/src/StarryPy3k/plugins/chat_enhancements.py", line 182, in _local
    sender = self._decorate_line(connection)
  File "/home/steam/src/StarryPy3k/plugins/chat_enhancements.py", line 98, in _decorate_line
    connection.player.alias)
AttributeError: 'MockPlayer' object has no attribute 'alias'

Remove /local chat

As of version 1.1, Starbound now includes local and party chat by default, so it is no longer necessary to include local chat in the wrapper.

Privileged Chatter

Chat commands for moderators, announcement/alert system, and moderator notification.

Since this hooks to the permissions system, and not specific packets, it should be relatively easy to implement.

A kicked client has "Player is already logged in." error when joining again

Hello,

I kicked my own character from the server using /kick. As you mentioned the client crashed, and whenever I try joining again on that kicked character, the game says "Player is already logged in." and won't let him in.

Here's the StarryPy3k log snippet.
2016-07-21 11:04:27,467 - WARNING - starrypy # Initializing connection. 2016-07-21 11:04:27,468 - INFO - starrypy # Received connection from 192.168.10.100 2016-07-21 11:04:27,468 - DEBUG - starrypy # New connection established. 2016-07-21 11:04:27,502 - INFO - starrypy.plugin.player_manager # Known player is attempting to log in: Usiemon 2016-07-21 11:04:27,502 - INFO - starrypy # Removing unknown player. 2016-07-21 11:04:27,503 - ERROR - starrypy # Client loop exception occurred: 2016-07-21 11:04:27,503 - ERROR - starrypy # Server loop exception occurred:CancelledError:

Add "maintenance" mode - reject new player connections

I prefer not to kick players off of my server if I don't have to, just to upgrade Starbound or the proxy.

It would be helpful to add an owner or admin command to tell StarryPy to no longer accept new player connections until either told otherwise or it is restarted. That way, server admins can flip this switch, and when the last connected players leave of their own volition, the service(s) can be updated and restarted.

Bonus points for either or both of giving a configurable message shown to rejected clients, or for managing the MOTD and in-game broadcasts.

Spawn command

Move a players ship to a designated world (hopefully free of cost).

Discord Bridge

Chat bot bridge for DIscord. Putting it as a goal for 1.1.

How can I enable StarryPy3k's admin command such as /kick?

Hello,

The latest commit seems running so far, but my owner character can not use /kick command.
The debug.log reads as follows:
2016-07-20 15:54:31,577 - ERROR - starrypy.plugin.command_dispatcher # Unknown exception encountered. Ignoring. Traceback (most recent call last): File "/home/usiemon/StarryPy3k/plugins/command_dispatcher.py", line 131, in run_command connection) File "/usr/lib/python3.5/asyncio/coroutines.py", line 209, in coro res = yield from res File "/home/usiemon/StarryPy3k/plugins/player_manager.py", line 763, in _kick if not p.logged_in: AttributeError: 'NoneType' object has no attribute 'logged_in'

I guess I must add a Starbound server user like we do in the plain StarryPy, but what name should that user have?

Whois a players IP

You can whois a user based on their ID.

Would be good if we could whois an IP to bring up the relevant information as well

IRC chat relay is not sent in-game emotes (/me dances)

If one plugin can loop into another, the general in-game chat plugin that catches emotes should check to see if irc_bot is active, and if so, send a mock chat message to the relay that emulates in-game actions/emotes.

IRC bot does not post chat from IRC in game

ERROR asyncio Task exception was never retrieved
future: <Task finished coro=<IRCPlugin.send_message() done, defined at /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/asyncio/coroutines.py:204> exception=AttributeError("'ServerFactory' object has no attribute 'factory'",)>
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/asyncio/tasks.py", line 239, in _step
result = coro.send(None)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/asyncio/coroutines.py", line 206, in coro
res = func(_args, *_kw)
File "/Users/rparsons/Workspace/PyCharm/Projects/StarryPy3k/plugins/irc_bot.py", line 249, in send_message
broadcast(self.factory, "IRC: <{}> {}".format(nick, message))
File "/Users/rparsons/Workspace/PyCharm/Projects/StarryPy3k/utilities.py", line 298, in broadcast
connection.factory.broadcast(_messages, *_kwargs))
AttributeError: 'ServerFactory' object has no attribute 'factory'

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.