Screeps Discord?


  • YP

    @tedivm said in Screeps Discord?:

    How would that work with Discord? It seems like we'd either have to allow anyone to create webhooks (which I am not sure is possible) or the admins would have to manage this task every time someone wanted to add a new github repo or organization.

    discord has a very good permission system. there is a permission just for webhooks you can give to everyone .. or just to a group of users.. to allow creation in every channel.. or just to specific channels.. or maybe to a category...



  • @tedivm You could allow anyone to manage webhooks, which sadly allows deleting other people's webhooks. That is probably not ideal. There is no default "ownership" of a webhook, so all webhooks are the servers.

    You could create a role that could be handed out by admins that allowed the same thing, but to a subset of users manually selected to try and prevent abuse. Also not great.

    Someone could create a discord bot that managed webhooks using commands and gave ownership and limits to users, so that they couldn't create 10,000 webhooks and couldn't delete webhooks they didn't own.

    There is also the admin-only possibility, but that is probably the worst out of these options.

    As an extra note on the discord bots. I personally find discord bots very useful for displaying reference documents and other frequently asked questions in other servers, since you can save responses in it. For example it could be used to send direct links to the API reference with commands like

    !screeps dismantle
    !screeps privateserver
    !screeps tutorial

    And since they can do anything a normal console program running on the host computer could do, they are also capable of grabbing anything off the web, parsing it, and then taking some action on it. I have gone as far as to have them read item databases through an API and then read them using text to speech into voice chat. Obviously, this specific use-case has no purpose in Screeps, but it should give some reference to what the bots can do.

    I have created many discord bots, and I don't want to put this too lightly because time you don't have to spend is time you don't have to spend, but setting up one of these bots isn't very hard.


  • Culture

    @gankdalf your !screeps dismantle example is known as slash commands on Slack and are trivial to setup. We could totally do that if someone wanted to put the effort in.

    That being said the situation you describe for managing webhooks sounds like a nightmare. Either we have to let everyone access them and then clean up after the trolls, or we have to have a select group of people who have to do extra work now. The alternative for both of those would be that people can't add github webhooks for their projects.


  • YP

    @tedivm we don't have that many github integrations on slack... every developer only needs one webhook.

    most current integrations on slack are even public, so everybody can disable or remove them



  • @tedivm I will note that most discord communities I have seen do not try to have everyone on the same server for some things. For example, one of the games I play has a server structure like this:

    Official Server

    • general chat
    • official announcements
    • webhooks to main project
    • FAQ static channel
    • Guild/Alliance list static channel
    • trading

    Guild/Alliance Server

    • private channels
    • public channel for recruiting
    • lots of custom channels

    3rd Party Project Server

    • support channels
    • suggestions
    • project github webhooks

    The only reason this actually works in discord is because servers are free, fast to setup, and effortless to switch between. The closest similarity to Slack is more like discord servers are the slack channels, so when someone wants to create a channel for their own alliance, they create a server and link it back to the main server instead of creating a channel in the main server. This makes it far easier for newcomers to determine which channels are user-created alliances and 3rd party projects.

    Obviously, it gets a bit tricky if you want a generic channel that includes github notifications for every 3rd party project, since they would all need their own webhooks, but it depends on if that is actually the desired result.


  • YP

    @ags131 said in Screeps Discord?:

    if we are considering moving, we should also consider and evaluate other platforms too, rather than just debating slack vs discord. (I know there are several slack clones out there, don't recall their names though)

    I don't think there are many viable alternatives... many need self hosting and therefor at least some amount of hardware, support and adminstration. Also I think working mobile apps on iOS and Android are important.


  • Culture

    @w4rl0ck Mobile app support is definitely important, I have both discord and slack on my phone, although slack is far easier to use on mobile for me.


  • Culture

    @w4rl0ck if the admins were up for it I think it may be worth exploring some of the other options even if they require hosting. Obviously this depends on how much hardware, but most of these applications (at least the ones without a major audio component) should run just fine on a small server ($20 a month on linode would get you a 4gb server).



  • If I would have to choose between slack and discord, I'd choose IRC on one of the big networks.

    benefits:

    • open standard
    • won't get fired for using it at work
    • lots of clients to choose from (and some of them don't eat 2GB of RAM)
    • no walled garden
    • tons of integration options exist
    • easy to archive
    • venerable
    • can ignore others
    • no signup required - much lower barrier of entry
    • high nostalgia value, includes trout slapping

    drawbacks:

    • not owned by a startup desperately trying to make money or go public before funding runs out


  • @tedivm Your webhook and git problems are already solved via bots...
    Just pick the one which fits your bill. There are a ton out there.
    We use a github bot for wiremod and it is awesome.

    This is the public invite check how a working community looks like.


  • Culture

    @vrs ironically we started on IRC but people really liked using Slack instead. That being said we had an IRC channel, not a network, but the features such as scrollback, notifications, pinned posts, and integrations were also a big factor in moving.


  • YP

    IRC is really bad for mobile devices and not nooby friendly.. to make irc useful (for offline messages for example) you need a bouncer... something that's not easy to run for everybody.

    if you want you can use an IRC client to connect to slack.



  • I agree with WarInternal. I've used and love Discord for certain applications. Gaming with friends on FPS/RTS's is great, but it's a terrible choice for Screeps. Voice chat is the biggest "advantage" and serves no purpose here.

    One of the nicest things about the current Slack setup is everything screeps related is in one place. No matter the obscure chat or group you're looking for, they have a channel. IMO this would end if we switched to discord. Individual sub-communities would create their own Discord/Slack channel splintering the community. For example, I found out about #ScreepsPlus by just browsing the channel list.

    I also like to read Screeps on the go occasionally. I already have the Slack app installed for work. I'm not going to install the discord app solely for use with Screeps. I know personally I would be a lot less involved if it's moved to Discord.

    This doesn't even touch on the fact we'd be giving up code snippets. No code snippet support for a programming game! There's no arguing Dicord has many great features, but it's a poor match for our use case.

    👍🏻


  • I have no desire to switch to Discord. I run Slack at work and home and appreciate the fact that I can be signed into multiple accounts with it. The entire community is already entrenched in Slack. Why is this even a discussion? If we're having moderation users, promote some moderators. Slack is a privileges.



  • Slack. Easily the best option, the only downside is the history being lost. Otherwise its a clear winner vs discord.



  • Is Slack's history horizon a function of the new message rate? Is there a way to see how much or our history each channel is consuming? The short history is a problem, but it feels like it's been worse lately.

    I case you missed it. I'm in favor of keeping Slack. To me if feels like slack or some other programmer productivity chat app is the obvious choice. Screeps just doesn't fit well with near real time engagement on a gaming session that lasts a few hours. A much, much faster paced combat arena might benefit from a discord server, and a twitch stream. But even if a streamable game mode existed now Slack would still be the place where 3rd party tools and MMO strategies are discussed. I just don't see the realtime gaming chat client giving a worldwide community of developers what they need.


  • Culture

    Slack.

    First, I'm not really a fan of the way the OP in this thread was worded. It seems clear you knew we have a Slack already, and went on to imply that it was just ridiculous that we don't use Discord. Well, we have a lot of reasons for using Slack, some good, some neutral, but mainly we already use Slack so you should have to give justification why we switch.

    All new features start at -100 points. The entire community is on Slack right now - you want us all to move so you don't have to download a new app? The points in "favor" of Discord, apart from history (and history isn't exactly awesome on Discord) seem to be more like feature-parity. "Well, you can do $thing_you_like on Discord, too, except worse, with a bot, or a shitty interface (or both)." What are the advantages to moving? Because I don't see any. History is like +20 points, so you're still at -80.

    I don't see why this is even a discussion. Slack has worked fine for years. We've had our share of malicious users - about one every couple months, from what I hear - and we just ban them. It hasn't been an issue. The user privileges on Discord are worse - you have to be a member of every public channel on the server, you can't create new public channels as a user, and if you want a channel that people aren't autojoined to (thinking of something like #exception-thrown on Slack) you have to write a bot to add/remove roles from people.

    Finally, and in conclusion, Screeps is a land of contrasts.

    No, but seriously, I do have one final point. There are many programming communities that use Slack - I'm a member of a couple of them. There are no programming communities that use Discord. Screeps is a game about programming. The sort of person that would play Screeps, but doesn't know how to use Slack and is unwilling to, seems like the kind of person that won't like Screeps for very long anyway. Or, if they do get into it, they'll learn to write code ... and then they'll probably join a slack community ... and now they have Slack open anyway.

    Don't uproot an entire community (or stir everything up) because one guy is whining about having to open a second app. What the actual hell.

    👍


  • I also feel that discord is a bad idea for the screeps community. Slack has been going strong for over 2 years now. I am aware of at least 3 previous individuals that had complained and suggested discord as an alternative. Three previous times, it had been deemed a poor replacement. The lack of snippets alone is enough to get my non-concurrence. I agree with @Knightshade that we need an actual poll on what is important to the community. Snippets, integrations, channel creation, etc. I also disagree with the idea of everyone seeing what I'm playing. It feels like an invasion of privacy to me. I know I would be much less active in the community, and would probably step down as a moderator if it were migrated. I can have slack open at work. Discord would be a no-go.

    My disagreement of migrating away from Slack aside, if a poll comes back and the majority of the community felt that a migration was needed, I would recommend considering something @daboross had mentioned in the most recent previous discussion about migrating off of slack: the Matrix protocol and riot.im. If they were to host a Matrix server hosting the global channels, they could hand admins the permissions to add additional servers to the federation. @ags131 could, for example, host a server in the federation that maintained S+ related channels and handled their history. All of the channels would be available regardless of what server they connect to. Any features that were lacking could be resolved by the community, as the server is open source, and the devs could host a fork of the code on the screeps github that we could PR features into. Similarly, they provide APIs in multiple languages to connect to the server, so one could dev their own client if they do not like one of the existing ones, or fork an existing open source client to take advantage of any features PR'ed into the devs' fork. It would be very appropriate that the community had programmatic input on the server we chat on.

    TL;DR: I am against moving away from slack; we need a poll to decide, not listen to the vocal minority; check out matrix protocol where we could dev the features we want for chat

    👍


  • Another vote for slack, mainly because of NSFW nature of discord.



  • @gankdalf said in Screeps Discord?:

    Official Server

    • general chat
    • official announcements
    • webhooks to main project
    • FAQ static channel
    • Guild/Alliance list static channel
    • trading

    Guild/Alliance Server

    • private channels
    • public channel for recruiting
    • lots of custom channels

    3rd Party Project Server

    • support channels
    • suggestions
    • project github webhooks

    If we had a structure like this, discord would make sense. However, Screeps by nature is not very alliance based, and "3rd party projects" account for over 80% of the traffic if that includes shared code relating to the game.

    This is a game about programming, and slack's channel structure accommodates that. If we wanted to emphasize the "social network" aspect of the game, or alliances, maybe discord would work for that. But, at the moment, that's not what the community is about.


    If we're talking about alternatives, and if at some point we decide slack's history is a killer (which it semi-is right now), I'd agree with SemperRabbit about https://riot.im/. Matrix has the advantages of IRC that @vrs and others have mentioned of being a free protocol, and with riot.im hosting we'd also have scrollback and other features slack provides over IRC.