Why you were interested in screeps?
I am interested in the idea of setting up my own autonomous system, and seeing how it works in unpredictable conditions. I haven’t done anything like this before, where emergent goals take the place of hard requirements, so I thought it would be a fun way to expand my horizons.
How has your experience been with the Community?
From what I’ve seen, the Screeps community is one of the best communities I’ve encountered. Everyone is interested in teaching and learning from each other. New players are welcomed, and their questions are answered patiently. Even in the case of territorial disputes and in-game conflicts, the players see it as a challenge to be solved rather than a personal attack.
What are some challenges you have faced so far in the game? Any interesting interactions with other players?
I’m the sort of peson who likes to plan out how something will work long in advance, but there are too many variables in Screeps to do that easily. The biggest hurdle for me was simply working up the courage to join the public server with incomplete code. I haven’t had any interactions with other players in the game, since I deliberately picked an out-of-the-way spot for my first spawn – my creeps are woefully underprepared for any sort of attack. Even without immediate threats from other players, I’ll still need to think about the NPC attackers.
Have you come to any decisions about architecture when designing your codebase?
I am aiming for a system where jobs are the primary organizational unit. A job can request creeps with a particular build, and it can do whatever it wants with those creeps. This should be more flexible than a role-based system, since I can think about what needs to be done as opposed to micromanaging individual creeps. I’m not very familiar with RTS games, so I still have a lot to learn about the logistical problems that come with managing a horde of units. I’m still trying to figure out a good way to make sure resources are distributed evenly and with the correct priorities.