I figured some of you folks would like to get a peek under the hood of what it all took, so, I figured I’d do a write-up!
In the beginning, there was Hypnovember.
I thought about starting doing an image a day as is traditional, and even crept up on the idea with a ‘Thrallworks special order’ image (see below), but it was already a few days in, and in the run up, though I asked in advance for a list of prompts for the month, I can’t say I was enamoured with the lists I saw. Kinda stale prompts/

(Got maybe 2 more of these still on the list to do)
So instead I thought, why not do something like a game jam? See if I can get something out in a weekend? Or two, at a stretch.
I knew a friend of mine wanted to have a crack at making their own game but needed an excuse to start, so I arranged with them to use a weekend in November for us each to have a go at making a game. And with the pact sealed, we were off to the races!
Obviously the game required hypnosis in it, but I also thought about what I’d like to learn more about while working on it. In the end, the most obvious thing was Live2d and Material shading.
Live2d is the software that animates the girl in the chamber, and is very good at providing dynamic expressions…but less good at large or dramatic animations. Nice for visual novels though, and something I want to implement in Thrallworks. There are certain problems with the way its meshes and the like work though that I was having a lot of issues with that I wanted to tackle- for instance, I did initially have a Live2d version of L-D19 ready for the Enthrallment Procedure UI…but after loading it up and in, realised I didn’t know how to use it to achieve the look I wanted due to how the VN software I’m using loads the model in.
I also wanted to see about making a few mini-games, as I want to put minigames in Thrallworks at some point for certain sections, such as in Instruction lessons and some recreational activities. I also want them for future Movement projects, so it seemed a good excuse to see what could be done with the UI.
So with those goals in mind, I had a think of what to do.


There'd have been some kind of options for how to switch up the trance-talk to try and get her deeper, and subsequent trances taking her 'deeper' and allowing more suggestions/other stuff unlocked.
My first thought went to the Movement universe. There’s an island game I wanted to do and figured there’d be a bunch of minigames involved in that- playing as a ‘spirit’ inside the collar of a girl turning up to a spiritless community and corrupting them and the pillar in the centre until you can manifest as their Jin.
In the end though, the idea seemed like it had too big of a scope to do over a single weekend. At best, I could get the intro done where you pulse the starting girl into a vacant state to give her a name and…so forth. But that wouldn’t wrap things up very well to my mind; just suggest more content to come.

I think this design has moved a bit past what has shown here- or rather I think that until I get better at coding for multiple players, it'll be me GMing this on discord to run it properly.
I also considered the ponygame, but in a similar way, there was too much to do there, and I wouldn’t want to rush that to ‘completion’. Something could be done within the time limit I was sure, but the idea was to release a ‘finished’ thing. And this wouldn’t qualify
So instead I thought lets break away from the regular stuff and do something entirely original! Sci-fi…roughly 1960s/70s inspired, with you as a worker not dissimilar to Papers, Please- except instead of you processing people coming into the country, you’d be processing captured ladies into drones for the spaceship!

There was going to be a push-pull between her 'Willpower' and 'Programmability'. You could brute-force to destroy her Will, but then you couldn't program her very well, leading to a worse-performing drone. Bad worker-alien!
You’d be marked on speed and performance, and have a certain amount of ‘power’ to work with during your work shift- you can use the power to stiffen the girls up to make putting things like collars on them easier, or activate their pleasure nerves to make calibrating them easier, but that also means you have less power to work on other girls with, and won’t get point bonuses for conserving energy.

I was considering using aesprite and maybe doing some spritework for this one to keep it simple...but we go into why I didn't a bit later.
I also considered a larger gameplay loop where after the processing, it’d transition into a ‘go to an earth city, use a tractor beam and the drones you’ve made to grab girls running about, then go back to processing to make/replace drones, and so on until the earth is conquered’
…But that’s scope creep for you. So I didn’t do that and just tried to stick to that initial plan.
And like all plans, it didn’t survive contact with the enemy.
Technically, all the above was already pre-jam cheating. You’re not supposed to do work on a thing until you’re given a prompt, afterall! But whatever.
Seeing as I was already breaking some rules, I thought that I may as well make art of the girl I wanted to model, so I did!

