Let’s talk these two projects and figure out why they’re taking so long!
A big part of mining is the water/gas system making sense. There needs to be a sense of danger other than just things that live below, so we thought to put in gasses and flooding. That’s fine, but like Dwarf Fortress, we’ve learned there’s a LOT more to this than expected. Honestly, it’s just crept up. From adding torches, to what happens if you throw one into open gas, to how to fix the flooding. Also, with the response to hiring helpers, some necessary work for them has snuck in. Like stamina, endurance, and what happens when they all flood and die.
- Map maker
- Veins and Mining
- Hiring Miners
- Added backend support to mobs and pathfinding to support movement and tracking on 2d overhead maps vs normal rooms
- Gasses/liquids (halfway, a solid two weeks)
- alloys/ores (shouldn’t be hard, just not sure of how far-reaching)
- Random Encounters (A good month of coding and building)
- Optimization (The Howling is LOOOONG when mines are open. Could take a few days of coding after everything else)
- Provisioning Tie-Ins (idea’d, but not made, could take a few weeks)
This joy is called ‘feature creep’, or in my old job, ‘scope growth’, though not quite the same thing. What we’re doing now is stepping away from getting it to a complete state, which has become a rabbit hole, and instead focusing on it from a design perspective. We’ll be sharing that with you as soon as the first two Mirrors are released, but basically, we’re stopping to say things like “Is it worth the delay to make sure miners choke to death on gas.” This should help us prune away what’s making the project endless and get it ready to release. De-scoping. We’ll look at the goal of the project, what ideas are met and what aren’t, and how much is in excess of that. For example, we could do Random Encounters AFTER release, freeing us up a month! But without having sat down, we might have started coding it early anyway and wasted time.
On a neat note, if we released this right now, it would be the largest code project Aetolia has ever done.
Our worst fears were true, and increasing the size of the defense/afflictions database is indeed a Bad Thing. So we’re going back over things and adding new fields, source and mirror. So when you use an ability from classA, it gives the messaging for that class and tracks who gave it, so that someone using mirrorA can’t build off your affliction/give you the same state twice. It also prevents us from having two defenses that do the same thing, yet take up two slots in the database, slowing down searching.
By having Razmael stop Mining until the de-scoping meeting is done, he’s free to help me do things like the above. With that database fix, we’re essentially done on the backend and can input the finished messages, then start events. That’s all doable by the end of the month. Wardens are his baby anyway, so there were a few things that needed his direct attention, and he was too busy!
- Most Backend Code
- Messages for Revenant and Warden
- Event Outlines, Boss for Revenant
- Event Outlines for Warden
- AB files
- DB Upgrade (few days)
- Message cleanup for Warden (they usually need 2-3 iterations, so, give a weekish, concurrent with other tasks)
- Last messages input (few days, two coders)
- Event script (few days, like 5 people writing now! Sometimes we abandon them altogether, if the event is right)
- Boss for Wardens (A day. And Boss sometimes just means puzzle, or event)
PS I’ll be doing this again in a week or so, to let you know how it’s going.