Category Archives: Potion Wars
February Update

Spankers and Spankees,

No Etrian Odyssey episode for you guys today, sorry. I’ve got most of it written, but I still need to write the fallout, and edit it, and all of that’s not happening tonight.

I would have had it written (though possibly not edited) by now, except rather than spending the morning working on it, I spent the morning tweaking the latest version of Potion Wars so that I could get it to my beta testers today. I’ll shoot for having the next Etrian Odyssey episode ready for next Sunday. Again, sorry about the delay, but I’m busier these days than I was for most of January.

Anyway, I’ve made big progress on Potion Wars in the past few weeks. All that’s left to be written for the first act of Episode 2 are a scene by Emily involving a subplot with Carrie, and a scene with Ildri that Jeffrey is writing. My plan for this week is to run my translate script through the content I have now, and make sure the translation works on non-trivial input. Since it certainly doesn’t (code never works the first time you run it on non-trivial input), I predict a week of very frustrating bug fixing ahead of me. But suck is life.

I’m hoping to get a new version of Potion Wars out complete with new content by the end of February unless my writers are too busy to write and don’t tell me (*cough* Jeffrey I haven’t heard anything from you *cough*) or we run into a lot of problems during beta testing. It’d be awesome if we could get something out sooner, but this is software. Software always takes longer than you plan. Always.

I’ve also made a lot of changes to the level up mechanics of the game to make them much less deterministic. I’ll post a big-ass blogpost describing the new mechanics in a few weeks (I want to give my beta testers a chance to run through the first episode a few times, so that we can tweak things as necessary). Hopefully between the new more deterministic level up mechanics, and the elimination of random encounters, the first episode will be much more balanced.

Oh did I mention? I’ve also eliminated random encounters and replaced them with static battles. Most of the static battles are invisible on the map, but they have a fixed number, type and gender of enemies, and once you win them, they don’t refresh. Note that you will still have the enemy-generating squares however, in case you find yourself in need of some grinding. I’m going to try to balance the game so that that isn’t necessary, but I am also trying to make the game challenging. So you might find yourself needing to grind if you’re not much of an RPG player, but you don’t want to lose all the boss fights. Plus, some of you may just enjoy being ridiculously overpowered.

One final thing: I’ve ditched the whole dinosaurs thing. I do still think that the Jurassic period makes a perfect setting for a fantasy game, but alas dinosaurs make things more fantastical, which clashes with the more grounded tone of the main story. There are enough tonal clashes as it is between the story and the spankings. I don’t need any more. Perhaps a future, more lighthearted game will be set in a Jurassic period with people.

Spanking Mechanics

Spankers and Spankees,

Since this is the third Sunday of January, as promised here are my thoughts on a more fleshed out spanking mechanic than the silly gimmick we currently have. Your thoughts would be greatly appreciated.

Most, but not all, enemies will be spankable. Typically, if you’re facing a non-humanoid enemy (i.e. a dinosaur of some kind or another), then you won’t be able to spank them, and they won’t be able to spank you. Furthermore, if I decide that the spanking your opponent
in mid-fight would ruin the atmosphere of fight, I may disable the spanking option. This will be very, very rare, however. I can only think of one fight against a humanoid opponent where I plan on disabling the Spank option, and that’s not going to be a conventional fight anyway. Furthermore, once I implement an Options menu, there will be an option to either disable in-combat spankings, or use a more simplified version of the mechanic. The first for those of you want a little bit less spanking in your spanking porn, and the second for those of you who don’t want to think too hard when you’ve got one hand down your pants  (nothing wrong with that. I enjoy a bit of mindless masturbation as much as the next guy/gal).

Before we get started, please note that these are preliminary thoughts. I can guarantee that things will probably have to change once the ability is implemented and the beta testers and I start balancing it.

Anyway, on to the highlights:

0.  Spankings will rely primarily on the grapple stat. Willpower will play a role in determining how long the “humiliated” status lingers after a spanking. Willpower also affects the chances of a spankee successfully casting a spell while being spanked.

1. A successful spanking lasts at least 1 turn, but may last more and administers the “humiliated” status. Originally, “humiliated” gave opponents a blanket -1 to all primary stats. However, I’ll be making two changes. First, “humiliated” will only affect your enemy’s
highest primary stat. Second, for every turn that the spanker spends spanking the spankee, the spankee receives another -1 to their highest (before the spanking started) primary stat. When the spanking ends, the spanker and spankee are still grappled (unless someone else successfully broke the grapple). Note that the humiliated status does not stack with itself. You won’t be able to repeatedly spank an opponent until their stats are all -100.

2. There will be three classes of positions: over the knee, the spanker is standing, the spankee is on the ground. The spanker is standing will be relatively easy to pull off, but  relatively hard to maintain. Spankee on the ground positions are relatively hard to pull off, but relatively easy to maintain. OTK is balanced.

4. (Maybe) The player will be able to equip certain spanking implements. When spanking an opponent, the player can then choose to use either that implement or their hand. Implements will have a severity rating and a difficulty rating. The severity rating will give
a boost to how the duration of “humiliation,” while the difficulty of the implement effects how easy it is to successfully administer a spanking. Typically, implements will make it harder to administer a spanking (one of your hands is occupied with the
implement) but will make the effects last longer. They will not have a significant impact on the spanking text.

Now for the details. First, we’ll discuss what impact a spanking has on the flow of battle.

A spanking will tie up both the spanker and the spankee for some number of turns. For every turn that the spanker spends successfully spanking the spankee, the spankee receives an additional -1 to their highest (before the spanking started) primary stat. While the spanking is going on, it is easier for others to hit both the spanker and the spankee. However, if someone successfully physically attacks either the spanker or the spankee, or successfully breaks the grapple, then the spanking is broken.  Some spells may also break the spanking, such as the Spectral Spanking family of spells. The spanker may end the spanking at any time. Note that ending the spanking does NOT take up one turn. The spanker’s commands will look something like this:

(Enter) Spank <SPANKEE NAME>  (A)ttack (C)ast (T)hrow …etc

