Saturday, January 26, 2019

GLADyS


Hello everyone, it seems like it's about time for another update :D

The week has flown by, busy as usual, while we work toward version 19.0. Some interesting things have happened, but as far as AW goes it's been business-as-usual. It seems like the U.S. government is going to reopen for a few weeks, so I'll get paid, which is great. I ruptured something my left hand, seems like a tendon sheath, right where my left ring finger meets my palm. Besty has been getting into his family's supply of Soviet super-soldier serum, and of course, GLADyS finally makes a serious appearance.

For those of you unaware, GLADyS is the general A.I. the institute has installed to take over HR and Finance. In case it wasn't obvious, she was heavily inspired by GLaDOS from the portal games, with a touch of HAL 9000 for her ever-present cameras. For some reason, her personality cores with their cooling gel amniotic sacs and gold direct-interface connectors ended up looking a bit naughty, but that's totally a coincidence.

The Institute: we do what we want, because we can.

I suppose it's time to show off a little of what we've worked on this week... Besty's been hard at work implementing nightwear, and I've added the job mod interface as well as a new job mod for working at Bullseye. I've also done some work on SugarCube, adding in support for native image arrays in the primary parser, as well as some other improvements to the source and build tools. I also did some more work on the AW API, adding a huge quantity of variables to the documentation.

Here's a totally random assortment of preview images!

Possibly a repeat, this is a look at what the API looks like

The screen you see after you apply for a job utilizing the RAPES terminal

Shopping for a job using the RAPES terminal, it's not possible to change jobs during the game!

Just some updates to the build/compile PowerShell script for creating the final .HTML game file. Now with color! :P


The rapes office is where you go to find a new job, it's located in the town hall building. It is also your interface to signing up for a mod job, or a non-standard job like Maid Pouffiasse.


Each job has it's own cover image to spice things up a bit... The bullseye cashier job has several interesting events for you to encounter while you work there.

 An example shoe icon
An example of a nightwear icon, though a little on the frumpy side.

Well, that's all for tonight, it's gotten quite late.

Have a great weekend!

o7



Saturday, January 19, 2019

Writing Contest Results [Jingle Balls Contest]


Hello everyone, I've got just a quick post for you today since I already covered a lot earlier this week. The biggest news is that we have a winner of the Jingle Balls writing contest. To be honest, we didn't get very many submissions for this contest, but as the very first we didn't have huge expectations anyway. Next time we'll do some more promotion, have more writing help/guides available, and have a larger prize. :D

Two entries this time were good enough for inclusion in AW as regular material, we'll be doing some re-writing/editing/coding to get them into the game. It was a really tough decision this time around. We actually waffled around a bit on who should win, because it was tough to compare the two. They didn't share the same strengths or weaknesses, so it was difficult to make a direct comparison.

The first entry was better at following the general format for AW writing, and fit the contest's topic better. The second was a lot more interesting in terms of creativity, and more erotic. In the end we decided on the second, which was an entry by Omi. It's a story involving the institute, and some slime...

Part of the reward for the contest was having some quick art done with the submission as the topic, so here's the result:


I may do a quick piece for the other entry as well, if I feel up to it in my down time. It's a little tougher to decide what exactly to draw for that one.

Besty's been hard at work on shoes and getting everything set up with outfits. Here's a quick sneak peek at that:


That's all for now, have a great weekend!

o/

Wednesday, January 16, 2019

Government Shutdown (Part Deux)


Hello everyone, it's perhaps a little early, but I thought I'd go ahead and do another blog post. Mostly I'm just going to cover what we've been up to, so the 'Government Shutdown' title is more just me expressing my building annoyance with that whole situation. I'm not a big fan of doing more work, especially when I'm not getting paid for any work, but things need to be done and there isn't anyone else to do them... Just another day in the bureaucracy.