Haha. Also, you can see the headset and collar were different back here.
It was at this point, I realized that the idea for a Papers, Please style game was a fantasy I needed to wake up from real fast.
Simply put, it takes too much time to make a full-body character to make it viable to have multiple variations of them. It did make me think though ‘Ah, if we set it in a more homogeneous country, I can cut down on the palette and the variance’, hence part of the reason the girl is from Japan…but overall, it would still be a bit too much work.
Still, I drew the girl, so lets see how we do!
I streamed a lot of work on this over the weekend, and as those who tuned it could attest…the weekend was less a ‘make the game’ weekend as it was a ‘make the model’ weekend.

And this is just the amount of layers in the export file, not the file with the individual shadings. And I had to add stuff after this point too.
So here’s a note for future gamejam-like attempts and short projects- don’t use Live2d! A single model takes around 3 days of solid work to get up and running, and that’s without great variance in clothing changes or very detailed eye/face control, or taking animations into account.
My chum I was doing this with also had their share of troubles…but I don’t think they were aiming for a complete game in the first place, which is very LAAA DEE DAAAAH of them.
However, the model was completed, and I knew there was one more free weekend I had in November to get the thing completed…whatever it was going to be.
So while working on the Onna route during the weekdays, I hummed on how to change the game to make it completable. Obviously, just use the one girl- not multiple. So we scrap the idea of it being like an assembly-line..which to be honest I think would need to have been very simple or have some variance in the models produced to make it tolerable, and thus more complicated. It’s an interesting idea, to be like ‘well this is a normal drone, this is a buff cannon wielding drone, this is a sexroid’ and so on, but…yeah, scope bloat.
I was also going to have to drop any VN features the game was going to have. There was going to be a section where you were going to have a walkthrough on your ‘new job’ and have a bit of tutorial on what to do…but switching between that and the UI stuff created too much of a headache on how the models were going to be represented, so out the window it went.
If no tutorial, and no other girl, and no fellow alien talking to you, what then could it be? Well, perhaps then, figuring out *how* to dronify the girl could be the gameplay? So it’s basically like a puzzle game. It makes it more of a single-playthrough kind of game rather than something to come back to frequently, but that’s alright.
And for text, we aren’t doing anything fancy so we didn’t need the VN part of the software anyway- I thought we could just do a small transcript log of what the girl is saying in the ring to add flavour, like ‘What’s going on?! Where is this place?!’ and so forth.
I also hit on the idea at this point that, if it’s a puzzle, we can make buttons to help with hints. Initially the text was going to all be in Echolot- an alien font for the alien interface.

So cool and mysterious~
So what if the button was to instead flip on a ‘universal translator’, and turn it into a readable font?
So I spent some time looking for this other font, thinking to grab something from the 60s/70s to match my idea of what the aesthetic I was chasing for had…but it turns out a lot of what we’d consider ‘modern’ fonts were born in that era, and that those we’d associate with coding, like consolas, just didn’t look that great as a part of this interface

As you can see, consolas wasn't cutting it. Also tried some other alien language.
So I went a bit more vintage-modern with Neuropol!

OH NO IT WAS NERDSPEAK ALL ALONG
This font was eeeevvvveerryyywwwhhheeerreee in the early 2000s as a shorthand for ‘futuristic’, to the point where everyone got sick of it (like Papyrus or Impact font in more modern times), but enough time has passed now where I look on it with fondness- like Jubilee in the X-Men- and I think it worked well in this format.
All so-armed, we stride into the next weekend!
So we smash into a second weekend, intent on finishing this bad boy.
Instead we spend 90% of the weekend on sorting out the animations for the girl and designing the UI in a way I could import it into Unity and add 2D lighting for it. But mostly, it was the girl animations.