So if you want to continue spanking away, just hit (Enter). If you want to do something else, select that command. The spanker will end the spanking and administer that command. The spankee does still lose that turn.

The spankee meanwhile will have the commands:

(Enter) Struggle (C)ast (E)ndure

Struggle gives the spankee a chance of breaking free, depending on their grapple skill. Cast allows the spankee to try to cast a spell. However, there is a chance (depending on Willpower) that the casting will fail. Second, any spell that has a chance of breaking a  normal grapple (Spectral Push/Shove, Spectral Spanking/Strapping/Caning) will always break a spanking when successfully cast. Furthermore, the spanker suffers a penalty to her willpower when targeted for a spell, because her attention is on spanking her opponent, not resisting enemy spells. If a character Endures, then they won’t try to break themselves free, but they suffer only half the penalty for that round, rounded down (so a -1.5 penalty is the same as a
-1 penalty). Instead, it’s up to her allies to break her free. Typically, a character with a high grapple (relative to her opponent) will want to struggle. A character with high willpower will want to try to either cast a grapple-breaking spell, or a spell that reduces the spanker’s grapple or willpower.

If a spankee evades a spanking, they will automatically attempt to reverse the spanking. If they successfully reverse the spanking, then the spankee becomes the spanker, and the spanker becomes the spankee.

Pulling someone into a spanking will always be the last thing that happens in the round. There are a few reasons for this.

1. Spankings will become much less useful if your high-grapple character pulls their opponent into a spanking at the beginning, then gets stabbed by someone else, breaking the spanking before it could truly begin.

2. Throwing a firebolt, or stabbing someone with a spear takes a lot less time than wrestling someone over your knee, so it makes sense that the spanking attempt would take longer.

The normal rules of initiative apply if two grapplers are trying to spank each other (note that I will probably be changing the normal rules of initiative as well. But that’s a separate matter).

The stats that affect a spanking are as follows:

1. Grapple affects your chance of successfully administering and evading a spanking, your chance of evading and successfully administering a reversal, and how long the spanking lasts.

2. Willpower affects how long the “humiliated” status lasts after the spanking. The higher the spanker’s Willpower is relative to the spankee, the longer the “humiliated” status will last.

The positions (over the knee, spanker standing, spankee on the ground) are not concrete positions, but rather categories. This is to give the writers freedom to use slightly different positions for different enemies when writing the flavor text. For example, for one enemy, the writer may choose to use over one knee for the OTK position, underarm for the standing, and backwards riding for the on the ground. For a different enemy, the writer may use Japanese style OTK for the OTK position (spanker is sitting on her heels, with spankee across her lap), standing (spanker has grabbed spankee around the arm and is swatting spankee’s bottom while both are standing straight) for the spanker standing, and diaper for spankee on the ground.

However, in both cases the gameplay effect are the same: standing positions are easy to start, but easy to break out of, spankee on the ground are hard to start, but hard to break out of, and OTK is neither easy nor hard to start, and neither easy nor hard to break out of.

And there you have it. This system is actually going to be quite a bit richer than I originally envisioned (the spankings-lasting-multiple-turns thing didn’t occur to me until I sat down to write this). Unfortunately, what that also means is that this will be trickier to implement, and balance than what I’d originally intended. The original plan had just been to give grapplers a way of inflicting a status-ailment in one turn, with the factors behind the potency and duration of the humiliation stat largely behind-the-scenes. However, I think this will make it a lot more fun, and a lot more sexy. So my plans on implementing and releasing this mechanic are as follows:

1. Release the pre-dungeon interactions of episode 2.

2. Release the dungeon, with the auto-map, new stat improvement mechanic, and no random encounters implemented. Make no changes to the spanking mechanic.

3. Implement the system I’d originally envisioned: a one-round spanking with some flavor text, with the positions influencing chances of success, reversal, and potency of humiliation. Have beta testers and
players focus on giving feedback on frequency of successes, failures, and reversals.

4. Add the multi-turn mechanic. This mechanic will also be added to the Spectral Spanking class of spells as well, with rolls depending on the grapple skill depending on the magic skill instead. However, the spells will only administer damage at the end of the spanking,  when the spankee gets flung into the ground.

5. Release the post-dungeon act of Episode 2 (this will probably be relatively short, considering all the crap above).

I probably won’t let you use implements until Episode 3. Those may also undergo some changes as well to make them useful, largely because I’m not sure at this point whether duration of humiliation will be all that important. If you have a fight last 8 rounds, and four of them are spent spanking your opponent, the fact that Humiliation will last seven rounds as opposed to three really doesn’t matter. I’m not going to lie, this is going to take a while, and I’ve got a pretty busy semester coming up. We very well may not have the spanking mechanic implemented until next fall, and it may not be balanced well enough to neither be game breaking nor useless until next winter/spring.

However, I’m also really really excited about this. Not only will this be a fun (and frustrating) mechanic to implement and balance, but once it’s been implemented and the worst of the kinks (there’s a pun in there somewhere, I just know it) worked out, it will be a ton of fun to play. Furthermore, since I’ll be eliminating random encounters, I can make the battles last for more turns, so this kind of mechanic would be more viable. Of course, if I implement longer battles, I’ll probably have to include a way of saving during battle (or periodically auto-saving) at some point. That’ll be a butt. But I could probably put that off to an Episode 3 improvement.

Hell, now that I think about it, it might be kind of interesting to have a small number of marathon battles against generic enemies, rather than a large number of short battles. Especially since the lack of random encounters and instant travel from the beginning to the frontier of the maze means that there’s less incentive to preserve mana from battle to battle. However, if the battle is long, there would be some incentive to preserve magic turn to turn. Hmm…

January 2015 Update

Spankers and Spankees,

Happy New Year! Things are moving forward, I promise. I’ve completed all the paths for the opening sequence of the second episode (i.e. from the start of the episode until the player regains control) when the player lives at the adventurer’s guild. Currently, I’m working on the paths for when the player stays with Maria. Not sure if I’ve mentioned this, but I’ve also finished the first draft of the translation program, and it can successfully translate simple latex files. Which means it’ll break in horrifying ways once I run a proper episode through it, but whatever. I don’t have to worry about that yet.