For those who are curious, because I've been asked a couple times now on Discord, I'm doing fine for now. I'm lucky enough to have had some savings when this whole thing started, so I'm not doing to bad. Of course, if this goes on long enough, it'll be trouble, but for the immediate future I'm okay. Of course, income from Patreon helps too, especially since I don't have any extra time to do work elsewhere (extra day-job work thanks to the shutdown has ate up most of my free time... now I've heard we apparently won't get paid overtime or holiday pay properly when we finally do get paid).

And, as time goes on, more things "break" without people behind the wheel, making things more difficult than they need to be. ¯\_(ツ)_/¯

Okay, enough bitching...

Before I get to what we've been up to, I figured I'd mention that the inaugural writing contest is now closed. It seems like we have 3 submissions, but I need to double check my email in case anyone tried to submit that way. We'll be giving them a read soon, and we'll announce the results as soon as their ready :D

So I've been working on a bunch of different things over the last several days. I fixed the time bug that made it into 18.6... was actually a pretty stupid bug. I updated the sleep action button to move the player to their bedroom before going to sleep, but because a lot of async things are going on with sleep, the map navigation and sleep sort of interfered with each other.  You can avoid this bug if you only go to sleep using a bed furniture item, and not using the action button!

I've also been working on some documentation and the mod interface, including support for schools:

The Red Light Education Center holds all the custom schools added with a mod. This pic shows the Oppaido Dojo school mod I created.  In order to test the mod interface for schools, I had to actually make a school mod. So I used the school idea I'd been saving for that purpose.


The dojo teaches Oppaido, to improve your martial skill. (The martial skill is a hidden skill, there are others  as well.) I suppose you can also get better at fighting off Japanese tentacle monsters, should any escape the containment facility at the Institute campus. I also added guide entries on Oppaido and Shokushu Kendo in the game encyclopedia for your enjoyment as well. 

You can take a look at the instructions for creating your own school in Appletree here.

I'll probably also enable modding jobs into the game as well, though sex actions and some other systems will be a while longer before mod support is added. I'm debating on how I want to handle documenting some of the other existing areas that can be modded. Some of the simpler things would benefit from just having a "mod creator" tool instead of detailed instructions/reference.

I've also been working on some more general documentation

The goal is to cover a lot of the basic data about character variables and some other systems. Fortunately I'm able to use regex to convert code into some nice neat formatting, so all I have to do is go in and add the description and allowed values.

Besty has started working on footwear, which should be available for you to wear in version 19 as well. He even started a poll on discord about clunky heels (and whether they are more or less sexy than standard heels) lol

That's it for tonight folks, I'm going to get back to these variables...

o7

Friday, January 11, 2019

Getting Clean


Hello everyone, I'd like to start this off by saying that I hate bugs. The minor ones—things like a screwy word from the parser or a graphical error—aren't much more than annoyances. The serious ones, however, draw forth some serious hate... mostly because just about any bug in the game is my fault, something I didn't catch. Of course I realize that some bugs require more play-testing to find than is realistically feasible for just a couple people, but I still feel bad about those too.

November, and December in particular, marked a point where a lot of systems that had previously been separate have been integrated with each other. There's more of this expected to take place over the next couple months, and then again later in 2019 as we start adding more secondary systems like drug withdrawal and prostitution. This integration process results in a lot of bugs, things where interfaces between systems aren't quite right, or where there are unexpected effects from things interacting together.

All told, it's pretty much expected to have these sorts of things happen when you're dealing with nearly 150,000 lines of code. Lines of code isn't a great metric, to be sure, but it is a somewhat convenient one for our purposes. Our 150K figure doesn't include all the logic and structure found in twee, either, it's only the TypeScript. As a comparison, the average cellphone game is about 50K lines of code.

When there's a lot of interaction between the system, and it's driven by player input, the number of scenarios that are possible start getting ridiculous. For the most part, things are working pretty well in AW, thanks in part to a lot of planning. What I didn't count on, however, is how Twine amps up the difficulty of finding and preventing bugs. A big part of this is a lack of support for automated inspection and testing. Twee files (.tw) are essentially a black-box to all of the tools that help make debugging easier.

