Home Artists Posts Import Register

Content

Hi folks,

As mentioned last week, I've had quite a few questions about the development process and how we actually create a game from an idea to a finished product. Some people are just curious, while others are interested in getting into game development so hopefully this overview will provide some insight.

I will be talking about WTHI below but only in the context of game development. For anyone not interested in the creation process and are only interested in a WTHI progress update, you can skip this post and I'll post later in the week to give some details on re-do progress.

So, the primary components of game creation are: Coding, writing and art.

Coding/game engine:

For coding/game engine, we use a program called renpy which is a visual novel engine and seems to be the most popular engine for these type of games.  The software is free, so anyone can download it and start experimenting with game creation (There is a basic tutorial included in the renpy download).  The programming language used by renpy is python. The official manual/tutorial sites are slightly dated and a bit of a jumble but there are many forums / sites, etc. where you can pick up tips/tricks/tutorials.  To learn the basics doesn't require coding experience but the more fancy you want to get, the more coding is required.   The more complex coding is really only needed for stuff like GUI improvements, extra game mechanics (such as day/time tracking, inventory, mini-games, galleries, etc.) To write a basic game...just requires knowledge of ifs, menus, variable tracking, etc. so as I say, you can get a lot done with just the basics and with a bit of time (and trial and error), most people should be able to teach themselves the basics.  And even the "complex" stuff wouldn't be considered difficult by someone with a coding background. I don't have a coding background so it doesn't come as easy to me.

But for WTHI, although there aren't huge complexities in the programming, we still have our own share of difficulties.  The most complex part is the variable tracking / pathing choices and trying to cover all bases. Writing 12,000 lines for an episode and making sure ALL variables/paths/branching are covered can be a massive headache, especially with WTHI where (unlike a lot of games), we don't treat each girl linearly and each girl has an opinion on some of the other girls with a lot of interaction between them. And we also try to "remember" all choices and refer back to them.  I hate when games have MAJOR events and then characters act the same/say the same stuff regardless of previous choices (e.g. two characters had sex/didn't have sex for the first time last night but at breakfast it is never mentioned and the scene plays out the exact same regardless.)  For me, that completely breaks immersion.  Although I'm biased :), I think we do a really good job of this in WTHI and it sets us apart form a lot of other games.  Although, knowing what I know now (and the trouble it is causing us as we get closer to the end), if I could do it all again, I'd be a little smarter with some of the extra options we provided and try to trim some of the fat from ALL of the paths we offered. Just to give one example of the multi-verse we created:  Taking Katie, Lily and Debbie as an example - Considering you can romance none, one, two or three of them...that is a total of eight different combinations to write for.  And that doesn't include sub-choices such as whether you are serious about one or more of the girls or just friends with benefits and whether or not you told any of them you loved them OR if they know about any OTHER relationships ongoing (e.g. Katie suspicious of Monica or knows about Jenna, etc.).  So trying to juggle this multi-verse is the most complex part of WTHI.  Especially where (over 12K lines per episode),  if we get a single "if" statement wrong or we have a single "=" instead of a double "==" or a "<" instead of a ">", this could completely break a path/scene...it can be very chaotic to keep on top of.  Making a major error will usually be caught when we are compiling the game (it won't compile or run) but making a subtle error (like the examples above) are much more difficult to catch.  So it requires a LOT of proof-reading, error checking, play-testing, etc.  And our team of volunteer QC folks have been vital in that process.

So for anyone thinking of creating their own game, please bear this in mind.  Make sure choices are remembered and that they matter...but don't create too many paths where your nice flowchart to track the early episodes becomes a bowl of noodles as the game progresses.  And decide in advance what type of features you want your game to have (i.e. day/time tracking, inventories, mini-games, free-roaming, maps, etc.) because trying to shoe-horn stuff in after you're already up and running can be very tricky.

Writing:

I won't go into too many details here as the basics of writing, story, pacing, etc. applies regardless of whether you are writing a game, a short story, a novel or a movie script and there are much better writing tutorials out there ahead of anything I could offer.

The only tips for anyone getting started is that before you do

1) Have a good idea of the ending mapped out before you get started.  I did this for WTHI very early in the process (i.e. who the gold-digger was and why) and this has really helped anchor the end-game.  I was tempted many times to change things around (as some characters become more or less popular than I envisioned) and although I tweaked some stuff, I never changed the end-game plan (i.e. who did what and why).

