From f61c2b226e35daaf61eb67ed14a7c2c5367207f4 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Fri, 14 Dec 2018 16:13:04 -0500 Subject: [PATCH] Redid the entire victim system to use generated descriptions --- darkmode.js | 3 +- features.js | 13 + game.js | 20 +- presets.js | 3 +- recursive-desc.js | 633 +++++++++++++++++++++++++++++++++++++++++++++- stroll.html | 5 +- 6 files changed, 661 insertions(+), 16 deletions(-) create mode 100644 features.js diff --git a/darkmode.js b/darkmode.js index b2a8704..361f03e 100644 --- a/darkmode.js +++ b/darkmode.js @@ -1,6 +1,7 @@ // do da dark mode -let dark = false; +let dark = true; +setDarkMode(dark); function toggleDarkMode(e) { dark = !dark; diff --git a/features.js b/features.js new file mode 100644 index 0000000..94b79eb --- /dev/null +++ b/features.js @@ -0,0 +1,13 @@ +features = { + "default": { + "dependencies": [ + + ], + "growth_parts": [ + "paws" + ], + "victims": [ + ["stomped"], + ] + } +} diff --git a/game.js b/game.js index afb66e5..a2f06af 100644 --- a/game.js +++ b/game.js @@ -286,6 +286,9 @@ let macro = get tailDesc() { return this.tailType + " " + (this.tailCount > 1 ? "tails" : "tail"); }, + get tailNoDesc() { + return (this.tailCount > 1 ? "tails" : "tail"); + }, "dickType": "canine", "baseDickLength": 0.3, "baseDickDiameter": 0.08, @@ -1088,8 +1091,9 @@ let macro = this.fillFemcum(this); if (this.lactationEnabled && this.hasBreasts) this.fillBreasts(this); - if (this.arousalEnabled) - this.quenchExcess(this); + + this.quenchExcess(this); + if (this.gasEnabled) this.fillGas(this); if (this.pissEnabled) @@ -1381,7 +1385,6 @@ let macro = return; if (this.orgasm) { - this.quench(10); setTimeout(function() { self.nullOrgasm(self); }, 2000); } }, @@ -3325,7 +3328,7 @@ function bladder_vore() { let sound = getSound("insert",preyMass); - add_victim_people("bladder_vore",prey); + add_victim_people("bladder-vore",prey); macro.bladder.feed(prey); @@ -4127,10 +4130,9 @@ function add_victim_people(category, prey) { update(); } -function enable_victim(category, name) { +function enable_victim(category) { victims[category] = {}; victims[category]["people"] = 0; - victims[category]["name"] = name; } function enable_button(name) { @@ -4316,7 +4318,7 @@ function startGame(e) { } if (macro.arousalEnabled) { - enable_victim("cum-flood","Flooded by cum"); + enable_victim("cum-flood",describe("victim-cum-flood", null, macro, null)); if (macro.maleMuskEnabled) { enable_victim("male-spurt-musk","Inundated in masculine precum musk"); @@ -4458,7 +4460,7 @@ function startGame(e) { if (macro.bladderVore) { enable_button("bladder_vore"); - enable_victim("bladder_vore","Dissolved into piss"); + enable_victim("bladder-vore","Dissolved into piss"); if (macro.bladderDigestTime == 0) { enable_button("digest_bladder"); @@ -4605,7 +4607,7 @@ function showStats() { let total = 0; for (var key in victims) { if (victims.hasOwnProperty(key)) { - lines.push(victims[key]["name"] + ": " + victims[key]["people"]); + lines.push(victims[key]["people"] + " " + describe("victim-" + key, null, macro, false)); total += victims[key]["people"]; } } diff --git a/presets.js b/presets.js index af370af..8b5eebe 100644 --- a/presets.js +++ b/presets.js @@ -1017,5 +1017,6 @@ let presets = [{ "pawDigestTime": 15 }, {"name":"Famis","species":"crux","scale":155,"baseHeight":1.52,"baseMass":135,"basePawArea":0.1,"baseHandArea":0.1,"baseAssArea":0.25,"difficulty":"1","brutality":"1","victimsHuman":true,"victimsMilitary":true,"victimsMacros":true,"victimsMicros":true,"sameSizeVore":true,"sameSizeStomp":true,"oralDigestTime":30,"vomitEnabled":false,"footType":"paw","jawType":"jaw","footWear":true,"footSockEnabled":false,"footSock":"sock","footShoeEnabled":false,"footShoe":"shoe","analVore":true,"baseAnalVoreDiameter":0.1,"analVoreToStomach":true,"analDigestTime":30,"arousalEnabled":true,"arousalFactor":1,"hasTail":true,"tailCount":1,"tailType":"slinky","baseTailLength":1,"baseTailDiameter":0.3,"tailMaw":true,"tailStretchiness":50,"tailDigestTime":15,"tailVoreToStomach":true,"hasPouch":false,"maleParts":true,"dickType":"canine","baseDickLength":0.3,"baseDickDiameter":0.08,"dickStretchiness":15,"baseBallDiameter":0.05,"baseCumRatio":1,"cumScale":1,"cumStorageScale":1,"baseCumDigestFactor":1,"cockDigestTime":45,"hasSheath":true,"cumScaleWithSize":true,"maleMuskEnabled":true,"baseMaleMuskArea":5,"hasBreasts":false,"baseBreastDiameter":0.1,"lactationEnabled":false,"lactationFactor":0.25,"lactationScale":1,"milkStorageScale":1,"breastVore":false,"breastStretchiness":1,"baseMilkDigestFactor":1,"breastDigestTime":15,"milkScaleWithSize":false,"femaleParts":false,"baseVaginaLength":0.1,"baseVaginaWidth":0.05,"vaginaStretchiness":1,"baseFemcumRatio":1,"femcumScale":1,"femcumStorageScale":1,"baseFemcumDigestFactor":1,"unbirthDigestTime":15,"femcumScaleWithSize":false,"femaleMuskEnabled":false,"baseFemaleMuskArea":0.5,"stenchEnabled":true,"basePawStenchArea":4,"baseAssStenchArea":0,"basePissStenchArea":0,"baseScatStenchArea":0,"gasEnabled":false,"belchEnabled":false,"fartEnabled":false,"gasScale":1,"gasStorageScale":1,"baseGasDigestFactor":1,"gasScaleWithSize":false,"soulVoreEnabled":true,"soulDigestTime":60,"soulVoreType":"body","pissEnabled":false,"pissScale":1,"pissStorageScale":1,"bladderVore":false,"baseUrethraDiameter":0.03,"urethraStretchiness":5,"basePissDigestFactor":1,"bladderDigestTime":15,"pissScaleWithSize":false,"scatEnabled":false,"baseScatDigestFactor":1,"scatScale":0,"scatStorageScale":1,"scatScaleWithSize":false,"gooEnabled":true,"gooDigestion":true,"gooDigestTime":20,"pawVoreEnabled":true,"pawDigestTime":45,"cropEnabled":false,"cropTransferTime":15,"breathEnabled":false,"breathFire":false,"breathIce":false,"breathElectric":false,"breathSmoke":false,"breathRadiation":false,"breathFoul":false,"droolEnabled":true,"droolBaseVolume":0.0001}, - {"name":"Kassy","species":"Ram","scale":1,"baseHeight":1.7,"baseMass":90,"basePawArea":0.1,"baseHandArea":0.1,"baseAssArea":0.25,"difficulty":"0","brutality":"3","victimsHuman":false,"victimsMilitary":true,"victimsMacros":true,"victimsMicros":true,"sameSizeVore":true,"sameSizeStomp":true,"oralDigestTime":25,"vomitEnabled":false,"footType":"foot","jawType":"jaw","footWear":true,"footSockEnabled":false,"footSock":"sock","footShoeEnabled":true,"footShoe":"sandal","analVore":true,"baseAnalVoreDiameter":0.1,"analVoreToStomach":false,"analDigestTime":20,"arousalEnabled":true,"arousalFactor":1,"hasTail":true,"tailCount":1,"tailType":"Wooly","baseTailLength":0.1,"baseTailDiameter":0.3,"tailMaw":false,"tailStretchiness":1,"tailDigestTime":15,"tailVoreToStomach":true,"hasPouch":false,"maleParts":true,"dickType":"Human","baseDickLength":0.3,"baseDickDiameter":0.08,"dickStretchiness":1,"baseBallDiameter":0.05,"baseCumRatio":1,"cumScale":1,"cumStorageScale":1,"baseCumDigestFactor":1,"cockDigestTime":15,"hasSheath":false,"cumScaleWithSize":true,"maleMuskEnabled":true,"baseMaleMuskArea":0.1,"hasBreasts":false,"baseBreastDiameter":0.1,"lactationEnabled":false,"lactationFactor":0.25,"lactationScale":1,"milkStorageScale":1,"breastVore":false,"breastStretchiness":1,"baseMilkDigestFactor":1,"breastDigestTime":15,"milkScaleWithSize":false,"femaleParts":false,"baseVaginaLength":0.1,"baseVaginaWidth":0.05,"vaginaStretchiness":1,"baseFemcumRatio":1,"femcumScale":1,"femcumStorageScale":1,"baseFemcumDigestFactor":1,"unbirthDigestTime":15,"femcumScaleWithSize":false,"femaleMuskEnabled":false,"baseFemaleMuskArea":0.5,"stenchEnabled":false,"basePawStenchArea":1,"baseAssStenchArea":2,"basePissStenchArea":0.75,"baseScatStenchArea":1.5,"gasEnabled":true,"belchEnabled":true,"fartEnabled":false,"gasScale":1,"gasStorageScale":1,"baseGasDigestFactor":1,"gasScaleWithSize":true,"soulVoreEnabled":false,"soulDigestTime":15,"soulVoreType":"release","pissEnabled":false,"pissScale":1,"pissStorageScale":1,"bladderVore":false,"baseUrethraDiameter":0.03,"urethraStretchiness":5,"basePissDigestFactor":1,"bladderDigestTime":15,"pissScaleWithSize":false,"scatEnabled":false,"baseScatDigestFactor":1,"scatScale":0,"scatStorageScale":1,"scatScaleWithSize":false,"gooEnabled":false,"gooDigestion":true,"gooDigestTime":15,"pawVoreEnabled":false,"pawDigestTime":15,"cropEnabled":false,"cropTransferTime":15,"breathEnabled":false,"breathFire":false,"breathIce":false,"breathElectric":false,"breathSmoke":false,"breathRadiation":false,"breathFoul":false,"droolEnabled":true,"droolBaseVolume":0.00001} + {"name":"Kassy","species":"Ram","scale":1,"baseHeight":1.7,"baseMass":90,"basePawArea":0.1,"baseHandArea":0.1,"baseAssArea":0.25,"difficulty":"0","brutality":"3","victimsHuman":false,"victimsMilitary":true,"victimsMacros":true,"victimsMicros":true,"sameSizeVore":true,"sameSizeStomp":true,"oralDigestTime":25,"vomitEnabled":false,"footType":"foot","jawType":"jaw","footWear":true,"footSockEnabled":false,"footSock":"sock","footShoeEnabled":true,"footShoe":"sandal","analVore":true,"baseAnalVoreDiameter":0.1,"analVoreToStomach":false,"analDigestTime":20,"arousalEnabled":true,"arousalFactor":1,"hasTail":true,"tailCount":1,"tailType":"Wooly","baseTailLength":0.1,"baseTailDiameter":0.3,"tailMaw":false,"tailStretchiness":1,"tailDigestTime":15,"tailVoreToStomach":true,"hasPouch":false,"maleParts":true,"dickType":"Human","baseDickLength":0.3,"baseDickDiameter":0.08,"dickStretchiness":1,"baseBallDiameter":0.05,"baseCumRatio":1,"cumScale":1,"cumStorageScale":1,"baseCumDigestFactor":1,"cockDigestTime":15,"hasSheath":false,"cumScaleWithSize":true,"maleMuskEnabled":true,"baseMaleMuskArea":0.1,"hasBreasts":false,"baseBreastDiameter":0.1,"lactationEnabled":false,"lactationFactor":0.25,"lactationScale":1,"milkStorageScale":1,"breastVore":false,"breastStretchiness":1,"baseMilkDigestFactor":1,"breastDigestTime":15,"milkScaleWithSize":false,"femaleParts":false,"baseVaginaLength":0.1,"baseVaginaWidth":0.05,"vaginaStretchiness":1,"baseFemcumRatio":1,"femcumScale":1,"femcumStorageScale":1,"baseFemcumDigestFactor":1,"unbirthDigestTime":15,"femcumScaleWithSize":false,"femaleMuskEnabled":false,"baseFemaleMuskArea":0.5,"stenchEnabled":false,"basePawStenchArea":1,"baseAssStenchArea":2,"basePissStenchArea":0.75,"baseScatStenchArea":1.5,"gasEnabled":true,"belchEnabled":true,"fartEnabled":false,"gasScale":1,"gasStorageScale":1,"baseGasDigestFactor":1,"gasScaleWithSize":true,"soulVoreEnabled":false,"soulDigestTime":15,"soulVoreType":"release","pissEnabled":false,"pissScale":1,"pissStorageScale":1,"bladderVore":false,"baseUrethraDiameter":0.03,"urethraStretchiness":5,"basePissDigestFactor":1,"bladderDigestTime":15,"pissScaleWithSize":false,"scatEnabled":false,"baseScatDigestFactor":1,"scatScale":0,"scatStorageScale":1,"scatScaleWithSize":false,"gooEnabled":false,"gooDigestion":true,"gooDigestTime":15,"pawVoreEnabled":false,"pawDigestTime":15,"cropEnabled":false,"cropTransferTime":15,"breathEnabled":false,"breathFire":false,"breathIce":false,"breathElectric":false,"breathSmoke":false,"breathRadiation":false,"breathFoul":false,"droolEnabled":true,"droolBaseVolume":0.00001}, + {"name":"Elijah","species":"Blue Jay","scale":1,"baseHeight":1.77,"baseMass":63,"basePawArea":0.031,"baseHandArea":0.023,"baseAssArea":0.15,"difficulty":"0","brutality":"3","victimsHuman":true,"victimsMilitary":false,"victimsMacros":false,"victimsMicros":false,"sameSizeVore":true,"sameSizeStomp":true,"oralDigestTime":15,"vomitEnabled":false,"footType":"avian","jawType":"beak","footWear":true,"footSockEnabled":false,"footSock":"sock","footShoeEnabled":true,"footShoe":"sandal","analVore":true,"baseAnalVoreDiameter":0.08,"analVoreToStomach":false,"analDigestTime":15,"arousalEnabled":true,"arousalFactor":1,"edgeFactor":3,"hasTail":true,"tailCount":1,"tailType":"Feathered","baseTailLength":0.8,"baseTailDiameter":0.2,"tailMaw":false,"tailStretchiness":1,"tailDigestTime":15,"tailVoreToStomach":true,"hasPouch":false,"maleParts":true,"dickType":"Avian","baseDickLength":0.18,"baseDickDiameter":0.08,"dickStretchiness":1,"baseBallDiameter":0.05,"baseCumRatio":1,"cumScale":1,"cumStorageScale":1,"baseCumDigestFactor":1,"cockDigestTime":20,"hasSheath":true,"cumScaleWithSize":true,"maleMuskEnabled":false,"baseMaleMuskArea":0.5,"hasBreasts":false,"baseBreastDiameter":0.1,"lactationEnabled":false,"lactationFactor":0.25,"lactationScale":1,"milkStorageScale":1,"breastVore":false,"breastStretchiness":1,"baseMilkDigestFactor":1,"breastDigestTime":15,"milkScaleWithSize":false,"femaleParts":false,"baseVaginaLength":0.1,"baseVaginaWidth":0.05,"vaginaStretchiness":1,"baseFemcumRatio":1,"femcumScale":1,"femcumStorageScale":1,"baseFemcumDigestFactor":1,"unbirthDigestTime":15,"femcumScaleWithSize":false,"femaleMuskEnabled":false,"baseFemaleMuskArea":0.5,"stenchEnabled":false,"basePawStenchArea":1,"baseAssStenchArea":2,"basePissStenchArea":0.75,"baseScatStenchArea":1.5,"gasEnabled":false,"belchEnabled":true,"fartEnabled":false,"gasScale":1,"gasStorageScale":1,"baseGasDigestFactor":1,"gasScaleWithSize":false,"soulVoreEnabled":false,"soulDigestTime":15,"soulVoreType":"release","pissEnabled":false,"pissScale":1,"pissStorageScale":1,"bladderVore":false,"baseUrethraDiameter":0.03,"urethraStretchiness":5,"basePissDigestFactor":1,"bladderDigestTime":15,"pissScaleWithSize":false,"scatEnabled":false,"baseScatDigestFactor":1,"scatScale":0,"scatStorageScale":1,"scatScaleWithSize":false,"gooEnabled":false,"gooDigestion":true,"gooDigestTime":15,"pawVoreEnabled":false,"pawDigestTime":15,"cropEnabled":true,"cropTransferTime":30,"breathEnabled":false,"breathFire":false,"breathIce":false,"breathElectric":false,"breathSmoke":false,"breathRadiation":false,"breathFoul":false,"droolEnabled":false,"droolBaseVolume":0.0001,"magicEnabled":false} ]; diff --git a/recursive-desc.js b/recursive-desc.js index 1014186..6984272 100644 --- a/recursive-desc.js +++ b/recursive-desc.js @@ -20,7 +20,7 @@ function getDefault(name) { return window[funcName]; } -var actions = ["eat","chew","vomit","stomp","stomp-wedge","flex-toes","kick","anal-vore","ass-crush","ass-grind","tail-slap","tail-vore","tails-vore", +var action_keys = ["eat","chew","vomit","stomp","stomp-wedge","flex-toes","kick","anal-vore","ass-crush","ass-grind","tail-slap","tail-vore","tails-vore", "cleavage-stuff","cleavage-crush","cleavage-drop","cleavage-absorb","breast-crush", "breast-vore","breast-milk","unbirth","sheath-stuff","sheath-clench","sheath-crush", "sheath-absorb","cock-vore","cockslap","ball-smother","male-spurt","male-orgasm","female-spurt", @@ -33,8 +33,14 @@ var actions = ["eat","chew","vomit","stomp","stomp-wedge","flex-toes","kick","an "goo-tail-pull","goo-tail-push","goo-paws-pull","goo-paws-push","paw-vore","paw-vore-toes","paws","crop-swallow","crop-transfer", "breath-fire","breath-ice","breath-electric","breath-smoke","breath-radiation","breath-foul","drool","magic-shrink","magic-hypnotize"]; -for (let i=0; iStroll is designed for modern browsers. Chrome, Firefox, or Edge are suggested. Older browsers will likely fail to run the game. Mobile should work fine.

-
+

Leave a box empty for a sane default value

Lengths in meters, areas in square meters, masses in kilograms, times in seconds

(but you can preview the customary value)

-

Click on highlight/darkened titles to enable and disable features.

+

Click on boxed titles to enable and disable features.

+