TypeScript, for example, is great for helping to eliminate whole swaths of bugs, but it can't parse twee to make sure that macros are called in the right order, or that the possible arguments will always fall within allowed bounds. Even though Twee is an offshoot of HTML, none of the HTML existing HTML tools and linters seem to work with it.

Another problem is the lack of reference functionality in the IDE. When working in typescript, for example, if I type setup.t I get auto-completion options including setup.time, and when I type a period after that I see the different functions and variables available. When I get to setup.time.add( I see "minutes: number, [status: boolean]" telling me exactly what kind of argument to put in, and the result is I type "setup.time.add(10);" to move time forward 10 minutes. That's a really basic example, but none of that is available for Twee, meaning everything has to be remembered or referenced.

So, in a nutshell, it's been taking longer than expected to try and avert the bug apocalypse. 

There are still several little tidbits of code that need to go into the game to further connect things as well, which will likely mean some other bugs that can occur. The plan had been to simply work on those on the side while focusing on the larger things like the date system. Instead I think it's better to give that my undivided attention, as well as focusing on system stability and debugging. (For example, there  are some bugs that seem to occur only on slow systems, which likely indicates some issues with async functions.)

There is also a good amount of documentation that should be done, especially as we start opening things up for content submissions, writing contests, and mods. Finally, instructions are needed so that people can actually make mods.

We're already behind thanks to the bugsplosion in version 18, so at this point it would already be tight to fit the date system in properly for 0.19 without debugging. It makes sense to me to put that on hold temporarily and focus on the systemic issues... So that's what we're going to do. 

We'll also be continuing work on conversations, and some of the other things planned for the month, so version 19 won't be devoid of new stuff or anything like that. We've just got to focus a bit more on getting everything in order before we progress. :D

Let's do some pictures after that giant pile of words!


This is the kind of format I'm looking at for a lot of the documentation. I think that a Google Doc could also work... but that there are some advantages to a web page format.

Besty has been experimenting with a tool to help players create clothing mods, which I think is a pretty good idea. Basically it'd help take a lot of the questions out of making a mod, and help to make sure the mod file is formatted correctly.


This is the result of some experimentation I was doing with converting AW into a native executable instead of playing it in a browser. It works quite well, but there would still be details to hash out. I'm not looking to convert anytime soon, it's just something I'm keeping an eye on for the future. :D

Finally, we've been getting some of the old blog posts up in a readable format on the AW website. It's a bit hard to believe, but there turned out to be about 650 pages of blog posts, and that's on 8.5x11 paper with narrow margins. o.O  So far only the posts from 2018 have been formatted, but it's a start!

That's all for now, I hope you guys have a great weekend!

ThaumX

Wednesday, January 9, 2019

Good Clean Fun


Hello everyone,

It has been a little while since my last "real" post, because the last couple have all been releases... 0.18.6 is going to be the last in the "18 series", I swear. There were several bugs that were caused by the change to the time system, which is pretty much expected for such a central part of the framework. Because I focused on fixing those for a nice clean release, we have 18.6. 


Incidentally, while fixing some various bugs, I found the bug that was causing all sorts of pernicious problems with time in the first place. I'm glad to have the Unix-like time in place now though, it's just a lot more reliable overall. The new version will be posted on Patreon shortly.

 Don't Forget the writing contest! Deadline is Jan 15th


January Plans

So what are we going to be working on for the rest of the month?

Basically the same things that we had planned, The date system, more conversations, and probably a secondary system like new clothes groups (lingerie/athletic wear) or shoes. Also more work on the story thread system to go along with dates.

The date system is going to be somewhat bare in version 19, I've designed it to be modular like other systems, so that new activities/locations can be added into the system easily, and it's open to additions from mods. I'll likely start things out with a few basic/cliche date spots, and then add to it later. The main objective is to get us to the point where relationships can happen, both romantic and friendship, and then we'll be pretty much ready for the transition to filling out the existing systems with content. :D

That's all for now, I'm about ready to go to sleep but there's still so much to be done! 

o7

ThaumX






The Seedbed Release - v1.31

Update: So all sorts of shit happened, mostly a killer migraine and then discovering this morning that someone using git as...