Animations go BRRRRRR. Good job this program saves back-ups, considering the crashes...
It became pretty clear that the main ‘draw’ of the game as it stood was going to be this girl…in a way this is the limitation of an ero-game. You can make everything else great and stylized, but if the girl at the centre of it is not in a shape that can be fapped to, then you kinda ruined it from the get go- so there’s no shortcuts with chibi designs or simple sprites like I was thinking of right at the start when there was going to be dozens of drones running out and about capturing people.
At any rate, making the girl fappable also meant making the girl detailed, have some pep, and just generally not being lazy about her. So I wasn’t, and though I don’t regret the time spent on that, it did mean though that, come the end of the weekend, I didn’t have a ‘game’ so much as I had an animation sequence.

Button, button, who's got the button...
I checked that the model worked by making a bunch of buttons to press in order to move from one clip to another, and that was pretty much it. Nothing worth putting up as a game, but maybe something I could turn into a video. But that didn’t seem like a great end result for the amount of work that’d already gone into this- over the same amount of time, I could have probably made a much cooler looking animation if that were the goal from the start. (Or I could’ve tried, at least).
Also, there was no sound at this point! Not great.
So at this point I had a pretty horrible choice to make. The weekdays were upon me, with the TW Update coming on the Friday, and me going away for the coming weekend going into December.
If I spent *any* time working on this any further, then there’s no way I could get the Onna update out on time. The script for it was done, but it needed expressions to be added to it, a little more asset work, a couple of BG’s and, ideally, 1 CG done. Those’d take all the time I had (and even then I suspect the BG’s would be half-baked or the CG left on the floor).
So it was one or the other. I could just release a silent animation of her changing into the drone and call it there, or I could try and blitz the rest of the ‘game’ out in the time up to that Friday.
In the end, I thought that it would be an absolute agony to release what I had and then perhaps not even be happy with an Onna scene that didn’t have the option of a Sat/Sun to clean up, so I doubled down on this game and pushed ahead on designing into the weekdays.

I said 'no' to this. Onna, my beloved, I am sorry ;-;
From what I recall…a lot of this was also spent on modelling! Oh gods let it end!
It’s kind of hard to overstate how much work it was getting this model together, thinking about it now; making sure the clothing moved with her, deciding on how the stage-by-stage progress was going to go, etc.

Early game she was going to go BALD much sooner, but I figured, well, the hair works well with the suit, so lets keep it for as long as is feasible.
I’d also say that from this point until the completion of this project, I was working on this game and JUST this game all day, as much as my mind could tolerate, at least. Between 12-14 hours.
The biggest in-game hurdle was sorting the cameras out and the prefab UI all the elements were on vs. the scene they were in. There was a lot of wonky dickery happening regarding items not being activateable or teleporting thousands of pixels away because they were at one scale on the prefab but another in the main area- a problem that wouldn’t be solved until much later.
At any rate, come Friday, it was *still* mostly linear, but there was some ambient sound and 1 bit of the minigame done. But that didn’t feel like nearly enough.
The girl’s dialogue was also a problem. Namely, it was repetitive. As you can imagine of a girl in a scary situation, she’s not going to be making many insightful comments, and, barring perhaps the end of the process, there’s no way to peek into her mind and read her exact thoughts on the situation to add interest.
Not to mention, the increased expressiveness that Live2d provided made her actually having lines of dialogue seem a little strange, as why wouldn’t she be saying them out loud with mouth movements and that? So yeah, a lot didn’t make sense.
So, I decided to turn up late to the event over the weekend. Cancelled trains, made people sad, alla that. But it gave me a day…
…And then the whole thing was cancelled, partially because of that, but not, thankfully, mainly.
This sucked, but did give me even more time! So, best to make use of it I thought, and just not stop until we got to an end point approaching the ‘ideal’ I’d thought of, with a full dronification process.

