16 Commits (main)
 

Author SHA1 Message Date
Peery f5b1ff2931 Introduced Builder Creep & Bug fixes
Fixed an issue where the role map was not getting the unique role name and therefore no role could be looked up.

Added the BUILD_SPAWNS state to the SetupOverlord where it should create a builder and start building the other spawns. The create_spawns() function is not fully implemented yet though and the code to decide where to place the spawn is missing.
1 year ago
Peery 732e8270b9 Restructured SetupOverlord; Tuned down logging
Changed the SetupOverlord to wotk with a state machine and added a todo_list property to keep track of its requirements and other utility that needs to be remembered.

Also tuned down the logging to only log thrown errors or new decisions instead of all the constant noise.
2 years ago
Peery 9e5c269238 Implemented basic harvester
Finished a basic harvester logic which sets its harvesting and destination (where it brings the resource to) in memory which can be set by the overlord.
The harvester uses a state machine which persists also via memory to know what its doing and currently just travels to its harvest_spot, harvest, travels to its destination and delivers there and then repeats.

This means there is currently close to no error handling. For example if the storage is full, the harvest target is cooling down or the creep dies of age or damage is an issue. The creep also doesn't register its death or damage in anyway.
2 years ago
Peery 167f20d8b3 Very Basic Harvester logic & comments
Added more comments for explaining the code's intent
Added very basic pathfinding in the harvesterRole. Currently only moves the creep towards the nearest source and repeats the pathfinding process every tick.
2 years ago
Peery cbc99ae65b SetupOverlord now builds a harvester (WIP)
SetupOverlord now builds a harvester if possible with the given spawns.
2 years ago
Peery c211e84801 Added WIP SetupOverlord
Added an overlord for the room setup which creates the first creeps and starts harvesting energy.
Currently still WIP.
2 years ago
Peery 1f5296ad26 Added rough oragnizing structure
Introduced rough organization structure based on a hivemind ordering overlords which eventually order creeps and spawns.
Moved all source files into src/ so that grunt tasks can work properly on them.
2 years ago
Peery 17872b4e1a Added dist/ and .vscode/ to gitignore 2 years ago
Peery 25960f100b Added compilation tasks to Gruntfile.js
Added tasks to flatten the folder structure and rename the files and requires() accordingly.
Also added a task to insert a version.js with a global version variable as well as time-grunt to show the time it takes.
2 years ago
Peery b31b4b9a67 Added initial Gruntfile.js
Added a gruntfile to compile into dist/ and uses a credentials file (.credentials.json)
2 years ago
Peery 932e738d70 Added sample credentials file
Added a sample file for the credentials file used by Gruntfile.js
2 years ago
Peery 2698f321af Added credential file to gitignore 2 years ago
Peery 0a284f7c75 Changed grunt to be devDependencies
Changed grunt to be a dependency only for development.
2 years ago
Peery 445b0449dd Added Dependencies
Added the first package.json and its lock file. Currently they only include grunt (a task runner) and auto completion/linting packages for screeps.
2 years ago
Peery 487476d748 Added gitignore
Added gitignore file with node_modules folder listed
2 years ago
Peery af90db7985 Initial Commit
Very basic main.js which only prints all available spawns into the console
2 years ago