Furthermore, once I have the first third of the episode written (i.e. up to entering the maze), then I’ll release it to the public. My original dream had been to release each episode only once it’s complete, however that was before I understood the full scale that each episode will end up being. Plus, the whole throwing out most of what I wrote during the fall thing has seriously slowed me down. Clearly however, I’m going to have to seriously pick up the pace and impose more discipline on my writing in the future. Otherwise, we’re going to be here for a few decades. I’d really like to release at least two episodes a year, but I won’t be surprised if episode 2 doesn’t get released in its entirety until the summer.

Now the bulk of the first third of the episode are the opening sequences. After that, there’s an encounter with Peter if you’re tutoring his daughter Annie, the start of a subplot with Carrie: “The Mystery of the Clothing Shop and Its Mass Production in a Medieval Setting”, and a brief conversation with Elise. So hopefully I’ll be able to actually release new content before the end of February, but don’t hold me to that. I’m notorious for underestimating how much time I need to get stuff done.

I’m also working on the second episode for Etrian Odyssey, and am on track to release that next Sunday. I’ll talk more about that next week, but suffice to say that I’ve made it to the 21st floor in the game itself, and have enjoyed (almost) every minute of it.

I have posted a new version of the first episode of the Etrian Odyssey Let’s Spank. It contains fixes for a few typos, and proper chapter titles. It also contains a small retcon. The story blurb at the beginning of the instruction manual gave me the false impression that the Labryinth appeared relatively recently. However, characters in the game itself speak like the Labryinth has been around for a while, so I’ve had to change the time at which the Labryinth has mostly recently appeared from 3 or 4 years ago to 30 or 40 years ago.

I’ve also reorganized the LaTeX a little to make it easier to release compilations (though this doesn’t affect the PDF). Basically, each time I complete a stratum, I’ll release one large PDF with every episode that takes place in that stratum. I’m planning on 1 episode per level, with a few exceptions. For example, the first level will have two episodes dedicated to it. So unless the game is lying to me, that’s a little over 25 episodes for the entire story. Which means that if I can keep my schedule, the story will be complete sometime next March or so.

December Update

Spankers and Spankees,

Hope all the Americans in the audience had a good Thanksgiving. Mine could have gone better. Could have gone worse too. On the bright side, I managed to get down to the 7th or 8th floor in Etrian Odyssey, and I’ve got enough material to keep us busy for a couple of months. I’m shooting to have the first gameplay-inspired-story written for next Sunday. The dream is to have an update schedule like the following:

First week of the month: Pandemonium Cycle updates

Second week of the month: Etrian Odyssey

Third week of the month: Nothing!!! You schmucks aren’t worth it!

Fourth week of the month: Etrian Odyssey

Anyway, on to Pandemonium Cycle updates.

Anyway, before we get started: I’ve added two new pages to my blog: Contributors and Helping. Contributors contains a list of people who are helping me in some official capacity in developing the game. Helping contains a few blanket requests for help, if people are so interested. I have more details on the one I consider most important further in this post. 

First, the latest version has had 78 downloads, which is a few downloads shy of the record (version 1.10 with 82 downloads). That’s pretty cool that my code has infected been executed on about 70 machines or so when you account for the occasional repeat download. It’s hard to gauge, though since most versions have only been minor tweaks so I wouldn’t be surprised if some people skip versions. It’ll be interesting to see what the download count is when we (eventually) release 2.0 (i.e. episode 2).

I’ve uploaded a new version. It has hardly any changes at all. A few tweaks to a few of the conversations with Elise (I removed the ability to refuse the option of going to the bar, because I was too lazy to write a path for skipping the bar in the second episode, and then put it back in when an interesting subplot that only shows up if you skip the bar occurred to me). I also fixed a typo or two.  Don’t feel like you have to download this version, unless the typo in the combat spanking is really getting to you.

Speaking of the combat spankings, I’m really not satisfied with it. It feels so…gimmicky. In fact, I originally had a combat spanking mechanic, but then removed it before releasing it, only to put a watered down version in when Emily started whining sagely suggested that some in-combat spanking would be nice. My original conception had been that each enemy would have three different spanking positions available, say OTK, underarm, and over-one-knee. Each position would have different bonuses and penalties across three numbers: humiliation, difficulty, and length (which affects how many smacks you get off). For example, OTK would be a balance of humiliation, difficulty and length. Underarm would last a while, but wouldn’t be particularly humiliating, and relatively difficult to pull off. Something like neck-between-the-legs would be very long, and very humiliating, but very difficult. The severity of the humiliation status, and how long it lasts would then depend on how humiliating the position is, and how long you held it. However, the higher the difficulty, the higher the chance of failure, or reversal.

I really want to put that back in, just to make the spankings less gimmicky. However, writing six different spanking scenes (two for each position: a successful spanking, and a reversal), plus some failure text was really really tedious. It was also rather difficult. It turns out writing spanking scenes without much context is rather difficult. So I removed it, and now I’m stuck with this gimmicky non-mechanic that contributes almost nothing to gameplay, and since the text is the same for every enemy, really isn’t that sexy.

So, I’m looking for anyone who would be willing to volunteer their time to write some generic, in-combat spankings. It wouldn’t require that much of your time. I’m thinking about having roughly ten spankable enemies for the second episode, including bosses. Either I or Emily or Jeffrey will probably write the boss scenes to minimize spoilers, so you’d only have to worry about generic enemies. Furthermore, I’d start sending you details about the enemies who need scenes right away, so we can spread the writing across the entirety of the episode, so it will never be too overwhelming. 
If I can get a couple of volunteers then we can spread it out further, and the volunteers will still be pleasantly surprised by other people’s combat spankings.