Me.
With the extra time social disappointment afforded me, I managed to get a minigame for each of the pieces in the process. I suppose now’s a good time to go through these individually and the difficulties.

I CAN'T WAKE UP
Pretty easy! The problems here actually came much later in the development phase when adding audio to it- I tried to set it up so that on the meter increasing, the volume of a ‘charge up’ sound would increase, and the reverse if let go early. This worked for a while, but then right on the last day something went wrong and I didn’t feel I could delay for another day to sort it out, so I just switched it off. Ah well! The activation noise still worked well, so no worries.
There was also an issue with the body not appearing in the side-UI during the transition animation, but that was easily fixed by changing the Z-Position of layers and only took a lot of time due to really awful computer lag in the last couple of days of development.

It does irk me the bar isn't filled up 100% when the slider disappears.
Most of the mess with this came from getting the clothes to turn orange in the side-UI in rough time with the sliders. Initially the second-slider was supposed to ‘wipe’ the clothes away with it rather than do an opacity fade…but I lacked the expertise to design the shader in a timely manner and it was better to put that time in a different area of the design.
The buttons also had their own design issue- not the buttons themselves, but the indicator lines coming off of them. Unity doesn’t actually support UI Line-Renderers, so I had to go searching for one online to implement it. A lot of work for a few lines! And more work down the line, as you’ll see.

She didn't walk without rhythm.
In my notes I called this the ‘Dilworm’ a lot, so we’ll stick with that here.
So yeah, grabble objects, drag and drop…here we got into Unity Event Systems, which is my first real time using them, ever. Consequently, this is where pretty much all the bugs in the current version of the game are, likely due to insufficient bounding of where these things go and why, and being able to pick things up prematurely, before certain animations end.
This part does contain my second-most-favourite sequence though, with the idea of ‘baking’ the synapse-stones before re-inserting them. For my part the original thinking here was more like having these 5 things ‘loose’ and then trying to connect them up to the rest of the synapse network with a line renderer, but…I didn’t really have the code to pull that off, and speed was king at this point. Plus I had this whole side-button UI thing that I designed from really early on that I just wasn’t going to use, and I thought- what a waste!

I like that it's precise. CRY MOAR
The second line-renderer problem! I could set them up in the editor, but I could not adjust them on the fly! They did not have values that were available for the player to manipulate. Thankfully my moov programmer friend was on hand to help, and this was sorted.
(This sequence is also my favourite in the game. Feels very nice and smooth once you get it down. :))

The nodes were going to glow too, but that was a level of fancy beyond what was needed. It was more important that things be clear in that side-UI, I decided.

This was the section I most missed not having proper voice-acting for.
Actually one of the more straightwaord parts. Most of the issues here came from the Side-UI transition to the close up short as I recall, due to how some of the images were sized. Also, time had to be taken to figure out how to rotate the headset items after they were placed back down.
Ahhh I recall now- I think I ended up spending a bit over an hour tring to find a good place for the headphone items to ‘spawn’ in the side-UI. The little things’ll kill ya!
The top slider though was surprisingly straightforward to do, with the issues from that just being about being able to hit the buttons even after all 3 had been hit. An easy enough fix.

How many lights do you see?
THIS one is the one that was left on the cutting room floor.
It was going to be a ‘remember the sequence’ section, where the lights play a pattern at the side and you repeat it, and 1 laser comes on. Then a different pattern, 2nd lase, then 3rd, then 4th.
But something was really bugging out when going to the 2nd part of the sequence. Spent…I don’t know, 3+ hours on it? More? Even brought in my chum so we could look at the code and all of it together. A real mystery.
So in the end, it’s as you see it- just hit the 4 buttons in the order given, and the lasers go on.
There was also a problem with getting the lasers to line up to the headset’s gem. You can’t actually play live2d animations in the editor, they can only be played live, so I was having to look at the animation within the live2d program and try and match it up to where I thought the lasers *should* be. So, time consuming and an imperfect result.
I also couldn’t find a good ‘SHUNK’ sound effect for when the gem goes in. Vexing. If anyone can find me one, lemme know.

