Spankers, Spankees and Switches of All Ages (18 and above),
I’m cranking away at the content for the second day of episode 3. Not sure
yet when I’ll have it ready though, especially with the holidays.
I’m honestly not too happy about how
this episode is coming together. I don’t think I’ve got Prometheus
and Poseidon figured out yet. But I already threw things out and started
over once, so I don’t really want to do that again. Especially since I’ve
already released a day of content. Regardless, expect more opportunities
to fight alongside Tempestas in the next episode, and a little bit more
time with Natalie.
At this point, the code engine is pretty much complete, and we’re
transitioning into maintenance mode. What that means is that we won’t see
any big changes. There will be some new features, but
they will mostly be quality of life stuff (like auto scrolling combat).
Nothing that will fundamentally change the experience. Here is
my current task list:
1. Improve the performance of the character selection screen.
Sometimes flipping through clothing options, there is an apparently random
delay of a few seconds before responding the player’s input. I think this
is because of some old, poor implementation choices I made when I was first
2. Cleanup the combat code. The code for combat is *way* more complicated than
it needs to be, mostly because of an abortive attempt to reuse some of the
story mode code. This is the only part of the codebase that I consider truly
gnarly. Simplifying that will make everything so much easier going forward.
3. Autoscrolling combat. This was one of the first feature requests I got, and
hopefully I’ll have an easier time implementing and fiddling with it once I’ve
simplified combat a bit.
4. An additional “help” screen where players can look up characters.
5. Expand the help screen with information on statistics.
6. Add power information to the help screen.
7. Change your outfit without having to go to the character screen.
I’ll accomplish each task between episodes. That should hopefully strike a decent
balance of generating more content, and keeping the codebase healthy.
Of course, this is just a preliminary list. If anybody has experienced
any pain using the game, please let me know. I’ll try to work with you to come
up with a solution, and add it to the priority list.
I’m *especially* interested in anything that makes you feel like you’ve wasted
any time at all waiting on the game, rather than the game waiting on
you. Every minute of your precious time that you dedicate to my game is an honor,
and I don’t want to waste any of them.
Spankers, Spankees, and Switches Of All Ages (18 and above),
I’ve finished the first draft of content for the first day of episode 3. Next,
I need to:
1. Do at least one editing pass.
2. Implement the two new villains, and brand new superheroine. The bulk of this
will involve implementing and balancing their powers. This will be particularly
interesting, because I’ll be doing some interesting things with statuses with
the two villains, and the new hero will be doing some damage redirection, which
we haven’t seen yet.
Also, I stumbled upon some criticism of Scarlet Moon while browsing
puddinggames.blogspot.com.Pudding Earl tends to lose interest when I throw
massive walls of text at them. To address that, I’m going to try a little
experiment with this episode. Effectively, I’m going to try to break up long
events with some roleplaying (i.e. fluff) choices. You’ve seen a few of these
already, mostly as Scarlet Moon. You can typically tell there’s a fluff choice
if the third option is some variation of “Say nothing.” I’m going to try to add
more such choices, even when you’re in your civilians.
These should hopefully break up ginormous walls of text, without adding
significantly to my workload, and it should hopefully give players a a bit more
control of their character’s personality, both in and out of costume.
As of right now, you can generally expect three choices: a snarky choice, a
serious choice, and a silent choice, just like when you’re Scarlet Moon.
If there’s a particularly personality archetype you’d like to have the
opportunity to roleplay, please let me know in the comments. I can’t guarantee
that I’ll include it, or if I do that I will with every fluff choice, but I can
Spankers, Spankees, and Switches of All Ages (18 and above),
I’ve just uploaded a new version with a few bug fixes pointed by some kind folks
on animeotk.com. In particular, I’ve fixed a crash where a slender PC tried to
spit on Buzzsaw after being defeated by her the first time.
Also, something that I forgot to point out: The Page Up/Page Down, Home/End keys
all work like you would expect for both the story pages, and combat log. You
don’t have to scroll through the content line by line if you don’t want to. I
should make those more discoverable, I just don’t want to do anything fancy.
I could include additional buttons, but that’s *four* additional buttons. I want
to have as little as possible on the UI, because that makes it easier for the
UI to scale up and down on different sized monitors and it means more of the
screen can be taken up by text.
I suppose I could include a story page that points those out before the game
begins? I don’t know.
Anyway, get the bug-fixed version over at the Downloads section, especially if
you like playing slender, defiant characters!
Spankers, Spankees and Switches of All Ages (18 and above),
We’re getting close. We’re getting very, very close. I just finished fixing some bugs in the new content that kept the game from even loading, and am now working on debugging it (making sure statistics increase like they should, events transition like they should, combat is sufficiently balanced, etc).
I also came across a host of bugs that in the episode 1 content that have been fixed. There were a few places were you weren’t gaining the stat points you were supposed to be gaining. Oops. No wonder Buzzsaw was giving people so much trouble. Those fixes will be included in the new content.
I am currently waiting for a few scenes from someone who was kind enough to write them for me, but they aren’t critical. So if they aren’t ready when the rest of the game is, I’ll just release the content I have and include the missing scene in a future update.
Spankers, Spankees, and Switches of All Ages (18 and above),
I’ve updated the download page with the newest version: Scarlet Moon 1.0.8.
Alas, there isn’t any new content. What there has been is a massive rework of combat to better support interesting powers (i.e. powers that aren’t just “do damage” or “inflict status”). Most of the changes are a straight up refactor, which means that a lot of the code has been rewritten, but it still does the same thing. There are however a few changes:
- Grappling now moves both the grapplers into the grappling range, but doesn’t force them to remain in a grapple.
- Spanking is now a single turn action that inflicts the “Humiliated” status and has some sexy text. It no longer spans multiple turns.
- All ally actions are executed before enemy actions. When you have allies (which won’t be for several more episodes), you’ll also be able to control the order in which those actions execute.
- Chain Pull (a power that Buzzsaw has at the end of episode 1) now both pulls its target into a grapple, and inflicts the “Frozen” status on the target. A character with the “Frozen” status can’t move, though they can do everything else (attack, spank, use powers).
- Scarlet Slap is now Scarlet Punch, and can be used both at armslength and in a grapple.
These changes were made for a variety of reasons, but the big one is because I’ve got a much clearer idea of how I want combat to work:
First, there are only a small number of “atomic” actions that define all of combat. Each action resolves into one or more of these actions. The basic actions are:
- Damage (negative damage heals).
- Inflict a status for a given duration (negative duration reduces the status’ duration, or heals the status if the duration is dropped to zero).
Technically, grapple could be defined as two Moves, but that proved to be hard to keep consistent (i.e. there was a high risk of one of the grapplers entering a grapple, but not the other, which makes no sense).
Each basic (non-power) action is resolved into a single one of these actions. Attack is a single Damage, move is a single Move, spanking is a single Inflict, etc. Powers on the other hand can do one of two things: they could resolve into one or more of these basic actions (like Scarlet Beam), or they could react to basic actions in combat. For example, you could have a power that redirects the first 2 non-negative damages that target a character. Or you could have a power that allows a character to automatically attack the first 2 enemies that are inflicted with a status.
This gives you a cheap way of activating any power that reacts to other actions. You have a power “Kick ‘Em While They’re Down” that automatically attacks enemies inflicted with a status? Cool, activate the power, then spend the next few turns giving your opponent a spanking. Not only will you weaken them, but you’ll do a bit of damage to boot.
Supervillains will tend to be more powerful than your heroes, and their actions will tend to be more direct. You could already see this in Buzzsaw: all of her powers involve getting you into a grapple, and hitting you _hard_. However, heroes will tend to have more reactive powers, and the challenge in the game will be finding the right combination of powers that amplify your attacks, while mitigating your enemies’, and getting all that set up before your enemy gives a you figurative and literal spanking.
So, the first two changes above simplify your basic actions to make it easier to use them to set up chaining. The third change makes it easier for the player to set up their chains. They also make combat more deterministic which is a plus in my mind. The goal here is to find a good strategy and execute it, not pray to the RNG god. The hope is that with the wrong strategy, you’ll almost always lose, but with the right strategy you’ll almost always win. The last two changes are just balance tweaks. Chain Pull’s change allows Buzzsaw to nullify the “keep your distance and shoot her strategy” in the second fight that can now be used to _great_ effect in the first fight since your move action will always execute before any of her actions. The change to Scarlet Punch means you can focus on building up your strength without forcing you to go into a grapple to make full use of it.
I would appreciate it if people could take the new version and try it out. Let me know what you think of the changes to combat, and if there are any bugs. I was able to play through the full episode a couple of times without any problems, but that doesn’t mean there aren’t any of course. Even a combat system as deterministic as this one has quite a bit of randomness.
A few bugs have also been fixed. The character screen now allows you to make changes to your character _without_ resetting all of her stats. Furthermore, I fixed two places where your willpower _should_ be increasing, but wasn’t. You can now take the Willpower options and still be strong enough to fight Buzzsaw!
Spankers, Spankees, and Switches of All Ages (18 and above),
Sorry I missed last week’s update. RL got in the way. Anyway, as far as progress on the game goes, I have been working my ass off on the codebase. I started out refactoring my GUI code to make use of a very cool library ReactiveX. The Java implementation includes some very nice bindings into JavaFX, allowing me to write my GUI code using a paradigm that makes sense to me (message passing) rather than the utterly obfuscated callback-based approach that JavaFX encourages. This has allowed me to clean up my GUI code _massively_ including removing some of the bugs that came from various hacks I tossed in to get the whole thing working.
While debugging this refactor, I discovered that ReactiveX doesn’t like it when operations are not idempotent (in particular, if they have side-effects, weird things can happen). So I solved this problem by rewriting my entire codebase to make everything immutable except for the GUI, and a small stack of past commands in the combat code (to make undoing easier).
Yyyyeahhhh. Did I go a little bit crazy and overboard? Fuck yes. But that’s the best part about being the sole coder on a project that you are spearheading. You can do all sorts of crazy shit, and nobody can stop you! Muahahahahhahaha!
Besides, this has forced to me clear up some techdebt that’s been bugging me almost from the moment I wrote it. It also makes a lot the code that was before hard to test much easier to test. So that’s a plus. Probably won’t be writing those tests now, but that’ll probably be something I poke at as time goes on. Add a test here, add a test there, and so on.
That being said, the refactor wasn’t really that crazy. It didn’t really affect the design of my code all that much. It just required a lot of mechanical “methods that inflict side-effects, now return modified copies of whatever they were modifying before.” Some of my types are bit crazy now, and could probably stand to be reworked, but whatever. I’ll poke at that later.
Anyway, at this point my code compiles, so next I need to update all of my tests (I have about 200). Fortunately, these changes should dramatically simplify most of my tests. So I should have all of that modified by the end of the month.
As far as the actual game content goes, Chaosnova has been working on that, so it hasn’t stood completely still. Going a bit slowly, alas, but most people don’t have as much free time as I do. I’ve also been working on some of the planning for the rest of the season in between working on the codebase.
Spankers, Spankees, and Switches of All Ages (18 and above),
Today, I am proud to release the first day of the first episode of The Scandalous Scarlet Moon.
You take on the role of a Silver Age style superhero(ine) Scarlet Moon. Aided by your best friend Juliana, you must protect the City of Generica from a host of villains, from brutish thugs to sensual seducers, grinning giants to evil masterminds, honorable hunters to cheating thieves. But don’t spend too much time superheroing! After all, you’ve got a job to keep down, studies to keep up on, precious precious beauty sleep, and you might even want to have fun every now and then! Neglect them at your peril (to your bottom). But don’t spend too much time focusing on your regular life either! After all, every one of those villains will happily put you over their knees and give you the kind of a spanking a meddling superhero deserves if you let your guard down for even a single second!
So join me as we embark upon an epic quest across, over, and under Generica City!
In this release experience the epic, action-packed origins of Scarlet Moon! Fight your way through an abandoned business park crawling with the Evul gang, the Whistlers, learning skills as you go that will be absolutely essential to getting out of there with an unmarked bottom. Come face to face with your very first supervillain: the boisterous Buzzsaw and learn up close how they earned their menacing name!
This release contains the following:
- Customize your character however you want! Pick their gender, name, appearance, and clothing.
- Pick the genders of most other characters! Most NPCs are broken into one of three roles: spanker, spankee, and switch. Pick their genders universally at the beginning of the game, or select the gender of each character as you meet them.
- Experience a rather generic superhero story, where you get to make some choices that dictate how your character reacts to the situations! This episode is alas, rather linear, and your choices don’t impact gameplay much. But that will come in subsequent episodes.
- Engage in turn-based tactical combat. Most of your enemies don’t pose much of a threat, but be careful! Your health and mana are combined into a single stat, energy, you have no way of restoring energy, and you lose energy each round (this can be turned off). You’ll have to make intelligent and efficient use of every skill in your ever-growing arsenal if you hope to survive!
- Get annoyed when you discover that you gain nothing from combat!
- Experience in-combat spankings! Be mildly annoyed at how utterly impractical they are at this point in the game, and hope they become more useful as the game progresses!
- Experience lovingly crafted in-story spanking scenes that eschew sound effects in favor of purple prose, and clunky back and forth between the spanker and spankee! How many different ways can we describe getting slapped on the ass? Play and find out!
- Prefer to play a Domly Dom of Domliness and don’t relish the idea of your character getting their fanny whacked? Every spanking scene is avoidable! Turn off in-combat spankings (which also turns off losing-to-the-supervillain-spankings)! Naughtiness is inevitable, but spankings are not!
- All sorts of bugs and crashes that have slipped past myself and my beta testers, because let’s be honest, I’m a hack whose too busy jerking it to use proper design, write enough unit tests, and don’t even talk to me about integration tests! (If you happen to discover one of these, please let me know, and maybe we can trick a few people into believing I know what I’m doing).
The next major release will contain the following:
- Beach scene! Because who doesn’t love the idea of buxom women in thong bikinis getting spanked in public at the beach?
- The kidnapping of a character you’ve only just met, and probably don’t like very much, but are expected to save anyway!
- The unveiling of Scarlet Moon’s costume! Will she have a modest, practical outfit, or the type of sexy skanky skimpy spandex slip you secretly enjoy but publicly denounce because there’s something terribly wrong, yet dirtily sexy, about a genre where the mainstream works have already done the work of designing the outfits for the inevitable porn parodies!
- Stat gain through roleplaying! Rather than getting stronger in combat, some of the choices you make during the story will give you stat bonuses, and let you learn new skills! Will you be a character with high Strength, who punches her way through problems, or a fast-talking charmer with high WIllpower who talks her way out of scrapes? The choice is up to you!
- Balance short-term gains with long-term benefits! Do you eavesdrop on your opponent, and try to learn her motivations, or do you ambush her now, and gain the upper hand in what is sure to be an intense battle that could go either way?
The game is written in Java, so you need to make sure you download and install Java 8 if you don’t already have it installed. Be warned, Oracle apparently has a shady deal with Yahoo! where they try to trick you into making Yahoo! your default search engine, so keep an eye out when installing Java.
The game’s code is licensed under the GNU GPL-v3, while the content of the game (events, characters, etc) is released under the CC-BY-SA. What this means is that you are free to take my work and do whatever you want with it (release a slightly modified version of my game, write stories featuring my characters, etc.) and release them so long as you:
- Give me proper credit
- Release your work under the same or a compatible license
I’ve uploaded a new release that fixes an issue that may have caused the game to crash when attempting to save.
I’ve uploaded a new release that fixes an issue where the player will not learn the skills they are supposed to if you change the font size on the character creation screen.
I’ve uploaded a new release that fixes several issues: Character skills are now properly loaded when loading a game, so skills don’t bleed over from one game to another. The player can now defend at the distant range. The option where you defeat Buzzsaw and spare them a spanking now transitions to the correct event. Struggling during a grapple no longer automatically breaks you out of it. It now reduces the duration based on your grapple skill. Buzzsaw now knows the skill Soaring Leap, where she jumps at you, which puts both you them at armslength. So you can’t just move to distant and spam Scarlet Beam until she falls over. Well, you can but she now has a way of getting close to you.
Spankers, Spankees, and Switches of All Ages (18 and above),
So I have some bad news. I’ve decided to put Potion Wars in a coma. I’ve been having a lot of trouble writing the second episode, mostly because of massive tone clash. The premise just demands a very dramatic, down to earth tone. Dramatic, down to earth tones really do not mix well with spanking porn. Rape, torture, and incest porn? Sure. Just look at the success of Game of Thrones. But spanking has just too much whimsy to really work well with a story about a drug war being fought along racial lines.
Some of you are probably slapping your forehead and saying “No duh, dumbass!” In my defense, the story kind of got a little bit out of my control. Stories do that sometimes. Note that I’m not doing this lightly, and it’s absolutely not because I got bored and found a new, shiny idea. I love Potion Wars, I love the story that’s taking shape, and I very much want to tell it. This just isn’t the right place.
So the next question is, what now? One option would be to take Potion Wars, rip out all the porn, and release it somewhere as a vanilla game. However, this website is called “spankingrpgs.” Not “baitandswitchrpgs.” I’m going to write a full-fledged spanking RPG if it kills me. I just need to be careful to select a premise and tone that are conducive to spankings. So here are my constraints:
- The game needs to be an adventure tale that is ostensibly dramatic. It does not have to be serious and angsty, but I’m not a comedic writer. The content should be dramatic, even if the tone is not.
- The game should have an element of whimsy, silliness and absurdity. Spankings are absurd, and they will fit much better if there are other elements of absurdity already.
- There needs to be plenty of natural opportunities for spankings, both top and bottom. Ideally without making the spanker look like a total douchebag (unless the spanker is villainous and they’re supposed to be total douchebags).
After considering these constraints for a while, I decided that one of the genres that best fits is the superhero genre. Particularly, Silver Age superheroes. Silver Age superhero comics were more than a little absurd, but the characters took them more or less seriously (so we get a rather absurd tone, but also some drama). Furthermore, a Spider-Man style superhero (i.e. a part-time superhero whose trying to balance work, life, and superheroing) provides a ton of natural spanking opportunities. First, we get the obvious superhero-supervillain showdowns. You can spank supervillains for trying to take over the world for the umpteenth time, and supervillains can spank you for trying to foil their plans for the umpteenth time. Plus, Silver Age supervillains tended to be ridiculously over the top, and I could totally see a Silver Age style supervillain giving a Silver Age style superhero a sound spanking, and vice versa. Furthermore, there are plenty of opportunities for spankings as the player tries to live a normal life. You stood your boyfriend up, because you were fighting across a bunch of rooftops? That’s a paddling. You slept through class because you were up all night trying to find the villain’s hideout? That’s a paddling. Forgot your mother’s birthday? Paddling.
My basic thoughts are the following, at least for the first season:
Each episode of the first season will have a new villain. You’ll have an initial encounter with the villain, that will be fought either to a draw, or the villain will win. Then, over the course of the episode you’ll need to prepare for the next showdown with the villain. This could be done a variety of ways:
- You could patrol a lot. Basically, beat up a bunch of generic criminals to get stronger, and interrogate the underworld about this villain (note that patrols will have some unique content for each day, just like other events. You won’t just be grinding against generic enemies).
- Do some research. Maybe the villain is reminiscient of an animal of some kind. So the animal’s weaknesses may be analagous to the villain’s. Or maybe you study news footage of your last battle to better determine what their strengths are, and then develop a new skill to counter them.
- Try to learn more about the villain’s personal life. See if maybe you could use a bit of psychological warfare to manipulate them, or lure them into a location where they won’t be as effective (i.e. lure a flying enemy into the sewers).
- Some combination of the above three.
Furthermore, you’ll have obligations you need to meet outside of superheroing as well, like homework, family get togethers, a job, etc.
Each episode will be broken into days, and I’ll release content a day at a time. Each day will be a fairly small update, so that we don’t have massive droughts like with Potion Wars. Each episode will have a list of tasks you’ll want to accomplish, perhaps broken into subtasks (i.e. you have a midterm at the end of the week, so each day will have a subtask to study three hours. If you study three hours every day of the episode, you’ll get an A+ on the test). However, you will not have enough time to do all of them. You could do all of them so-so, or a few of them well, but you can’t do all of them completely. Furthermore, you’ll absolutely have to spend a lot of your time preparing for the final fight with the supervillain, because at the climax of the episode you’ll have to defeat them. So if you spend too much time doing personal life stuff, you may find yourself in an unwinnable situation.
Of course, you need to do moderately well at the day-to-day tasks as well. Perhaps if your grades get too low, you’ll have to move back in with your parent (you’re in college, FYI), which will make it harder to patrol and research villains. If you do too poorly at your job, you’ll be forced to spend extra time at work, giving you less time to patrol and research villains.
The supervillain combats will probably be a bit more elaborate than the battles in Potion Wars. Not a whole lot more elaborate (I’ll be using the same game engine, just with a few minor tweaks). But many of the combats will probably be multi-phase. You’ll fight for a while, then there’ll be a cut-scene, and you’ll get options (which options will depend on the choices you made over the course of the episode). The outcome of the options will determine who gets a bonus in the next phase of battle, you or the villain. Obviously there will be a lot of save-games to minimize repetition. There will probably be an auto-save at the end of each phase of battle, and an autosave at the beginning of each day.
Finally, I’ll probably introduce more customizations. In particular, I’ll give players the ability to control the gender of other characters. You’ll have the options of:
- Specifying the genders you prefer to see for spankees. This will generally influence the genders of supervillains (since you are required to defeat them at the end of every episode), and perhaps a side-kick if you get one (no promises!). If you turn off the ability for enemies to spank you, then all generic enemies will be this gender.
- Specifying the gender you prefer to see for spankers. This will generally influence the gender of authority figures (your boss, your parent, etc). If enemies are allowed to spank you, and both the spankee and spanker gender are the same, then all generic enemies will be the selected gender. Otherwise, the gender of generic enemies will be chosen at random.
- Let the game choose at random (or let characters use their preferred genders if they have one).
- Pick and choose on a case-by-case basis. This has the downside of interrupting the flow of the story a bit, but gives you more fine-grained control.
Note that this isn’t guaranteed to affect all characters. For example, I plan on pulling Carrie into this game as your best friend, because I just love writing her. She’s going to be female either way, because she will forever be a woman in my head.
The downside to giving players control over the gender of other characters is that there probably won’t be as many sex scenes as I’d planned in Potion Wars (i.e. few to none), because there’d be so many damn combinations to write (male-female, female-male, female-female, male-male).
Furthermore, dialog choices probably won’t have as much of an effect as it did in Potion Wars. This is because I want the various tasks you can choose each day to have significantly different content each day, and I do want to release content at a reasonable pace. I do still want to give you opportunities to influence conversations, and I want characters to remember them, but you probably won’t get as many dialogue choices, and your choices probably won’t have as many and as long-lasting effects as I’d planned for Potion Wars. For example, in most conversations, you’ll probably get one choice at the beginning, in which you’ll have two to three options of various personalities (cooperative, aggressive, bratty perhaps). Then, the rest of the conversation, I’ll put words in your character’s mouth, based on the personality you chose. So if you chose the bratty option, then I’ll give your character bratty dialogue in that scene.
That being said, I do want some activities in earlier episodes to influence later episodes, so I’ll try not to railroad you too hard. As always, it’s a careful balancing act.
Thoughts? In particular, feel free to make costume or supervillain/hero suggestions. Also, if there’s a particular personality you’d like the opportunity to roleplay (an angsty loner hero? A pompous bastard? A cowardly lion?) let me know in the comments. I’m always looking for personality suggestions, and if I’m going to spend time writing dialogue for a particular personality, I want to make sure there’s at least one person that wants to play it!