Wednesday, February 27, 2019

Medical Matters


Hello everyone, the stupid typhoon is well past, and I thought I'd do another update. Well, actually, I have to type with one hand and one finger, so I thought it'd be a bit easier to do an update rather than coding... Just trying to make the best of my time, lol. 

Don't worry, it's nothing serious. Just this cyst-type thing that developed on my tendon sheath in my left ring finger, right where the finger meets the palm. It wasn't very painful unless I pushed on it or tried to hold any amount of weight with that finger. Anyway, today my doctor tried a treatment that basically consisted of sticking a large-gauge needle (about 1.2mm) into it and trying to suck out some of the tendon goo. I guess the next step is actual hand surgery, so I'm hoping this measure works!

right now my hand feels... less than pleasant... so I'm typing in this somewhat ridiculous way. I'm hoping it'll be back to normal in a day or two. (If you're the type of person that's into that thing, you can check out a photo on the AW discord. It's in a bandage, so it isn't that bad, but there's still dried blood and whatnot.) 

I would say I'm not expecting a delay, except that I keep forgetting that February only has 28 days, and there was that dumbass typhoon dick-tip (wutip) nonsense that ate up several days last week. I have a feeling that we could meet the release, but that would leave nowhere near enough time to properly test for bugs and fix them. Because we're connecting more things together (including the AI), I don't think it's a great idea to release without a minimum testing period. 

I'm going to push back the release to the 5th of MARCH, giving us nearly 2 extra work days for testing and wrap-up. (correction for timecockery... March not February.)

And now for a brief preview:

the dating system and AI integration in that has been our focus for the last week or so. It's looking pretty good so far, but it's still mostly the system framework at this point, particularly with the story thread system still waiting in the sidelines. Here's  a few preview pics:



(the boob heart is just a placeholder for the npc portrait.) the second picture shows the result of an npc query, basically suggesting a location. The AI is also used in determining how favorably the NPC views different locations/activities.

I'm gonna get back to coding, gotta enable some sex scenes at the end of a nice date, and set up some behavioral actions. 

o/

ThaumX

Tuesday, February 19, 2019

Hard at Work


Hello awesome people!

I did the last update a little early last week for Valentine's day, so I thought I'd go ahead and check in early this week too. Mostly, we've been busy down in the code mines. Besty has finished up the scheduling system update, and I have been busy working on the NPC dating system. A whole lot of things come together for dates, so I've just been taking it step-by-step.


Right now there isn't a lot to actually show you, as it's still mostly code at this point. The above image is a look at the "date spot selector". Of course, the player can just let the NPC select the next location on their date. But there are situations where the player may want to be the one to choose the destination. NPCs will be happier if you choose a location that they like, rather than simply choosing themselves. This should come into play slightly more if wooing a female/futa NPC, but it applies to males as well.

Date spots themselves are expansible and eventually will have their own mod interface to allow adding custom date locations. They're also broken into a few simple categories to make them easier to find (and also to prevent going to eat multiple times in one date).

In other news, I added SASS into our build process on Sunday. I've been annoyed at some of the limitations of our present CSS setup. Somehow, on my one day off I ended up adding that in, and doing some minor conversions. The hope is that it will make it much easier to maintain and unify the game's CSS, as well as making it easier to support a wider array of screen formats, and better user customization.

And, elephant in the room, I'm aware that some aspects of AW's UI are not great. UI isn't my strong suit, so I've been learning along the way. I'd like to think that some of the more recent work like the wardrobe menu, and the settings/character/social menus are pretty decent... but I also know that there's a lot of clash between mismatched styles, particularly when it comes to older UI elements. 

Fortunately, Besty used to do work as a graphic designer, so I think we'll be able to improve things a lot. It's important to note though, that the UI isn't a high priority for us right now. The UI is functional, and that means that time is better spent on content over the next several months. 

Talking about UI does remind me of something else I worked on in my 'off' time. Customizable menu buttons, to allow you to choose menu shortcuts to add to the phone UI. Basically, It lets the player create shortcuts to different submenus, instead of needing to open a menu and then click over to the submenu. 

