Man, this game sure has come a long way since I last read through this thread (when it still had the scary dog face).
As for new ideas for gameplay, this game needs to have teaching tricks, with procedural results!
As for new ideas for gameplay, this game needs to have teaching tricks, with procedural results!
Oooh, dog training sounds pretty cool yeah!
I'll talk about that a little in this post!
I can totally imagine the 3D eyes being produced by accidentally or intentionally radiating the dogs.
Ah, that'd be great. I'm thinking more and more that I want the gameplay to be based around uncovering secrets and new mutations like this, tbh.
---
I was going to hold off a bit longer on unpacking my prototyping but I've stepped away from it for a bit and I think if I wait much longer things will start to slip from my mind so I'm gonna talk a little about my thoughts and experiments surrounding the game's direction.
So, I tried a few different things. I know I want to keep the pen gameplay around so everything's kinda stemmed from that. I feel super strongly about having a core, customizable, space to come back to and chill out in, but I've been frustrated that there's not much of a goal to guide your overall experience.
A while back I tried out dog racing. There was a lot of fun there but ultimately it was the sort of thing that, while interesting in the short term, did not have much scalability. Watching a group of dogs race slowly through an obstacle course is fun at first but it doesn't hold up as well as you might think. It becomes tedious after a bit, even more-so once you're rooting desperately for a specific dog to come out on top, so I decided not to revisit that.
The first new thing I came up with was to have a sort of adventure campaign. I'd build levels for you to go explore with your dogs and these levels would result in you finding new items, mutations, and lore. By mutating dogs in specific ways you'd unlock new ways of progressing through these levels, and so there'd be a little loop of adventuring to find mutation unlocks and then using those mutation unlocks to adventure deeper than before. I spent a few days setting up a movement and layout prototype with a test level but it quickly became clear that there were some issues.
This isn't the test level I built but it works well enough to illustrate my point. Watching dogs "physic" around is super fun when you're not in control of them or if you don't particularly care where they end up, but as soon as it's something you're trying to direct, things fall apart. The dogs move around well enough but they aren't the quickest. Again, this is fine when you're observing, or when you have the ability to just pick a dog up and plop it down manually, but when you're dealing with RTS-style controls it's really painful.
So I moved on.
The second thing I experimented with was procedural tricks (cheers). It's something I'd thought about back during the first few weeks of the project but never really explored so seeing your guys' posts got me thinking some more. I did some quick tests, but once again I ran into some issues.
I did some testing with mapping drawn screen-space lines to AnimationCurves that apply targeted torques to different limbs. To be honest, there were a few interesting things to come out of this but it still had some core problems. I was able to get the dogs to do a few simple tricks (rolling over, sitting, jumping, etc) but the limits of their physical setups became apparent pretty fast. The way I built them just isn't that conducive to a wide range of motions. Their bodies really just want to keep that default pose and most of their movements don't deviate too far from that. Anything they do that's more complicated is the result of conditional programming, not just raw AnimationCurve values. Procedural tricks is totally a valid system, but not for these boys I'm afraid. To really make a trick system that feels satisfying, I think I'd need to rely on hard-coded tricks mapped to learned inputs rather than anything legitimately procedural. The other issue here is that even if I got this system working perfectly, I don't think it's enough to carry the entire game experience.
And so I moved on again.
The last big thing I tried was arena battles. I actually don't have any good gifs of this because I didn't record any while I was building the feature and I recently broke it it pretty badly while working on save/load (more on that in a minute). I might go back to it at some point but for now you'll just have to make due with description!
The basic idea was that dogs would have different abilities they could learn based on genetics and you could train them over time to bring those out and improve base stats like HP and stamina and all that. Then you'd plop 'em in an arena and they'd duke things out. This came the closest out of all my prototypes (it wasn't polished but things felt like they had potential, and there was a concrete tie between the pen and arena game modes), but I decided to scrap this too for a few reasons. First of all, although it was starting to feel okay, I really think I needed another month or so of prototyping on it to know for sure that it'd work, and that's a lot of time. Second, even if I was able to make it work I wasn't in love with the idea of battling being the main gameplay. Not only is fighting something that most games already include, it also felt against the spirit of what I've been building. Violent games are great, I have no issue with playing or making them, but I don't think this is a game that needs that. That isn't to say that I was planning on making this game mode particularly brutal (I had some ideas on how to make it cute), but I just don't think it's the right fit for this project.
The two biggest things this little prototyping spree cemented for me were:
- Watching something struggle is cute. Being in control of that struggle is not.
- The less deterministic your simulation, the harder it is to apply traditional game mechanics to it. e.g. it's hard to build an upgrade system around increasing move speed when the best working version of your movement simulation is already fairly unpredictable and the rig setup is procedural.
Maybe somewhat obvious in retrospect, but I still kinda needed to prove these things to myself. So where does this leave me? Well I'm not 100% sure, to be honest, but I do have some thoughts.
Right now my idea is to build the game based off what already works. The game as it currently stands has no goal but is fun to look at and experiment with. I can honestly say that even now, after over a year of active development, I still find it entertaining to jump into the pen and watch the dogs go about their business for a bit. There's not a ton to actively do but it's fun to direct the simulation a bit. So rather than try and inject additional modes and control schemes into the game, I'm considering making it more about experimentation and discovery. Drip-feeding new objects, mutations, and bits of story to the player as a reward for experimentation.
First of all I'd like to give more direct control over genetics. Breeding through multiple generations is super fun so there's no reason to gate it as much as I am currently. Maybe eggs, once laid, are resources that you can hatch instantly whenever you choose, and maybe you can assign whichever parents you want and preview the results. Maybe you can modify a dog's genetics in real time with genetic injections. Maybe you unlock genetic modifiers for unlimited manual use after discovering them.
Second, I'm thinking that finding genetic modifiers could be the point of the game itself. Inbreed a dog to the point that it loses its eyes. Feed a dog a specific fruit that causes it to sprout vines. Keep a dog in the anti-grav room for long enough and its legs get super weak and spindly from lack of use. etc, etc. Maybe specific combinations could result in handmade specialty dogs like some of the wilder one-offs I've posted here before.
With a big enough variety of genetic parts, a bunch more objects and room modifiers, a bit of story, and some way of teasing the hidden unlocks and tracking progress, I think it could be a compelling experience. I'm still working things out, but we'll see. My next goal is to write out an overview of my vision for, say, the first 20 minutes of the game and then see how I can scale it from there.
Anyways, that's mostly it for now. I spent last week working on the game's save/load system (it works now and just needs UI!). I was gonna write about that too, but this post's gone on for long enough so I'll save it for next time!