Furthermore, this will give you a chance to get some inkling of the work involved in creating a game, in case you’re interested in writing your own. It will also give me a chance to gauge your writing skill and dependability. If I’m sufficiently impressed by both, I may in the future ask you to write a full spanking scene complete with interaction between characters. And the more people I have helping me write this thing, the faster I put out each episode, and the more content I can have in each episode. Finally, the more people involved, the lower the chances that this game will die. I’m still freakishly dedicated to crafting this game, but life happens. I might die in a car crash and vanish off the Internet, or suffer a family tragedy that keeps me from writing for a few months. Or meet a woman, get married, and have children, drastically reducing my free time. If others are involved, then maybe they can keep pushing the project forward with me serving an advisory/occasional coding role if life gets in the way.

If you’re interested, send me an e-mail at my gmail account sprpgs. As a little carrot, I already have the spanking scenes for the episode 1 enemies written, from back when I first conceived of the spanking system. If I get enough people interested, then in my next game update I’ll unleash the more in-depth combat spanking mechanic upon you. And then watch it wreck game balance. But such is life when writing an rpg.

If you have any thoughts of writing your own game, I would highly recommend helping me first. There are a few reasons for this. First, it will give you a chance to test how dedicated you are to writing a spanking game (or any large project, really). It turns out that a spanking game becomes a lot less sexy when you’re the one implementing it. Trust me on this. Second, if after writing a few scenes for me, you decide that you just don’t have time to develop a game, then you’ll still have contributed to a living game, rather than just leaving another abandoned project on the Internet to tease people for all time with what-might-have-been. Also, I’m a selfish bastard who doesn’t want to deal with the competition.

Important: You will NOT be expected to write your stuff in LaTeX, or write any Python code. You will only be expected to write some plain text, and I’ll put it in the program.

Anyway, on to updates about episode 2 progress. I’ve written over 100 pages of content, only for Emily and I to decide that it’s garbage. Well, the content itself isn’t garbage, but rather the organization. Basically, in my old system, I only planned out down to the scene level. So I have a rough idea of the main plot for each episode, subplots for each season, and character arcs for most of the main cast. I also have a pretty good idea of what I want to happen in each scene for episode 2. However, I used to stop there. I wouldn’t plan out the scenes themselves. Instead I’d sit down, and just let my muse floooow like the river.
Well, it turns out that my muse sucks at giving different paths a balanced treatment, and making sure I’m actually making progress. So after about six weeks of furious writing I ended up with 115 pages of content before you even get out of the guild/Maria’s home, and most of it was found in obscure paths that you’d only find if you:

a. tried everything imaginable. Even things you didn’t know would matter (i.e. wearing a thong and no pants when you go into the kitchen for the first time)

b. Asked me about alternative paths and I remembered the path when I responded.

c. Happened to pick just the write sequence of choices scattered across different unrelated conversations.

Now don’t get me wrong, I love having scenes showing up in obscure little corners you wouldn’t think to look in (or even knew existed). Nothing gets the sex juices flowing like getting surprised on your sixth playthrough (assuming you guys play that often. In which case, you’re not playing enough I’m flattered.). However a single easter-egg scene really shouldn’t take up 30+ pages. Unless I outsource it to someone else. In which case, sure, whatever.

In light of these problems, I’ve spent the last couple of weeks recharging and reflecting. Based on those reflections, I’ve decided to make a few changes to my writing process. From now on before I write up a scene, I’m going to work out an outline of how the scene should go, all the way down to the nodes of the conversation trees. Then, I’ll write up a brief outline of the scene, with one or two sentences describing how I think  each node should go, and send it off to Emily. That way, if there are any glaring omissions, or I’m putting too much emphasis on one path, but not on another, we’ll be able to catch it before I’ve churned out a novella’s worth of material.

From there, it’s a “simple” manner of filling in each node, and making sure I don’t add more than one or two nodes to a particular path. Hopefully, that way I’ll be able to give each path a more balanced treatment, and make sure I don’t have one path with 20 nodes, one with 7, and one with 2.

I’ve written up an outline for the opening of episode 2 and sent it off to Emily for her perusal. Fortunately, I should be able to rework most of what I already have written into the new structure, and the rest I’ll push into a might-come-in-handy-later pile. So I should be able to get back to where I was before Thanksgiving relatively quickly.

However, for now I’m going to use my simple outline as sample input for my LaTeX-to-Python translator. I want to get that damned thing written and (mostly) working before I dive back into the writing.

I’m so sorry that things are taking this long. I promise that I’m working hard on it. It’s just that I’m still new at this, and haven’t worked out a good system. Plus, there is still a lot of coding involved, and coding takes time. Hopefully, once we hit episode 4 or 5 I’ll have hit my stride (and have finished the bulk of coding) and I’ll be able to bust out episodes at a more reasonable pace. Plus I might be able to recruit some additional help to get this thing moving that must faster.

Two steps forward, one step back (or maybe two steps back…)

Spankers and Spankees,

I’ve posted a new version under Downloads. Just like my last few posts, this just contains a few tweaks:

1. I’ve reduced the hitpoints of your enemies (including the dungeon boss) by a few points to make the combats go a bit faster (and make the boss fight a bit easier).

2. I’ve removed the Song of Roland from the tavern scene. That scene is obnoxiously long as it is, and the Song of Roland doesn’t really fit in a festive tavern atmosphere like that. It’s not gone permanently. I’ll probably have Elise sing it at hers and Roland’s wedding as sort of a wedding present, or something. I don’t know. The point is, I’m not removing it so much as moving it into a part of the game that I haven’t written yet.

3. I’ve also rewritten the pillow talk the male player has with Carrie after sex. I wrote the original dialogue just before posting the first version of the game, and I had originally conceived of it as a subplot for Carrie. However, subsequent discussions with Emily led to a much better (and sillier) subplot for Carrie. We’ve got enough angst flying around as it is, and the dialogue didn’t really fit with Carrie’s character anyway.

You can find the link in Downloads, as always.

Anyway, on to progress on episode 2. First, Emily has agreed to help me write spanking scenes, in addition to her other duties of reading obscenely long e-mails from me. Therefore, we’ll actually have F/M scenes now, since I can foist the writing of those scenes onto Emily.

Second, we’re currently at about 76 pages, and a little over 130 nodes. Not as much progress as I’d like, but I’ve had a lot of trouble writing the scene where the player wakes up in Maria’s home. It’s been one of those write two lines, erase three types of things. I think I’ve finally got something that’s flowing naturally.