Anyway, this is already way longer than I expected, so I'm going to get back to the code mines!

o7

ThaumX





Thursday, February 14, 2019

Heart Shaped

Happy Valentine's Day!


It's a bit of an unusual holiday, and the kind of Valentine's Day we celebrate today differs quite a bit from the holiday prior to the 20th century. It is celebrated slightly differently from country to country in the West, and even more different in the East. The actual holiday has a rather strange origin, and plenty of modern-day myths as well. As it happens, there were two guys named Valentine executed by Emperor Claudius II of Rome. They were executed in different years, but both were executed on February 14th. One was a criminal who married a child, the other a devout Christian.

Later on, the Christian--whose death had nothing to do with romance--was declared a saint by Pope Gelasius at the end of the 5th century. This was also used as an occasion to replace the Roman festival/holiday of Lupercalia that was traditionally held in mid-February. This also had nothing to do with romance, all the way until the 14th century when some confusion of people named Valentine, and a few convenient assumptions, saw Valentine's day gain a romantic bent.

Regardless of how the holiday came about, some people certainly seem to enjoy it. If you're one of those, then I hope you enjoy the 2019 edition even more. If you happen to be more like myself and don't really get worked up about it, then I hope it is tolerable for you (and that you're able to please your partner). And for all of you single on Valentine's day, well, it's just a day. Do something you enjoy, and don't fall into the trap of feeling bad about being single on a completely arbitrary day of the year. :D

Heart Shaped


I was thinking about the heart shape, of course, because of the date. It's an interesting shape, and I don't really know much of the history behind it. I do know that when I started thinking about it, I realized some of the best bits of human anatomy can be heart shaped... So that's good enough for me :D


Yep. Hearts are great.

While making the post image, I also discovered something called the "heart-shaped boob challenge" which started in China before the government over there cracked down on it. Still, I like the idea, so I figured I'd share a few examples of the heart-shaped boob. It's basically just a two-hand heart shape, but in this case, the fingers forming the crook of the heart also serve to hide the nipple. It seems that girls of all shapes and sizes can take part, as well, at least based on Google Images...




Feel free to share your own heart-boobs with your significant other, everyone loves the gift of boobs, after all! You can even send it to the AW team if you'd like your boob heart to make it into the game somewhere (anonymously, of course). XD

Preview!


Not anything too major, but I thought I'd share with you a utility I added into the game late one night.


The basic idea is what it says in the image, it displays all the game images stored in the resource files, along with the image key, and dimensions of the image. This should make customizing images in your game considerably easier, as you can find the image you want to replace visually by scanning through the images. Once you know how big to make the replacement, and what it should be named (the key), it's a simple matter to use the mod image tool to create your own image replacement mod. :D

Well... I guess I've got to get back to programming dating, so I'll leave it at that for now.

Happy Valentine's Day,

ThaumX

Monday, February 11, 2019

King of the Sea


Hello everyone, I'm back with an early post on some of the recent Patreon tomfuckery.


Before I start with that, I thought I'd share the results of my investigation into game saving and loading speeds. While it's never been what anyone would call fast, the wait has become rather noticeable. I was starting to worry that some part of my code was just too inefficient, or some part of the setup was causing the issue.

The good news is that isn't the case. In fact, the entire saving process that has anything to do with AW data/code only takes about 40ms on my AW developin' PC. I have been trying to keep it efficient, after all. The bad news is that it isn't my code that is causing the slowdown, it's the way that SugarCube's save system works. That means that fixing it would require more mucking about in the SugarCube story format to change the save system.

To really simplify things, SugarCube compresses the save data, and stores it locally. The main issue seems to be that it stores everything as a single stringified array, and any time a save or load operation takes place, it has to recover, decompress, and parse all the stored data. In the case of saving the game, it has to then stringify, compress, and store the data again after the save is added to the array. This is why even deleting a save takes a long time, but deleting ALL saves is relatively quick. I believe it's fixable, but it isn't a high priority for right now. 

To have better save/load performance:

a) Limit the number of saves you keep. The more saves there are, the more data has to be worked though. Each save contains a lot of data about clothes, NPCs, and more.
b) Use 'save to file' instead. This bypasses the slowest parts of the process. It's a little more work to browse to your chosen folder to save/load, so it's up to you if the time savings is worth it.
c) To a limited extent, reducing the number of NPCs that are generated using the system settings "performance" option, can increase save and load speed somewhat.


