Posted March 05, 2022 by Aviv
It doesn't look like much, but this is where I've left things for the end of Day 1 of 7DRL.
This is Ghost: DroneSync, or just DroneSync for short.
You play as a mercenary, codenamed "Ghost" (you may remember her from some of my other games), sneaking into some unspecified, highly secure, complex to perform some espionage. You'll have to dodge guards and traps to stay undetected, achieve your objectives and exfiltrate safely.You won't be alone though. Ghost will have her personal cyberdrone <name TBD> to assist, allowing her to hack various systems and distract the guards, to complete her mission.
DroneSync is being written in DOME, using my personal framework Parcel on top. I've used iterations of this for other games before (including two other 7DRL entries), so I'm quite happy with it as a base toolkit for roguelike production.
On balance, day 1 was successful. I started the day with a character in a room that could move around (there are some recorded streams on my Twitch and YouTube showing this).
I very quickly began implementing the most essential behavioral logic I would want for the enemies in a stealth game, allowing them to:
Unfortunately, I lost a lot of time today due to a performance issue. The path-finding algorithms built into Parcel were running very, very slow when trying to generate paths between guards and the player, or other points, even for fairly trivial sizes of room and path. After 3-4hours of tinkering, I realized there was some kind of bug in the custom Priority Queue that these algorithms relied upon, so I ripped that out and added something simple and naive, and it ran smoothly again.
Once that hurdle was cleared, I started working on the elements required for a "complete game loop". This means that the game has conditions built in for success and failure, and ways to handle them. They are rudimentary, but they work. You can be beaten up by the guards if you stand in their way, and you can reach an objective, interact with it, and escape. Alternatively, you can escape without doing the objective.
I'm following my development process from last year's 7DRL: I want to finish each day with a playable package, and every feature in it "polished" to a workable standard. It might be rough, but still playable. To help prevent scope creep, features for the game are grouped into logical "stages", so I can stop at each key stage and feel like the game is "complete".
Thus, you can download and try out DroneSync at different stages of development, if you like.
I think by the end of tomorrow I'll be able to make the core experience a bit more engaging, and make some steps closer to the high concept of the game. What I'd like to work on:
I should also be streaming during the evenings over the next few days, so feel free to drop by my Twitch to check out the progress. See you there!