Factories, new resources, NPC Strongholds
@tigga It was just a testing run. We've spawned 3 additional cores for every stronghold to test how they expand.
UPD: Removed them.
likeafox last edited by
"Strongholds are now always spawned in center rooms (or more precisely, SK center rooms, i.e. excluding the most center room)."
Can this occur in SK rooms that aren't occupied?
This seems a bit game/empire breaking for those who are already Source Keeper harvesting.
Looking around, I'm already seeing people losing 2K parts in less 1000 ticks the stronghold has been active.
wolffman122 last edited by
Yeah I agree. I was fine with the original patch a few days ago. Now that you changed it I am getting emails about sk rooms having trouble. This was not documented or put on ptr for the sk room change. Grrrr
Tigga last edited by
They could always spawn in SK rooms before. It was just rare rather than all the time.
TuN9aN0 last edited by
SKs already being marginally beneficial for energy everyone is probably better of just dropping them altogether until you can effectively tackle and loot strongholds. With the reduced invasions the energy actually becomes more efficient, and stronghold loot is probably selling better then looted boosts from invaders.
There is no such thing as "breaking" when we talk about SK rooms. They are not yours. Even when you manage to farm them steadily, they're still not yours. Any hostile player is free to come and mess with your algorithms. The "Invader" player is just another player in that regard.
Davaned last edited by
A player with 6 towers and unlimited boosted creeps It is fairly rough, although I do expect we'll see some tick times gained due to players dying off.
Davaned last edited by
I'd like to suggest the spawn rate for L3+ strongholds be reduced for a period of time to allow players to ramp up to them.
Making a hard stronghold be a rare occurrence is reasonable imo and would reduce some of the sudden overwhelming emergency players are feeling
hattu last edited by hattu
@artch : Building towers in a room without a controller is not something that "any hostile player" can do. Invader is not just like some another player. It has some special powers. If game mechanics are changed it may seem to break something that used to work differently (predictably) earlier.
I understand you need to add new content to this game, but you could have some mercy on us
IRL software specifications/requirements changes too and it causes sometimes extra work, so I think we're all good here...
@hattu It's a game though, it can have new game content, events, mechanics, systems, items, all this is good. We never promised the Screeps world is going to have all guarantees that regular software provides. It's an MMO game, not an enterprise programming framework.
Gink last edited by
@tigga Yup. I'm one of those 'not around' players. My code has been happily running itself for a long time, but having a level 3 stronghold pop up next to my room effectively shut down my SK harvesting and crushed my energy economy. It's essentially invisible to my code, so, ya know. Just kept pumping out creeps for the meat grinder until I ran out of energy.
Never being an 'offensive' minded player, I don't have code for attacking fortifications. I always just enjoyed base building, economy, etc side of things and only really wrote defensive code. Oh well. Devs gonna do what devs gonna do. I went not around in the first place as it felt more and more there became a "right way" that we were expected to play that didn't mesh what I enjoyed most.
Can't expect my non-updated code to stay relevant forever, but I'm sure I'm not the only one getting messed up by strongholds, etc. right now.
demawi last edited by
I looked at the expandStronghold code. Currently the next room reservation is deterministic. Perhaps it would be a bit nicer when the floodfill algorithm would use non-deterministic directions. And I would vote for a higher INVADER_CORE_EXPAND_TIME. Currently with 2000, if you're in the primary expand spot and don't have the ability to clear the stronghold, the reservation outtime is too high.
@gink Screeps world is a lot less fun if scripts are just happily running and their owners all are not around. For such passive gameplay we recommend playing on a private server, MMO is for PvP and PvE interaction.
@demawi No, it's not deterministic. On the MMO directions are chosen randomly on each step. Private server is not updated with this code yet, it still has 15K ticks expand interval.
Geir1983 last edited by
Decreased lesser (level-0) cores spawn interval from 15k to 2k ticks. This means a stronghold can spawn up to 40 lesser cores during its lifetime if remained untouched. But they are now quite weak and can be handled easily.
In my opinion the lesser cores respawn to quick atm, yes you can easily kill them, but a new one pops up to soon to take its place so it feels not worth it to go after them.
demawi last edited by
@artch ah ok.. I see the INVADER_CORE_EXPAND_TIME=15k on PTR but not on live it's still 2k
Lesser cores spawn interval now depends on stronghold level:
- Level 1: 4000 ticks
- Level 2: 3500 ticks
- Level 3: 3000 ticks
- Level 4: 2500 ticks
- Level 5: 2000 ticks
Orlet last edited by
@artch this makes all the sense.
Mwaahahahaha last edited by Mwaahahahaha
Some things looks strange to me with the store refactoring, is that intentional:
getCapacitywith a not valid resource returns
null, while using
getUsedCapacitywith the same resource returns
extension.store.getCapacity("power") // => null extension.store.getUsedCapacity("power") // => 0
It seems inconsistent to me, maybe it should be aligned on one or the other behavior (I personally think returning
0in both cases makes more sense, but the spec/doc seems to expect
nullin both cases).
getCapacityon tombstones returns
null(I guess it is the same for ruins).
I think there is actually no limit, so returning
Infinitywould make more sense and be more useful.
For example, having this behavior looks inconsistent to me:
tombstone.store.getUsedCapacity("energy") // => 500 tombstone.store.getCapacity("energy") // => null (even though there is actually some energy in the tombstone...)
Note that mostly, the issue is that when getting
null, we don't know if the store does not accept this resource at all, or if the limit is actually infinity. So if my first point is taken into account so that
0when the store does not accept the resource, then it would be kind of ok to keep
WarInternal last edited by
Since invader cores are hostile structures in room, we should be allowed to dismantle them.