Patreon...


This all got started with this little interview given by Jack Cunte Conte, the CEO of Patreon. It was helped along by the recent payment processing issues, and more generally, the ongoing stream of special-ness that has been plaguing Patreon for quite some time now. 

To be clear, this isn't a complaint about patrons themselves, and it isn't even a complaint about the basic business/services provided by Patreon. It's more about the way they've been trying to change Patreon into something else.

Patreon charges creators 10% of their pledges for their services. Now ostensibly, 5% of that is for some of the most expensive processing fees you can find, it doesn't even cover the fees you have to pay to get that money transferred from Patreon to your bank. The website itself doesn't have the basic features you'd expect from a multi-million-dollar website, like the ability to control your news feed (as a patron) or to control which posts send out a hail of alerts (as a creator). The suggestion algorithms are middling at best. Suggestions are important, because a creator that works on anything adult is blocked from searches, even for obviously adult topics, so the suggestions are essentially the only form of promotion that Patreon does for adult creators. (And even then, mostly only when a patron pledges for the first time...)



Searching for just "cum" gets you people with the last name 'Cummings', and also a weekly podcast from some creators called "the cum boys". Good on them, because a podcast obviously doesn't have visual adult content I guess, so they get to stay non-adult. Also, because they have over $40,000 per month of pledges, for a weekly podcast. (Being the only semi-naughty search result for "cum" has it's benefits) I don't know what they produce, so they might actually be really awesome... I'm just illustrating the importance of searches on any sort of platform like this.

So, Patreon doesn't advertise for you (in fact, they have plenty of guides on how to advertise for them.). What else does Patreon provide? A very basic blog post feed, that allows you to restrict each post to a certain pledge level. The editor for posts is fairly nightmarish, and the overall format and details you can put on your page is very limited. I actually started writing blog posts separately from Patreon because it's so limited. But because they do the opposite of promoting these, and it's so limited, it's hard to give them credit for a service provided numerous other places for free or very low cost.


So what do they offer?