Illuminate.
Even as I made this part I was thinking ‘ah, people are going to trip up here’. But I think it is neat having a direct command interface.
Most problems here came from the side-UI once again. Originally, after activating her, there was going to be scrolling text appearing in there along with the wub-wub rings, but it really seemed to tank computer performance to have that happen, so I stopped it. At this point though I think maybe my computer was struggling for different reason, so maybe that was an unnecessary cut.
This input area is also one of the things I could see having potential for additional expansion. ‘Recite protocols’ or the like. But y’know, constraints being what they are, I’m fine with just having this as-is.

Contemplate it.
Surprisingly difficult for me this one, but only because I didn’t realise what was happening.
Basically, after having set up what all seemed like correct look controllers for the drone to follow the ball…it wasn’t! It kinda worked on some of the screen, but really messed up on another part.
It turns out, the way the ‘look controller’ gets its position from is across all *monitor* screens, NOT the in-game screen. So because I have more than one monitor, it wasn’t visually tracking right. I do hope that those of you with just one monitor can at least see it happening ok ^^;.
This being a bunch of drag-and-drop eventing again, there was more event systems dickery, but unlike with the stones, these ones felt a lot more straightforward to do and no-one’s reported any errors to me, thank goodness.
So really, this took much longer than it should’ve done.
Deactivate and end

Delluminate.

Do it fast enough and you get a compliment! That I didn't earn when pausing to take screenshots. ._.
Agin, pretty simple stuff. Most of this time was spent making a closing image.
Ah yeah, a couple of additional notes on this- I needed an opening image also to hide the ‘set up’ of the model behind it. There’s like a half-second on the scene being loaded where the live2d model is in an inert state where all the parameters are active at once and it looks strange, and all the things controlled by the unity animators need to switch on/off or whatever their base state is.

THIS Box of Absolute DICKS
Man this was the biggest timesink in the whole development process. It turns out that if you assign ANYTHING, ANY value to ANY Animator at ANY point, that you then can’t manipulate that value through a script at all. You have to continue manipulating it through the animator. So if you make something appear through the animator and you want it to disappear, you need to make an *entirely new animation* just to get that to happen; you can’t switch the game object off through a script.
They don’t explain this in the documentation, so I spent I think maybe…I want to say a day and a half wrestling with this issue between other problems before finding a thread from back in 2017 where a unity dev said this was behaving ‘as designed’.
And by this point, the project had become a really messy mish-mash of scripted components and animated components, so they was no way to untangle it without costing way more time I didn’t have. So, there we go, lesson-learned on keeping what is-and-is-not animated very very clear going ahead.
So yeah thanks Unity.
_________________________
So yeah, that’s the separate areas. And with all those taken care of, we hit the last thing to do!

Took a couple-a days. Or three. Werf tho. Sound design isn't really something that should be skimped on as much as I did, but hey, gotta finish at some point right?
Freesound.org was a real lifesaver here. Grabbed a whole bunch of stuff from here. Some of it I could take raw and put in, but most stuff required further reworking/editing from me to make it fit. The ambient noise for instance was 3 different looptracks mixed together with a few effects thrown on top.
By this point I’d also figured out what I wanted the side-text to be– an experiment log, which I’d written up right on the cusp of that Friday where I decided I had to delay that weekend. I’d moved away from that universal translator idea as it was maybe a bit too trolly and there’s useful info hidden in the log on how to do a couple of the tasks…but I still had the buttons there, and I *did* have access to voice-changer software, so I thought, why not repurpose those buttons so it’s a spoken log?
So I did! And threw it into audacity to do even more to it. The end result is maybe a touch too distorted, but I think it works well enough and am happy there’s a way for people who are badly dyslexic to enjoy it too.
For the girl’s voice, I spent a day (we’re well past that cancelled weekend at this point) cribbing audio from some…*tasteful* japanese video that I thought might have samples I wanted. It largely worked. I was going for something that was more like Wind Waker/Zelda style ‘noise talking’, with just occasional noises. Overall I think it worked quite well and was a massive improvement over just having her actions be silent, but still shy of, say, noised voice acting.
However, I didn’t have the time to contact a VA…nor do I really know how to go about it. Do I just put a call out on twitter or something? I doubt anyone’d see it there. Still, worth thinking of for the future though, ain’t it?
So, all that done, the moment of truth comes upon us

