See rendered version: https://tooangel.github.io/screeps/
This repository is World Driven. Pull Requests are automatically merged and deployed to the Screeps TooAngel account.
Head over to Quests
Happy to see you visiting one of our rooms. Visit FAQ to find answers
This is the AI I'm using for screeps. I managed to reach Top 10 from November 2015 - March 2016. Main Goal is to automate everything, no manual interaction needed.
The AI is deployable on a private screeps server, follow the information on
Steam or
npm install screeps-bot-tooangel
and bots.spawn('screeps-bot-tooangel', ROOMNAME)
This is not a good example for code quality or structure, most LOCs written while fighting or other occasions which needed quick fixes or in the ingame editor (getting better :-)). But I think there are a couple of funny ideas. Every contribution is welcome.
- Automatic Base building
- External room harvesting
- Basic mineral handling
- Power harvesting
- New rooms claiming on GCL level up
- Automatic attack
- Rebuild of fallen rooms
- Layout visualization
- Manual commands
- Graphs
- Testing
Add a src/friends.js
with player names to ignore them from all attack
considerations.
E.g.:
module.exports = ['TooAngel'];
Add a src/config_local.js
to overwrite configuration values. Copy
config_local.js.example
to src/config_local.js
as an example. src/config.js
has the default values.
Within the config_local.js
certain config.debug
flags can be enabled.
To add debug messages Room.debugLog(TYPE, MESSAGE)
and
Creep.creepLog(MESSAGE)
are suggested. Especially the creepLog
allows
granular output of the creep behavior based on the room and the creep role.
install dependencies
npm install
add your account credentials
To deploy to the live server provide the credentials.
export email=EMAIL
export password=PASSWORD
echo "module.exports = { email: '[email protected]', password: 'your-secret' };" > account.screeps.com.js
or edit and rename account.screeps.com.js.sample to account.screeps.com.js
And deploy to the server:
grunt
Create a .localSync.js
file with content:
module.exports = [{
cwd: 'src',
src: [
'*.js'
],
dest: '$HOME/.config/Screeps/scripts/SERVER/default',
}];
grunt local
grunt dev
Releasing to npm is done automatically by increasing the version and merging to master
.
npm version 10.0.1
git push --follow-tags
Every deploy to master
is automatically deployed to the live tooangel account.
node utils/test.js
will start a private server and add some bots as test
cases. Within in the tmp-test-server
directory the server can be easily
started via screeps start
.