They do offer a discord bot to give roles on discord based on pledge level. They also have a smattering of other APIs, usually with limited information available. They also allow you to distribute content, though again, the only thing to recommend Patreon for hosting content over free options is simply that you can restrict it by pledge tier. They act as a charge aggregation service, charging numerous patrons for you, though the cost of this service is very high before considering the additional 5% charge. (There's also the comparatively high charge failure rate, and incidents like Patreon suddenly changing banks to one overseas for obscure reasons)

It really all comes down to patrons. It's convenient for patrons to support several creators in one place, without having to sign up in multiple places or create multiple accounts. It's easier, and therefore more likely, for someone who is already a patron to pledge to a new creator. That's pretty much the sum of it.

And that last one is why we pay 10+% of pledges, and honestly I wouldn't complain. Patreon essentially created this segment of crowd funding, and a game like AW wouldn't be possible otherwise.


Then why the post?

Patreon CFO Tracy Jordan explains difficulties maintaining reliable services with limited funding.
Because of the seemingly endless stream of incidents, policy changes, bullshit, and more. Progressively banning more content. Getting rid of some major creators. Lying in interviews and press releases. Political bans, and banning creators for things totally unrelated to their Patreon page, that happened elsewhere on the internet. The demand for extra censorship on top of already being cut out of searches, and somewhat arbitrary purges where Patreon suspends first, and asks questions later. Basically the string of ridiculous things coming from the C-suite, or at the very least, things that the C-suite allows to happen.

And then this latest interview where the CEO talks about Patreon's 10% cut being too generous. There's no mention of mismanagement, or suspending accounts worth millions per year in revenue to Patreon. It really makes me wonder how Patreon could be concerned about profitability. Pretty much the entire revenue-generating portion of the business, charging patrons, is covered by that 5% transaction fee. Bank costs, employees, transactions, office space, etc. All that's left is running the website. 

A website where the content costs nothing (in fact more content offering = more money for Patreon). It's also a website where the bandwidth demands are far lower than many other content-oriented sites. Certainly the cost of servers and bandwidth are not free, but with $25 million to work with annually... 

And now instead of some honest discussion about how things are going wrong inside Patreon, there's intangible mentions of raising their cut, or more disconcertingly, the idea that they should claim creator's IP via contract requirements (and potentially lock them in to Patreon as their sole distribution channel).

Basically... Patreon isn't inspiring a lot of confidence.

I still believe strongly in the concept, and I'll continue to fund all the creators I support. I'm not going to leave Patreon, at least not as things are now. That said, it feels too much like having all AW's eggs in one basket--and that's a lot of eggs--to stick solely with Patreon. I'm going to start looking into other funding sites, some of Patreon's new competitors, in addition to Patreon. I've heard that PornHub is going to open (or has?) a crowdfunding platform for adult content.

I will keep all of you informed, of course. I also plan on putting a table listing the rates from each platform I add onto the AW website, so you know just how much of your money goes to AW vs the site operator. If you also happen to be a creator, hopefully this'll help you out as well.

It'll probably take a little extra work to post versions simultaneously across platforms, as well as just linking to blog posts... but honestly that probably won't be too big of a deal once I work out a good methodology.

And most importantly...

Thank you to everyone who has supported AW, whether monetarily or not, it does mean a lot to me. I'll keep working hard to bring you the best game I possibly can!

ThaumX





Friday, February 8, 2019

Suited Up


Hello everyone, it's time for another update on the inglorious world of AW Development!

So a lot has been going on, so I'll try to take some time to run through everything... First, before I forget, the Bullseye Job mod has been updated to fix a bug I caused while writing the job modding guide. Basically, the days you work don't align with scheduled work hours. You can get it from the AW website on the mods page (or you could just flip the reversed true and false in the mod itself...)

This week has been mostly focused on those lingering fixes/improvements, like fixing the Besty errors introduced while fixing other bugs... hehe. I finished a refactor on the Omni System, with several stability improvements, added some more built-in data validation, did some work on avatars, and expanded the alcohol setup to allow declining alcohol levels with time, nausea, and even alcohol poisoning if you hit the Spermov Vodka a little too hard.


Besty, on the other hand, has been refactoring the scheduling system to utilize the new time system. Also, I've been assured that he hasn't been under the influence of the above beverage while doing this, so it should be more reliable. :D

On to those avatars I mentioned earlier... I started experimenting with a new method of setting avatars in the game. This was mostly prompted by the complex way that animated gif avatars interact with everything, but also with the need for large quantities of art needed if using hand-drawn avatars, even when using tricks to combine different facial features and hair. With the challenge of getting an artist capable and willing to do such work, there's even more reason to look into an alternative.



Here are some examples of the proposed avatars, utilizing the Scalable Vector Graphics (SVG) format. SVG images are essentially a text file, with sets of mathematical instructions to draw shapes of specified colors, as well as the ability to support bit maps and text. Developed by W3C, they are displayed by your browser as images. There are some advantages to the format, namely the small size, scalable nature, and compatibility with html and css.


What really makes them great for our purposes, however, is that they can be 'built' entirely programmatically using JavaScript. In our case, we would use a reference library of numerous "parts", and put them together into one SVG image. different heads, noses, mouths, ears, eyes, eyebrows, hair, etc. that can all be specified individually, based on the NPC character's data and some randomization. It's also quite easy to add compatible 'pieces' to expand the range of potential features and accessories.

Furthermore, each element can be animated and transformed individually, or together, on the fly using the AnimeJS. This adds the potential for not only simple breathing animation to make them more lifelike, but also the ability to change facial expressions as well. While advanced animation is not planned, having the ability to add it later (especially if someone is willing to work on animations) is great. Being programmatic in nature, this sort of animation work is surprisingly thrifty in terms of file size.

Finally, it's a boon to variation. The simpler appearance lends itself to making individual portraits more unique, and the ease of combining shapes in different ways makes a large amount of variation possible. While the data hasn't been specified in the game's code yet (only a basic set and code for proof of concept at this point), the initial library for males alone would have over 400 quadrillion potential variations, without including color. That's 400 with 15 more zeros behind it. :D

Let me know what you think in the comments, on discord, or via email! I will probably do a poll a little later once I have something to better demonstrate the concept, but your feedback is important to help aim my efforts!

Initially, I wanted to talk a little about the recent Patreon mischief, but it's getting late and I really think that subject deserves its own post in a couple days. For now, I'll say goodnight.

Stay pervy, internet ;)