Furthermore, that damned LaTeX-to-Python translation script is spanking me like a naughty schoolgirl. I’ve tried three different approaches to writing the damned thing, and every single time it’s dissolved into an impossible to maintain morasse of kludges and workarounds. Basically, I keep trying to be too clever, and then running into all sorts of corner cases. This time around I’m doing things properly with a lexer, parser, etc.

On a happier note, I’ve recently learned about the magic of graphics toolkits, and I’ve found two that look like they’re meant to be used with Pygame. What is a graphics toolkit? Well, basically it gives me a scaffolding for constructing GUI’s. My current GUI is very low-level, which is why it’s so static and shitty. With the aid of a toolkit, not only will creating the GUI be easier, but it will also be much more stable, and I’ll be able to do more complicated things behind the scenes that lead to an easier-to-use interface. I’m not going to start working with these toolkits until episode 3, because I’ve got enough other things to program for episode 2, and I’d like to release episode 2 sometime this century.

However, I have started sketching out interface options during lunch, and I’m really excited about that.

Finally, as a little reward for reading this far: It has come to my attention, based on conversations with Emily and Jeffrey the Jungle Ape that people may not know about a certain scene involving Ildri. Basically, before you see the Kitchen scene, try wearing baring underwear (such as a thong. I believe the lacy panties are also baring. It should say in the underwear description), and no pants/skirt/dress. Basically the only thing covering your lower body should be a pair of panties that don’t do a good job of covering your ass. 

Text Positioning Sucks

Spankers and Spankees,

So as part of the previous update, I was fiddling with how I position text, because of problems with displaying multiple people in the party. I got a new approach that seemed to work. This evening I realized that I forgot to make sure this text positioning scheme worked for party display in the dungeon, and in combat.

Guess what? It didn’t.

So, I’ve uploaded a new version where I reverted back to the previous system. I also recalled some weird workaround I have to use that I don’t understand that magically gets my text positioning to work across multiple lines (I hate graphics programming. Even simple graphics programming like splitting text into separate columns. Hate it, hate it, hate it, hate it) which I wasn’t using in the party display screen, which I am now using, so the problems with text positioning are fixed!

I don’t know if that paragraph made any sense to you (it doesn’t to me). But the point is, download this version. The combat screen isn’t messed up in it.

Anyway, please make sure to read the previous post as well. In addition to more information about the updates contained in versions 1.14/1.15, it also has some sketches of the potential automap. Thoughts on the automap’s design would be greatly appreciated.

New Save File Format, Storyboard for Automap

Spankers and Spankees,

While messing around with transitioning from episode 1 to episode 2, I discovered that the game crashed every time I tried to save during episode 2. I managed to narrow it down to the problem line of code, but I had no idea why that line was a problem, or how to fix it, because I was using a very complex third-party module that solves a highly non-trivial problem (turning program state into text is a lot harder than you’d think) so I didn’t really understand the module I was using.

Therefore, since I had no idea how to fix the problem, I decided to go back to rolling my own save format. Unfortunately, the new format is completely different from both of the previous formats. I think it’s superior to both (at least in the context of my game), but it’s still very different. So, once again, old saves are no longer compatible with this version, and you’ll have to start over.

I’m really really sorry about that. However, once episode 2 is released the save format is pretty much locked in forever, so I really need to make sure to get it right before that happens.

On the bright side, I think the reason the most recent versions of the game dont work with PlayOnMac is because PlayOnMac doesn’t know how to handle the third-party module I was using. Since I’ve gone back to generating plain text files for my saves, PlayOnMac might start working again. So if there’s anyone out there with a Mac, please try it out with PlayOnMac and let me know if it works or not.

I’ve also fixed a few bugs and typos, including a bug where the game crashed when you tried to end the episode. I’ve also modified the logic of the dungeon events. Now, once you’ve completed the event in each room, the entrance squares will no longer display text. Hopefully, that will make going back to Paloma less of a hassle. You can find the most up-to-date version of the game in the Downloads section.

I’ve also been doing some preliminary designing for the automap. Below are some sketches that I’ve made of my proposed design. Criticism would be greatly appreciated. Note that I haven’t implemented anything yet for the automap, so I have absolutely nothing invested in this design. So feel free to tear it apart. Furthermore, the top-down perspective will look very similar to this, so keep that in mind when critiquing these sketches.

Suppose we are in a dungeon. It’s dark and scary. Or maybe it’s a sunny day in the middle of a forest with dinosaurs rumbling happily. We’ll never know.

Now, suppose we press A to  trigger the (A)utomap command. That gives us the following screen.

This screen displays what we’ve seen of the dungeon so far. Note the J. That’s the first letter of the player’s name (in this case, I’m assuming the name is Juliana), and indicates where the player currently is. Now suppose, we want to define a route from our current position to the stairs down to the first level. I start pressing the arrow keys. Pressing the up arrow twice, and the right arrow once (or twice, this thing isn’t exactly to scale and it’s hard to tell) gives us the following screen:

We continue flailing at the arrow keys in a random (yet totally logical) manner to complete our route. Note that while you are selecting your route, your party isn’t actually moving. Therefore, you will not experience any random encounters while selecting your route (you will however, have random encounters once you start walking the route). Anyway, once we’ve finished selecting our route, we have the following:

Now, suppose we hit Enter. The party starts walking the path above. Note that this is not displayed to the player. From the player’s point of view, the party will simply teleport to the desired square. However, behind the scenes, the party is traversing the dungeon one square at a time. So from the system’s point of view, travelling by a path is exactly the same as travelling manually. Therefore, once we hit the red square, we trigger combat!

After combat, we go back to the main first person display:

Except clearly on a different square (a red square). Note the blue (W)alk command. Pressing W will resume the path. Note that the command will vanish as soon as the player moves off of the current square. However, suppose we open the automap again instead. This gives us:

Observe that the J has now moved to the red square. Furthermore, the game has remembered the part of the route that you haven’t traversed yet.Pressing (Enter) will allow you to continue the path, the arrow keys allow you to edit it.