2) Although you should anchor your end-game and don't veer too much from that, I would highly recommend that you give yourself the freedom to tweak stuff continuously in the middle/along the journey.  Listen to player feedback and don't let your ego make you become too stubborn to change stuff. What might work in your head doesn't always work in a game and the game/characters will evolve as you write so make sure you listen to all feedback (positive and negative) and use this to tweak stuff along the way.

3) Have a character bio/arc sketched out before you get started: What are the character's main personality traits, flaws, what are they looking for and where will they end up by the end of the game. You don't need this for every single character but I would suggest you have one for the primary cast.

4)In my opinion, the writer needs to be familiar with renpy/coding. Obviously this goes without saying for solo developers (who need to do everything) but if you are putting a team together, having a writer who just writes in movie-script format just doesn't cut it and trying to mesh what they write into the format required for renpy is more hassle than it's worth. Maybe that system works for some devs (I don't know of any) but I just don't see how it would work.  I'm not saying they need to be a coding/renpy expert but they definitely should know enough to write their scenes in renpy format.  If I had to write a script for a full WTHI episode and didn't care about branching, variables, image calls, menu options, etc.....i.e. if I just wrote a scene of dialog (Movie script style), then I could probably write the full episode in about two-three weeks.  Just wanted to put things into context in terms of time spent.  But writing for renpy (i.e. adding the menus, dialog options, variable tracking, image calls and the multi-verse branching) turns that couple of weeks into a couple of months.  So for those of you out there that just have a basic movie-style script...and think they are 90% done with their game creation...I hate to break it you...but you still have a LOT to do.

Art:

The primary application we use for art is DAZ3D. Once again this application is free to download but unlike renpy, the learning curve is a lot steeper.  But similar to renpy, there is a ton of tutorials out there (forums, discord, youtube, etc.).  And although the application is free, the "assets" are not.

When it comes to DAZ....think of it in similar terms to a movie set....the main items required are a location/environment, lighting, actors and props.  These are ALL also required in DAZ.

When you open DAZ, you have a full 360 blank space to fill.


First thing you need to decide on is the location/environment. For example, suppose we want a scene to happen in Jenna's bedroom. We need to build the locationfrom scratch (the first time only).  So we start with a "bedroom" asset.  There are thousands of assets available to buy on the DAZ3d site along with many other sites out there. Assets can include characters, sets, tools, props, etc. So the first part is deciding which one you want.  So Cell and I usually trawl through a lot of assets and bounce a few ideas around until we find something we like.  

So we start with the basic asset and the we add props to personalize it (i.e. laptops, posters, furniture, different bed if we don't like the original, duvets, etc,) and then we may need to add a new door to match the layout of the rest of the house, etc. For the WTHI re-do, we found a really cool asset that we thought would suit Jenna's bedroom (it's a gamer girl room) and then we added further props to personalize it.  Some of these extras are just additional assets (e.g. star wars figures, etc.) and some assets we created specifically ourselves (e.g. a Captain Heart poster on her wall.  So then we end up with something like this....



Then we add people. For existing characters, we just drop them into the scene. But for new characters, we need to build them from scratch.  So we would once again start with a base model/character (plenty to choose from in the DAZ store) and then we start tweaking them to make them look exactly how we want them (height, weight, eye colour, musculature, boob size, skin tone, age, freckles, eyelashes, makeup, hairstyle and colour, genitals, and anything else you can think of ). 

Once we have all of our characters added, we need to place them in the correct position and pose them. DAZ doesn't have hard boundaries on objects, so the positioning needs to be precise (i.e. a finger could easily pass through an object or a thigh could "clip" with a chair, etc.)


Then we need to dress them. Once again, it's about choosing the correct clothes assets We have had many debates about what clothes match what...colours of shoes, how see-through a bra should be, etc. :) -Definitely not something I ever envisaged me doing before I got into game development. And as you may have noticed, we try to avoid characters wearing the same outfits every day to try to keep the  immersion.  Clothes can be a pain in the ass...as they don't always conform to body shapes (tits are the worst offender) or specific positions.  So lots of tweaks needed there.  I'll add some examples at the end of tiny little imperfections that cause us to have to fix, re-do or touch up in photoshop afterwards so you'll get an idea of how finnicky DAZ can be.

So, now we have the location, props, people and clothes ready. Then we add a camera (or multiple cameras). The camera will obviously determine where we are taking the image from and what perspective we are looking for (i.e. MC is sitting/ lying) what the angle will be (looking up/down/straight) and the depth-of-focus (i.e. level of blur in the background/foreground and what the item of focus is.).

And then the hardest part...lighting.  This is by far the most important part of setting up a scene (and the most difficult part of DAZ to master).  When DAZ is rendering an image (i.e. turning the scene we set up into an actual image), it simulates every ray of light from every source, including reflections, ray bouncing, shimmers, etc. so if you don't get lighting correct, the image is crap.  So we have to set up the correct lighting to simulate the time of day and environment (e.g. bedroom at night, sunny day on a beach...indoors but with sun coming through the window, etc.).   We can simulate the sun, we can simulate other sources of light (house lights, candles, etc.) but we usually have to add extra lighting.  Similar to movie sets or what photographers do for studio shots, (where they use three-point lighting and reflectors/planes, etc.), we do the same to optimise the scene.  Too bright and it'll look whitewashed...too dark and the image quality will be poor.  If we depend on a single source of light (e.g. our simulated sun), then this can cause really sharp shadows (that's why we use ghost-lights or 3 point lighting to offset).  So sometimes lighting can be a lot of trial and error.  And every time a character or camera needs to move...the lighting needs to be adjusted accordingly.  Initial scene set-up can take anything from an hour to a couple of days.  Each change of pose/camera/outfit, etc. needs to be completed for each image in the whole scene.

So once all that is done...then we hit "render" on DAZ and it turns our scene into a single image.  The render process can take anywhere from 10 minutes to an hour (depending on the complexity of the scene and the PC hardware/GPU) but on average, it takes about 15 minutes per image. That is just the render time (i.e. where we can move on and work other stuff while DAZ is creating the image). 

I won't even get started on animation as that is another ball of wax and this post is already way longer than I was expecting.


Not sure if this post was what people were looking for or if it answered some/all of the questions that were asked so let me know in the comments if this stuff is boring/ interesting of if you'd like more details on anything.  I briefly touched on each part but I didn't really give much insight into how we tie everything together into an actual working game, so let me know if you have any questions or if you'd like me to post about anything else.


Thanks,


CG


Below are some examples of annoying things that we need to re-do / fix / touch up, etc. (even after we spend hours trying to get it right the first time.).  A lot of issues are caught in the set-up phase before we render...but some issues only show up /get noticed after render.  Some minor things can be fixed by just touching up the image afterwards (e.g. photoshop) and some need to be fixed in DAZ and re-rendered.  We have a million of these "bloopers" so let me know if you'd like to see more.


EP24:  Bad skin (we got the skin texture wrong and the lighting needed to be improved)


Re-do: The robe was clashing with the lingerie underneath


Re-do: Not bright enough.  We set up the outside correctly for a sunny day but not enough light was getting into the house from outside.


Re-do:  Facial expression looked a little too "anime"-ish.



re-do:  Melted skirt.




Re-do:  clipping between the bottom of her vest and her jeans.


Re-do:  Aggressive nips.


Comments

Brian Borsching

Very well detailed explaination of the creative process! Would for sure love to see more of the bloopers.