ThaumX

"Our business is fulfilling your business."



Saturday, February 2, 2019

The Bathtime Release - Version 0.19.0


You can download the full change log HERE.

Bathtime Release - Version 0.19.0 

Hello everyone,

This has been one hell of a month, with plenty going on… but I believe version 19 is a solid release. This month I had to contend with that record-breaking government shutdown, which made my life extra hectic as a government employee (basically: more work, no pay). I also managed to rupture a finger tendon sheath in my wasd hand, which hasn’t been the most pleasant thing. The extra work that went into the successive releases in the 18 series, culminating in 18.6 also delayed my start on the work for version 19, and that was part of the reason I decided to focus more on old code rather than writing new. 

Besty survived the long Russian New Year holiday, which involves insanity-level drinking. The Russian medical ministry estimates that Russians have only just now managed to reach sobriety in February, after drinking nearly 500 million liters of vodka—and another 1.5 billion liters of other alcohol—during the 10-day holiday. That’s nearly 14 liters of alcohol per Russian, and enough bottles to wrap around the world 17 times (standing up, not laying on their side). Apparently the only thing you’re able to buy during this nationwide party is possibly more alcohol.  

New Stuff Summary

This release has focused heavily on bug fixing, integration, the build process, SugarCubeAW, testing, and more bug fixing. I also added more mod support, 2 official mods, and lots more documentation. I also set up and tested a new structure to improve stability and reduce the impact of bugs, which basically involves in-class data validation. The build process had a lot of changes, we now compile our JS into a single merged ES5-compatible JavaScript file, and minify the data to reduce size and improve efficiency at runtime. The game should now be more consistently reliable across browsers, though I would still recommend avoiding anything that isn’t Chromium-based or Firefox.

The in-class data validation has been a success, so I’m hoping to roll that out to the other primary classes soon. We also did a lot of playtesting, and even had a volunteer (Omi: Secretary of Large Tits) start working on proofreading/editing existing game text. We fixed every bug that was reported, and plenty more that weren’t.

Of course, this release isn’t devoid of content! The highly-anticipated addition of shoes has happened, as well as nightwear (lingerie, pajamas, etc.). There’s a new shoe store, and both shoes and nightwear can be found in several other locations. There’s also an improved wardrobe menu, that allows you to equip shoes and overwear, and save them as part of your clothing outfits. There is also a new school and new job option to explore. Both have content comparable to the existing jobs and schools, but come in the form of mods. In addition to the ability to create your own schools and jobs, there is extensive documentation covering how to do so. Just about anyone should be able to make their own mod with zero programming (though options to include JS are there for those that do wish to venture into advanced territory).

Along with the mod interfaces, we have a new menu setup for acquiring a new job. It provides more information about the job up-front, and standardizes the process across the game. You can visit the R.A.P.E.S. office at the town hall building downtown if you want to change jobs. (Only Institute Jobs are available in the prologue, this is the planned behavior.) There’s also a new school location, the Red Light Education Center, available in NW downtown. That’s where you’ll find any mod schools you wish to attend. There’s some new TV to watch, and there’s a few other odds and ends as well.

I really hope you enjoy version 0.19! 

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...