Your thoughts on this would be much appreciated. Also, I’ve been giving some thought to how to make combat faster without inhibiting clarity. I’m thinking that a combination of colors and sound-effects could get you the information you need, without boring lists of

“Juliana slapped Vengador.”
“Vengador lit Juliana’s face on fire.”
“Juliana cursed loudly.”

But we’ll have to see. So, expect similar storyboards for a new combat interface in the coming months.

October: A Month of Dogs, and Boring Background Stuff

Spankers and Spankees,

Apparently, it’s already the first month of October. The good news is I recently adopted a dog from the local shelter. He is the most gorgeous little thing you ever did see. At 20lbs (9 kg), he’s little bit smaller than I would prefer, but a perfect size for my apartment. Right now, he’s plopped down on the couch next to me (I know, I know, I’m spoiling him) after a long, exciting morning full of pre-dawn walks (*grumble*), three attempts at getting him to take some goofy anti-biotic (*grumble*), a visit to the vet, a visit to the pet store, and a walk through the park.

Also, I have a job offer for a job that won’t totally suck, which means that when I graduate, I won’t be homeless. This also means that I’ll have more time this month to work on Potion Wars because I won’t be preparing for as many interviews.

The bad news is that this month has been a little bit crazy, so I haven’t had as much time to work on Potion Wars as I would have liked. So, I think that’s all there is to talk about. Till next time.

walks away.

Time passes.

Faint grumblings can be heard from all 5 people in the audience. Someone tries to start a slow chant for Potion Wars, but everyone else gives him weird looks and he stops.

There is an awkward silence.

More time passes. The audience starts glancing at their watches, wondering how long before AKA gets tired of this stupid joke. They then get confused, because nobody wears watches anymore.

AKA comes running back on stage.

Sorry, sorry. Forgot to tell you about Potion Wars progress.

Someone coughs. It sounds suspiciously like “bollocks.” But that’s just silly. “Bollocks” isn’t even a word.

“I didn’t cough it you twat, I shouted it!

Anyway, despite the crazy month full of dog adopting, and job searching, and what-not, I have managed to find time to work on the game. I’ve uploaded a new version, version 1.13. See the download section for links. What I’ve done:

1. Fixed a few stealth bugs caught by PyChecker, before they led to crashes on your ends.

2. Did some writing. I’ve currently written about 60 pages, with about 100 nodes. And that’s just about finished the scene you get at the beginning when you sleep at the guild. I now need to write:
a. The scene for when you sleep at Maria’s.
b. A brief conversation with Elise and Sister Samantha about Carrie’s party
c. A subplot with Carrie (I know what the subplot is. I just don’t want to reveal it because spoilers).
d. A scene involving the teaching of Anne, Peter’s daughter.
e. The whole damn dungeon.
f. Carrie’s party.

3. Upon realizing just how much I have to write, and how I don’t have 16 hours everyday to dedicate to writing, I’ve recruited Jeffrey the Jungle Ape to help me write the scenes that tend to be the most intricate, detailed, and hardest to write: the spanking scenes (I’ve also asked Emily, but she hasn’t responded yet). I’m not recruiting anyone else just yet. Partially because I want to see how things go with Jeffrey first, and partially because if you offer and I turn you down, it’ll be awkward. My fan base is small enough as it is. Don’t need to be scaring anyone away.

4. Sent Emily an outline of the episode for her feedback.

5. Completely revamped the setting. The game is now basically taking place in the Jurassic period (plus a few dinosaurs from the Triassic, magic, humans, elves, and maybe other things) on the supercontinent Gondwana, way down at the south pole, because:
a. Dinosaurs.
b. Fuck yeah.
c. Of the various periods in history, the Jurassic was probably the closest to your standard fantasy world: Lots of giant monsters running around, only two giant continents (which were close enough they could almost be considered one), a ginormous desert in the middle of the planet.
e. Pet dinosaurs.
f. Fuck yeah.
g. During the Jurassic period, the only parts of the planet where you could find
a cool temperate climate (which near as I can tell is roughly the climate that I grew up in) were at the poles.
h. Clothing made out of dinosaur skin.
i. Fuck yeah.

Also, it gives me an excuse to rekindle my boyhood love of dinosaurs.

6. Had to make a variety of small changes to the first episode to line up with the new setting (birds didn’t exist yet, though they did have Archaeopteryx, mammals are few and far between so they don’t have access to milk, and cheese, no flowers or deciduous trees. Also, no wool.). I probably missed something, so if you notice anything that doesn’t make sense (i.e. clothing made out of wool, flowers, birdsong, people munching on cheese) let me know. Note that they didn’t have grasses, so you wouldn’t have grains (which are grasses). However, bread can be made out of things other than grains, so bread is safe. Furthermore, I’m assuming that they have a cottonlike plant that I’m calling cotton. Mostly because dinosaur skin would probably make a scaly leather similar to alligator skin (though some of it, like Iguanadon skin, would be quite supple, others like Stegosaurus skin stiff and hard), which might not be flexible enough for some of the clothing effects in the first episode. I don’t know, I’m not a clothing expert.

7. Replaced those horrid X’s in the dungeon with filled in squares (actually trapezoids, thanks to the magic of perspective). I’ve also rearranged the colors. Now, the entrance of the dungeon (and exit for dungeons that have exits) are blue. Events are yellow (because they may or may not involve combat). Combat is red. Stairs are green.

8. I’ve made it more obvious when you’ve stepped on a stairs square, so that we don’t have the problem of people wandering around for an hour because they didn’t notice the damned “(D)own” command. Seriously, I think someone on AnimeOTK said that he was wondering around for an hour or two because he didn’t realize that stupid grey X was a set of stairs. Thank you person-whose-username-I-could-look-up-but-I-won’t-because-I’m-lazy for not just shoving my game in the Recycling Bin like I might have in the same situation. In particular, now the (D)own/(U)p command is bolded and colored green, and the direction you’re facing is replaced with the word “Stairs.” Hopefully that will make it obvious enough for people to notice.

