November isn't over yet but on the whole it's been a pretty good dev month. Hurrah!
I'm still working long hours on my contract. But I have been finding an hour most days to get things moving along. Art and VO are both rolling again, plus I've got some new help on the coding side.
I've got some amazing audio down for Bree - I'm really really excited to share her with you, but the time is not right for that.
Because today I want to talk about Animation.
(Lots of words in this one, sorry in advance!)
[h1]Disclaimer I guess[/h1]
Right, first off, let me be really really clear.
This is a devlog in which I'm exploring the possible addition of a new feature. A big one. I make no commitment to deliver it, I make no promises, and I'm not trying to build hype.
What this is is a discussion about a technical and creative problem and its possible solutions. And if it doesn't work out I'll post about that too!
But anyway, as you've obviously guessed, I am exploring adding animation to Private Dick's sex scenes.
Animation is hard. It's expensive. Many games do it really really badly. But done right, it's a quantum leap in quality.
I've always wondered whether and how I can animate Private Dick. I've been a bit intimidated by it to be honest. And the addition of voiceover has only muddied the waters for me.
But a plan is coming together - if I can get over just a few more hurdles.
[h1]The problems[/h1]
There are two problems I have with animation in Private Dick. A creative one and a technical one.
The creative problem is: what does animation even look like? Like what animates, and when? How does it blend with voiceover? With interactivity? How do I show a menu with animation and allow players to make choices?
If you're played the Red Tie demo (and you have played the Red Tie demo, right? Right??), you'll see there's close control between the story, dialog and displayed image - as well as a lot of user interactivity. As you advance the story, the image changes in response. It's almost like a very very slow animation already.
Perhaps it doesn't seem like a problem to you, but I've been struggling with a clean vision for this for some time. It's always seemed to me that adding animation means taking away player freedom: the player gets fewer choices and I play a pre-canned animation on loop. And I really don't want to do that: player choice and expression within the scene is really important to me.
(Player choice across the whole story is NOT a big deal for me, and I'll talk about that one day)
The second problem is technical. And it's not so much a question of, can I physically animate scenes? I use an engine called Ren'Py which is very capable of animation, and there are other tools out there that specialise in advanced 2D animation. Ok, so I don't personally have a lot of experience with it, but I know the engine is basically limitless - and where it does have limits, other tools can help.
The problem is more about what's practical than what's possible.
When you're coding something - a game, a website, a tool - you're pretty much building a house of cards. Decisions you make very early on in the process can affect decisions much later: without a stable base, the whole thing falls down.
And when I say "falls down", pretty much what I mean is "add bugs". It is inevitable that as any program increases from 100 to 1,000 to 100,000 lines of code, the frequency and severity of bugs will increase. Sometimes a "small" bug fix requires re-writing hundreds of lines of code - and because other things depend on that code, a fix can easily to more harm than good.
Especially in areas where code is complex and poorly explained. In programming it takes hours of concentration to build a mental model of a problem or flow of code - and just days later it'll completely fade from your mind. Coming back into the same code months later, with your context of the code and problem long faded, it can impossible to understand what's going on.
Have you ever scrawled down a note in the middle of the night, looked at it in the morning, and had no idea what it meant? "BURY BEES"?! What?!
Well, it's basically that.
Anyway, I constantly try to manage and control the complexity of Private Dick (and indeed all my code) so that making changes later on is less risky.
Some of my sex scenes are already hundreds of lines long, with dozens of images that must be properly assembled together in-game, in order to flow properly. I can responsibly manage this level of complexity. Adding animation will add more complexity - more states, more logic, more images, more to go wrong. And it's a genuine worry that even if I get it working, I'll never be able to back in and fix any bugs which emerge later.
And I'm not interested in releasing a buggy, broken, unmaintainable game. If I can't make it stable, I won't implement it.
[h1]Solutions[/h1]
Well, over the last few weeks and months, I've been chewing these problems over. And I'm not sure, but I think I've figured it out. I'm certainly optimistic.
I've hired a pair of hands to help me, which solves my constant time management problems.
We've worked out a technical solution to loop animation alongside voice, and in such a way that I can properly control the state through story code. I think the complexity introduced by animation is reasonable.
There are still a few risks and uncertainties here, but I'm feeling really good about it.
We're going to be testing a simple scene with voice and animation over the next week. If that goes well we'll try a more complex scene and see if the strategy scales up. Sweet potatoes, I sure hope so.
[h1]Where's The Preview?[/h1]
So there's a lot of words in this post and, well, I think most of you are here for pictures.
I'm not ready to to share an animation test yet. And anyway I don't like sharing explicit stuff here - I don't think Steam wants me to do that particularly.
But if my next animation test goes well, I'll find a way to share it next month. I'll link it to redgifs or something, it'll be fine.
Until then, this is Cisco signing out 🤘