- Added new method
- Updated all script servers to Node.js 6.6.0 (V8 5.1.281.75).
Introduced new room safe mode mechanics. It will replace room novice walls protection, and allow to arbitrarily safeguard your rooms while you are offline.
Safe mode is enabled on the room controller when a new player spawns in the world initially. It also can be triggered by any player manually using either the
StructureController.activateSafeMode() method, or the button in the controller UI. When activated, it blocks
withdraw methods of all hostile creeps in the room.
Only one room can be in safe mode at the same time. Safe mode period lasts for 20,000 ticks. It cannot be activated again during the 50,000 ticks cooldown period. But in Novice Areas, there is no cooldown at all.
In order to activate safe mode you spend available activations (
StructureController.safeModeAvailable property). You obtain one activation on each controller level upgrade, and also can generate it by
Creep.generateSafeMode() method using 1000 ghodium resource.
If the controller is downgraded, it loses all its available safe mode activations, and triggers the cooldown period.
Game.map.isRoomAvailable(with the opposite meaning). The old name is still available, but deprecated and will be removed in the future. Rooms in safe mode are considered available.
The Market system has been deployed.
maxCostoption to the
Math.ceil( amount * (Math.log(0.1*linearDistanceBetweenRooms + 0.9) + 0.1) )
Game.market.calcTransactionCostthat allows to estimate the energy cost of transactions via Terminals or market orders.
Creep.saymethod. You can set it to
trueto allow other players to see the message.
Creep.saymethod is set to
Creep.sayingproperty that can be used to read the message at the last tick, even by other players.
PathFindermodule related to incorrect pathfinding near room borders in rare cases.
RoomPosition.lookFor(LOOK_TERRAIN)now returns an array with a single element as documented.
Creep.withdrawmethod. It replaces all structures’
transfermethods which are now considered deprecated.
StructureSpawn.createCreepnow inserts a new dummy
Game.creepshash immediately. The
idproperty of such object is undefined until the next tick.
Room.createFlagnow inserts a new
StructureSpawn.renewCreepcost to the following values:
ticks = floor(600/body_size)
energyCost = ceil(creep_cost/2.5/body_size)
Creep.moveByPathnow accepts paths returned from
StructurePortal. This non-player structure instantly teleports your creeps to a distant room acting as a room exit tile. Portals appear randomly in the central room of each sector.