Terms of Service question on 3rd party Account Operation



  • I'll add my two cents to the conversation since Hive may have helped generate this particular conversation (even though I realize these same question existed long before this event and will continue to be asked long after). I don't think we want to be playing this game dominated by botnets. I don't think the intent of this particular module is to take advantage of players who have long since quit the game but it does enable that. I don't think there is anything wrong with active players using automated communications to enact basic functions (resource help, passage through rooms, defense requests) but that isn't really whats being talked about here (even if that is what is being proposed). We are talking about controlling others accounts and I don't think that is anything that we should want to allow, but I also don't think that is anything that can be enforced by the game devs or the TOS. I think this is an issue that we need to address as a community and enforce as a community.

    The current Hive event is an instance of this, we in the Hive see running others code as a problem. We watch the new novice zones that pop up and we talk with a lot of new players and what we have been seeing more and more often is that these new novice zones are being dominated by new players running others code, and when we talk to the other new players in the zone we are hearing a lot of frustration with not being able to compete with these other players who started playing at the same time but simply run someone elses code. Now I don't think opening up your bot code (bonzaiferroni and tooAngel) or having a shared downloadable complete code base (OCS) is against the TOS or should be restricted by the game developers, but I do think that in the screeps community when we see what we identify as a problem, we should act on it. This means we will all have different problems and all be acting on different things (I know on at least 1 occasion I have been identified as a problem) but I think that is how these issues should be worked out.



  • @Tedivm I do not share your disdain for collaborative coding projects. I cannot quantify whether or not OCS has a negative impact on the community. I generally shy away from making moral judgments unless backed up by concrete facts and analysis.

    Judging that OCS has a negative impact on the experience of new players by having a few targeted conversations with individuals in novice areas does not quantify as a proper analysis of the subject.

    I do however agree with Rajecz on the fundamental principle that the community itself should be the one to organize itself and react to matters that are judged destructive to the well-being of the community. I do not feel inclined to make the judgment that he has made regarding OCS, but I do respect the principle of taking matters into one's own hands.

    I've been part of MMO communities and MMO strategy games since the golden days of 2003. As Bonzai has correctly noted, the only realistic cases where multis get banned by game admins is when there is concrete proof. In all of these communities, it is almost always the community core itself which actively organizes and targets "known" abusers.

    On the subject of collaborative projects themselves, I must confess a double standard. I find it perfectly acceptable for veteran players to band together and work on a collaborative project which one or all might be running.

    It's all a lot less clear when it comes to completely new players making use of a predeveloped code base. I personally found the early challenges and experience fascinating. It was an excellent learning opportunity. However, I can also imagine with ease how joining a project such as OCS can be better suited for personalities and experience levels which defer from my own. I cannot assume that everyone's relationship to the game and their path must match my own. Without making a systematic, concrete analysis of the impact OCS has in the various novice areas it exists, I must refrain from judgment.


  • Culture

    What if, to be allowed into a novice zone, you could only have (say) 50KB of code? Enforced at upload time, so if you hit the 50KB limit while you're in there, guess you need to go remove some characters from variable names.

    That'd solve the novice zone problem at least. You want to download a fully developed codebase? Then play with the fully developed players.

    edit: But of course then you'd have the problem with some super-optimized codebase that fit in 50KB out there to download. Still, it seems much less likely to be a problem - you have to put effort into that, specifically, and improving your 50KB codebase doesn't help your "main".


  • Culture

    I do not see any statement I've made about a "disdain for collaborative coding projects", and I've released or started several open source projects on my own. I'm going to ask that you stop trying to start arguments or vaguely insult people in these threads and focus on the discussion at hand.

    What I want to know is what the community feels the line should be (both socially and with regards to rules), and where the admins plan on drawing their own lines. Games are made up of rules, and I think it's better to have those rules be clear and known. I think it's important to talk about how rules can be exploited when creating them, or whether it's even feasible to enforce them at all, so that means bringing up some worst case scenarios. 

    I also think it's important from another level to discuss where "multiaccounting" is allowed. As I'm sure everyone on this thread knows I have two accounts- one that I play with, and one that is a pure "API" account that is used to run the "League of Automated Nations" site (it's probably sent you a log in message). The admins haven't banned the league site, have endorsed it on several occasions, and even added a new API Endpoint for us to use to create the LeagueBot. So when it comes to multiaccounting there are clearly exceptions.

    I am also aware of one instance where an account was banned for being a "multi account"- a player who had been wiped but had still had active controllers used a friend to pay for a subscription (either by getting a steam client or via the web, I'm unsure) and uploaded their own code. That new account rebuilt the original player's spawn and bootstrapped back up from dead, and the second account was banned as a result (and we have no proof that the second player wasn't actually controlling the first players code).

    So we have one example where using a second account is allowed, and another example where sharing code with a friend who just purchased an account (not against the rules according to people in this thread) did get banned. What if I get my girlfriend an account, place a single room in the game just to have a terminal, and use this to drive a new third party web service that's open to the public (like LoAN) but actually interacts with the game world?

    I think it's pretty clear that it's time for a revision to keep up with how the game has evolved and people are experimenting with things more. I'm not saying more restrictions need to be put in place, just that things need to be clarified.



  • I'm not getting it why there are so many concerns about OCS.

    1. Sharing a codebase

    When I started playing screeps, there was this option to publish my code to github. Offered by the screeps application itself. I never used github before. But having a code repository seemed to be a good idea, I'm used to other repos.

    But Github is a public place (by default, without paying higher fees). After I loaded my code to Github, I added a little readme file (if anyone would enter) and explored Github, started to add tons of issues (simply to organize my own work, remind me of what I wanted to do). Quite fast the first collaborators showed up. Which was great, of course, and it was the beginning of what we have now.
    So, what the hell is the problem with collaborating on a shared codebase? codeBASE!

    It is intended to alter our code. We provide simplified code injection, lots of parameters etc. Also, there are a lot of different combinable branches.
    So each OCS player, in general, is running it's very own code.
    There could be some players who are simply running the "default" raw codebase, but that wouldn't make any sense at all in the long run.

    However. If it wasn't intended to collaborate on code, that github option wouldn't/shouldn't have been there. 

    2. Current Hive Hunt Event

    We may be the largest alliance regarding player count. But most of them are novice or low GCL players (compared to other alliances). Focusing on offending them means focusing on offending new players.
    Personally, I don't think this is a good idea.

    3. 3rd party account operation

    I can understand that there are some concers about this idea. This is why Karl did the right thing to discuss this topic openly.
    Please try to stick at that topic.


  • Culture

    I think the reason why OCS keeps bring brought up is that one of their players started this thread, and the questions they raise about what is or isn't allowed are good ones.

    There is a separate cultural issue that we seem to be veering off in to, but I too would like to focus on the main discussion regarding what should or shouldn't be covered in the terms of service, and what changes (if any) should be in the terms of service.



  • I agree with cyberblast that said "cultural issue" did not need to be introduced here and is a distraction.


  • Dev Team

    This is a complicated topic. While I find all comments in this discussion very interesting, I should highlight that we try keep our rules as non-invasive as possible to keep the game entertaining for all players at the same time. In most cases, we stick to the following logic:

    1. If your code base is unique, you're safe. You can even register multiple accounts, but if they use completely different codebases, they are considered different players, since there's no way to distinguish such a case from a family member playing at the same computer.

    2. If your code base is shared, we need to have clear evidence that this is you playing this code base, not the code base owner. In case of any doubts in this regard, we'll investigate your account activity and may ban your account if we have proofs that the account is used only to expand this code base influence without your participation as an individual player.

    We don't restrict players collaboration and interaction of any sort, including automatic collaboration and interaction. All rules applied by ToS are related to user accounts activity, not to code base features.



  • Based on this judgement I think that I will introduce a build signature for OCS members code and will consider a strong caution about circumventing the ToS using command and control features.



  • As always, I'm late to the party 🙂 Interesting discussion.

    Artem: Thanks for clarification. If you ever have any issues with my code base, let me know. Didn't happen yet, so I think I should be fine. It also tells me, I shouldn't include anything which sends me resources 🙂 (never seriously planned)

    Even though I think the discussion is over, with an expected and highly appreciated result, still I would like to add my cents:

    Multi-account is a no go. I thought about it by myself a couple of time, to be able to test my attack and defense, but this is solved with the private server. So no reason for Multi-account (tedivm your second account is fine).

     

    Communication protocol: I wouldn't have opened a thread here, I would have expected that it is fine. Planing it anyway since a couple of month, while the authentication is in my case much more important and tricky, than sending some commands.

    New players: I'm well aware that some new players are upset by my code, sometimes by the players using my code. It is not necessary a screeps question: Do I reinvent the wheel or do I just use a framework or ready made system. Reinventing the wheel and being upset that you are slower, well I'm missing the understanding for that. Btw. my autoattack is not that strong, I see it more as the minimal level you should be able to handle to survive when the newbie area times out. Just to make it clear, I fully understand the fun in writing the first thousand lines of code, I started from the scratch, there were some code pieces (not compared to today), but I wanted to do it on my own. I wouldn't do it again, today.

    The Hive event: Whatever, I don't mind. - Slowly I get the messages from players using the TooAngel AI, mostly from active contributing members. And this is exactly the point where the argumentation for the Event breaks in my opinion. I think it got more tricky to attack other players, because of the alliances, without provoking a proper War. If you want to attack certain players do it (I would do it), but please don't try to reason it by something which is not true. Tbh I think it is boring to attack more then one TooAngel AI, the next one will anyway behave pretty similar 🙂

    TooAngel Bot: (I distinguish between the bot for the private server, and the TooAngel AI which is the actual logic). I didn't plan to opensource my AI or let other players use it (I didn't announce that my code is opensource at anytime, except of now?;-)). I wanted to release my code as bot, so that I'm able to play against it. From the feedback I got, it is highly appreciated. So you can't have both a bit more advanced bot that the simple bot, but no fully automated code available.

    Because I'm mainly developing with the bot in mind, this my most tricky part for the communication. How do I make sure that I don't friend up with the TooAngel bots on the private server, while doing it with the TooAngels and ocs on live 🙂

     



  • Thank you for the clarification Artem. Let me check if I got this right.

    The issue is not about how similar the code base may or may not be, but whether or not there's a real, active individual behind every account.

    Each account must have an active individual controlling it and one individual may not have more than one account.

    Automated collaboration is fine if it is in between active players, but results in a ban if one of the accounts involved is inactive.



  • It is important that these statements are tied to the Terms of Service, but perhaps a change to the terms is required.


  • Culture

    Atavus, I don't think your summary is accurate. You say-

    > Each account must have an active individual controlling it and one individual may not have more than one account.

    But Artem said-

    > If your code base is unique, you're safe. You can even register multiple accounts, but if they use completely different codebases, they are considered different players, since there's no way to distinguish such a case from a family member playing at the same computer.

    It seems to me that there is no problem with me having multiple accounts as long as they use a different code base.



  • Again, this is why it is important to tie the action to the Terms of Service.

    Artem has revealed that Screeps possibly does not have the resources to preemptively investigate individuals who intentionally multibox with different codebases, but that certainly won't be their position for long if it becomes popular.

    As tempting as it may be to lodge a protest against this decision using such a method I would advise against it.



  • Hm...

    I feel that statement was naively permissive.

    It might be acceptable to have a 10CPU code base and a regular code base.
    It might be acceptable to have an additional AI with a complex non-competitive purpose like yours Tedivm.

    However, I find it highly unlikely that Artem would allow 1 person to simultaneously run and control a bonzAI, tooAngel AI and OCS AI.

    Artem's argument that it is not feasible to identify whether that is 1 person or not, has no relevance on whether such behavior is considered acceptable or not.


  • Culture

    Artem's words were that multiboxing is allowed if you have unique codebases on all of your accounts.

    So that is what the rules are. It doesn't sound like he said "well, we can't possibly investigate all of these so it's just a thing that can happen". He said "If your code base is unique, you're safe. You can even register multiple accounts, but if they use completely different codebases, they are considered different players".

    There isn't a lot of interpretation space there. He gives one of the reasons he came to that decision, that being "it's hard to distinguish between people playing from the same machine", but those are the rules he gave us, in the thread specifically asking for a clarification of the rules.

    If you want to "lodge a protest" by registering five accounts and loading up five unique codebases, I imagine that he would be happy to take your $50 a month.


  • Culture

    Huh, it seemed pretty clear to me that he was saying multiple accounts are okay as long as the code base is unique enough. I don't see anything in his statement to contradict that, and while I can understand your feelings about it I think we should shy away from making moral judgments unless backed up by concrete facts and analysis.



  • Interesting.

    You're right, that is indeed Artem's statement.

    I find that the attitude against multi-boxing should be significantly harsher and should not be provided any public backing. Multi accounts are a plague on the majority of persistent MMOs and the devs should certainly not be voicing any support on the subject.

    This statement effectively authorizes the "utility" use of secondary accounts.

    Lost a base in a remote part of the world? No problem, just respawn your secondary AI which only has 100 lines of code and whose only effect is to reconstruct your spawn.
    Wiped out? No problem, your little friend will prop a few of your bases right up.
    Wanna create a secondary simple account whose only purpose is to mine and ship you minerals? Write it in a completely separate fashion and go.

    The argument that it is difficult to distinguish whether this is a single person or not is irrelevant on whether this should be allowed or not.


  • Culture

    > Lost a base in a remote part of the world? No problem, just respawn your secondary AI which only has 100 lines of code and whose only effect is to reconstruct your spawn.
    > Wiped out? No problem, your little friend will prop a few of your bases right up.

    These are literally the same thing written two slightly different ways. What if I ask my friend who previously hasn't played Screeps before to help me out by spawning in and rebuilding me? Is that okay, because I was able to convince another human to write the 100 lines of code? What if I give them the 100 lines of code?

    > Wanna create a secondary simple account whose only purpose is to mine and ship you minerals? Write it in a completely separate fashion and go.

    Your secondary account has to be able to defend its territory, and you have to pay for it, so it's not quite so simple, is it? And again, what if I pay for my friend's account, and they mine minerals and ship them to me because they're my friend, but they get bored with the game and don't develop beyond that?

     

    Rules have to be enforceable. In games, especially in this game, rules have to be very clear about what is and isn't allowed. Hence the origin of this thread! Have you read the OP? Where is the line? That's what this thread was about. Artem gave his answer: if you have very similar codebases, cooperation is curtailed, because you look a lot like the same person. If you have unique codebases, do whatever you want, they're separate people.

    If you think about it, it fits the game as well. Why shouldn't I be able to buy another copy of the game and build a 10 CPU account? It's an interesting challenge that I previously was unable to participate in, because I subscribe to the game on my primary account. Now as long as I write a different codebase to run in 10 CPU, I'm good.

    In game, the only unique identifier of a player is the uniqueness of their codebase. As TooAngel stated, once you've fought one TooAngel, you've fought them all. OCS is different because it's not full-auto, but the canned strategies the codebase provides are still going to be pretty similar among all OCS users and push those pilots into particular tactics. So to me it makes complete sense that that is the key to whether multi-accounting is allowed or not.

    Making moralistic arguments or appeals to the authority of "the majority of MMOs" doesn't make sense in this case. Another thing that plagues the majority of MMOs is bots, i.e. automated scripts playing the game, i.e. literally the founding concept of this game. The established "rules" of the MMO genre do not apply here, and I think we'd do well to avoid assuming that they do.



  • FYI anisoptera my interpretation is that the last to bullets in the main part are still not allowed. No multiboxing, no multi registration.

    Artem's statements are information and not directly connected to the ToS except where he literally said "we don't have any rules about command and control".

    He also gave us too much information about how they detect multiboxing and so we should wait for an update.