-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Description
This is currently a draft / work in progress.
This is a roadmap & attempt to highlight where you could start contributing to bring xxscreeps to feature parity with the official & private servers
Writing tests to verify the functionality we expect is one of the main places you could contribute. Once the tests are in place you can decide if you want to fully implement them as welll.
See https://github.com/laverdet/xxscreeps#getting-started and https://github.com/laverdet/xxscreeps#contributing as well
example of writing tests
TOC
Game TOC
Status | Feature | Test Coverage | Notes |
---|---|---|---|
RCL 0 | |||
✔ | Road | pathfinder tests with roads | |
✔ | Container | ||
✔ | Flag | ||
(✔) | construction site | lots of tests missing in regards to if a creep can build csites. range, resource, safemode, obstacles RCL and such | |
RCL 1 | |||
✔ | Controller | ||
✔ | Spawn | 100 | test verifies spawn direction, setting direction, cancel spawning, selecting extensions for energy, renewing TTL, destroy, unclaim |
RCL 2 | |||
✔ | Extension x 5 | ||
✔ | Rampart | #35 | |
ConstructedWall | |||
RCL 3 | |||
✔ | Extension x 10 | ||
✔ | Tower | ||
RCL 4 | |||
✔ | Extension x 20 | ||
✔ | Storage | ||
RCL 5 | |||
✔ | Extension x 30 | ||
✔ | Tower x 2 | ||
✔ | Link x 2 | ||
RCL 6 | |||
✔ | Lab x3 | ||
❌ | Terminal | ||
✔ | Extractor | ||
✔ | Link x3 | ||
✔ | Extension x 40 | ||
RCL 7 | |||
❌ | Can build 2 spawns | ||
❌ | Can loose structures due to RCL downgrade | ||
✔ | Extension x 50 | ||
❌ | Extensions contains 100 capacity | ||
❌ | Factory | ||
❌ | Lab x6 | ||
❌ | Tower x 3 | ||
❌ | Link x 4 | ||
✔ | Spawn x 2 | ||
RCL 8 | |||
✔ | Extension x 60 | ||
❌ | Extensions contains 200 capacity | ||
❌ | Can build 3 spawns | ||
❌ | Nuke | ||
❌ | Nuker | ||
❌ | Lab x10 | ||
❌ | Tower x 6 | ||
✔ | Observer | 100 | test verifies observer visibility, range and RCL levels, seems complete |
❌ | Link x 6 | ||
❌ | Power | power is not yet implemented #53 (comment), #53 | |
❌ | Power Spawn | #53 (comment) | |
❌ | PowerCreep | #53 (comment) | |
❌ | Power Bank | #53 (comment) | |
✔ | Spawn x 3 | ||
Game Api | |||
❌ | Room | ||
❌ | Pathfinder | ||
❌ | Constants | ||
❌ | market | ||
✔ | room visuals | The overmind dashboard completely renders, as well as dotted lines and circles. | |
❌ | map visuals | #17 | |
❌ | creep | tests following, swapping, but what is swapping second? and swapping fast?, safemode, edge fatique, pull. need to verify if we are missing some test cases. perhaps clarify some of them. | |
❌ | creep movement | An experimental / changed movement implementation has been made | |
Misc Features | |||
✔ | Tombstone | ||
✔ | Downgrade of RCL | #33 should disable structures you can't build like spawn, extension, tower, labs | |
❌ | Safe Mode | #40 adds a bunch of tests in regards to safemode | |
❌ | inactive buildings | extensions, spawns, towers due to RCL downgrades | |
❌ | GCL | Based on the overview, we are not gaining GCL | |
❌ | Map | ||
❌ | invaders | ||
❌ | construction site stomping | ||
❌ | simultaneous actions | simultaneous actions article | |
❌ | Deposit | ||
❌ | Mineral | ||
❌ | Resource | ? | tests are present that verify the store works with all resource constants, |
❌ | Ruin | ||
✔ | Source | ||
❌ | Source increase on claim/reservation and decrease on expiration/unclaim | MMO has sources increase to 3000 on claim, check this. | |
❌ | InvaderCore | strongholds | |
❌ | Keeper Lair | ||
❌ | Portal | ||
❌ | Event Log | #39 project card | |
❌ | Bots | ||
❌ | caravans | ||
❌ | auth tokens | ||
❌ | multiple shards | ||
❌ | cross shard portals | ||
❌ | WASM | ||
❌ | MODS / hooks | Everything is a mod in this implementation, question is if the proper hooks are in place, the backend seems to need a refactor | |
❌ | ability to override constants |
Client Support TOC
Status | Feature | Test Coverage | Notes |
---|---|---|---|
❌ | Connection with tokens | ||
❌ | Connection with username | ||
❌ | Market | ||
❌ | Market history | ||
market history | /api/user/money-history?page=0 | ||
❌ | Market orders | ||
❌ | 404 /api/game/market/orders-index | ||
❌ | 404 /api/game/market/orders?resourceType=energy&shard=null | ||
❌ | 404 /api/game/market/stats?resourceType=energy&shard=null | ||
❌ | Market my orders | ||
❌ | 404 /api/game/market/my-orders | ||
❌ | Decorations | ||
❌ | show your decorations | 404 /api/user/decorations/inventory | |
❌ | something with your themes? | 404 /api/user/decorations/themes | |
❌ | room decorations | 404 /api/game/room-decorations?room=W5N8&shard=shard0 | |
❌ | room decorations | 404 /api/game/room-decorations | |
❌ | room decorations | 404 /api/game/room-decorations?shard=shard0 | |
❌ | Leaderboard | ||
❌ | Messages | ||
❌ | show messages | 404 /api/user/messages/index | |
❌ | Overview | ||
❌ | room overview | 404 GET /api/game/room-overview?interval=8&room=W45N17&shard=shard0 | |
❌ | get terrain / room rendering | 404 /api/game/room-terrain?encoded=true should return error | |
❌ | get terrain | 404 /api/game/room-terrain?encoded=true&shard=shard0 | |
❌ | GET /api/leaderboard/find?mode=world&username=thmsn returns an empty list | ||
❌ | GET /api/leaderboard/find?mode=power&username=thmsn returns an empty list | ||
❌ | GET /api/leaderboard/seasons returns empty seasons | ||
❌ | Stats | https://github.com/laverdet/xxscreeps/projects/1#card-63686778 | |
❌ | 404 /api/user/overview?interval=8&statName=energyHarvested | ||
❌ | toggle steam user profile visibility | /api/user/set-steam-visible | |
❌ | Replay Room History | 404 GET /room-history?room=W45N17&time=33416800 |
Backend / Api TOC
Status | Feature | Test Coverage | Notes |
---|---|---|---|
❌ | map pngs? | 404 /assets/map/W9N11.png?etag=nothing | |
❌ | 404 /api/game/world-size?shard=null |
[CLI] TOC
- add/remove bots?
- strongholds?
Status Explanation TOC
Explanation | |
---|---|
✔ | Done |
(✔) | Done? - needs verification |
❌ | Not Done |
Notes
This might be interesting to use https://github.com/haadcode/roadmap-generator
example: https://github.com/haadcode/roadmap-generator/blob/master/example/ROADMAP.md#implement-new-project-management-model
Metadata
Metadata
Assignees
Labels
No labels