Also seeing the same. Down from avg 265 cpu to avg 225 cpu, but about 10 times as many soft and hard resets.
Posts made by Kasami
RE: Introduce boosts one teir at a time rather than all at rcl6.
It is an interesting idea, but I'm not sure I like it.
This will put RCL6 (and 7)-rooms at an disadvantage over RCL8 rooms with regard to attacking and defending. I think we have to find another way to make T1 ant T2 boosts viable.
If it is implemented, I hope it will at least only be implemented for usage (boosting), and that production of T3 boosts will still be possible at lower levels. Lab operations at pre-RCL8 already feels a bit pointless (unless it is the first room), and a simple workaround is just to sell basic minerals and buy boosts.
RE: What did you find annoying/hard when you started out with this game?
I remember the biggest challenge was movement, especially early on when I didn't know how to move without pathing around other units. I remember designing special highways to make sure the creeps always had roads when they needed to pass each other. Then BonzAI released Traveler, and a lot of things became much clearer as I modified to fit my needs.
Another thing is the special case of a spawning creep. A creep that is spawning has undefined TTL, so my find-filters (ie find creeps with at least 500 TTL left) caused me to spawn duplicate creeps. I still do that sometimes until i remember; "Oh, at least 500 TTL OR undefined".
Last thing I remember was going from one to two spawns, handling orders and energy available. I still only spawn one creep each tick in each room, as calculating if I can spawn the next in queue seems such a hassle compared to just waiting a tick.
And the last, last thing; I still mess up and get confused when looking at amount, totalAmount and remainingAmount for orders in the market.
RE: On the topic of open source code bases
Thanks for everyones feedback. It is greatly appreciated. What I have concluded is to discontinue the releases of KasamiBot in its current state.
My view on screeps has always been that it is a game about developing an automated AI, and hearing about coders who develop their own bot is discouraged by open source code bases like KasamiBot seals the deal.
My intentions where good, I wanted to allow players to have some competitive bots on private servers where they just downloaded the bot from steam workshop and added it to the game. As the current system is set up, it is just not possible to release such a bot without the risk of it being used on the public server.
The currently released KasamiBot is not very competitive combatwise, but will be challenging for beginners. I will be releasing an overview over weaknesses that can be used to take out KasamiBots, to help bridge this gap. My personal codebase has been rewritten and improved since the bot-release, so I'm not worried about releasing such weaknesses. That will at least force users to understand and further develop the current code base if they want it to be useful.
I also want to encourage beginners to write their own code, and I will write an tutorial based on top of the official tutorial to introduce more advanced techniques like remote mining, basic defense and pathfinding. It will focus on structure of the code, and hopefully teach new players some design patterns I've found useful. The end of this tutorial will be released as KasamiBot 2.0, but will basically be a framework to further develop a bot in.
As for bots on private servers, I encourage the developers to come up with a way to release a closed source bot. I don't know how this should be done, or if it is even possible, but if there is a way to release a bot without disclosing the source, I'm happy to once again release KasamiBot as it's intended usage, a private server competitor.
Again, thanks for all feedback!
I encourage everyone to check out #botarena (slack) if you are interested in developing automated bots, we have an very active community of botwriters who focus on non-interactive bots. It's a great place to learn, and the botarena starts are probably the most exciting thing to watch in the screeps world.
On the topic of open source code bases
It has decent economy and some defensive and offensive capacities, but not a big threat. (and a decent amount of unintended bugs)
I'm now thinking about releasing the next version, this time with focus on offensive and defensive capabilities. However I know there are different views on these open source code bases, and I want some feedback on this from both players and developers.
Some of them use it as a base for further development, others use it because they like the game but don't have the time or knowledge to develop their own codebase, and some are just NCPs (Non-coding players).
What I want to know is twofold, what do you in general think about open source code bases, and how should I release my next version.
Some options I've considered:
- Full code base
- Minified and uglified code base
- Full code base with some of the more powerful elements removed (offensive attack units etc)
- Do not release any more version
- Put in locks that prevents the code to run on the public server
- Put in trapdoors that over time handicaps the bot on the public server
I've read some suggestions about the last option, but I really don't like it, and will not do that. It will cause a bad experience for the players, and bad feedback to both me and towards the game.
I'm very interested in knowing what the players, developers and community managers feel about this,
RE: New improved WebGL renderer
I'm not sure if this is a local problem, or a general WebGL-problem, but I'm always getting the badge from the public server when playing on private and local servers (SWC, screepspl.us and botarena). Units and structures is affected. When I turn of WebGL it uses the badge it is supposed to use. World map shows the correct badge.
Tell if you need any additional information.
RE: New improved WebGL renderer
Extensions in abandoned rooms are often shown too large. I haven't verified it, but I think it is because extensions filled with 200 energy at RCL8 are rendered wrong when the room is abandoned/decayed. (200/50 energy)
RE: [Tournament] BotArena: Pure AI Battle Royale
While I like the idea of twists to the challenges in the BotArena, I do think the vanilla experience of Screeps is challenging enough for most people to automate.
Having disappearing rooms, constants changed, random map layouts, and random room layouts (source/mineral-count) etc would require a lot more dynamic AIs. While this might be the goal for automation, I doubt any of the AIs competing would handle such conditions without glitches (or is it just me ).
It would require a custom codebase for the challenge, and raises the bar for joining the botarena.
That said. I like the idea of such challenges, but maybe alternate between vanilla experience and custom challenges like:
- Week 1: Test week vanilla experience
- Week 2: BotArena, no code change or interaction allowed
- Week 3: Test week challenge
- Week 4: Challenge, no code change or interaction allowed
Props to Davaned for #botarena. I recommend everyone to start automate and join us.
I do think the screeps team should think about adding a seasonal experience for bot-developers influenced by botarena, an instance that is reset every month, has a very high tick rate and all players start at GCL 1 every reset. (but code changes are allowed, compared to current botarena)
I think there is a reason Blizzard has seasons in Diablo3, and I think Screeps could benefit the same way. Firstly, it promotes automation, but it also gives the players a new chance every month to compete with a blank slate.
RE: Add time in the CPU interruption notifications
If it is technically possible I would also love to have file+linenumber the execution was at when the reset occured. That would actually enable me to figure out which part of my code caused the reset. Right now I just have to guess.
RE: get attackers details
I don't see a problem with adding a .getAttackers()-function to Creep and Structure-prototypes, that returns the IDs of the things that attacked them the last tick.
If the creep/structure attacked is dead the next tick, so be it. The information is lost, it even feels a bit natural that the information is lost then.
I would prefer information about attacktype, creep/structure and player, but anything is better than no info. Even just boolean "attacked last turn" would be better than nothing. I'm notified by mail when I'm attacked, but if I'm overhealing I'm not able to detect it in code.