Is there any way to call a module or function from the console? For example a module that creates worker creeps, called from the console with my_module.add_creep?
Interact with Scripts from Console
4.1k Views Asked by Ben At
5
There are 5 best solutions below
0

The require
function returns a function so you can call it direclty in the console like this:
require('harvester')(Game.creeps.harvester1);
0

I've managed to call the lodash module from the console by calling it like this require('lodash').pluck(characters, 'name')
. Not sure if it works with user created modules.
1

I just figured this out today. But there is a nice way to access your methods from the console
Just import your methods to the Game object (in your script)
Game.creepManager = require('CreepManager');
you can now use the console by typing
Game.creepManager.yourFunctionHere();
0

Others have mentioned the use of require and assigning to Game, but you can also create new top level commands and objects by assigning to global.
Main loop:
global.rebuildMemory = () => console.log('Memory rebuilt.');
global.Commands = require('consoleCommands');
Then from the console:
rebuildMemory();
Commands.printRoomReport('W3N4');
For the given example, use
require('my_module').add_creep();
The require function returns whatever is assigned to module.exports in that module.@cho: require doesn't have to return a function. It rather returns a function because the module contains a function. If the module assigns as follow
module.export = {test: 'test'}
, follow snippetrequire('that_module')
will return{test: 'test'}
etc...Note: Not sure if others have this issue, but sometimes the console isn't returning a result at all...
In that case, try reloading the page.Just make sure the game isn't pauzed while executing commands...