What do you like about Screeps?
The fact that it’s basically a front-end for my code is wonderful, and I really like just sitting and watching my colonies work. It makes the abstract code tangible. If that makes any sense.
My background is an BSEE degree, but I’ve always had an interest in software, and 8 years ago moved to a job as a software engineer that does integration for warehouse conveyor systems, which means configuring and some custom code. Mostly in the C++/C# area. What drew me to screeps was that I enjoyed the Zachtronics games such as TIS-100, and noticed both the sale of Screeps and that it was using JS, which is used in the business world too (unlike TIS which is a homemade sort of assembly).
Advice for New Screeps Players:
That’s a bit tricky for me because it relates more to my background. I’ve never had a proper formal programming class like CS1-4, or whatnot, so everything I’ve learned about programming is through my own work. And I really like problem-solving. So the reason I like Screeps, and I guess my favorite part of it, is figuring out how to solve a problem and write the code to do that solution, while at the same time improving my developer skills to be used in an actual job.
- The tutorials sometimes get finicky if you don’t use exactly what they ask. Try not to get frustrated.
- Do not be afraid to respawn, move around, and find a good place. And don’t be afraid of the MMO server.
- The community is really nice, I wish I had reached out sooner to them on Slack
- Think to the future. My code is getting to the point I need almost an entire rewrite because it’s too inflexible to keep adding new things that unlock at higher levels, like power and boosting.
What are you working on now? What is your coding experience like?
I’ve been looking at minerals and trying to figure out how to make good use of the T1 and T2 compounds since RCL5 of my first room, in prep for mineral mining at RCL6. I actually do not yet have proper boost code – I have lab code to make compounds and have looked at how others use boosts. In fact, I really like that room visibility is only an issue at the code level, and that I can learn from others by looking at their rooms. Maybe not directly their code, but seeing how they organize, what combinations of boosts they use, etc, has really helped shape my ideas about how I plan to expand my own codebase.
100% of my code is written from scratch – I don’t believe I’ve used anyone’s code, I haven’t even looked at some of the common bots. The only real code I look at is the game engine itself, to help understand the mechanics of it, which I am also grateful is available. I also like to ‘think outside the box’ and do a lot of theorycrafting – I am currently looking at the viability of a T1 boost solution for remote mining on Shard3 to help with the CPU constraints there. Part of that code will include my first boost/unboost code.
Interesting Challenges or Experiences So Far?
I had a few creep wipes from NPC invaders, before 4. It got me to put in some emergency spawn code, so my rooms will always restart themselves, which I see as a positive. Also once the novice area dropped, I attacked the person next to me who had what I calculated to be roughly 60 days worth of Hydrogen harvesting in their storage. It was messy, and I used flags for a lot and manually controlled a lot of it, which in retrospect was tough to do and not ideal in terms of how I think of the game (automation and AI with minor ‘grand strategy’ direction)
But I have not yet been attacked by any other players.. though based on my current code, and watching the kind of creeps others can send, any player with RCL7+ and boosted creeps with half-decent code behind them could wipe me out in ~2000-3000 ticks. But then I’ll just respawn and keep improving my code.