Screeps itself has a few methods for communicating with another player within the game. Some are more effective than others, depending on the kind of message your intent on sending.
Screep's ingame message system allows users to send and receive messages to each other. To message another user, go to their profile page and click 'message'. To view current conversations or history, you can go to your messages from the top left menu or by going to https://screeps.com/a/#!/messages.
By using RawMemory, a user can display a public memory segment other user's can retrieve. While each segment is limited to 100 kb, you can have 10 segments at a time active (out of 100 total segments) and can choose which segments are public.
A creep can use
creep.say() to display a message, the second argument accepts a Boolean (which by default is false) to display these messages as public. Meaning that other users can see the messages creeps display. Code wise, a user can get what a creep said the previous tick by reading the creep's
Any creep adjacent to a controller, can use the
signController() to inscribe a message on the controller. The message has to be 100 characters or less, it is displayed on the UI when looking at the room from the map overview or clicking on the controller for its details. A user's code can see the message as well by accessing the controller's
sign property, which returns an object containing the text, username of the user who made the message, the time in game ticks it was left and, the datetime which is the real time date the message was left.
Outside of Game
Screeps does have out-side of game communication for users to communicate with a wider Screep's world.
The primary way the Screep's community connects and communicates, it contains many different channels where you can talk about the game's various aspects, get help with general game mechanics, find tools and assistance in playing in different languages and more.
Slack was chosen as the primary communication method for Screeps as most developers (players) are familiar with how it works and use it already for their jobs. While the version used may lack history, it allows for many different channels to be set up on the fly, easy displaying of code and snippets, and allows users to sort their Direct-Messages via server they are on.
There are many, many channels in the Slack and more can be added by anyone. However, there are a few popular and mainstay channels.
Where most screeps conversations take place, and is the normal first communication point.
The next most popular, this channel is primarily for users looking for assistance with the game, their code, or mechanics.
A chat for non-screeps related content
One of the more popular language alternatives for Screeps, it is a very active channel where users can get information and share typescript related information.
The main channel for discussing and getting help with private-servers.
A channel where people discuss the automation of various tasks within the game, most of the time related to automatic building.
The announcements channel is for community wide messages, as such, it is requested that it will only be used for those messages.
This channel is primarily used for talking about using the in-game market.
The Slack channel for this very Wiki!
A channel where a bot automatically posts conflicts between users, rating them by the size of the conflict.
As with any community, short-hand messages or inside jokes happen.
NCP (Non-Coding Player(s))
Non-Coding Player, NCP is mainly stated to reference a player who uses an open-source bot and does not modify its code. While it is not disallowed in the Terms of Service for screeps, due to some community related events 'most' players have a hostile attitude towards players the perceive to be NCPs and will attack them on sight. The general concusses being, that the game is a coding game, and if you are not coding you are not playing. However, as it is not disallowed by the ToS of the game, it is a valid way to play should one choose to do so, just be prepared for the community response.
You can't say Murder
If you say the word 'murder' in Screep's Slack, you will likely be responded to with several gopher emoji. Tradition states that this word be reserved for advertising in-game conflicts and as such, many users have it set as a ping word for Slack. Now-a-days, there is #theWarpath channel that displays conflicts.
Read the ^%&!ing Manual, normally in reference for another user to look at the API & documentation when asking a question where a quick glance or search would reveal the answer.
There is no official (or main, unofficial) discord server for Screeps, the argument for a server has been made before however the developers and the community at-large have rejected the idea of switching for several reasons:
- The loss of regular users when switching from Slack to Discord would have a bad impact on the size of the community.
- Some user's workspaces do not allow the Discord App, while Slack is allowed.
- Some user's don't want their game/habits displayed for other users.
- Discord is considered mainly as a social network with its features, while slack is more strait-forward communication.
- The speed at which things happens in Screeps don't necessitate quick reactions that voice-channels enable.
- Direct messages are sorted at app/user level, not server, while slacks does.
- The Developers have said no, but did leave the door open for Screep's Arena to possibly have it.
While Discord does have its advantages as well, the main factor is buy-in, which at this point the developers and community are not interested moving to.
https://www.reddit.com/r/screeps/ is Screep's official reddit page.
https://twitter.com/screepsgame?lang=en is Screep's official twitter.