9. Tried to add a new non-trivial command to my LaTeX -> PDF translator. Unfortunately, my code was so confusing and hacky that I couldn’t debug the new command. So I’ve started rewriting that from scratch (well, nearly. I think I saved two of the functions from my previous implementation) in a much cleaner, easier to follow way. Kind of sucks, but when they say that “good writing is rewriting” they’re not just talking about poetry and prose.

10. Reworked some of my planned future plotlines.

P.S. According to google analytics, I’ve broken 1,000 page views. Nifty.

Sundry bug fixes and a question

Spankers and Spankees,

As promised, here is my first weekend of the month update.

I’ve uploaded a new version with some bug fixes:

1. Fixed a bug where Spectral Spanking/Strapping weren’t inflicting the Humiliated status properly.

2. Fixed a bug where the game claimed you couldn’t find Maria’s home, even when you add directions.

3. Fixed a bug where if you try to argue with Adrian about the price of guild membership, and then leave the game crashes.

4. Fixed a bug where the player was getting access to tier 1 spells at a Talent of 5 rather than 10.

5. Fixed a small typo in one of the in-combat spanking messages.

6. Fixed a bug where the spankings administered by the Warslinger’s Companion, and the caning administered by Adrian weren’t being registered by the game (while this doesn’t affect gameplay, it did mean that your character’s bum was magically not being affected by their spankings).

I’ve also made a few small tweaks to some of the episode text. Nothing major that would make it worth replaying. I decided that Alondra’s siblings would NOT move into the Guild because as I started working on Episode 2, I realized that having a bunch of kids move into a building filled with dangerous objects, occupied by rough adventurers who probably don’t have children themselves just didn’t make any sense. I also threw in some text making it clear that Alondra and the player share a room, if the player decides to live in the guild.

Note that you can expect similar small tweaks in the future. I won’t make any fundamental changes to any of the episodes, but if there’s some throwaway line that I later decide doesn’t work (either it doesn’t many sense for the character to say/do that, or it contradicts something that’s pivotal to a future episode), I will go back and remove it.

Finally, I have a question. One of the things I plan to add is a minimap to make it easier for players to navigate (while building your own maps is fun for direhard RPGers, the number of direhard spanko RPGers who are willing to play a hard-core RPG when they just want to enjoy some spanking porn can probably be counted on one hand).

Then, it occurred to me that it would be really convenient if players could input a route into the minimap, hit enter, and then have their character automatically take that route. It would make it very easy and convenient for the player to enter and leave the dungeons when they need to heal (of course, the player would still have the same chance of having a random encounter when executing a pre-planned route, so it wouldn’t make the game any easier).

Then, I realized that if the player is just going to be selecting a route on the minimap, why not cut out the middleman and replace the first person dungeon view with a topdown view?

So my question is, which of the following three options would people prefer:

1. The current status. A first-person view without an automap, so for complicated dungeons the player has to either create their own maps, borrow maps from other people, or resign themselves to getting hopelessly lost.

2. First person dungeon navigation, but with an automap and the ability to give the game a preplanned route through areas already explored, allowing them to quickly reach the frontier.

3. Replace the current first person view with a top-town view. Note that you would no longer have the ability to provide a preplanned route. Using the arrow keys would move you around just like they do now in the first person view.

Attached is a rough idea of what the topdown map would look like on the first floor of the first dungeon, after the player has explored the first two rooms, but hasn’t yet walked down to the end of the hallway:

http://www.mediafire.com/view/t7tjing2x8kc2b2/sample_topdown.pdf

Let me know in the comments which one you would prefer. It should be noted that I’ve written the code to make it fairly easy to change how the dungeon is displayed, so 2 and 3 would constitute roughly the same amount of work (in fact, 3 would require less work than 2, because I don’t have to implement any of the route planning).

More Information about the Latest Version of Potion Wars

Spankers and Spankees,

I’ve managed to find a bit more time, so I can explain in a bit more detail some of the overhauls I’ve made to the latest version of the game. But first, I want to talk about my update schedule.

My plan is to make a new post when one of the following two things happen:

1. I have a new version of the game to post (either bugfixes, or a new episode).

2. It’s the first weekend of the month.

The second type of post will simply be to reassure you that I’m still alive, and still working on the project. I’ll probably also give you some idea of where I am in the process of creating the next episode. Furthermore, at the top of each monthly post, I’ll post the version number of the currently released game.

The version numbers are structured as follows:

max_episode_number.update_number

So, version 1.11 (the currently released version) can be played through the end of episode 1, and it is the 11th version that (in theory) allows you to play through the end of episode 1.

So, when I first release episode 2, the version number will be 2.1. You’ll be able to play through the end of episode 2, and it will be the first version that plays to the end of episode 2.

This way, if you don’t want to have to check my blog every day, you can just check at the beginning of each month.
 
Furthermore, I’ll be traveling all in a vain effort to attend my brother’s wedding, and get back to school in time for classes, so for the next few weeks I’ll basically vanish. That shouldn’t stop you from posting feedback, bug reports, etc. if you feel so inclined. Just don’t expect me to respond until the last week of August.

Now, on to changes in Potion Wars 1.11. Be warned: Wall of Text ahead. I don’t expect anyone to read this from beginning to end. I’d recommend playing the game first, and if something happens that trips you up, then reference either this blogpost or the manual.  If after looking at both you’re still confused, feel free to ask me. I might not be able to respond right away, but I will as soon as I can.

———————————————Mac Compatibility———————————————
Unfortunately, the latest version of the game is no longer compatible with PlayOnMac. I don’t know how it broke, but it broke and I have no idea how to fix it. I even borrowed a friend’s install discs and tried to create an OS X VM so that I could compile directly to Mac, and I failed miserably. Mac’s business model is basically “You want access to our OS? Shell out obscene amounts of money for our hardware or STFU” (FYI, my mild dislike for Apple has now turned into a burning hatred). Needless to say, I’m not going to give over a thousand dollars to a company that I detest. And no, I can’t just ask said friend to compile the game for me, because I’d rather not tell my real-life friends that I spend the majority of my free time writing spanking porn (I’m not very trusting).