I opted to build for better runtime speed for you all, as I had no idea how it'd go and didn't want anything compressed, and thus was willing to eat a long build time. Wasn't *that* long, all told.
I knew I didn’t want people to have to download this, so build it from the ground-up for WebGL. This was a bit of a risk I thought as I’ve tried building things in this in the past like old Thrallworks builds and the shader effects ended up not translating over well.
But! Shockingly, it all worked without a hitch, basically first try! The only things that needed tweaking were some z-layer priorities, but beyond that, it was all good to go! Hooray!
And the rest was history.

He means there's bug-fixing to do, Adrian.
Well, it seems people like it, which is nice. It’s kinda crazy how much ended up being thrown out of that original concept and what crept in.
There are some damning things about it though. I missed out on the end of Hypnovember by a *wide* margin, and the whole production of the game ended up being a solid 3-week obsession where basically nothing else got done.
Also, in having to drop the VN Program, I couldn't solve one of the key issues I was hoping to have a look at- how to update the materials on the live2d model in real-time while in VN-Mode. The problem is that when a character is instantiated in the VN, it takes a 'snapshot' of what the character looks like at time of that call-request, then displays them as a mesh. Subsequently, any changes to their shaders are ignored until they're removed and called again. Obviously, this is an issue for changes to, say, thrallsuits (like in the Thralling Procedure section)...and I didn't get to solve the conundrum.
And if I were to look at this from a purely audience-facing perspective, and not at what I’ve learned for myself when it comes to doing more gamedev in the future…it would have been less work for me to have just done art for hypnovember, and I’d have gotten a lot more eyes on it, a lot more likes, a lot more praise, and probably a lot more kind folks like yourselves. Or, even if I just ignored hypnovember, I could have done more of the Domine set and definitely gotten a move on with Reorientation content.
I didn’t hate this time spent though. I think I made the right call in taking this to its conclusion, rather than leaving it half-baked; there’s even potential to pick this back up if there’s enough interest in it- add a girl or two, or do a kind of ‘sequel’ to this. Who knows.
I did also like the format of being *intense* on one thing for a short burst of time to get it done much more than leaving it as a slow bleed over time. I think it would be generally healthy for me to do monthly/bimonthly projects like this one that’s like a small game, or a small comic, that can be wrapped up in short order, or at least provide a lovely skeleton to build on- for instance, doing the ‘roughs’ for a comic in a short span of time, then polishing them for a regular release.
Gamedev hard. :)
So yeah, that was how it all shook out! If nothing else, I hope it gave you an insight in how the sausage gets made, and you got some good juice out of it for what could be, or some questions/ideas on what you might like to see more of/see what ideas you’d like to see picked back up off the floor and given another go at.
I think I’ll treat the remainder of the Domine set in a similar burst manner- not *all* of it at once, but maybe something like 2 or so of them at a time. And maybe changing how TW Updates will be handled in the new year to compensate.
I appreciate y’all giving me the time to make this thing, and I’ll speak to y’all again soon! Onwards, to new scenes and new smut! Below I leave you a collection of some of the images used in this post, as well as the ambient BGM of the game and a video of a playthrough of it for your edification and enjoyment.
So...Enjoy!