So, sorry Mac users. I tried, but you’re reduced to using a virtual machine or dual booting (or getting a better OS 😉 ).

———————————————Save Game Format———————————————

Unfortunately, this version of the game is no longer compatible with old saves, so you’ll have to start over. When more episodes are released, I will strive to make the games backwards compatible. But for now, the first episode is short enough that it isn’t really worth the effort.

I’ve massively overhauled the format of your save games. Now, instead of rolling my own function for saving state, I’m using an extended version of Python’s “Pickle” module that I stole off of the ‘Net, called “Dill.” This grossly simplifies my save and load code, and makes it much easier to maintain.

I’ve also consolidated all of the game’s state into a single object, making the whole thing much more centralized, and therefore much simpler to save, restore, and modify. This change required a lot of small changes across a lot of code, so if you see anything weird happening after loading a game, let me know. It’s possible that the game isn’t being saved/loaded properly because I forgot to change some small piece of the code.

——————————————-Character Customizations———————————————–

I’ve added some basic options at the beginning of the game for character customization. You can now select your character’s height, body type, hair length, and hair style. Of these choices, the only one that will eventually be changeable is your hair style (changing hair style is implemented, but rather buggy, so the player can’t currently access that choice). Everything else is fixed.

You can also select your character’s starting equipment. You can choose one of three types of weapons: a spear, a sword, and a dagger. You have access to the same clothing (with the exception of the quality shirts) that you can buy at Terry’s Taylors.

——————————————-Equipment——————————————————————–

I’ve laid the groundwork for modifying the enchantments on equipment. Essentially, you’ll be able to transfer enchantments between different pieces of equipment, so you don’t have to choose between the “Modest Mail of Mauling” and the “Sexy Schoolgirl Skirt of Sucky.”

Each piece of equipment will have a different max enchantment level. Typically, you’ll have a choice between having a higher defense and fewer enchantments, and more enchantments and a lower defense. For example, clothing will almost never provide a defense boost, but will have a high maximum enchantment. Plate armor will provide a large defense boost, but won’t be able to contain more than one enchantment.

Essentially, I aim to implement a quasi-item crafting mechanic without all the obnoxious “get three suits of leather armor, six peacock feathers and a demon testicle” fetch quest crap that weighs down every item crafting mechanic ever. Seriously, I will never understand why game designers seem to think that going grocery shopping is fun. Fighting the  Divine Demon of Destruction for the Shiny Sword of Super Slaying is challenging and fun. Cluttering up my inventory with a dozen rare items scattered about the deepest, darkest corners of the gameworld only to discover that I am one plank of wood away from forging the Shiny Sword of Super Slaying is not.

——————————————-Statistics———————————————————————

We now have both primary, and secondary stats. The primary stats are:

1. Strength
2. Dexterity
3. Talent
4. Willpower
5. Alertness

The secondary stats are:

1. warfare
2. grapple
3. magic
4. resilience
5. stealth

Strength and Dexterity influence warfare and grapple (strength primarily influences warfare, dexterity primarily influences grapple). Talent and Willpower influence magic and resilience (Talent primarily influences magic, Willpower primarily influences resilience). Alertness influences stealth, and improves your character’s initiative.

——————————————-Spells————————————————————————-

I’ve shuffled the spells around, and drastically slowed down how rapidly you reach the next tier. Distort Magic is the new Tier 0 Advanced Status spell, and the Spectral Spanking family is the new
Tier 0 Spectral family.

Furthermore, the Combat spells now do a range of damage, instead of a fixed value. The range is affected by the difference between the caster’s and recipient’s magic. For some spells, it might influence the lower end of the range, for others the higher end. For others, it might influence both.

In addition to keeping the combat spells from being too overpowered with the new statistics, this will also make those spells more interesting. For example, combat spells whose minimum damage are influenced by stats are good to cast on enemies that have a low magic, but should definitely not be cast on enemies that have a high magic (or you might find yourself doing zero, or worse negative damage!). Meanwhile, spells whose max damage are influenced by stats are good to cast on enemies with a high magic (you’ll always do some damage), but will not be very reliable on enemies with a low magic (you might still get unlucky and do a tiny fraction of the damage you could do).

Furthermore, instead of requiring a magic of 3 to reach Tier 1, you now need a Talent of 10. Unless you’re the kind of person who spends 8 hours every day slaughtering boars in WoW, you shouldn’t hit a Talent of 10 until Episodes 3 or 4 (if you do hit Talent 10 before Episode 3 without excessive grinding, kindly let me know).

—————————————Combat—————————————————————————-

At Emily’s request, I’ve added a new command, the (S)pank command.  When you are grappling your opponent, you will be given the option of trying to spank them. Your chances of success are influenced by your grappling skill. If you are successful, you will inflict on your enemy the Humiliated status, which inflicts a -1 penalty to all their primary stats. If you fail, nothing happens. If you get reversed, your enemy will humiliate you. So, use with caution.

In future versions of the game, I’ll probably add an option to turn off the (S)pank command, for those who don’t like the “Spankings at every turn” style of spanking porn.

I’ve also sped up the combat interface some. Attacking an enemy is as simple as pressing the enemy’s number (or pressing Enter if you want to attack the first enemy, or the enemy you’re currently grappling).

I’ve also added Quick Spells. Essentially, you can have up to 12 spells assigned to the function keys (F1-12). In combat, you select that spell by just pressing the appropriate function key, instead of slogging through the (C)ast-Select Tier-Select Spell command sequence. There is a command (M)odify Quick Spells on the main interface (outside of combat) that allows you to change the spell assignments. Currently, they default to:

F1 – Firebolt
F2 – Weaken
F3 – Heal
F4 – Spectral Spanking

Every time you learn a new spell, that spell is automatically assigned to the first empty function key. In addition to being able to change a key’s assignment, you can also swap keys. So if you’d rather have heal at F2 and Weaken at F3, you can swap the two by pressing M-F2-F3, instead of assigning each one manually.

I believe that’s everything major.  Hope you enjoy the latest and greatest version of Pandemonium Cycle: The Potion Wars!

Previous Page · Next Page