Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
Twee2::build_config.story_ifid = '76585E15-C0E7-4404-A55B-BEFC4CDF112B'<<include StoryInit_UI>>
<<if $Version < 10104>>
<<set $Version to 10104>>
<<set $VersionStr to '0.1.4'>>
<<include Ability_AppetiteForGrowth>>
<<include Ability_DemonicCorruption>>
<<include Ability_HerculeanBuild>>
<<include Ability_Masochism>>
<<include Ability_VigorOfTheEndowed>>
<<include Ability_WideAttacks>>
<<include StoryInit_FightMoves>>
<<include Modifiers_Size_Diff>>
<<include StoryInit_StateDrivenModifiers>>
<<set $Debug = false>>
<<set setup.Comparators =
{
MICRO_TO: 1,
MUCH_SMALLER: 2,
SMALLER: 3,
EQUAL: 4,
BIGGER: 5,
MUCH_BIGGER: 5,
REACHES_WAIST: 6,
REACHES_KNEES: 7,
FITS_ON_HAND: 8,
FITS_ON_FINGER: 9,
}>>
<<set $Debug = false>>
<<set $FighterSheet_Imp =
{
hp: 18,
stamina: 6,
strength: 6,
critChance: 45,
arousalGain: 20,
staminaRecovery: 2,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack],
abilities: [],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.LOW,
encounterIntroText: "<<include Encounter_Intro_Imp>>",
encounterStartText: "<<include Encounter_Start_Imp>>",
outcomePlayerWins: "<<include Encounter_Win_Imp>>",
outcomePlayerLoses: "<<include Encounter_Loss_Imp>>"
}>>
<<set $InfoSheet_Imp =
{
name: "Imp",
gender: "male",
corruption: 0,
muscles: 0,
height: 50,
cock: 10,
alive: true
}>>
<<set $QuestSheet_Lakkos =
{
beatenOnce: false,
}>>
<<set $CharacterSheet_Lakkos =
{
id:"CharacterSheet_Lakkos",
info: $InfoSheet_Lakkos,
fight: $CharacterSheet_Lakkos.fight,
quest: $QuestSheet_Lakkos,
}>>
<<set $QuestSheet_Lost_Werewolf =
{
beatenOnce: false,
}>>
<<set $CharacterSheet_Lost_Werewolf =
{
id:"CharacterSheet_Lost_Werewolf",
info: $InfoSheet_Lost_Werewolf,
fight: $FighterSheet_Lost_Werewolf,
quest: $QuestSheet_Lost_Werewolf,
}>>
<</if>>
<<if $Version < 10105>>
<<set $Version to 10105>>
<<set $VersionStr to '0.1.5'>>
<</if>>
<<if $Version < 10200>>
<<set $Version to 10200>>
<<set $VersionStr to '0.2.0'>>
<<set setup.Comparators =
{
MICRO_TO: 1,
MUCH_SMALLER: 2,
SMALLER: 3,
SLIGHTLY_SMALLER: 4,
EQUAL: 5,
SLIGHTLY_BIGGER: 6,
BIGGER: 7,
MUCH_BIGGER: 8,
REACHES_WAIST: 9,
REACHES_KNEES: 10,
FITS_ON_HAND: 11,
FITS_ON_FINGER: 12,
}>>
<<include StoryInit_RandomEncounters>>
<<include StoryInit_Abilities>>
<<include StoryInit_FightMoves>>
<<include StoryInit_FightVariables>>
<<include Sheets_Elder>>
<<include Sheets_Lost_Naga>>
<<set $QuestSheet_Player =
{
curseOfTheNagaStatDrain:
{
muscles: 0,
height: 0,
cock: 0,
},
}>>
<<set $CharacterSheet_Player.quest = $QuestSheet_Player>>
<</if>>
<<if $Version < 10201>>
<<set $Version to 10201>>
<<set $VersionStr to '0.2.1'>>
<<include StoryInit_Abilities>>
<<include StoryInit_FightMoves>>
<<include StoryInit_FightVariables>>
<<include Modifiers_Player_Symbiote>>
<<include Modifiers_Size_Diff>>
<<set $CharacterSheet_Player.fight.critChance = $CharacterSheet_Player.fight.accuracy>>
<<set $CharacterSheet_Player.fight.variables = $FightVariables>>
<<script>>
let i;
for(i = 0; i < State.variables.CharacterSheet_Player.fight.fightMoveIDs.length; i++)
{
let j;
for(j = 0; j < setup.FightMoveIDs.length; j++)
{
if(State.variables.CharacterSheet_Player.fight.fightMoveIDs[i].name == setup[setup.FightMoveIDs[j]].name)
{
State.variables.CharacterSheet_Player.fight.fightMoveIDs[i] = setup[setup.FightMoveIDs[j]];
}
}
}
<</script>>
<<include Sheets_Imp>>
<<include Sheets_Lakkos>>
<<include Sheets_Lost_Werewolf>>
<<include Sheets_Lost_Naga>>
<<include Sheets_Elder>>
<<include Sheets_MQ002_Guard>>
<<set setup.LevelUpTable =
[
180,
500,
900,
2200,
4000,
5600,
7000,
8300,
10000,
15000,
]>>
<</if>>
<<if $Version < 10202>>
<<set $Version to 10202>>
<<set $VersionStr to '0.2.2'>>
<<set setup.RewardTier =
{
NONE: 0,
VERY_LOW: 1,
LOW: 2,
MEDIUM: 3,
HIGH: 4,
VERY_HIGH: 5,
}>>
<<include StoryInit_FightMoves>>
<<set $CharacterSheet_Imp.fight =
{
hp: 34,
stamina: 6,
strength: 6,
critChance: 20,
arousalGain: 20,
staminaRecovery: 4,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack],
abilities: [setup.Ability_AppetiteForGrowth_2],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.LOW,
encounterIntroText: "<<include Encounter_Intro_Imp>>",
encounterStartText: "<<include Encounter_Start_Imp>>",
outcomePlayerWins: "<<include Encounter_Win_Imp>>",
outcomePlayerLoses: "<<include Encounter_Loss_Imp>>"
}>>
<<set $CharacterSheet_Tok.fight =
{
hp: 72,
stamina: 20,
strength: 10,
critChance: 20,
arousalGain: 20,
staminaRecovery: 4,
variables: $FightVariables,
fightMoves: [setup.FightMove_Lunge,setup.FightMove_Goo_Stun],
abilities: [],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Tok_Fight_Intro>>",
encounterStartText: "His immense stature is intimidating, he looks powerful enough to break you in half. Yet you feel an alien instinct warp your reason.\n The sight of his massive muscles and cock nearly drives you mad with excitement. \n Your own cock throbs as you ready your weapon."
+ "\n The fear is all gone, all you think of is to make this beast yours.",
outcomePlayerWins:
"<<include Tok_Fight_Won>>",
outcomePlayerLoses:
"Tok brings you down to your knees. \n \n[[Continue->Tok Fight Lost]]"
}>>
<<set $CharacterSheet_Lakkos.fight =
{
hp: 50,
stamina: 25,
strength: 9,
critChance: 20,
arousalGain: 20,
staminaRecovery: 14,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack, setup.FightMove_IncubusCall, setup.FightMove_IncubusStrike],
abilities: [setup.Ability_VigorOfTheEndowed_2],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.MEDIUM,
encounterIntroText: "<<include Encounter_Intro_Lakkos>>",
encounterStartText: "<<include Encounter_Start_Lakkos>>",
outcomePlayerWins: "<<include Encounter_Win_Lakkos>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lakkos_0>>"
}>>
<<set $CharacterSheet_Lost_Werewolf.fight =
{
hp: 30,
stamina: 12,
strength: 9,
critChance: 20,
arousalGain: 20,
staminaRecovery: 8,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack, setup.FightMove_Infest],
abilities: [setup.Ability_HerculeanBuild],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.MEDIUM,
encounterIntroText: "<<include Encounter_Intro_Lost_Werewolf>>",
encounterStartText: "<<include Encounter_Start_Lost_Werewolf>>",
outcomePlayerWins: "<<include Encounter_Win_Lost_Werewolf>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lost_Werewolf>>"
}>>
<<set $CharacterSheet_Lost_Naga.fight =
{
hp: 90,
stamina: 22,
strength: 15,
critChance: 20,
arousalGain: 20,
staminaRecovery: 14,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack, setup.FightMove_Infest, setup.FightMove_Hypnotize],
abilities: [setup.Ability_AppetiteForGrowth],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Encounter_Intro_Lost_Naga>>",
encounterStartText: "<<include Encounter_Start_Lost_Naga>>",
outcomePlayerWins: "<<include Encounter_Win_Lost_Naga>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lost_Naga_1>>"
}>>
<<set $CharacterSheet_MQ002_Guard.fight =
{
hp: 130,
stamina: 35,
strength: 40,
critChance: 0,
arousalGain: 10,
staminaRecovery: 8,
variables: $FightVariables,
fightMoves: [setup.FightMove_Basic_Attack, setup.FightMove_ChargedStrike],
abilities: [setup.Ability_Masochism_2],
onMaxArousal: function(character)
{
//todo
},
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "",
encounterStartText: "Minotaur Guard readies his weapon",
outcomePlayerWins: "<<include Quest_MQ002_Entrance_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_Entrance_PlayerLoses>>"
}>>
<<script>>
State.variables.CharacterSheet_Player.fight.fightMoveIDs.push(setup.FightMove_Inspect);
<</script>>
<</if>>
<<if $Version >= 10300 && $Version < 10301>>
<<set $Version = 10301>>
<<set $VersionStr = '0.3.1'>>
<<include FightMove_Sigil_Vitality>>
<<include FightMove_Sigil_Pain>>
<<include FightMove_Sigil_Perception>>
<<include FightMove_Sigil_Growth>>
<<include FightMove_WitheringVenom>>
<<set setup.FightHotkeys = ["1","2","3","4","5","6","7","8","9","0","Q","W","E","R","T","Y","U","I","O","P"]>>
<</if>>
<<if $Version >= 10301 && $Version < 10302>>
<<set $Version = 10302>>
<<set $VersionStr = '0.3.2\n Cannot upgrade save file. Play at your own risk.'>>
<</if>>
<<if $Version >= 10302 && $Version < 10303>>
<<set $Version = 10303>>
<<set $VersionStr = '0.3.3\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10303 && $Version < 10304>>
<<set $Version = 10304>>
<<set $VersionStr = '0.3.4\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10303 && $Version < 10304>>
<<set $Version = 10305>>
<<set $VersionStr = '0.3.5\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10304 && $Version < 10400>>
<<set $Version = 10400>>
<<set $VersionStr = '0.4.0\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10400 && $Version < 10401>>
<<set $Version = 10401>>
<<set $VersionStr = '0.4.1\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10401 && $Version < 10402>>
<<set $Version = 10402>>
<<set $VersionStr = '0.4.2\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10402 && $Version < 10403>>
<<set $Version = 10403>>
<<set $VersionStr = '0.4.3\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10403 && $Version < 10404>>
<<set $Version = 10404>>
<<set $VersionStr = '0.4.4'>>
<<include StoryInit_Abilities>>
<<include Ending_OneWithNyx>>
<<run $EndingSheet.push($Ending_OneWithNyx)>>
<<set $DisplayStatWindow = true>>
<<set $SecretCheat = 0>>
<</if>>
<<if $Version >= 10404 && $Version < 10405>>
<<set $Version = 10405>>
<<set $VersionStr = '0.4.5'>>
<<include StoryInit_Abilities>>
<<include StoryInit_FightMoves>>
<<set $CharacterSheet_Player.quest.exploration.villageGateEast =
{
eastFirstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Explore_EastFirstTime",
},
eastGrownMacro:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > (50 * 12);
},
passage: "Explore_EastGrownMacro",
},
eastGrownDemonic:
{
available: true,
condition: function()
{
return setup.getRace(State.variables.CharacterSheet_Player.info.anatomy).toUpperCase() == "DEMON";
},
passage: "Explore_EastGrownDemonic",
},
eastGrownParasites:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Player.quest.nyxParasiteInfections >= 10;
},
passage: "Explore_EastGrownParasites",
},
eastGrownLordOfLust:
{
available: true,
condition: function()
{
return setup.getRace(State.variables.CharacterSheet_Player.info.anatomy).toUpperCase() == "LORD OF LUST";
},
passage: "Explore_EastGrownLordOfLust",
},
} >>
<<set $CharacterSheet_Player.quest.exploration.villageGateNorth =
{
northFirstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Explore_NorthFirstTime",
},
northGrownMuscular:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > 30;
},
passage: "Explore_NorthGrownMuscular",
},
northVisibleCorruption:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "corruption") > 25;
},
passage: "Explore_NorthVisibleCorruption",
},
northGrownHeight:
{
available: true,
condition: function()
{
var height = setup.getStatValue(State.variables.CharacterSheet_Player, "height");
return height > (25 * 12) && height < (50 * 12);
},
passage: "Explore_NorthGrownHeight",
},
}>>
<<set $CharacterSheet_Player.quest.exploration.easternFirstTime = undefined>>
<<run setup.updateStaticCorruptionUI(State.variables.CharacterSheet_Player)>>
<</if>>
<<if $Version >= 10405 && $Version < 10406>>
<<set $Version = 10406>>
<<set $VersionStr = '0.4.6'>>
<<set $CharacterSheet_Lost_Naga.quest.fuckedByPlayer = false>>
<<set $CharacterSheet_Lost_Naga.quest.hasBeenVored = false>>
<<set $CharacterSheet_Player.text.jormFirstMeeting =
{
heightFlavour:
{
small: [
"Jorm_FirstMeeting_PlayerSmall"
],
medium: [
"Jorm_FirstMeeting_PlayerSmall"
],
large: [
"Jorm_FirstMeeting_PlayerBig"
],
huge: [
"Jorm_FirstMeeting_PlayerBig"
],
}
}>>
<<include Sheets_Jorm>>
<</if>>
<<if $Version >= 10406 && $Version < 10407>>
<<set $Version = 10407>>
<<set $VersionStr = '0.4.7\n SAVE FILE NOT COMPATIBLE WITH THIS VERSION! PLAY AT YOUR OWN RISKS!'>>
<</if>>
<<if $Version >= 10407 && $Version < 10408>>
<<set $Version = 10408>>
<<set $VersionStr = '0.4.8'>>
<<include Ability_MinorCorruption>>
<<include Ability_MajorCorruption>>
<<include Ability_OverwhelmingCorruption>>
<<include Ability_LordOfCorruption>>
<<include Ability_BuriedInCum>>
<<include Ability_CorruptedStrength>>
<<include Ability_Focused>>
<<include FightMove_LustfulInstincts>>
<<include FightMove_CorruptedUrges>>
<<include FightMove_InfectiousLust>>
<<include FightMove_CorruptedRemedy>>
<<set setup.FightMoveIDs = [setup.FightMove_Basic_Attack.id,
setup.FightMove_Do_Nothing.id,
setup.FightMove_Submit_Completely.id,
setup.FightMove_Goo_Stun.id,
setup.FightMove_IncubusCall.id,
setup.FightMove_IncubusStrike.id,
setup.FightMove_Lunge.id,
setup.FightMove_Infest.id,
setup.FightMove_Inspect.id,
setup.FightMove_Masturbate.id,
setup.FightMove_Sigil_Vitality.id,
setup.FightMove_Sigil_Pain.id,
setup.FightMove_Sigil_Perception.id,
setup.FightMove_Sigil_Growth.id,
setup.FightMove_ChargedStrike.id,
setup.FightMove_Stomp.id,
setup.FightMove_Hypnotize.id,
setup.FightMove_Worship.id,
setup.FightMove_WitheringVenom.id,
setup.FightMove_Parry.id,
setup.FightMove_DragonStrike.id,
setup.FightMove_ParasiteLunge.id,
setup.FightMove_SummonParasite.id,
setup.FightMove_ConsumeLost.id,
setup.FightMove_SeedOfRuin.id,
setup.FightMove_SlimeLunge.id,
setup.FightMove_Slash.id,
setup.FightMove_Bash.id,
setup.FightMove_Focus.id,
setup.FightMove_CumDeluge.id,
setup.FightMove_LustfulInstincts.id,
setup.FightMove_CorruptedUrges.id,
setup.FightMove_InfectiousLust.id,
setup.FightMove_CorruptedRemedy.id,
]>>
<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_MinorCorruption);>>
<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_MajorCorruption);>>
<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_OverwhelmingCorruption);>>
<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_LordOfCorruption);>>
<<set setup.FightMove_Stunned.skillTheme = "special">>
<<set setup.FightMove_Bash.skillTheme = "offensive">>
<<set setup.FightMove_BasicAttack.skillTheme = "offensive">>
<<set setup.FightMove_ChargedStrike.skillTheme = "offensive">>
<<set setup.FightMove_ConsumeLost.skillTheme = "offensive">>
<<set setup.FightMove_DoNothing.skillTheme = "special">>
<<set setup.FightMove_Submit_Completely.skillTheme = "special">>
<<set setup.FightMove_DragonStrike.skillTheme = "offensive">>
<<set setup.FightMove_Goo_Stun.skillTheme = "symbiote">>
<<set setup.FightMove_Hypnotize.skillTheme = "offensive">>
<<set setup.FightMove_IncubusCall.skillTheme = "demon">>
<<set setup.FightMove_IncubusStrike.skillTheme = "demon">>
<<set setup.FightMove_Infest.skillTheme = "offensive">>
<<set setup.FightMove_Inspect.skillTheme = "special">>
<<set setup.FightMove_Masturbate.skillTheme = "buff">>
<<set setup.FightMove_Parry.skillTheme = "offensive">>
<<set setup.FightMove_SeedOfRuin.skillTheme = "offensive">>
<<set setup.FightMove_Sigil_Growth.skillTheme = "sigil">>
<<set setup.FightMove_Sigil_Pain.skillTheme = "sigil">>
<<set setup.FightMove_Sigil_Perception.skillTheme = "sigil">>
<<set setup.FightMove_Sigil_Vitality.skillTheme = "sigil">>
<<set setup.FightMove_Sigil_Slash.skillTheme = "offensive">>
<<set setup.FightMove_Sigil_SlimeLunge.skillTheme = "offensive">>
<<set setup.FightMove_Sigil_Stomp.skillTheme = "offensive">>
<<set setup.FightMove_Sigil_SummonParasite.skillTheme = "demon">>
<<set setup.FightMove_Sigil_WitheringVenom.skillTheme = "offensive">>
<<set setup.FightMove_Sigil_Worship.skillTheme = "special">>
<<set setup.FightMove_Focus.skillDescription = "Gain an additional action slot.">>
<<set setup.FightMove_Focus.skillTheme = "buff">>
<<run setup.updateStaticCorruptionUI(State.variables.CharacterSheet_Player)>>
<</if>>
<<if $Version >= 10408 && $Version < 10409>>
<<set $Version = 10409>>
<<set $VersionStr = '0.4.9'>>
<<include Ability_Focused>>
<<include Ability_Momentum>>
<<include Ability_Incorruptible>>
<<include Ability_ServantOfKanathar>>
<<include Ability_ValiantRush>>
<<include FightMove_Focus>>
<<set setup.StorylineProgress_Imp =
{
FIRST_MEETING: 0,
LOW_RELATIONSHIP: 1000,
MID_RELATIONSHIP: 2000,
SERVANT: 3000,
MASTER: 4000,
}>>
<<set setup.QuestSheet_Imp =
{
met: false,
storylineProgress: setup.StorylineProgress_Imp.FIRST_MEETING,
relationshipScoring: 0,
servantScoring: 0,
servantWins: 3,
servantLosses: 3,
masterScoring: 0,
lostScoring: 0,
encounterPassages:
{
servant:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Servant_EncounterStart",
},
midRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_EncounterStart",
},
lowRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 1;
},
passage: "Imp_Low_Rela_EncounterStart",
},
firstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_FirstMeeting_Intro",
},
},
postFightPassagesWin:
{
servantPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Win_ServantPath",
},
masterChoice:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 8 && State.variables.CharacterSheet_Imp.quest.masterScoring >= 3;
},
passage: "Imp_MasterChoice",
},
lowRelaEnterMidRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Low_Rela_Win_EnterMidRela",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_Win_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_Low_Rela_Win_Idle",
},
},
postFightPassagesLoss:
{
servantPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Loss_ServantPath",
},
servantChoice:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 6 && State.variables.CharacterSheet_Imp.quest.servantScoring >= 3;
},
passage: "Imp_Loss_ServantChoice",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_Loss_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_Low_Rela_Loss_Idle",
},
},
}>>
<<set $CharacterSheet_Imp.quest = setup.QuestSheet_Imp>>
<</if>>
<<if $Version >= 10409 && $Version < 10409.1>>
<<set $Version = 10409.1>>
<<set $VersionStr = '0.4.9'>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<</if>>
<<if $Version >= 10409.1 && $Version < 10500>>
<<set $Version = 10500>>
<<set $VersionStr = '0.5.0'>>
<<include Ability_Global_HeightSizeTier_1>>
<<include Ability_Global_HeightSizeTier_2>>
<<include Ability_Global_HeightSizeTier_3>>
<<include Ability_Global_HeightSizeTier_4>>
<<include Ability_Global_HeightSizeTier_5>>
<<include Ability_Global_HeightSizeTier_6>>
<<include FightMove_PridefulAscent>>
<<include "_imp_body_visual">>
<<set $CharacterSheet_Player.fight.teammate = undefined>>
<<set setup.FightMoveIDs = [setup.FightMove_Basic_Attack.id,
setup.FightMove_Do_Nothing.id,
setup.FightMove_Submit_Completely.id,
setup.FightMove_Goo_Stun.id,
setup.FightMove_IncubusCall.id,
setup.FightMove_IncubusStrike.id,
setup.FightMove_Lunge.id,
setup.FightMove_Infest.id,
setup.FightMove_Inspect.id,
setup.FightMove_Masturbate.id,
setup.FightMove_Sigil_Vitality.id,
setup.FightMove_Sigil_Pain.id,
setup.FightMove_Sigil_Perception.id,
setup.FightMove_Sigil_Growth.id,
setup.FightMove_ChargedStrike.id,
setup.FightMove_Stomp.id,
setup.FightMove_Hypnotize.id,
setup.FightMove_Worship.id,
setup.FightMove_WitheringVenom.id,
setup.FightMove_Parry.id,
setup.FightMove_DragonStrike.id,
setup.FightMove_ParasiteLunge.id,
setup.FightMove_SummonParasite.id,
setup.FightMove_ConsumeLost.id,
setup.FightMove_SeedOfRuin.id,
setup.FightMove_SlimeLunge.id,
setup.FightMove_Slash.id,
setup.FightMove_Bash.id,
setup.FightMove_Focus.id,
setup.FightMove_CumDeluge.id,
setup.FightMove_LustfulInstincts.id,
setup.FightMove_CorruptedUrges.id,
setup.FightMove_InfectiousLust.id,
setup.FightMove_CorruptedRemedy.id,
setup.FightMove_PridefulAscent.id,
]>>
<<set $LevelUpParams =
{
point : 2,
hp: {name: "Health", value: $CharacterSheet_Player.fight.hp},
stamina: {name: "Stamina", value: $CharacterSheet_Player.fight.stamina},
strength: {name: "Strength", value: $CharacterSheet_Player.fight.strength},
arousalGain: {name: "Arousal Gain per turn", value: $CharacterSheet_Player.fight.arousalGain},
staminaRecovery: {name: "Stamina Recovery per turn", value: $CharacterSheet_Player.fight.staminaRecovery},
scaling: {
hp: 6,
stamina: 4,
strength: 3,
arousalGain: 2,
staminaRecovery: 1,
},
}>>
<<set $CharacterSheet_Imp.fight.fightMoveIDs = [setup.FightMove_Basic_Attack.id, setup.FightMove_PridefulAscent.id]>>
<<set $CharacterSheet_Imp.info.bodyVisual = "BodyVisualSheet_Imp">>
<<set setup.QuestSheet_Imp.encounterPassages.growthBodySmallToMedium =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "medium"
},
passage: "Imp_EncounterStart_Growth_Body_SmallToMedium",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthBodyMediumToLarge =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big"
},
passage: "Imp_EncounterStart_Growth_Body_MediumToLarge",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthCock1to2 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "small" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "small";
},
passage: "Imp_EncounterStart_Growth_Cock_1To2",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthCock2to3 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "medium" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "medium";
},
passage: "Imp_EncounterStart_Growth_Cock_2To3",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthCock3to4 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "medium" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "big";
},
passage: "Imp_EncounterStart_Growth_Cock_3To4",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthCock4to5 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "biggest";
},
passage: "Imp_EncounterStart_Growth_Cock_4To5",
}>>
<<set setup.QuestSheet_Imp.encounterPassages.growthCock5to6 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "biggestHyperBalls";
},
passage: "Imp_EncounterStart_Growth_Cock_5To6",
}>>
<</if>>
<<if $Version >= 10500 && $Version < 10500.1>>
<<set $Version = 10500.1>>
<<set $VersionStr = '0.5.0*'>>
<<if $CharacterSheet_Player.fight.teammate != undefined>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<<else>>
<<set $EasyRandomEncounters = ["CharacterSheet_Slime"]>>
<</if>>
<</if>>
<<if $Version >= 10500.1 && $Version < 10500.2>>
<<set $Version = 10500.2>>
<<set $VersionStr = '0.5.0*'>>
<<if $CharacterSheet_Player.fight.teammate == undefined>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<<else>>
<<set $EasyRandomEncounters = ["CharacterSheet_Slime"]>>
<</if>>
<</if>>
<<if $Version >= 10500.2 && $Version < 10500.3>>
<<set $Version = 10500.3>>
<<set $VersionStr = '0.5.0*'>>
<<run console.log("upgrading 10500.2 to 10500.3")>>
<<if $CharacterSheet_Player.fight.teammate == undefined>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<<else>>
<<set $EasyRandomEncounters = ["CharacterSheet_Slime"]>>
<</if>>
<</if>>
<<if $Version >= 10500.3 && $Version < 10500.4>>
<<set $Version = 10500.4>>
<<set $VersionStr = '0.5.0*'>>
<<run console.log("upgrading 10500.3 to 10500.4")>>
<<if $CharacterSheet_Player.fight.teammate == undefined>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<<else>>
<<set $EasyRandomEncounters = ["CharacterSheet_Slime"]>>
<</if>>
<</if>>
<<if $Version >= 10500.4 && $Version < 10501>>
<<set $Version = 10501>>
<<set $VersionStr = '0.5.1'>>
<<set setup.AttackTiming =
{
BEFORE_PLAYER: 1,
BETWEEN_PLAYER_AND_ENEMY: 2,
AFTER_ENEMY: 3,
}>>
<<widget "PlayerHeight">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "height"))>><</widget>>
<<widget "PlayerCock">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "cock"))>><</widget>>
<<widget "PlayerBalls">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "balls"))>><</widget>>
<<widget "PlayerRace">><<print setup.getRace(State.variables.CharacterSheet_Player.info.anatomy)>><</widget>>
<<widget "PlayerArmsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|arms|noverb]")>> \<</widget>>
<<widget "PlayerHandsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|hands|noverb]")>> \<</widget>>
<<widget "PlayerBallsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|balls|noverb]")>> \<</widget>>
<<widget "SymbioteRace">><<print setup.getRace(State.variables.CharacterSheet_Player.symbiote.anatomy)>><</widget>>
<<widget "SymbioteColor">><<print State.variables.CharacterSheet_Player.symbiote.color>><</widget>>
<<widget "SymbioteName">><<print State.variables.CharacterSheet_Player.symbiote.name>><</widget>>
<<widget "ImpHeight">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "height"))>><</widget>>
<<widget "ImpCockLength">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "cock"))>><</widget>>
<<widget "ImpBallsSize">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "balls"))>><</widget>>
<<set $CharacterSheet_Imp.fight.teammateSettings = {
attackTiming: setup.AttackTiming.BEFORE_PLAYER,
}>>
<<set $CharacterSheet_Imp.quest.encounterPassages.growthCock5to6 =
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "biggestHyperBalls";
},
passage: "Imp_EncounterStart_Growth_Cock_5To6",
}>>
<<set $CharacterSheet_Imp.quest.postFightPassagesWin.masterPath =
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.MASTER;
},
passage: "Imp_Win_MasterPath",
}>>
<<set $CharacterSheet_Imp.quest.postFightPassagesLoss.masterPath =
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.MASTER;
},
passage: "Imp_Loss_MasterPath",
}>>
<<set $CharacterSheet_Imp.quest.growthMultiplier = 1>>
<<set $CharacterSheet_Imp.text =
{
goMeetImp_Intro :{
heightFlavour: {
small: [
"GoMeetImp_heightFlavour_small",
],
medium: [
"GoMeetImp_heightFlavour_small",
],
large: [
"GoMeetImp_heightFlavour_large",
],
huge: [
"GoMeetImp_heightFlavour_huge",
],
},
},
goMeetImp_Height :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Size_Small",
],
medium: [
"Village_MeetImp_Examine_Size_Small",
],
large: [
"Village_MeetImp_Examine_Size_Large",
],
huge: [
"Village_MeetImp_Examine_Size_Huge",
],
},
},
goMeetImp_Muscles :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Muscles_Small",
],
medium: [
"Village_MeetImp_Examine_Muscles_Small",
],
large: [
"Village_MeetImp_Examine_Muscles_Large",
],
huge: [
"Village_MeetImp_Examine_Muscles_Huge",
],
},
},
goMeetImp_Genitals :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Genitals_Small",
],
medium: [
"Village_MeetImp_Examine_Genitals_Small",
],
large: [
"Village_MeetImp_Examine_Genitals_Large",
],
huge: [
"Village_MeetImp_Examine_Genitals_Huge",
],
},
},
leaveImp :{
heightFlavour: {
small: [
"Village_MeetImp_Leave_Small",
],
medium: [
"Village_MeetImp_Leave_Small",
],
large: [
"Village_MeetImp_Leave_Large",
],
huge: [
"Village_MeetImp_Leave_Huge",
],
},
},
goMeetImp_GrowImp :{
heightFlavour: {
small: [
"Village_MeetImp_GrowHim_Large",
],
medium: [
"Village_MeetImp_GrowHim_Large",
],
large: [
"Village_MeetImp_GrowHim_Large",
],
huge: [
"Village_MeetImp_GrowHim_Huge",
],
},
},
basicAttackPrepFlavour :{
heightFlavour: {
small: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_3",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_4",
],
medium: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_3",
],
large: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_3",
],
huge: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_3",
],
},
},
encounterStartFlavour :{
heightFlavour: {
small: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_3",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_4",
],
medium: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_3",
],
large: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_3",
],
huge: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_3",
],
},
}
}>>
<<set $CharacterSheet_Player.quest.exploration.villageGateNorth.northGrownHeightMassive =
{
available: true,
condition: function()
{
var height = setup.getStatValue(State.variables.CharacterSheet_Player, "height");
return height > (50 * 12);
},
passage: "Explore_NorthGrownHeightMassive",
}>>
<<set $CharacterSheet_Player.quest.exploration.villageGateEast.eastGrownMegaMacro =
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > (200 * 12);
},
passage: "Explore_EastGrownMegaMacro",
}>>
<</if>>
<<if $Version >= 10501 && $Version < 10501.1>>
<<run console.log("deprecate 10501")>>
<<set $Version = 10501.1>>
<<set $VersionStr = '0.5.1*'>>
<<if $CharacterSheet_Player.fight.teammate == undefined>>
<<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime"]>>
<<else>>
<<set $EasyRandomEncounters = ["CharacterSheet_Slime"]>>
<</if>>
<</if>>
<<if $Version >= 10501.1 && $Version < 10502>>
<<run console.log("deprecate 10502")>>
<<set $Version = 10502>>
<<set $VersionStr = '0.5.2\n [[SAVE FILE NOT COMPATIBLE WITH THIS VERSION! CLICK HERE TO RESTART WHILE KEEPING YOUR ESSENCE AND EXP!->Reload_Unsupported_Enter]]'>>
<</if>>
<<if $Version >= 10502 && $Version < 10503>>
<<set $CharacterSheet_Player.info.corruptionPerDay = 0>>
<<include Ability_Uncorrupted>>
<<include Ability_MinorCorruption>>
<<include Ability_MajorCorruption>>
<<include Ability_OverwhelmingCorruption>>
<<include Ability_LordOfCorruption>>
<<run console.log("deprecate 10503")>>
<<set $Version = 10503>>
<<set $VersionStr = '0.5.3\n [[SAVE FILE NOT COMPATIBLE WITH THIS VERSION! CLICK HERE TO RESTART WHILE KEEPING YOUR ESSENCE AND EXP!->Reload_Unsupported_Enter]]'>>
<</if>><meta name="viewport" content="width=1024"><<include StoryInit_Base>>
<<include StoryInit_Widgets>>
<<include StoryInit_UniversalFlavour>>
<<include StoryInit_FightVariables>>
<<include StoryInit_FightMoves>>
<<include Quest_MQ001>>
<<include Quest_MQ001_EchoFirstEncounter>>
<<include Quest_MQ002>>
<<include StoryInit_QuestVariables>>
<<include StoryInit_Abilities>>
<<include Sheets_Player>>
<<include Sheets_Imp>>
<<include Sheets_Lakkos>>
<<include Sheets_Lost_Entity>>
<<include Sheets_Lost_Harbinger>>
<<include Sheets_Swarm>>
<<include Sheets_Lost_Naga>>
<<include Sheets_Elder>>
<<include Sheets_town_guard>>
<<include Sheets_MQ002_Guard>>
<<include Sheets_MQ002_NyxParasite>>
<<include Sheets_MQ002_DragonMonk>>
<<include Sheets_Apothus>>
<<include Sheets_Apothus_2nd_Form>>
<<include Sheets_God_Beast>>
<<include Sheets_Slime>>
<<include Sheets_Jorm>>
<<include Sheets_Abel>>
<<include Sheets_Torgar>>
<<include StoryInit_StateDrivenModifiers>>
<<include StoryInit_WorldState>>
<<include StoryInit_EndingSheet>>
<<include StoryInit_UI>>
<<include StoryInit_Music>>
<<include StoryInit_RandomEncounters>><<include StoryInit_AbilityTrigger>>
<<set setup.UnlockableAbilityList = []>>
<<set setup.GlobalAbilities = []>>
<<include Ability_Tank>>
<<include Ability_Berserking>>
<<include Ability_DeadlyAim>>
<<include Ability_Mutant_2>>
<<include Ability_Mutant>>
<<include Ability_Global_HeightSizeTier_1>>
<<include Ability_Global_HeightSizeTier_2>>
<<include Ability_Global_HeightSizeTier_3>>
<<include Ability_Global_HeightSizeTier_4>>
<<include Ability_Global_HeightSizeTier_5>>
<<include Ability_Global_HeightSizeTier_6>>
<<include Ability_Global_Bigger_Than_Target_1>>
<<include Ability_Global_Bigger_Than_Target_2>>
<<include Ability_Global_Bigger_Than_Target_3>>
<<include Ability_Global_Overwhelming_Balls>>
<<include Ability_Global_All_Consuming_Balls>>
<<include Ability_Uncorrupted>>
<<include Ability_MinorCorruption>>
<<include Ability_MajorCorruption>>
<<include Ability_OverwhelmingCorruption>>
<<include Ability_LordOfCorruption>>
<<include Ability_GoldenStar>>
<<include Ability_GreenStar>>
<<include Ability_RedStar>>
<<include Ability_BlueStar>>
<<include Ability_EchoForm>>
<<include Ability_Masochism>>
<<include Ability_HerculeanBuild>>
<<include Ability_DemonicCorruption_3>>
<<include Ability_DemonicCorruption_2>>
<<include Ability_DemonicCorruption>>
<<include Ability_StolenMass>>
<<include Ability_CurseOfTheNaga>>
<<include Ability_VigorOfTheEndowed_2>>
<<include Ability_VigorOfTheEndowed>>
<<include Ability_AppetiteForGrowth_2>>
<<include Ability_AppetiteForGrowth>>
<<include Ability_NyxParasiteInfection_2>>
<<include Ability_NyxParasiteInfection>>
<<include Ability_TouchedByNyxsLight>>
<<include Ability_EmbracedByNyxsLight>>
<<include Ability_Oath_Containment>>
<<include Ability_Oath_Nyx>>
<<include Ability_UnstoppableExpansion>>
<<include Ability_Oathbreaker>>
<<include Ability_NeverendingGrowth>>
<<include Ability_OrgasmicGrowth>>
<<include Ability_LastStand>>
<<include Ability_ToLiveForEcho>>
<<include Ability_WarriorOfDuality>>
<<include Ability_WitheringVenom>>
<<include Ability_CodexPassion>>
<<include Ability_FaithsReward>>
<<include Ability_EssenceHoarder>>
<<include Ability_SombrevesWhisper>>
<<include Ability_VampiricLust>>
<<include Ability_KalethsFervour>>
<<include Ability_ActiveParry>>
<<include Ability_ParryEnergy>>
<<include Ability_BrinkOfMadness>>
<<include Ability_PiercingPrecision>>
<<include Ability_ChannelTheAstralSoul>>
<<include Ability_ValiantRush>>
<<include Ability_SigilOfPerception>>
<<include Ability_TaintedByTheLost>>
<<include Ability_SurvivorOfTheFirstEclipse>>
<<include Ability_MemoriesOfTheChosen>>
<<include Ability_MemoriesOfCray>>
<<include Ability_MemoriesOfApothus>>
<<include Ability_MemoriesOfNyx>>
<<include Ability_HostOfEcho>>
<<include Ability_DracosOmnipotence>>
<<include Ability_BuriedInCum>>
<<include Ability_CorruptedStrength>>
<<include Ability_Focused>>
<<include Ability_Momentum>>
<<include Ability_Incorruptible>>
<<include Ability_ServantOfKanathar>>
<<include Ability_EmpoweringDrink>>
<<include Ability_TorgarsBond>><<script>>
State.variables.AbilityTrigger =
{
ON_ACQUIRE: 1 << 0,
ON_FIGHT_START: 1 << 1,
ON_FIGHT_TURN_START: 1 << 2,
ON_FIGHT_DAMAGING_HIT: 1 << 3,
ON_FIGHT_PRE_RECEIVE_DAMAGE: 1 << 5,
ON_FIGHT_POST_RECEIVE_DAMAGE: 1 << 4,
ON_FIGHT_END: 1 << 6,
ON_MAX_LUST: 1 << 7,
ON_MIN_LUST: 1 << 8,
ON_APPLY_GROWTH: 1 << 9,
ON_ENTER_MID_HEALTH: 1 << 10,
ON_EXIT_MID_HEALTH: 1 << 11,
ON_ENTER_LOW_HEALTH: 1 << 12,
ON_EXIT_LOW_HEALTH: 1 << 13,
ON_LEVEL_UP: 1 << 14,
ON_FIGHT_DO_DAMAGELESS_ATTACK: 1 << 15,
ON_FIGHT_BATTLE_WON: 1 << 16,
ON_FIGHT_BATTLE_LOST: 1 << 17,
ON_GAIN_CORRUPTION: 1 << 18,
ON_GAIN_ESSENCE: 1 << 19,
ON_DAY_CHANGE: 1 << 20,
ON_STAT_CHANGE: 1 << 21,
}
<</script>><<script>>
Config.history.maxStates = 1;
Config.history.controls = false;
Config.ui.stowBarInitially = false;
<</script>>
<<set $Version = 10503>>
<<set $VersionStr = '0.5.3'>>
<<set $Volume = 0.7>>
<<set setup.FightHotkeys = ["1","2","3","4","5","6","7","8","9","0","Q","W","E","R","T","Y","U","I","O","P"]>>
<<set setup.DeathTextEnum =
{
NORMAL: 1,
POST_APOTHUS: 2,
}>>
<<set setup.AttackTiming =
{
BEFORE_PLAYER: 1,
BETWEEN_PLAYER_AND_ENEMY: 2,
AFTER_ENEMY: 3,
}>>
<<set $SecretCheat = 0>>
<<set $DisplayStatWindow = true>>
<<set $LastExplorationEnemyEncounter = 0>>
<<set $DeathText = setup.DeathTextEnum.NORMAL>>
<<set setup.RewardTier =
{
VERY_LOW: 1,
LOW: 2,
MEDIUM: 3,
HIGH: 4,
VERY_HIGH: 5,
}>>
<<set setup.Units =
{
IMPERIAL: 1,
METRIC: 2
}>>
<<set setup.Oath =
{
NONE: 1,
ACTIVE: 2,
BROKEN: 3,
}>>
<<set setup.Comparators =
{
MICRO_TO: 1,
MUCH_SMALLER: 2,
SMALLER: 3,
SLIGHTLY_SMALLER: 4,
EQUAL: 5,
SLIGHTLY_BIGGER: 6,
BIGGER: 7,
MUCH_BIGGER: 8,
REACHES_WAIST: 9,
REACHES_KNEES: 10,
FITS_ON_HAND: 11,
FITS_ON_FINGER: 12,
}>>
<<set setup.CockComparators =
{
MICRO_TO: 1,
MUCH_SMALLER: 2,
SMALLER: 3,
SLIGHTLY_SMALLER: 4,
EQUAL: 5,
SLIGHTLY_BIGGER: 6,
BIGGER: 7,
MUCH_BIGGER: 8,
MASSIVE: 9,
HYPER: 10,
MACRO: 11,
GIGA: 12,
}>>
<<set setup.CorruptionComparators =
{
PURE: 25,
NEUTRAL: 50,
TAINTED: 75,
CORRUPT: 100
}>>
<<set setup.ColourPool =
{
DEFAULT: undefined,
RED: "red",
ORANGE: "orange",
YELLOW: "yellow",
GREEN: "green",
BLUE: "blue",
INDIGO: "indigo",
VIOLET: "violet",
PURPLE: "purple",
WHITE: "white",
GREY: "grey",
BLACK: "black",
OBSIDIAN: "obsidian",
AMBER: "amber",
PINK: "pink",
BROWN: "brown",
TAN: "tan",
BEIGE: "beige",
EMERALD: "emerald",
SAPPHIRE: "sapphire",
CRIMSON: "crimson",
GOLDEN: "golden"
}>>
<<set setup.MuscleComparators =
{
MICRO_TO: 1,
MUCH_SMALLER: 2,
SMALLER: 3,
SLIGHTLY_SMALLER: 4,
EQUAL: 5,
SLIGHTLY_BIGGER: 6,
BIGGER: 7,
MUCH_BIGGER: 8,
DWARFING: 9,
GIANT: 10,
MACRO: 11,
GIGA: 12,
}>>
<<set setup.englishNumbers =
{
1: "",
2: "two",
3: "three",
4: "four",
5: "five",
6: "six",
7: "seven",
8: "eight",
9: "nine",
10: "ten",
11: "eleven",
12: "twelve",
13: "thirteen",
14: "fourteen",
15: "fifteen",
16: "sixteen",
17: "seventeen",
18: "eighteen",
19: "nineteen",
20: "twenty",
21: "twenty one",
22: "twenty two",
23: "twenty three",
24: "twenty four",
25: "twenty five",
26: "twenty six",
27: "twenty seven",
28: "twenty eight",
29: "twenty nine",
30: "thirty",
31: "thirty one",
32: "thirty two",
33: "thirty three",
34: "thirty four",
35: "thirty five",
36: "thirty six",
37: "thirty seven",
38: "thirty eight",
39: "thirty nine",
40: "forty"
}>>
<<set $SymbioteBoost = "muscles">>
<<set $Debug = $SpecialBuild>>
<<set setup.Colors = ["orange", "blue", "grey"]>>
<<set $BoughtFightMoves = 0>>
<<set $FightTurn = 0>>
<<set setup.LevelUpTable =
[
180,
500,
1300,
2400,
3700,
5600,
7000,
8300,
10000,
15000,
]>>
<<set setup.AbilityCategory =
{
NONE: 0,
WARRIOR: 1,
GROWTH: 2,
SOMBREVE: 3,
PURITY: 4,
LUST: 5,
}>>
/*always order from best to worst*/
<<set setup.AbilityGrade =
{
VERYHIGH: 4,
HIGH: 3,
MEDIUM: 2,
LOW: 1,
VERYLOW: 0,
}>>
/*Stats -BEGIN*/
<<set $Expedition = 0>>
<<set $Cycle = 1>>
<<set $Essence = 0>>
<<set $Exp = 0>>
<<set $Level = 1>>
/*Stats -END*/
/*Descriptors*/
<<set setup.Fight_HealthDescriptor = function(maxHP, curHP)
{
if(curHP / maxHP > 0.7)
{
return "<span style='color:#46c546;'>" + "healthy" + "</span>";
}
else if(curHP / maxHP > 0.5)
{
return "<span style='color:#c5bb46;'>" + "out of breath" + "</span>";
}
else if(curHP / maxHP > 0.3)
{
return "<span style='color:#ff9840;'>" + "exhausted" + "</span>";
}
else
{
return "<span style='color:#ff0000;'>" + "nearly dead" + "</span>";
}
};
>>
<<set setup.AdjectivePool =
{
heads: {
medium: ["large"],
large: ["sizeable"],
huge: ["massive", "huge"],
adjectives: {
pure: ["rugged", "square-jawed"],
corrupt: ["rugged", "square-jawed"]
}
},
eyes: {
adjectives: {
corrupt: ["glowing", "demonic", "fiery", "burning", "blazing"]
}
},
jaws: {
small: ["defined"],
medium: ["square"],
large: ["powerful"],
huge: ["massive"],
adjectives: {
}
},
teeths: {
raceTexture: ["average"],
adjectives: {
}
},
hands: {
small: ["average"],
medium: ["meaty"],
large: ["huge"],
huge: ["massive"],
adjectives: {
}
},
horns: {
small: ["bulky"],
medium: ["heavy", "dangerous"],
large: ["massive", "incredibly heavy", "bulldozing"],
huge: ["colossal", "earth gouging"],
adjectives: {
corrupt: ["cracked", "purple runed", "glowing"]
}
},
wings: {
small: ["magnificent"],
medium: ["monumental"],
large: ["massive"],
huge: ["titanic", "land eclipsing"],
adjectives: {
}
},
tongues: {
small: ["normal sized"],
medium: ["long"],
large: ["elongated"],
huge: ["extensive", "huge"],
adjectives: {
corrupt: ["slobbering", "dripping", "slimy"]
}
},
arms: {
small: ["athletic", "chiselled", "defined"],
medium: ["large", "bulky", "brawny"],
large: ["sizeable", "huge", "boulder-like", "skin-straining", "heavily muscled"],
huge: ["colossal", "titanic", "world ending", "building sized", "impossibly huge", "huge", "movement limiting"],
adjectives: {
pure: ["vein-riddled", "strong", "beefy", "pumped"],
corrupt: ["pulsating", "vein-riddled", "ever growing", "strong", "beefy", "mutated"]
}
},
pecs: {
small: ["athletic", "chiselled", "defined", "square"],
medium: ["large", "bulky", "brawny", "well-built"],
large: ["sizeable", "shelf-like", "boulder sized", "vision limiting", "huge", "massive"],
huge: ["chin scraping", "mountain-like", "titanic", "heavily muscled"],
adjectives: {
pure: ["vein-riddled", "strong", "beefy", "pumped"],
corrupt: ["pulsating", "vein-riddled", "ever growing", "strong", "beefy"]
}
},
abdominals: {
small: ["pack", "chiselled", "defined", "washboard"],
medium: ["pack", "rock-hard", "strong", "rippling"],
large: ["pack", "brick-like", "huge", "wall of", "cinderblock"],
huge: ["pack", "impossibly huge", "colossal", "titanic", "vehicle sized"],
adjectives: {
pure: ["veiny"],
corrupt: ["pulsating", "veiny"]
}
},
cocks: {
small: ["fair", "impressive"],
medium: ["horse-sized", "arm-sized", "awe-inspiring", "incredibly big"],
large: ["huge", "hyper", "bloated", "vehicle sized", "wall breaking", "impossibly huge", "mammoth", "floor dragging", "cannon"],
huge: ["massive", "huge", "mountain sized", "world breaking", "ground-carving", "earth shaking", "god like", "village sized"],
adjectives: {
pure: ["vein-riddled", "rigid", "leaking"],
corrupt: ["pulsating", "vein-riddled", "glowing", "leaking"]
}
},
balls: {
medium: ["large", "thigh-knocking", "grapefruit sized"],
large: ["floor dragging", "bloated"],
huge: ["massive", "huge", "building sized", "mountainous"],
adjectives: {
pure: ["virile", "sloshing", "bloated"],
corrupt: ["pulsating", "vein-riddled", "over full", "egregious", "rumbling", "powerful", "corrupt"]
}
},
legs: {
small: ["athletic", "chiselled", "defined"],
medium: ["large", "bulky", "brawny"],
large: ["sizeable", "huge", "thick", "skin-straining", "heavily muscled"],
huge: ["colossal", "titanic", "world ending", "building sized", "impossibly huge", "huge"],
adjectives: {
pure: ["vein-riddled", "strong", "beefy"],
corrupt: ["pulsating", "vein-riddled"]
}
},
tails: {
medium: ["large"],
large: ["sizeable", "sizable"],
huge: ["massive", "huge"],
adjectives: {
corrupt: ["vein-riddled"]
}
},
breasts: {
small: ["average", "soft"],
medium: ["large", "pillow-like"],
large: ["sizeable", "shelf-like", "boulder sized", "vision limiting", "huge", "massive"],
huge: ["chin scraping", "mountain-like", "titanic"],
adjectives: {
pure: ["milk-filled", "voluminous"],
corrupt: ["leaking", "ever growing", "corruption-filled"]
}
},
vaginas: {
small: ["average", "fair", "impressive"],
medium: ["large", "wide", "incredibly big"],
large: ["sizeable", "cavernous", "enormous", "capacious", "huge", "massive"],
huge: ["world-devouring", "chasm-sized", "yawning", "immense"],
adjectives: {
pure: ["soft", "warm", "welcoming"],
corrupt: ["dripping", "undulating", "leaking"]
}
}
}
>>
<<set setup.RacePool =
{
DEFAULT: "DEFAULT",
WOLF: "WOLF",
MINOTAUR: "MINOTAUR",
BEHEMOTH: "BEHEMOTH",
DRAGONBORN: "DRAGONBORN",
HALFORC: "HALFORC",
INCUBUS: "INCUBUS",
SYMBIOTE: "SYMBIOTE",
NAGA: "NAGA",
LORD_OF_LUST: "LORD_OF_LUST",
CUSTOM: "CUSTOM",
}
>>
<<set $CustomRace =
{
name: undefined,
namePlural: undefined,
heads: {
defaultNumber: 0,
raceTexture: undefined
},
eyes: {
defaultNumber: 0,
raceTexture: undefined
},
jaws: {
defaultNumber: 0,
raceTexture: undefined
},
teeths: {
defaultNumber: 0,
raceTexture: undefined
},
hands: {
defaultNumber: 0,
raceTexture: undefined
},
horns: {
defaultNumber: 0,
raceTexture: undefined
},
wings: {
defaultNumber: 0,
raceTexture: undefined
},
tongues: {
defaultNumber: 0,
raceTexture: undefined
},
arms: {
defaultNumber: 0,
raceTexture: undefined
},
pecs: {
defaultNumber: 0,
raceTexture: undefined
},
abdominals: {
defaultNumber: 0,
raceTexture: undefined
},
cocks: {
defaultNumber: 0,
raceTexture: undefined
},
balls: {
defaultNumber: 0,
raceTexture: undefined
},
legs: {
defaultNumber: 0,
raceTexture: undefined
},
tails: {
defaultNumber: 0,
raceTexture: undefined
},
breasts: {
defaultNumber: 2,
raceTexture: undefined
},
vaginas: {
defaultNumber: 1,
raceTexture: undefined
},
}
>>
<<set setup.RacePoolObjects =
{
DEFAULT: {
name: "Human",
namePlural: "Humans",
description: "A common species, making up a bulk of nearly all population centers. Highly social and adaptable.",
heads: {
defaultNumber: 1
},
eyes: {
defaultNumber: 2
},
jaws: {
defaultNumber: 1
},
teeths: {
defaultNumber: 1
},
hands: {
defaultNumber: 2
},
tongues: {
defaultNumber: 1
},
arms: {
defaultNumber: 2
},
pecs: {
defaultNumber: 2
},
abdominals: {
defaultNumber: 8
},
cocks: {
defaultNumber: 1
},
balls: {
defaultNumber: 2
},
legs: {
defaultNumber: 2
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
WOLF: {
name: "Werewolf",
namePlural: "Werewolves",
description: "Appears to be a combination of both human and wolf, though they trace their lineage to neither. Despite common legends, does not shift forms in the light of the moon.",
heads: {
defaultNumber: 1,
raceTexture: ["furry", "wolfish", "muzzled"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["predatory", "wolfish", "lupine"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["furry", "wolven", "wolfish", "lupine", "canid"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "padded"]
},
tongues: {
defaultNumber: 1
},
arms: {
defaultNumber: 2,
raceTexture: ["furry", "wolven", "wolfish", "lupine", "canid"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["furry", "wolven", "wolfish", "lupine", "canid"]
},
abdominals: {
defaultNumber: 8,
raceTexture: ["furry", "wolven", "wolfish", "lupine", "canid"]
},
cocks: {
defaultNumber: 1,
raceTexture: ["knotted", "rocket-shaped", "wolven", "lupine"]
},
balls: {
defaultNumber: 2,
raceTexture: ["furry"]
},
legs: {
defaultNumber: 2,
raceTexture: ["furry", "wolven", "wolfish", "lupine", "canid"]
},
tails: {
defaultNumber: 1,
raceTexture: ["fluffy", "long"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
MINOTAUR: {
name: "Minotaur",
namePlural: "Minotaurs",
description: "Bipedal, hooved bovines. Their torsos and arms are remarkably light on fur, but make up for it with their shaggy backs and legs.",
heads: {
defaultNumber: 1,
raceTexture: ["bovine", "bull shaped"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["determined"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["furry"],
},
teeths: {
defaultNumber: 1
},
hands: {
defaultNumber: 2,
raceTexture: ["human shaped"]
},
horns: {
defaultNumber: 2,
raceTexture: ["forward-facing"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["flat tipped"]
},
arms: {
defaultNumber: 2,
raceTexture: ["furry", "thick", "bovine"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["furry", "thick", "bovine"]
},
abdominals: {
defaultNumber: 8,
raceTexture: ["furry", "thick", "bovine"]
},
cocks: {
defaultNumber: 1,
raceTexture: ["flaring", "flat-tipped", "mottled"]
},
balls: {
defaultNumber: 2,
raceTexture: ["furry"]
},
legs: {
defaultNumber: 2,
raceTexture: ["hoofed"]
},
tails: {
defaultNumber: 1,
raceTexture: ["tuft-bearing"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
BEHEMOTH: {
name: "Behemoth",
namePlural: "Behemoths",
description: "beasts of ancient lore.",
heads: {
defaultNumber: 1,
raceTexture: ["maned", "fierce", "canine-like", "feral"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["predatory", "piercing"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["imposing", "fanged"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "padded"]
},
horns: {
defaultNumber: 2,
raceTexture: ["forward-facing"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["barbed"]
},
arms: {
defaultNumber: 2
},
pecs: {
defaultNumber: 2,
raceTexture: ["barrelled"]
},
abdominals: {
defaultNumber: 8
},
cocks: {
defaultNumber: 2,
raceTexture: ["barbed", "knotted"]
},
balls: {
defaultNumber: 4,
raceTexture: ["churning"]
},
legs: {
defaultNumber: 2,
raceTexture: ["digitigrade"]
},
tails: {
defaultNumber: 1,
raceTexture: ["webbing-tipped", "spined"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
HALFORC: {
name: "Half-Orc",
namePlural: "Half-Orcs",
description: "Tusked, muscular and generaly darker skinned.",
heads: {
defaultNumber: 1,
raceTexture: ["tusked", "fierce"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["determined", "imposing"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["tusked", "strong"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
},
tongues: {
defaultNumber: 1,
},
arms: {
defaultNumber: 2
},
pecs: {
defaultNumber: 2,
raceTexture: ["imposing"]
},
abdominals: {
defaultNumber: 6
},
cocks: {
defaultNumber: 1,
},
balls: {
defaultNumber: 2,
raceTexture: ["churning"]
},
legs: {
defaultNumber: 2,
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
DRAGONBORN: {
name: "Dragonborn",
namePlural: "Dragonborn",
description: "Descendants of ancient winged creatures that used to claim dominion over this land, something that is oft-repeated in this scaled biped's religion.",
heads: {
defaultNumber: 1,
raceTexture: ["draconic"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["draconic", "slitted"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["serpentine", "draconic"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "scaled"]
},
horns: {
defaultNumber: 4,
raceTexture: ["backward-bending"]
},
wings: {
defaultNumber: 2,
raceTexture: ["webbed"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["forked", "prehensile"]
},
arms: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
abdominals: {
defaultNumber: 8,
raceTexture: ["scaled"]
},
cocks: {
defaultNumber: 1,
raceTexture: ["tapered", "oily"]
},
balls: {
defaultNumber: 2,
raceTexture: ["scaly"]
},
legs: {
defaultNumber: 2
},
tails: {
defaultNumber: 1,
raceTexture: ["whip-like", "draconic", "serpentine"]
},
breasts: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
vaginas: {
defaultNumber: 1
}
},
INCUBUS: {
name: "Demon",
namePlural: "Demons",
heads: {
defaultNumber: 1,
raceTexture: ["demonic"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["demonic", "slitted"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["sharp", "demonic"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "scaled"]
},
horns: {
defaultNumber: 2,
raceTexture: ["straight"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["flexible", "forked"]
},
arms: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
abdominals: {
defaultNumber: 6,
raceTexture: ["scaled"]
},
cocks: {
defaultNumber: 1,
raceTexture: ["slick", "oily"]
},
balls: {
defaultNumber: 2,
raceTexture: ["churning"]
},
legs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
tails: {
defaultNumber: 1,
raceTexture: ["forked", "demonic"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
LORD_OF_LUST: {
name: "Lord of Lust",
namePlural: "Lords of Lust",
heads: {
defaultNumber: 1,
raceTexture: ["demonic"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["demonic", "slitted"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["sharp", "demonic", "devilish"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["razor sharp", "monstrous"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "scaled"]
},
horns: {
defaultNumber: 4,
raceTexture: ["straight", "demonic"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["flexible", "forked"]
},
arms: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
abdominals: {
defaultNumber: 6,
raceTexture: ["scaled"]
},
cocks: {
defaultNumber: 1,
raceTexture: ["slick", "oily"]
},
balls: {
defaultNumber: 2,
raceTexture: ["churning"]
},
legs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
tails: {
defaultNumber: 1,
raceTexture: ["forked", "demonic"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
NAGA: {
name: "Naga",
namePlural: "Naga",
heads: {
defaultNumber: 1,
raceTexture: ["serpentine"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["slitted"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["serpentine"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed", "scaled"]
},
tongues: {
defaultNumber: 1,
raceTexture: ["forked"]
},
arms: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
pecs: {
defaultNumber: 2,
raceTexture: ["scaled"]
},
abdominals: {
defaultNumber: 8,
raceTexture: ["scaled"]
},
cocks: {
defaultNumber: 2,
raceTexture: ["tapered", "oily"]
},
balls: {
defaultNumber: 4,
raceTexture: ["scaly"]
},
tails: {
defaultNumber: 1,
raceTexture: ["sprawling", "serpentine"]
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
SYMBIOTE: {
name: "Symbiote",
namePlural: "Symbiotes",
heads: {
defaultNumber: 1,
raceTexture: ["sinister"]
},
eyes: {
defaultNumber: 2,
raceTexture: ["glowing"]
},
jaws: {
defaultNumber: 1,
raceTexture: ["wide"]
},
teeths: {
defaultNumber: 1,
raceTexture: ["sharp"]
},
hands: {
defaultNumber: 2,
raceTexture: ["clawed"]
},
horns: {
defaultNumber: 0
},
wings: {
defaultNumber: 0
},
tongues: {
defaultNumber: 1,
raceTexture: ["prehensile", "slimy"]
},
arms: {
defaultNumber: 2
},
pecs: {
defaultNumber: 2
},
abdominals: {
defaultNumber: 8
},
cocks: {
defaultNumber: 1,
raceTexture: ["goo-dripping"]
},
balls: {
defaultNumber: 2
},
legs: {
defaultNumber: 2
},
tails: {
defaultNumber: 0
},
breasts: {
defaultNumber: 2
},
vaginas: {
defaultNumber: 1
}
},
get CUSTOM() {
return State.variables.CustomRace;
},
}>>
<<run setup.fillDestinationArray()>><<include FightMove_BasicAttack>>
<<include FightMove_Lunge>>
<<include FightMove_Infest>>
<<include FightMove_Inspect>>
<<include FightMove_Goo_Stun>>
<<include FightMove_Masturbate>>
<<include FightMove_IncubusStrike>>
<<include FightMove_IncubusCall>>
<<include FightMove_Hypnotize>>
<<include FightMove_Worship>>
<<include FightMove_DoNothing>>
<<include FightMove_Sigil_Vitality>>
<<include FightMove_Sigil_Pain>>
<<include FightMove_Sigil_Perception>>
<<include FightMove_Sigil_Growth>>
<<include FightMove_ChargedStrike>>
<<include FightMove_Stomp>>
<<include FightMove_WitheringVenom>>
<<include FightMove_Parry>>
<<include FightMove_DragonStrike>>
<<include FightMove_ParasiteLunge>>
<<include FightMove_SummonParasite>>
<<include FightMove_ConsumeLost>>
<<include FightMove_SeedOfRuin>>
<<include FightMove_SlimeLunge>>
<<include FightMove_Slash>>
<<include FightMove_Bash>>
<<include FightMove_Focus>>
<<include FightMove_CumDeluge>>
<<include FightMove_LustfulInstincts>>
<<include FightMove_CorruptedUrges>>
<<include FightMove_InfectiousLust>>
<<include FightMove_CorruptedRemedy>>
<<include FightMove_PridefulAscent>>
<<include FightMove_Sigil_Triad>>
<<include StoryInit_SpecialMoves>>
<<set setup.FightMoveIDs = [setup.FightMove_Basic_Attack.id,
setup.FightMove_Do_Nothing.id,
setup.FightMove_Submit_Completely.id,
setup.FightMove_Goo_Stun.id,
setup.FightMove_IncubusCall.id,
setup.FightMove_IncubusStrike.id,
setup.FightMove_Lunge.id,
setup.FightMove_Infest.id,
setup.FightMove_Inspect.id,
setup.FightMove_Masturbate.id,
setup.FightMove_Sigil_Vitality.id,
setup.FightMove_Sigil_Pain.id,
setup.FightMove_Sigil_Perception.id,
setup.FightMove_Sigil_Growth.id,
setup.FightMove_ChargedStrike.id,
setup.FightMove_Stomp.id,
setup.FightMove_Hypnotize.id,
setup.FightMove_Worship.id,
setup.FightMove_WitheringVenom.id,
setup.FightMove_Parry.id,
setup.FightMove_DragonStrike.id,
setup.FightMove_ParasiteLunge.id,
setup.FightMove_SummonParasite.id,
setup.FightMove_ConsumeLost.id,
setup.FightMove_SeedOfRuin.id,
setup.FightMove_SlimeLunge.id,
setup.FightMove_Slash.id,
setup.FightMove_Bash.id,
setup.FightMove_Focus.id,
setup.FightMove_CumDeluge.id,
setup.FightMove_LustfulInstincts.id,
setup.FightMove_CorruptedUrges.id,
setup.FightMove_InfectiousLust.id,
setup.FightMove_CorruptedRemedy.id,
setup.FightMove_PridefulAscent.id,
setup.FightMove_Sigil_Triad.id,
]>><<set $FightVariables =
{
currentHP: undefined,
currentStamina: undefined,
currentArousal: undefined,
currentFightMove: undefined,
stunnedDuration: undefined,
hypnotizedMoveIDsList: [],
cooldowns: [],
surrender: false,
fightModifiers: [],
currentFightMoveOutcome: undefined,
currentTurnAbilityText: undefined,
persistentEffects: []
}>><<cacheaudio "village" "https://sombreve.github.io/Dawn-of-Corruption-Site/Music/village_theme.mp3">>
<<cacheaudio "manor" "https://sombreve.github.io/Dawn-of-Corruption-Site/Music/manor_theme.mp3">>
<<cacheaudio "SFX_heartbeat" "https://sombreve.github.io/Dawn-of-Corruption-Site/Sounds/heartbeat.mp3">>
<<createaudiogroup ":ui">>
<<track "village">>
<<track "manor">>
<<track "SFX_heartbeat">>
<</createaudiogroup>>/*debug*/
/*<<set $Quest_CanExplore = true>>*/
<<set $Quest_CanExplore = true>>
/*debug*/
/*<<set $Quest_InProgress = [$Quest_MQ002]>>*/
<<set $Quest_InProgress = []>><<set $EasyRandomEncounters = ["CharacterSheet_Imp", "CharacterSheet_Slime", "CharacterSheet_Torgar"]>>
<<set $MediumRandomEncounters = ["CharacterSheet_Lakkos", "CharacterSheet_Lost_Entity", "CharacterSheet_Lost_Naga"]>><<set setup.FightMove_Stunned =
{
id: "FightMove_Stunned",
name: "Stunned",
preparation: function(character, target)
{
return character.info.name + " is stunned and cannot move!"
},
attackAttemptDesc: function(character, target)
{
if(character.fight.variables.stunnedDuration > 0)
{
return character.info.name + " tries to snap out of it."
}
else
{
return character.info.name + " came back to their senses and is readying their next attack!"
}
},
activationCondition: function(character, target)
{
return true;
},
dmg: 0,
staminaCost: 0,
critMod: 100,
skillStatsToDescriptionSpacing: 1,
skillDescription: "Try to regain your senses.",
skillType: "special",
skillTheme: "special",
additionalEffects: []
}>><<set $FightStateDrivenModifiers = [$Bigger_Than_Target_1, $Bigger_Than_Target_2, $Bigger_Than_Target_3]>><<run setup.updateStaticCorruptionUI(State.variables.CharacterSheet_Player)>>The enemy rushes in and attacks.The enemy barrels forward toward you, throwing his weight behind his attack.The enemy stomps forward and swings a massive fist.The enemy's @[all|huge|arms|noverb] hurtle down toward you.A trail of purple energy flows from his knuckles.Each vein in his hand and arm burns with a tainted purple hue, energy rolls off of his skin as tendrils of dark power.hops between each foot, ready to feint and strike at any moment.braces himself for the battle.rolls his boulder like shoulders, ready to strike.is stretching his limbs, ready to wrestle.rakes his large feet across the ground, ready to charge.tenses his muscles. His bulky form creaks with strength, with the anticipation of battle.flexes gargantuan muscles, ready to put each rolling mountain to use.stomps his massive feet as he readies himself for combat. The earth quivers.cracks his massive knuckles, they sound like thunder across the battlefield.The air feels wrong around this creature.A terrible darkness spreads across the ground from this creature's feet.Purple and black tendrils of energy are breaking out from the ground around this creature's feet.tinysmallminutelittlelargesizeableheftyburlyhugemassivetoweringhumongousimmensetitaniccolossalgiganticmuscles harden and pulse with increasing strength. His biceps form fair peaks above well defined forearms. Veins begin peeking through his skin \
as they spread across his growing shoulders and neck. His pecs push outwards, his nipples harden and a moan escapes his mouth as the growth tumbles downward \
like a fresh breath of air through his six pack abs, thighs and calves.athletic form hardens as each muscle contracts into picturesque beauty. Every line and crease deepens as the power flowing through him forces his body to \
adapt. His laterals spread wider, his abdominal wall pushes outward and his upper body swells with growing, physical pride.body convulses as a tingling feeling spreads outwards from his core and to each limb. His body freezes momentarily before a wellspring of growth overtakes him. \
Calves bulge, quads expand and the upper body surges with strength to keep up.expression shifts into a pleasurable smile. Looking down at his hands, he watches a bubble of growth move from his fingertips \
across his bulging arms and into his pecs. Momentarily, it stops. A worried look overtakes his otherwise calm expression. \
Suddenly, his cock fires an unattural amount of cum. Every pulse of white, every convulsion of his body propels his body upwards and outwards.body shudders and he doubles over. His knees hit the ground as he is assaulted by a wave of intense pleasure \
Every burgeoning muscle flexes, each crest and trough grows into mounds that could only be crafted with years of dedication. \
His arms become pillars of strength, his back becomes an atlas of muscles - his pecs begin pushing his growing nipples earthbound and his \
abdominal wall starts shifting from six to eight bricks of power.mouth spreads into a wide grin as a surreal purple glow spins across the edges of his irises as his veins swell over his body. Not moments later, his cock rises as his limbs pack on \
weight and size. What was once ample, is now in excess. What was once well chiselled is now barelling. He flexes his bicep, watching it rise higher and higher. \
A sinister smile spreads wide across his face - this was only the beginning.cock jumps to full mast as a sudden growth spurt overtakes his body. He quickly wraps his arms around his chest to feel his pecs compete with his biceps. \
Wave after wave, his arms pushes away from his chest from the sheer size being compressed into them. His legs adopt a wider stance as the war continues below \
with his quads, expanding glutes and growing calves.body spasms as his powerful muscles all flex at once. His bull like neck pulses larger and begins to threaten the sides of his head. His pecs swell outwards in \
leaps and bounds over a growing and impressive set of eight abs. His hands rove across each expanding inch of flesh, feeling the skin stretch tighter against \
chords of steel that thicken with each passing second.body shudders. Every boulder contained within him rumbles with an ominous wave of incoming growth. It didn't matter who or what was watching \
the world stood in stunned silence as his biceps exploded from raw, uncontained power. They barreled outwards until their pulsing peaks began to reach sizes that \
were clearly unnatural. Each pectoral was large enough to be a shelf, and they bounced eagerly as they consumed more and more space in front of him. Large nipples were forced \
further sideways and downwards as more and more space was claimed by their hosts. Thick thighs and glutes became even thicker, pillars that would easily host houses were \
increasing in size before his very eyes.bones cracked audibly. Growth was upon him yet again, and this wave was even stronger than the last. With a booming thud, his muscles exploded with new size \
- too much and too fast for his body to contend with. The growth began running rampant; each second packed on more and more until limbs began to lock \
and grind against each other from the lack of any space at all. With a primal roar, he flexes - a beastly mountain of mass - and wills it all to compact inwards. \
control was regained but his body had far from relented his new incredible atlassian size.mouth opens wide as a primordial roar bellows from his growing form. Bending down, he slams his fist into the ground and a wave of size propells itself \
upwards from the cracked earth; up his forearm, bicep and into his bullish neck. His pectorals push further outwards, forcing his center of gravity forward before \
his waist expands into a pillar of pure power to support his new torso. Sliding outwards from the ground behind him; his legs push each other apart, massaging and \
grinding against his immense cock. The pleasure is too much. With another ear-splitting roar, he arches his back and unleashes a torrential geyser of white.jaw lowers into abrupt maniacal laughter as he feels the power within him erupt. Like waves from the surface of disturbed water, his entire body groans, creaks and shifts \
as mucles begin to pack onto muscles - chords thicken and roadworks of veins the size of heavy duty pipes spiral across his expanding form. With a mighty stomp \
his growing foot hits the ground, forcing a monstrous wave of size upwards through his calves, into his thighs and finally into his bulging muscular rear. Finally, bringing \
both of his hands together in a mighty clap, his upper body doubles in strength and pure muscle mass.movements halt. A deadly silence overtakes the land that he towers over. A rumbling. The sound of war drums, the sound of the Earth roaring its protest against the \
impending change. Then it happened. Mountains that were biceps doubled in size. Pectorals that quake with every minor shift billow outwards. Nipples - hard, large and sensitive \
are exiled into the deepening valley between them and an entire canyon of ten inumanely thick abdominal muscles. Laterals that were wings, were forced wider. Back muscles that \
rippled with pure power expanded and arms that could crush villages grew into monstrosities that the world could never contend with. His cock, large and heavy with muscle \
slowly swings into the air, its growing mass keeping each move sensual to all who would watch. Another rumble. Another catastrophe. Rivers of white explode from its tip into a deluge \
that coats you, the ground and every object close enough to suffer the titanic load unleashed from his apocalyptic sized balls.gigantic arms fall limp at his side. A loud rumbling, akin to the mighty growl of a beast in heat begins to echo across the land. A dark shadow - the silhouette of \
this monstrous behemoth begins to shudder. The Golden Bastion. Those around it will all bear witness as the colossal titan suddenly shivers. A crack, as loud as thunder \
rockets through the air as the giant grows. Thunderous booms echo around the land; every one heralding the titan's bones shifting to create more space. The ground shudders as the shadow in the \
distance grows larger. Higher. Wider. There are no human words to describe the sheer size being displayed to the world, no words that exist to describe the mass being \
compacted into that singular point.cock suddenly stiffens. An unfathomably large spurt of pre jettisons from his cock slit and pools in the lands far below him. The air suddenly becomes hot as a thick \
umistakeable aura of power coats the very fabric of reality. Reality's will could never stand a chance. To the world's surprise, the giant shudders and balloons outwards \
in every direction. His forearms are perfect spheres of unadulterad power, pushing against growing biceps and triceps that have long since dwarfed their owner's head. Their \
towering masses flex upwards and expand outwards, packing on new muscle groups that are not known to mankind. His neck surges outward, practically ungulfing what driving force \
exists behind such a titanic body. His laterals surge outwards, forming an incredibly powerful yet impossible Y-shape. Legs, as built as the foundations of the world, quickly \
explode into sizes which put those natural foundations to shame.His @[all|cocks|one=throbs~more=throb], harder than it ever has. He looks down, feeling each vein engorge with unnatural thickness. \
Then it hits him, a wave of pleasure grows from the base of his loin. His shaft pulsates wildly as it expands thicker and longer. \
His eyes widen as the growth progresses further up his @[all|cocks|noverb]. \
It's so long, so thick. And it keeps growing, pushing his fingers wider apart.A familiar feeling rushes over him. He grins, looking down at his @[all|cocks|noverb], welcoming a wave of incoming growth. \
It suddenly hits him, like a rush of adrenaline. His @[all|cocks|one=jolts~more=jolt] forward, hard enough to make him lose his balance. \
Suddenly, it comes. He screams in pleasure as his loin grows thicker and longer. Every beat of his heart, \
every flex of his muscles and every breath feed it with more heavy, throbbing flesh. He tries to grasp at his @[all|cocks|noverb] with both hands, \
failing to fully handle his monster as it grows uncontrollably. He throws his head back, moaning deeply enough to cut his breath short.Suddenly, his @[all|cocks|one=throbs~more=throb]. The sheer need for attention of his monster overwhelms him.
He tries to grasp the base; he can only tremble in anticipation.
His @[all|cocks|one=is~more=are] so hot, so full and thick. He shivers at the thought of growing even bigger.
Jolts of pleasure pulsates from his @[all|cocks|noverb] as it starts growing. He desperately tries to grasp and pleasure the throbbing flesh, but it is too massive for his hands to contain.
He pushes down and thrust his hips along the ground. The sheer mass of his @[all|cocks|noverb] is still incredibly sensitive; he moans in pleasure as it pushes outward, bigger and bigger.
He slides his fingers along his slit and moans passionately. Bolts of pleasure pierce him with every contact, \
precum leaks out of his monstrous cock like a damaged dam. His @[all|cocks|one=grows~more=grow] bigger than he thought possible.
His loin is gigantic, monstrous even; finding anything that can handle him will be a challenge.He feels something coming, something tremendous... A familiar warmth rushes over him; his loin burns with anticipation. \
It keeps building, tingles of pleasure spread from his @[all|cocks|noverb]. This wave of incoming growth is greater than a roaring sea, \
and it keeps building, threatening to swallow him in its eternal pleasure. \
But he welcomes it... He grins madly at his monstrous @[all|cocks|noverb] with an unatural eagerness. And then it happens. \
His @[all|cocks|one=explodes~more=explode] in size, mountains of sensitive flesh burst upwards along his pecs. He rubs it passionately, each touch bringing him close to the edge. \
His veins grow massive, feeding his @[all|cocks|noverb] with untold power. A roar of triumph bursts out of his as his @[all|cocks|noverb] takes over the scenery. \
Everything and everyone gets exposed to the glorious beast he's packing. They can only stare in awe as the ground rumbles; \
his @[all|cocks|one=strains~more=strain], the land braces. His roars resound throughout the land as an ocean of potent cum rains down on this world once again.<<set setup.UniversalFlavour =
{
basicAttackAttemptFlavour: {
heightFlavour: {
small:[
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_heightFlavour_small"
],
medium:[
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_heightFlavour_medium"
],
large:[
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_heightFlavour_large"
],
huge:[
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_heightFlavour_huge"
],
},
corruptionFlavour: {
corrupt75: [
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_corruptionFlavour_corrupt75"
],
corrupt100: [
"StoryInit_UniversalFlavour_basicAttackAttemptFlavour_corruptionFlavour_corrupt100"
],
},
},
basicAttackPrepFlavour :{
heightFlavour:
{
small: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_small_1",
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_small_2",
],
medium: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_medium_1",
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_medium_2",
],
large: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_large_1",
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_large_2",
],
huge: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_huge_1",
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_huge_2",
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_heightFlavour_huge_3",
],
},
corruptionFlavour: {
corrupt50: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_corruptionFlavour_corrupt50"
],
corrupt75: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_corruptionFlavour_corrupt75"
],
corrupt100: [
"StoryInit_UniversalFlavour_basicAttackPrepFlavour_corruptionFlavour_corrupt100"
],
},
},
sizeDescriptionFlavour :{
heightFlavour: {
small: [
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_small_1",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_small_2",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_small_3",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_small_4"
],
medium: [
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_medium_1",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_medium_2",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_medium_3",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_medium_4"
],
large: [
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_large_1",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_large_2",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_large_3",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_large_4"
],
huge: [
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_huge_1",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_huge_2",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_huge_3",
"StoryInit_UniversalFlavour_sizeDescriptionFlavour_heightFlavour_huge_4"
],
},
},
MuscleGrowthFlavourText :{
musclesFlavour: {
small: [
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_small_1",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_small_2",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_small_3",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_small_4",
],
medium: [
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_medium_1",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_medium_2",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_medium_3",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_medium_4",
],
large: [
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_large_1",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_large_2",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_large_3",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_large_4",
],
huge: [
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_huge_1",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_huge_2",
"StoryInit_UniversalFlavour_MuscleGrowthFlavourText_musclesFlavour_huge_3",
],
},
},
CockGrowthFlavourText :{
cockSizeFlavour:
{
small: [
"StoryInit_UniversalFlavour_CockGrowthFlavourText_cockSizeFlavour_small",
],
medium: [
"StoryInit_UniversalFlavour_CockGrowthFlavourText_cockSizeFlavour_medium",
],
large: [
"StoryInit_UniversalFlavour_CockGrowthFlavourText_cockSizeFlavour_large",
],
huge: [
"StoryInit_UniversalFlavour_CockGrowthFlavourText_cockSizeFlavour_huge",
]
},
}
}>><<widget "PlayerHeight">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "height"))>><</widget>>
<<widget "PlayerCock">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "cock"))>><</widget>>
<<widget "PlayerBalls">><<print setup.getLength(setup.getStatValue($CharacterSheet_Player, "balls"))>><</widget>>
<<widget "PlayerRace">><<print setup.getRace(State.variables.CharacterSheet_Player.info.anatomy)>><</widget>>
<<widget "PlayerArmsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|arms|noverb]")>> \<</widget>>
<<widget "PlayerHandsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|hands|noverb]")>> \<</widget>>
<<widget "PlayerBallsNoVerb">><<print setup.processFlavours($CharacterSheet_Player, "@[all|balls|noverb]")>> \<</widget>>
<<widget "SymbioteRace">><<print setup.getRace(State.variables.CharacterSheet_Player.symbiote.anatomy)>><</widget>>
<<widget "SymbioteColor">><<print State.variables.CharacterSheet_Player.symbiote.color>><</widget>>
<<widget "SymbioteName">><<print State.variables.CharacterSheet_Player.symbiote.name>><</widget>>
<<widget "ImpHeight">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "height"))>><</widget>>
<<widget "ImpCockLength">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "cock"))>><</widget>>
<<widget "ImpBallsSize">><<print setup.getLength(setup.getStatValue($CharacterSheet_Imp, "balls"))>><</widget>><<set $WorldState =
{
cultManor:
{
mainHall:
{
isBroken: false,
},
eastWing:
{
isBroken: false,
},
westWingHallway:
{
isBroken: false,
},
dragonRoom:
{
isBroken: false,
},
monolithBroken: false,
},
apothusChosen:
{
essenceLevel: 0,
},
apothusTransformed: false,
}>><<set setup.FighterSheet_Abel =
{
hp: 60,
stamina: 15,
strength: 10,
critChance: 70,
critDamage: 2.50,
arousalGain: 0,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 12,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id],
fightReward: setup.RewardTier.VERY_HIGH,
encounterIntroText: "",
encounterStartText: "",
outcomePlayerWins: "",
outcomePlayerLoses: ""
}>><<set setup.InfoSheet_Abel =
{
name: "Abel",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald_apprentice.png",
pictureCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald_apprentice_corrupted.png",
currentEmote: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_normal.png",
emoteList:
{
normal: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_normal.png",
angry: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_angry.png",
blushing: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_embarrassed.png",
corrupted: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_corrupted.png",
worried: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_head_sad.png",
},
bodyList:
{
apprentice: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald_apprentice.png",
apprenticeCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald_apprentice_corrupted.png",
herald: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald.png",
heraldCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_herald_corrupted.png",
naked: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_naked.png",
nakedCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_naked_corrupted.png",
villager: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_villager.png",
villagerCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Abel/portrait_abel_body_villager_corrupted.png",
},
corruption: 0,
muscles: 20,
height: 74,
cock: 6,
balls: 2,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.PURPLE
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.RED
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_abel_text_sheet">>
<<include "_abel_fight_sheet">>
<<include "_abel_info_sheet">>
<<include "_abel_quest_sheet">>
<<set $CharacterSheet_Abel = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Abel",
info: setup.InfoSheet_Abel,
fight: setup.FighterSheet_Abel,
quest: setup.QuestSheet_Abel,
text: "TextSheet_Abel"})>><<set setup.QuestSheet_Abel =
{
playedHouseIntro: false,
houseIntro:
{
attackGuard:
{
available: true,
condition: function()
{
return $CharacterSheet_town_guard.quest.beatenOnce && !$CharacterSheet_Abel.quest.playedHouseIntro;
},
passage: "abelHouseIntro_firstDialogueAttackedGuard_link",
},
baseFirstDialogue:
{
available: true,
condition: function()
{
return !$CharacterSheet_Abel.quest.playedHouseIntro;
},
passage: "abelHouseIntro_firstDialogue_link",
},
},
flavourDialogue:
{
introTellAll:
{
available: true,
condition: function()
{
return $CharacterSheet_Abel.quest.playedHouseIntro;
},
passage: "abelHouseIntro_tellAll_link",
},
talkAboutCray:
{
available: true,
condition: function()
{
return setup.hasAvailableNarativeEvent($CharacterSheet_Abel.quest.crayDialogue);
},
passage: "abelHouseDialogue_aboutCray_link",
},
talkAboutEldest:
{
available: true,
condition: function()
{
return setup.hasAvailableNarativeEvent($CharacterSheet_Abel.quest.heraldDialogue);
},
passage: "abelHouseDialogue_Herald_link",
},
},
crayDialogue:
{
whereabouts:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_whereabouts_link",
},
dayLeft:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_dayLeft_link",
},
motives:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_motives_link",
},
villageLife:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_villageLife_link",
},
achievements:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_achievements_link",
},
scavengerLife:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_aboutCray_scavengerLife_link",
},
},
heraldDialogue:
{
duty:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_Herald_duty_link",
},
eldest:
{
available: true,
condition: function()
{
return true;
},
passage: "abelHouseDialogue_Herald_eldest_link",
},
},
}>><<set setup.TextSheet_Abel =
{
}>><<set setup.FighterSheet_Apothus =
{
hp: 320,
stamina: 15,
strength: 100,
critChance: 40,
critDamage: 1.50,
arousalGain: 60,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 12,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_SummonParasite.id],
fightReward: setup.RewardTier.VERY_HIGH,
encounterIntroText: "<<include Quest_MQ002_ApothusEncounter_FightIntro>>",
encounterStartText: "<<include Quest_MQ002_ApothusEncounter_FightStart>>",
outcomePlayerWins: "<<include Quest_MQ002_ApothusEncounter_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_ApothusEncounter_PlayerLoses>>"
}>><<set setup.InfoSheet_Apothus =
{
name: "Apothus",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/aphotus_1st_form.png",
corruption: 70,
muscles: 80,
height: 156,
cock: 19,
balls: 7,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.PURPLE
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.RED
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_apothus_text_sheet">>
<<include "_apothus_fight_sheet">>
<<include "_apothus_info_sheet">>
<<include "_apothus_quest_sheet">>
<<set $CharacterSheet_Apothus = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Apothus",
info: setup.InfoSheet_Apothus,
fight: setup.FighterSheet_Apothus,
quest: setup.QuestSheet_Apothus,
text: "TextSheet_Apothus"})>>
<<run $CharacterSheet_Apothus.applyAbilityRuntimeData(setup.Ability_Masochism)>>
<<run $CharacterSheet_Apothus.applyAbilityRuntimeData(setup.Ability_AppetiteForGrowth_2)>>
<<run $CharacterSheet_Apothus.applyAbilityRuntimeData(setup.Ability_BrinkOfMadness)>><<set setup.QuestSheet_Apothus =
{
met: false,
askedAboutHim: false,
}>><<set setup.TextSheet_Apothus =
{
}>><<set setup.FighterSheet_Apothus_2nd_Form =
{
hp: 400,
stamina: 30,
strength: 90,
critChance: 40,
critDamage: 1.50,
arousalGain: 60,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 30,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Infest.id, setup.FightMove_ConsumeLost.id, setup.FightMove_SeedOfRuin.id],
fightReward: setup.RewardTier.VERY_HIGH,
encounterIntroText: "<<include Quest_MQ002_Apothus_2nd_Form_Encounter_FightIntro>>",
encounterStartText: "<<include Quest_MQ002_Apothus_2nd_Form_Encounter_FightStart>>",
outcomePlayerWins: "<<include Quest_MQ002_Apothus_2nd_Form_Encounter_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_Apothus_2nd_Form_Encounter_PlayerLoses>>"
}>><<set setup.InfoSheet_Apothus_2nd_Form =
{
name: "Apothus",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/apothus_2nd_form.png",
corruption: 120,
muscles: 80,
height: 156,
cock: 19,
balls: 7,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.PURPLE
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.RED
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_apothus_2nd_form_text_sheet">>
<<include "_apothus_2nd_form_fight_sheet">>
<<include "_apothus_2nd_form_info_sheet">>
<<include "_apothus_2nd_form_quest_sheet">>
<<set $CharacterSheet_Apothus_2nd_Form = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Apothus_2nd_Form",
info: setup.InfoSheet_Apothus_2nd_Form,
fight: setup.FighterSheet_Apothus_2nd_Form,
quest: setup.QuestSheet_Apothus_2nd_Form,
text: "TextSheet_Apothus_2nd_Form"})>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_AppetiteForGrowth_2)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_HerculeanBuild)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_NeverendingGrowth)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_VigorOfTheEndowed_2)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_KalethsFervour)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_LastStand)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_SombrevesWhisper)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_Masochism)>>
<<run $CharacterSheet_Apothus_2nd_Form.applyAbilityRuntimeData(setup.Ability_UnstoppableExpansion)>><<set setup.QuestSheet_Apothus_2nd_Form =
{
met: false,
askedAboutHim: false,
}>><<set setup.TextSheet_Apothus_2nd_Form =
{
}>><<set setup.FighterSheet_MQ002_DragonMonk =
{
hp: 280,
stamina: 17,
strength: 70,
critChance: 10,
critDamage: 1.50,
arousalGain: 60,
minArousal: 20,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 12,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Parry.id, setup.FightMove_DragonStrike.id],
fightReward: setup.RewardTier.VERY_HIGH,
encounterIntroText: "<<include Quest_MQ002_DragonMonkEncounter_FightIntro>>",
encounterStartText: "<<include Quest_MQ002_DragonMonkEncounter_FightStart>>",
outcomePlayerWins: "<<include Quest_MQ002_DragonMonkEncounter_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_DragonMonkEncounter_PlayerLoses>>"
}>><<set setup.InfoSheet_MQ002_DragonMonk =
{
name: "Drenth",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/drenth.png",
pictureCorrupt: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/drenth_corrupt.png",
pictureFriend: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/drenth_friend.png",
corruption: 30,
muscles: 60,
height: 96,
cock: 13,
balls: 5,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
eyes: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.GREEN
},
jaws: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
horns: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
tongues:{
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.RED
},
arms: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
pecs: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
abdominals: {
number: 6,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
cocks: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
legs: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
tails: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.BLUE
},
breasts: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_dragon_monk_text_sheet">>
<<include "_dragon_monk_fight_sheet">>
<<include "_dragon_monk_info_sheet">>
<<include "_dragon_monk_quest_sheet">>
<<set $CharacterSheet_MQ002_DragonMonk = setup.CharacterFactory.createCharacter({id: "CharacterSheet_MQ002_DragonMonk",
info: setup.InfoSheet_MQ002_DragonMonk,
fight: setup.FighterSheet_MQ002_DragonMonk,
quest: setup.QuestSheet_MQ002_DragonMonk,
text: "TextSheet_MQ002_DragonMonk"})>><<set setup.QuestSheet_MQ002_DragonMonk =
{
met: false,
threatened: false,
askedWhoAreYou: false,
askedWhyAreYouHere: false,
askedLookingForSomeone: false,
infected: false,
beaten: false,
beatenCycle: 0,
}>><<set setup.TextSheet_MQ002_DragonMonk =
{
}>><<set setup.FightMove_Elder_Attack =
{
name: "Attack",
preparation: function(character, target)
{
return character.info.name + " is crouching with his weapon held firmly."
},
attackAttemptDesc: function(character, target)
{
return character.info.name + " rushes in and attacks."
},
activationCondition: function(character, target)
{
return true;
},
dmg: 3,
staminaCost: 0,
critMod: 0,
skillDescription: "A basic attack.",
additionalEffects: []
}>>
<<set setup.FightMove_Elder_Do_Nothing =
{
name: "Do Nothing",
preparation: function(character, target)
{
var he = setup.getPronoun(character,"pronoun");
return character.info.name + " gazes at your monstrous form...";
},
attackAttemptDesc: function(character, target)
{
return character.info.name +" strikes your massive form, it does nothing.";
},
activationCondition: function(character, target)
{
return true;
},
doesNothing: true,
dmg: 0,
staminaCost: 0,
critMod: 100,
skillDescription: "Lets your opponent attack freely.",
additionalEffects: []
}>>
<<set setup.FighterSheet_Elder =
{
hp: 58,
stamina: 25,
strength: 0,
critChance: 0,
critDamage: 1.50,
arousalGain: 0,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 4,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Elder_Attack.id, setup.FightMove_Elder_Do_Nothing.id],
aiFightStart: function()
{
State.variables.CharacterSheet_Player.fight.variables.currentArousal = 70;
State.variables.CharacterSheet_Player.fight.variables.cantSubmit = true;
},
postAttacksAIUpdate: function()
{
if(State.variables.HasSymbiote)
{
this.variables.sawTransformation = true;
}
},
getNextFightMoveID: function()
{
if(this.variables.sawTransformation)
{
return this.fightMoveIDs[1];
}
else
{
return this.fightMoveIDs[0];
}
},
fightReward: setup.RewardTier.VERY_LOW,
encounterIntroText: "intro",
encounterStartText: "<<include Quest_MQ001_VisitElder_FightStart>>",
outcomePlayerWins: "<<include Quest_MQ001_VisitElder_FightEnd>>",
outcomePlayerLoses: "<<include Quest_MQ001_VisitElder_FightEnd>>"
}>><<set setup.InfoSheet_Elder =
{
name: "The Eldest",
gender: "male",
corruption: 0,
muscles: 0,
height: 73,
cock: 7,
balls: 2,
alive: true
}>><<include "_elder_fight_sheet">>
<<include "_elder_info_sheet">>
<<include "_elder_quest_sheet">>
<<set $CharacterSheet_Elder = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Elder",
info: setup.InfoSheet_Elder,
fight: setup.FighterSheet_Elder,
quest: setup.QuestSheet_Elder,
text: undefined})>><<set setup.QuestSheet_Elder =
{
met: true
}>><<set setup.FighterSheet_God_Beast =
{
hp: 50000,
stamina: 420,
strength: 34000,
critChance: 69,
critDamage: 3,
arousalGain: 40,
minArousal: 50,
growthMultiplier: 99,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 80,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_DragonStrike.id],
fightReward: setup.RewardTier.VERY_HIGH,
encounterIntroText: "<<include Encounter_Intro_God_Beast>>",
encounterStartText: "<<include Encounter_Start_God_Beast>>",
outcomePlayerWins: "<<include Encounter_Win_God_Beast>>",
outcomePlayerLoses: "<<include Encounter_Loss_God_Beast>>"
}>><<set setup.InfoSheet_God_Beast =
{
name: "God-Beast",
gender: "male",
corruption: 0,
muscles: 35000,
height: 680000000,
cock: 90000000,
balls: 40000000,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 4,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 4,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 4,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 4,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 3,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.BEHEMOTH,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_god_beast_fight_sheet">>
<<include "_god_beast_info_sheet">>
<<include "_god_beast_quest_sheet">>
<<set $CharacterSheet_God_Beast = setup.CharacterFactory.createCharacter({id: "CharacterSheet_God_Beast",
info: setup.InfoSheet_God_Beast,
fight: setup.FighterSheet_God_Beast,
quest: setup.QuestSheet_God_Beast,
text: undefined})>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_VigorOfTheEndowed_2)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_AppetiteForGrowth_2)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_CodexPassion)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_UnstoppableExpansion)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_FaithsReward)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_OrgasmicGrowth)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_Oath_Containment)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_NeverendingGrowth)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_LastStand)>>
<<run $CharacterSheet_God_Beast.applyAbilityRuntimeData(setup.Ability_HerculeanBuild)>><<set setup.QuestSheet_God_Beast =
{
beatenOnce: false,
}>><<set setup.BodyVisualSheet_Imp =
{
emoteList:
{
normal:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_cocky.png",
corruptedVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_cocky_corrupted.png",
},
blushing:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_blushing.png",
corruptedVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_blushing_corrupted.png",
},
cumming:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_cumming.png",
corruptedVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_cumming_corrupted.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_head_cumming_cum.png",
},
},
cockList :
{
smallest:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_1.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_1_cum.png",
},
small:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_2.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_2_cum.png",
},
medium:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_3.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_3_cum.png",
},
big:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_4.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_4_cum.png",
},
biggest:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_5.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_5_cum.png",
},
biggestHyperBalls:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_6.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_dick_6_cum.png",
},
},
bodyList :
{
small:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_1.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_1_cum.png",
condition: function(character)
{
console.log("small body")
var size = setup.getStatValue(character, "height");
console.log(size)
return size < 12 * 7;
},
headClass: "ImpSmallBodyHead",
permittedCocks: [
{
cock: "smallest",
cockClass: "ImpSmallBody1Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio < 0.55;
},
},
{
cock: "small",
cockClass: "ImpSmallBody2Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.55;
},
},
],
},
medium:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_2.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_2_cum.png",
condition: function(character)
{
var size = setup.getStatValue(character, "height");
return size >= 12 * 7 && size < 12 * 11;
},
headClass: "ImpMediumBodyHead",
permittedCocks: [
{
cock: "small",
cockClass: "ImpMediumBody2Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio < 0.6;
},
},
{
cock: "medium",
cockClass: "ImpMediumBody3Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.6 && ratio < 0.9;
},
},
{
cock: "big",
cockClass: "ImpMediumBody4Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.9;
},
},
],
},
large:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_3.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Imp/portrait_imp_body_3_cum.png",
condition: function(character)
{
var size = setup.getStatValue(character, "height");
return size >= 12 * 11;
},
headClass: "ImpBigBodyHead",
permittedCocks: [
{
cock: "big",
cockClass: "ImpBigBody4Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio <= 0.6;
},
},
{
cock: "biggest",
cockClass: "ImpBigBody5Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.6 && ratio < 0.9;
},
},
{
cock: "biggestHyperBalls",
cockClass: "ImpBigBody6Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.9;
},
},
],
},
},
}>><<set setup.FighterSheet_Imp =
{
hp: 64,
stamina: 8,
strength: 10,
critChance: 0,
critDamage: 1.50,
arousalGain: 20,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
minArousal: 0,
staminaRecovery: 4,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_PridefulAscent.id],
fightReward: setup.RewardTier.VERY_LOW,
encounterIntroText: "<<include Encounter_Intro_Imp>>",
encounterStartText: "<<include Encounter_Start_Imp>>",
outcomePlayerWins: "<<include Encounter_Win_Imp>>",
outcomePlayerLoses: "<<include Encounter_Loss_Imp>>",
teammateSettings:
{
attackTiming: setup.AttackTiming.BEFORE_PLAYER,
},
}>><<set setup.InfoSheet_Imp =
{
name: "Imp",
gender: "male",
bodyVisual: "BodyVisualSheet_Imp",
corruption: 50,
muscles: 0,
height: 48,
cock: 10,
balls: 3,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_imp_body_visual">>
<<include "_imp_text_sheet">>
<<include "_imp_fight_sheet">>
<<include "_imp_info_sheet">>
<<include "_imp_quest_sheet">>
<<set $CharacterSheet_Imp = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Imp",
info: setup.InfoSheet_Imp,
fight: setup.FighterSheet_Imp,
quest: setup.QuestSheet_Imp,
text: "TextSheet_Imp"})>><<set setup.StorylineProgress_Imp =
{
FIRST_MEETING: 0,
LOW_RELATIONSHIP: 1000,
MID_RELATIONSHIP: 2000,
SERVANT: 3000,
MASTER: 4000,
}>>
<<set setup.QuestSheet_Imp =
{
met: false,
storylineProgress: setup.StorylineProgress_Imp.FIRST_MEETING,
relationshipScoring: 0,
servantScoring: 0,
servantWins: 3,
servantLosses: 3,
masterScoring: 0,
lostScoring: 0,
growthMultiplier: 1,
encounterPassages:
{
servant:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Servant_EncounterStart",
},
growthBodyMediumToLarge:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big"
},
passage: "Imp_EncounterStart_Growth_Body_MediumToLarge",
},
growthCock1to2:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "small" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "small";
},
passage: "Imp_EncounterStart_Growth_Cock_1To2",
},
growthCock2to3:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "medium" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "medium";
},
passage: "Imp_EncounterStart_Growth_Cock_2To3",
},
growthCock3to4:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "medium" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "big";
},
passage: "Imp_EncounterStart_Growth_Cock_3To4",
},
growthCock4to5:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "biggest";
},
passage: "Imp_EncounterStart_Growth_Cock_4To5",
},
growthCock5to6:
{
available: true,
condition: function()
{
return setup.getCurrentBodyVisual(State.variables.CharacterSheet_Imp) == "big" && setup.getCurrentCockVisual(State.variables.CharacterSheet_Imp) == "biggestHyperBalls";
},
passage: "Imp_EncounterStart_Growth_Cock_5To6",
},
midRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_EncounterStart",
},
lowRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 1;
},
passage: "Imp_Low_Rela_EncounterStart",
},
firstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_FirstMeeting_Intro",
},
},
postFightPassagesWin:
{
servantPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Win_ServantPath",
},
masterPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.MASTER;
},
passage: "Imp_Win_MasterPath",
},
masterChoice:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 8 && State.variables.CharacterSheet_Imp.quest.masterScoring >= 3;
},
passage: "Imp_MasterChoice",
},
lowRelaEnterMidRela:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Low_Rela_Win_EnterMidRela",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_Win_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_Low_Rela_Win_Idle",
},
},
postFightPassagesLoss:
{
servantPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.SERVANT;
},
passage: "Imp_Loss_ServantPath",
},
masterPath:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.storylineProgress == setup.StorylineProgress_Imp.MASTER;
},
passage: "Imp_Loss_MasterPath",
},
servantChoice:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 6 && State.variables.CharacterSheet_Imp.quest.servantScoring >= 3;
},
passage: "Imp_Loss_ServantChoice",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Imp.quest.relationshipScoring >= 3;
},
passage: "Imp_Mid_Rela_Loss_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Imp_Low_Rela_Loss_Idle",
},
},
}>>is grining mischieviously, looking for an opportunity to attack.flutters about in the air, waiting to strike.is licking its lips, staring at you like you're his next meal.runs a finger down his chest, taunting you.rolls his boulder like shoulders, ready to strike.is stretching his limbs, ready to wrestle with you.lets his tongue slither over his pecs as he stares you down.growls with powerful brassy tones. He is itching to tussle with you.slurps up cascading rivulets of drool. His powerful form bends in anticipation of your next move.rakes his large feet across the ground, ready to charge.flexes gargantuan muscles, letting you know exactly where you stand.stomps his massive feet as he readies himself for combat. The earth quivers.cracks his massive knuckles, they sound like thunder across the battlefield.The small wily imp seems to have a trick or two planned for you.The small demon looks at your body, hungrily.The tiny demon looks you up and down, sizing you up.The small imp zips around in wild loops, clearly excited for its next meal.rolls his boulder like shoulders, ready to strike.is stretching his limbs, ready to wrestle with you.lets his tongue slither over his pecs as he stares you down.growls with powerful brassy tones. He is itching to tussle with you.slurps up cascading rivulets of drool. His powerful form bends in anticipation of your next move.rakes his large feet across the ground, ready to charge.flexes gargantuan muscles, letting you know exactly where you stand.stomps his massive feet as he readies himself for combat. The earth quivers.cracks his massive knuckles, they sound like thunder across the battlefield.<<set setup.TextSheet_Imp =
{
goMeetImp_Intro :{
heightFlavour: {
small: [
"GoMeetImp_heightFlavour_small",
],
medium: [
"GoMeetImp_heightFlavour_small",
],
large: [
"GoMeetImp_heightFlavour_large",
],
huge: [
"GoMeetImp_heightFlavour_huge",
],
},
},
goMeetImp_Height :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Size_Small",
],
medium: [
"Village_MeetImp_Examine_Size_Small",
],
large: [
"Village_MeetImp_Examine_Size_Large",
],
huge: [
"Village_MeetImp_Examine_Size_Huge",
],
},
},
goMeetImp_Muscles :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Muscles_Small",
],
medium: [
"Village_MeetImp_Examine_Muscles_Small",
],
large: [
"Village_MeetImp_Examine_Muscles_Large",
],
huge: [
"Village_MeetImp_Examine_Muscles_Huge",
],
},
},
goMeetImp_Genitals :{
heightFlavour: {
small: [
"Village_MeetImp_Examine_Genitals_Small",
],
medium: [
"Village_MeetImp_Examine_Genitals_Small",
],
large: [
"Village_MeetImp_Examine_Genitals_Large",
],
huge: [
"Village_MeetImp_Examine_Genitals_Huge",
],
},
},
leaveImp :{
heightFlavour: {
small: [
"Village_MeetImp_Leave_Small",
],
medium: [
"Village_MeetImp_Leave_Small",
],
large: [
"Village_MeetImp_Leave_Large",
],
huge: [
"Village_MeetImp_Leave_Huge",
],
},
},
goMeetImp_GrowImp :{
heightFlavour: {
small: [
"Village_MeetImp_GrowHim_Large",
],
medium: [
"Village_MeetImp_GrowHim_Large",
],
large: [
"Village_MeetImp_GrowHim_Large",
],
huge: [
"Village_MeetImp_GrowHim_Huge",
],
},
},
basicAttackPrepFlavour :{
heightFlavour: {
small: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_3",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_small_4",
],
medium: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_medium_3",
],
large: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_large_3",
],
huge: [
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_1",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_2",
"_imp_text_sheet_basicAttackPrepFlavour_heightFlavour_huge_3",
],
},
},
encounterStartFlavour :{
heightFlavour: {
small: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_3",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_small_4",
],
medium: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_medium_3",
],
large: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_large_3",
],
huge: [
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_1",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_2",
"_imp_text_sheet_encounterStartFlavour_heightFlavour_huge_3",
],
},
}
}>><<set setup.FightSheet_Jorm =
{
hp: 180,
stamina: 22,
strength: 45,
critChance: 20,
critDamage: 1.50,
arousalGain: 20,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 14,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id],
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Encounter_Jorm>>",
encounterStartText: "<<include Encounter_Start_Lost_Naga>>",
outcomePlayerWins: "<<include Encounter_Win_Lost_Naga>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lost_Naga_1>>"
}>><<set setup.InfoSheet_Jorm =
{
name: "Jorm",
gender: "male",
corruption: 100,
muscles: 80,
height: 1260,
cock: 300,
balls: 100,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 8,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_jorm_text_sheet">>
<<include "_jorm_fight_sheet">>
<<include "_jorm_info_sheet">>
<<include "_jorm_quest_sheet">>
<<set $CharacterSheet_Jorm = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Jorm",
info: setup.InfoSheet_Jorm,
fight: setup.FightSheet_Jorm,
quest: setup.QuestSheet_Jorm,
text: "TextSheet_Jorm"})>><<set setup.QuestSheet_Jorm =
{
encounterPassages:
{
firstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Jorm_FirstMeeting_Intro",
},
jormPostNameSetup:
{
available: true,
condition: function()
{
return true;
},
passage: "Jorm_PostNamingPrompt",
},
}
}>><<set setup.TextSheet_Jorm =
{
}>><<set setup.FighterSheet_Lakkos =
{
hp: 100,
stamina: 25,
strength: 35,
critChance: 20,
critDamage: 1.50,
arousalGain: 20,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 14,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_IncubusCall.id, setup.FightMove_IncubusStrike.id],
fightReward: setup.RewardTier.MEDIUM,
encounterIntroText: "<<include Encounter_Intro_Lakkos>>",
encounterStartText: "<<include Encounter_Start_Lakkos>>",
outcomePlayerWins: "<<include Encounter_Win_Lakkos>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lakkos_0>>"
}>><<set setup.InfoSheet_Lakkos =
{
name: "Lakkos",
gender: "male",
corruption: 40,
muscles: 0,
height: 68,
cock: 9,
balls: 4,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_lakkos_fight_sheet">>
<<include "_lakkos_info_sheet">>
<<include "_lakkos_quest_sheet">>
<<set $CharacterSheet_Lakkos = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Lakkos",
info: setup.InfoSheet_Lakkos,
fight: setup.FighterSheet_Lakkos,
quest: setup.QuestSheet_Lakkos,
text: undefined})>>
<<run $CharacterSheet_Lakkos.applyAbilityRuntimeData(setup.Ability_VigorOfTheEndowed_2)>><<set setup.QuestSheet_Lakkos =
{
met: false,
beatenOnce: false
}>><<set setup.FighterSheet_Lost_Entity =
{
hp: 164,
stamina: 16,
strength: 35,
critChance: 20,
critDamage: 1.50,
arousalGain: 20,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 8,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Infest.id],
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Encounter_Intro_Lost_Entity>>",
encounterStartText: "<<include Encounter_Start_Lost_Entity>>",
outcomePlayerWins: "<<include Encounter_Win_Lost_Entity>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lost_Entity>>"
}>><<set setup.InfoSheet_Lost_Entity =
{
name: "Lost Entity",
gender: "male",
corruption: 70,
muscles: 30,
height: 90,
cock: 23,
balls: 8,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.VIOLET
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_lost_entity_text_sheet">>
<<include "_lost_entity_fight_sheet">>
<<include "_lost_entity_info_sheet">>
<<include "_lost_entity_quest_sheet">>
<<set $CharacterSheet_Lost_Entity = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Lost_Entity",
info: setup.InfoSheet_Lost_Entity,
fight: setup.FighterSheet_Lost_Entity,
quest: setup.QuestSheet_Lost_Entity,
text: "TextSheet_Lost_Entity"})>>
<<run $CharacterSheet_Lost_Entity.applyAbilityRuntimeData(setup.Ability_HerculeanBuild)>>
<<run $CharacterSheet_Lost_Entity.applyAbilityRuntimeData(setup.Ability_NeverendingGrowth)>><<set setup.QuestSheet_Lost_Entity =
{
met: false,
beatenOnce: false
}>><<set setup.TextSheet_Lost_Entity =
{
}>><<set setup.FightSheet_Lost_Harbinger =
{
hp: 80,
stamina: 20,
strength: 10,
critChance: 30,
critDamage: 1.50,
arousalGain: 10,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 2,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Infest.id],
encounterIntroText: "<<include Encounter_Intro_Harbinger>>"
}>><<set setup.InfoSheet_Lost_Harbinger =
{
name: "Lost Harbinger",
gender: "male",
corruption: 100,
muscles: 30,
height: 90,
cock: 23,
alive: false,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.VIOLET
},
arms: {
number: 4,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 10,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 4,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_lost_harbinger_fight_sheet">>
<<include "_lost_harbinger_text_sheet">>
<<include "_lost_harbinger_info_sheet">>
<<include "_lost_harbinger_quest_sheet">>
<<set $CharacterSheet_Lost_Harbinger = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Lost_Harbinger",
info: setup.InfoSheet_Lost_Harbinger,
fight: setup.FightSheet_Lost_Harbinger,
quest: setup.QuestSheet_Lost_Harbinger,
text: "TextSheet_Lost_Harbinger"})>><<set setup.QuestSheet_Lost_Harbinger =
{
met: false,
harbingerName: undefined,
harbingerRace: undefined
}>><<set setup.TextSheet_Lost_Harbinger =
{
}>><<set setup.FighterSheet_Lost_Naga =
{
hp: 180,
stamina: 22,
strength: 45,
critChance: 20,
critDamage: 1.50,
arousalGain: 20,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 14,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Infest.id, setup.FightMove_Hypnotize.id],
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Encounter_Intro_Lost_Naga>>",
encounterStartText: "<<include Encounter_Start_Lost_Naga>>",
outcomePlayerWins: "<<include Encounter_Win_Lost_Naga>>",
outcomePlayerLoses: "<<include Encounter_Loss_Lost_Naga_1>>"
}>><<set setup.InfoSheet_Lost_Naga =
{
name: "Lost Naga",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/lost_naga.png",
corruption: 80,
muscles: 30,
height: 126,
cock: 30,
balls: 10,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 8,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 0,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.NAGA,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true
}>><<include "_lost_naga_fight_sheet">>
<<include "_lost_naga_info_sheet">>
<<include "_lost_naga_quest_sheet">>
<<set $CharacterSheet_Lost_Naga = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Lost_Naga",
info: setup.InfoSheet_Lost_Naga,
fight: setup.FighterSheet_Lost_Naga,
quest: setup.QuestSheet_Lost_Naga,
text: undefined})>>
<<run $CharacterSheet_Lost_Naga.applyAbilityRuntimeData(setup.Ability_AppetiteForGrowth)>><<set setup.QuestSheet_Lost_Naga =
{
met: false,
beatenOnce: false,
fuckedByPlayer: false,
hasBeenVored: false,
}>><<set setup.FightSheet_Swarm =
{
hp: 80,
stamina: 20,
strength: 10,
critChance: 30,
critDamage: 1.50,
arousalGain: 10,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 2,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Infest.id],
encounterIntroText: "<<include Encounter_Intro_Swarm>>"
}>><<set setup.InfoSheet_Swarm =
{
name: "Lost Swarm",
gender: "male",
numberInSwarm: undefined,
corruption: 100,
muscles: 30,
height: 90,
cock: 23,
balls: 8,
alive: false,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.VIOLET
},
arms: {
number: 4,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 10,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 4,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_lost_swarm_fight_sheet">>
<<include "_lost_swarm_text_sheet">>
<<include "_lost_swarm_info_sheet">>
<<include "_lost_swarm_quest_sheet">>
<<set $CharacterSheet_Swarm = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Swarm",
info: setup.InfoSheet_Swarm,
fight: setup.FightSheet_Swarm,
quest: setup.QuestSheet_Swarm,
text: "TextSheet_Swarm"})>><<set setup.QuestSheet_Swarm =
{
met: false,
firstSwarm: true
}>><<set setup.TextSheet_Swarm =
{
}>><<set setup.FighterSheet_MQ002_Guard =
{
hp: 180,
stamina: 35,
strength: 70,
critChance: 0,
critDamage: 1.50,
arousalGain: 10,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 8,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_ChargedStrike.id],
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "",
encounterStartText: "Minotaur Guard readies his weapon",
outcomePlayerWins: "<<include Quest_MQ002_Entrance_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_Entrance_PlayerLoses>>"
}>><<set setup.InfoSheet_MQ002_Guard =
{
name: "Minotaur Guard",
gender: "male",
corruption: 0,
muscles: 80,
height: 164,
cock: 18,
balls: 6,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 8,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.MINOTAUR,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
},
alive: true,
}>><<include "_minotaur_guard_fight_sheet">>
<<include "_minotaur_guard_info_sheet">>
<<include "_minotaur_guard_quest_sheet">>
<<set $CharacterSheet_MQ002_Guard = setup.CharacterFactory.createCharacter({id: "CharacterSheet_MQ002_Guard",
info: setup.InfoSheet_MQ002_Guard,
fight: setup.FighterSheet_MQ002_Guard,
quest: setup.QuestSheet_MQ002_Guard,
text: undefined})>>
<<run $CharacterSheet_MQ002_Guard.applyAbilityRuntimeData(setup.Ability_Masochism)>>
<<run $CharacterSheet_MQ002_Guard.applyAbilityRuntimeData(setup.Ability_Masochism)>>
<<run $CharacterSheet_MQ002_Guard.applyAbilityRuntimeData(setup.Ability_Masochism)>><<set setup.QuestSheet_MQ002_Guard =
{
met: false,
beaten: false
}>><<set setup.FighterSheet_MQ002_NyxParasite =
{
hp: 210,
stamina: 35,
strength: 85,
critChance: 30,
critDamage: 1.50,
arousalGain: 10,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 12,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_WitheringVenom.id],
fightReward: setup.RewardTier.HIGH,
encounterIntroText: "<<include Quest_MQ002_NyxParasiteEncounter_FightIntro>>",
encounterStartText: "The Nyx Parasite crawls silently towards you.",
outcomePlayerWins: "<<include Quest_MQ002_NyxParasiteEncounter_PlayerWins>>",
outcomePlayerLoses: "<<include Quest_MQ002_NyxParasiteEncounter_PlayerLoses>>"
}>><<set setup.InfoSheet_MQ002_NyxParasite =
{
name: "Nyx Parasite",
gender: "male",
picture: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/nyx_parasite.png",
corruption: 90,
muscles: 10,
height: 80,
cock: 2,
balls: 1,
alive: true,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.INCUBUS,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_nyx_parasite_fight_sheet">>
<<include "_nyx_parasite_info_sheet">>
<<include "_nyx_parasite_quest_sheet">>
<<set $CharacterSheet_MQ002_NyxParasite = setup.CharacterFactory.createCharacter({id: "CharacterSheet_MQ002_NyxParasite",
info: setup.InfoSheet_MQ002_NyxParasite,
fight: setup.FighterSheet_MQ002_NyxParasite,
quest: setup.QuestSheet_MQ002_NyxParasite,
text: undefined})>><<set setup.QuestSheet_MQ002_NyxParasite =
{
met: false
}>><<set setup.FighterSheet_Player =
{
hp: 40,
stamina: 20,
strength: 5,
critChance: 10,
critDamage: 1.50,
arousalGain: 20,
actionSlots: 3,
comboMovesPerTurn: 4,
essenceModifierToAdd: 0,
growthMultiplier: 0.5,
xpMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
minArousal: 0,
staminaRecovery: 2,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Slash.id, setup.FightMove_Bash.id, setup.FightMove_Sigil_Perception.id, setup.FightMove_Focus.id, setup.FightMove_Do_Nothing.id, setup.FightMove_Submit_Completely.id],
abilities: [],
teammate: undefined,
unlockedTeammates: [],
outcomePlayerWins: "",
outcomePlayerLoses: ""
}>>
<<set $EquippedFightMoveIDs = setup.FighterSheet_Player.fightMoveIDs>><<set setup.InfoSheet_Player =
{
name: "Player",
gender: "male",
corruption: 0,
corruptionPerDay: 0,
muscles: 0,
height: 68,
cock: 6,
balls: 2,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_player_text_sheet">>
<<include "_player_fight_sheet">>
<<include "_player_info_sheet">>
<<include "_symbiote_info_sheet">>
<<include "_player_quest_sheet">>
<<set $CharacterSheet_Player = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Player",
info: setup.InfoSheet_Player,
symbiote: setup.InfoSheet_Symbiote,
fight: setup.FighterSheet_Player,
quest: setup.QuestSheet_Player,
text: "TextSheet_Player"}
)>>
<<run setup.setRace($CharacterSheet_Player.symbiote.anatomy, setup.RacePool.SYMBIOTE)>>
<<set $CharacterSheet_Player.symbiote.color = setup.ColourPool.WHITE>>
<<set $CharacterSheet_Player.symbiote.name = "Echo">>
\<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_Uncorrupted);>>
\<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_MinorCorruption);>>
\<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_MajorCorruption);>>
\<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_OverwhelmingCorruption);>>
\<<run $CharacterSheet_Player.applyAbilityRuntimeData(setup.Ability_LordOfCorruption);>><<set setup.QuestSheet_Player =
{
met: true,
curseOfTheNagaStatDrain:
{
muscles: 0,
height: 0,
cock: 0,
balls: 0,
},
nyxParasiteInfections: 0,
oaths:
{
drenth: setup.Oath.NONE,
apothus: setup.Oath.NONE,
},
exploration:
{
villageGateNorth:
{
northFirstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Explore_NorthFirstTime",
},
northGrownMuscular:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > 30;
},
passage: "Explore_NorthGrownMuscular",
},
northVisibleCorruption:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "corruption") > 25;
},
passage: "Explore_NorthVisibleCorruption",
},
northGrownHeight:
{
available: true,
condition: function()
{
var height = setup.getStatValue(State.variables.CharacterSheet_Player, "height");
return height > (25 * 12) && height < (50 * 12);
},
passage: "Explore_NorthGrownHeight",
},
northGrownHeightMassive:
{
available: true,
condition: function()
{
var height = setup.getStatValue(State.variables.CharacterSheet_Player, "height");
return height > (50 * 12);
},
passage: "Explore_NorthGrownHeightMassive",
},
},
villageGateEast:
{
eastFirstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Explore_EastFirstTime",
},
eastGrownMacro:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > (50 * 12);
},
passage: "Explore_EastGrownMacro",
},
eastGrownDemonic:
{
available: true,
condition: function()
{
return setup.getRace(State.variables.CharacterSheet_Player.info.anatomy).toUpperCase() == "DEMON";
},
passage: "Explore_EastGrownDemonic",
},
eastGrownParasites:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Player.quest.nyxParasiteInfections >= 10;
},
passage: "Explore_EastGrownParasites",
},
eastGrownLordOfLust:
{
available: true,
condition: function()
{
return setup.getRace(State.variables.CharacterSheet_Player.info.anatomy).toUpperCase() == "LORD OF LUST";
},
passage: "Explore_EastGrownLordOfLust",
},
eastGrownMegaMacro:
{
available: true,
condition: function()
{
return setup.getStatValue(State.variables.CharacterSheet_Player, "muscles") > (200 * 12);
},
passage: "Explore_EastGrownMegaMacro",
},
},
apothusRealmFirstTime: true,
}
}>>So could you – the power that this corrupting essence could bring. You move toward him, and straddle his monstrous abs. \
You slide a hand down the length of one of your @[1|cocks|noverb] and push it into the sea of black.
A surge of fluid takes you by surprise as the corruption rushes into your enlarged cum pipe.
"Mrhhh! Mooooore...." you rumble, lustfully.
You smile at your victim, arch your back and plant your lips back onto his. Another rush of black blasts its way into your throat. \
The ooze coils around your @[all|tongues|noverb] and floods into body with reckless abandon.
"GRAAAAHHHHH!"
Your muscles throb with power. A muffled roar escapes your throat as you push your @[all|tongues|noverb] deeper into the Lost’s mouth.
You sit there, pumping your @[all|cocks|noverb] over his chest, locked in an endless kiss as his size begins to recede underneath you.So could you – the power that this corrupting essence could bring. You move toward him, and straddle his monstrous abs. \
You slide a hand down the length of one of your @[1|cocks|noverb] and push it into the sea of black.
A surge of fluid takes you by surprise as the corruption rushes into your enlarged urethra.
"Mrhhh! Mooooore...." you rumble, lustfully.
You smile at your victim, arch your back and plant your lips back onto his. Another rush of black blasts its way into your throat. \
The ooze coils around your @[all|tongues|noverb] and floods into body with reckless abandon.
"GRAAAAHHHHH!"
Your muscles throb with power. A muffled roar escapes your throat as you push your @[all|tongues|noverb] deeper into the Lost’s mouth.
You sit there, pumping your @[all|cocks|noverb] over his chest, locked in an endless kiss as his size begins to recede underneath you.So could you – the power that this corrupting essence could bring. You move toward him and stand over his monstrous form. \
You slide a hand down the length of one of your @[1|cocks|noverb] and push the tip so that its massive head hovers over his face. \
Your cum pipe widens as your @[1|cocks|noverb] swallows his features.
A barrage of fluid takes you by surprise as the corruption rushes into your enlarged urethra.
"Mrhhh! Mooooore...." you rumble, lustfully.
You smile at your victim, arch your back and flex your impeccably strong pelvic muscles. With a resounding gulp, your victim is pulled \
into your cock. You feel it writhe against your inner walls, feel him slowly travel down the length until his massive body lodges itself right above the base of your nutsack.
"GRAAAAHHHHH!"
Your muscles throb with power. You stifle a moan as you flex harder and send the helpless creature into your eager @[all|balls|noverb]
Frantic with rampant desire you pump your @[all|cocks|noverb] as you feel his essence filter into you.
With a final show of absolute dominance, your @[all|balls|noverb] rumble ominously and fire a monstrous load, the Lost riding within the massive stream \
of white. He lands on the floor unceremoniously in front of you.So could you – the power that this corrupting essence could bring. You place your gigantic feet on either side of his body. \
Hefting up @[1|cocks|a~an] in one hand, you pluck the weak creature up between your fingers. \
You flash your teeth with a snarl and plunge him into the abyss of your urethra.
He was a gnat in the presence of a titan, a small morsel to an insatiable beast. Yet, although a tiny speck, you could feel every one of his movements down your cavernous length. \
What seems to be minutes later, he lands in the unending ocean of seed within your sack and like a volcano ready to erupt, it shudders!
A surge of power and lust takes you as the corruption bleeds into your endless reserves. With an earth shattering roar, you grab on to your @[all|cocks|noverb] and \
slide your hands across them with reckless abandon. Your legs shudder as your approach climax - holding on for dear life as an absolutely monstrous orgasm rocks you. \
Arc after arc after arc blasts upwards into the air, landing far beyond the eye can see on some unsuspecting land.
"Mrhhh! Mooooore...." you rumble, lustfully.
You feel him coming up your cum pip, his minuscule form surfing the rapids inside of your spire of flesh. \
With an absolutely amazing show of dexterity for someone of your size, you swing your hand through the mighty stream and catch the creature, the pressure against your hand backlashes onto you and coats you in a layer of alabaster.
"GRAAAAHHHHH!"
The heat of your own powerful seed sends you into overdrive and you truly let yourself go! Your @[all|cocks|one=rises~more=rises] with incredible pressure and they slam into your \
chest. An unholy amount of semen blasts into the air, your own ivory stairway to the heavens.
You grin; looks like rainfall could be expected later today.
With a final show of absolute dominance, you unceremoniously dump the creature back onto the floor.You slide your gooey body over his and he moans from your touch alone. You rub one of your @[2|hands|noverb] across his bulging abs and up to his hard nipple.
The entity inside of you yearns for the darkened soul of the Lost in your thrall. You feel your @[all|tongues|noverb] slip from the confines \
of your mouth and into his open, hot maw. You can taste his thick corruption. You feel your @[all|cocks|noverb] harden again.You slide your gooey body over his and he moans from your touch alone. You rub one of your @[2|hands|noverb] across his bulging abs and up to his hard nipple.
The entity inside of you yearns for the darkened soul of the Lost in your thrall. You feel your @[all|tongues|noverb] slip from the confines \
of your mouth and into his open, hot maw. You can taste his thick corruption. You feel your @[all|cocks|noverb] harden again.Your gooey body towers over his and he moans from your presence alone. You rub one of your @[1|cocks|noverb] across his bulging abs, pinning him with the weight of it.
The entity inside of you yearns for the darkened soul of the Lost in your thrall. You feel your @[all|tongues|noverb] slip from the confines \
of your mouth, sliding down your @[all|pecs|noverb] and twisting lower until it enters his hot maw. You can taste his thick corruption.You fall to your massive knees. The Lost's mouth opens wide in awe at the immensity of your body. You let your @[all|cocks|noverb] fall to the side of him with an earth pounding shudder.
The entity inside of you yearns for the darkened soul of the Lost in your thrall. You feel your @[all|tongues|noverb] slip from the confines \
of your mouth, sliding down your @[all|pecs|noverb] and twisting lower until it enters his hot maw. You can taste his thick corruption.You feel the corruption take root within you. You embrace it, letting its warmth run its proverbial tongues over every inch of you and into your brain. \
Dark whispers fill your mind.
You need to spread.
You need to fuck.
More. More! MORE!
Your body flushes with an unnaturally high level of arousal. Your nutsack rumbles and streams of pre launches out of your @[all|cocks|noverb] like a fire-hose. \
You growl bestially as you realise your precious sperm is being wasted. Digging your fingers into the Lost’s flesh, you ram your dick into \
his ass until your @[all|balls|noverb] slap hard against his glutes. He snarls with the sudden intrusion.
You piston hard. Relentless. Back. Forward. Back. Forward.
"Ah! Fuck!" You feel a mind-shattering orgasm building.
The corrupt creature howls as your @[all|balls|noverb] push out an incredible deluge of ivory into his body. \
His stomach rises beneath you as you keep thrusting and pounding into his sex.
"MOOOOOOORE!" You roar as your orgasm intensifies.
The rapture rocks through your @[all|cocks|noverb] and into every tense fibre underneath your skin.
Feeling you grow on top of him and within him – feeling his own stomach dome upwards and push you ever higher sets off the creature’s own orgasm. \
He releases an all-powerful howl and shoots his thick corrupting seed over your chest. The ebon, tar-like sperm showers you from below, coating your entire chest in its inky shade.You feel the corruption take root within you. You embrace it, letting its warmth run its proverbial tongues over every inch of you and into your brain. \
Dark whispers fill your mind.
You need to spread.
You need to fuck.
More. More! MORE!
Your body flushes with an unnaturally high level of arousal. Your nutsack rumbles and streams of pre launches out of your @[all|cocks|noverb] like a firehose.
You growl bestially as you realise your precious sperm is being wasted. Digging your fingers into the Lost’s flesh, you ram your dick into \
his ass until your @[all|balls|noverb] slap hard against his glutes. He snarls with the sudden intrusion.
You piston hard. Relentless. Back. Forward. Back. Forward.
"Ah! Fuck!" You feel a mind-shattering orgasm building.
The corrupt creature howls as your @[all|balls|noverb] push out an incredible deluge of ivory into his body. \
His stomach rises beneath you as you keep thrusting and pounding into his sex.
"MOOOOOOORE!" You roar as your orgasm intensifies.
The rapture rocks through @[all|cocks|noverb] and into every tense fibre underneath your skin.
Feeling you grow on top of him and within him – feeling his own stomach dome upwards and push you ever higher sets off the creature’s own orgasm.
He releases an all-powerful howl and shoots his thick corrupting seed over your chest. The ebon, tar-like sperm showers you from below, coating your entire chest in its inky shade.You feel the corruption take root within you. You embrace it, letting its warmth run its proverbial tongues over every inch of you and into your brain. Dark whispers fill your mind.
You need to spread.
You need to fuck.
More. More! MORE!
Your body flushes with an unnaturally high level of arousal. Your nutsack rumbles and a tidal wave of pre launches out of your \
@[all|cocks|noverb], washing over the Lost in front of you.
You growl bestially as you realise your precious sperm is being wasted. Grabbing the Lost’s torso, you ram your dick \
into his ass until your @[all|balls|noverb] slap hard against his glutes. He snarls with the sudden intrusion, but it quickly turns to a gurgle as your length almost reaches his neck from within.
You piston hard. Relentless. Back. Forward. Back. Forward.
"Ah! Fuck!" You feel a mind-shattering orgasm building.
The corrupt creature howls as your balls audibly rumble, shift and unleash a mind blowing torrent of ivory that arcs into the air and \
splatters on the ground. You thrust erratically before falling to the floor. The pleasure is too intense! White pours over everything in sight. \
The Lost is covered. You are covered. An ankle deep pools form around you as you roll in your own steaming virility.
"MOOOOOOORE!" You roar as your orgasm intensifies! Your vision is overtaken with alabaster cream.
Feeling you grow within him – feeling your hot seed cover every inch of his being sets off the creature’s own orgasm. He gurgles \
beneath the waves and shoots his thick corrupting seed over your chest, the black streaks quickly wash away by the excessive amount of seed around the both of you.
Your shoulders slump as you get back to your feet. You still see stars. The creature slowly slurps off of your cock and thuds into the pool \
below with an emphatic splash.
The beast rolls onto his back with a heavy thud; his massive chest heaving up and down with ragged breaths of satisfaction.You feel the corruption take root within you. You embrace it, letting its warmth run its proverbial tongues over every inch of you and into your brain. Dark whispers fill your mind.
You need to spread.
You need to fuck.
More. More! MORE!
Your body flushes with an unnaturally high level of arousal. Your @[all|balls|noverb] quake behind you and a flood of thick \
pre launches out of your @[all|cocks|noverb] and cascades over the land. What little trees are around you struggle \
against the sudden onslaught of the teeming river.
You growl bestially as you realise your precious sperm is being wasted. You grab the Lost before his body \
gets swept away with your produce and slam your dick into his ass until his rump slaps hard against your midriff. His snarls are suddenly cut off as \
your @[1|cocks|one=erupts~more=erupts] out of him, his body once again morphing into your oily cocksleeve.
Grabbing him, you piston him up and down across your veined length. Relentless. Back. Forward. Back. Forward.
"Ah! Fuck!" You feel a mind-shattering orgasm building.
The corrupt creature gurgles as your balls shift, unleashing a mind blowing torrent of white that arcs into the air and splatters onto the ground with incredible \
force. You thrust erratically before falling backwards onto your @[all|balls|noverb]. The pleasure is too intense! White pours over everything in sight. \
Megaliters of cum pools around you! The land itself begins to cave in under your incredible weight! Lower and lower you sink. Higher and higher the sea rises.
"MOOOOOOORE!" You roar as your orgasm intensifies! Your vision is overtaken with alabaster as you submerge yourself into your own lake of seed.
Feeling you grow within him – feeling your steaming fluids cover every inch of his being sets off the creature’s own orgasm. He gurgles and shoots his thick corrupting seed into the surrounding waters.
There's just too much. No matter what you do, you can't stop! The lake has already overflowed and you keep on at it for hours on end.
You are not sure how much time has passed since your orgasm ended, but you rise out of the lake larger and hornier than ever before. \
You smile as you watch waves of white drip off of you and into your own macro sized cum bath.
With a wet schlorp, you pull the beast off of your @[1|cocks|noverb] once more.
The beast collapses onto his back with a heavy thud; his massive chest heaving up and down as his lungs relieve themselves of your incredible virility.You grasp the monster's cock. Although dripping with black oil, the skin is rock hard and slowly spreads your fingers wider with every beat of growth. \
He shudders. With a slow, sensual movement, you tighten your digits and squeeze a thick rope of pre out of the tip.
At the same time, you bend your hips backwards and line up your @[2|cocks|one=with%his%tight%anus~more=with%his%anus%and%another%positioned%to%slide%across%his%midriff].
You tease his him, generating lewd moans and gasps as you slide your tip around the rim of his sphincter. He pushes his body against yours, forcing you inside of him.
His ass feels tight, yet the black goo makes the entry as smooth as it can be.
"Oh... Hmmm..."
You moan as the corrupt creature clenches his anus around your flesh. His moans turn into desperate grunts and growls as you ease yourself deeper inside of him.
The feeling of his tight virgin ass combined with the goo covering your cock from inside of him, is like nothing you've felt before.
His body grows warmer beneath you, almost burning with arousal. You thrust inside him, bring your @[all| arms|noverb] around him and lock lips. \
His tongue darts inside of your mouth as he grabs you, running his meaty hands over your back. One of his legs wrap around you and you both spin in place as he \
grinds his muscular body against yours. As you lay on your back and wrap yourself within his mighty embrace, you feel warmth rush inside of you.
"Ah... FUCK... GRAHHHH!"
You flip the beast onto his back with a mighty crash as your orgasm rocks your body into euphoria. His black cock erupts in a fountain of corrupted fluid over you.
A small amount of his corrupting essence enters you.
You feel your muscles throb with power.
The feeling rushes up your legs and into the core of your being.
You pinch your large nipples and groan.
"Moooooore..." You growl monstrously.You grasp the monster's cock. Although dripping with black oil, the skin is rock hard and slowly spreads your fingers wider with every beat of growth. \
He shudders. With a slow, sensual movement, you tighten your digits and squeeze a thick rope of pre out of the tip.
At the same time, you bend your hips backwards and line up your @[2|cocks|one=with%his%tight%anus~more=with%his%anus%and%another%positioned%to%slide%across%his%midriff].
You tease his him, generating lewd moans and gasps as you slide your tip around the rim of his sphincter. He pushes his body against yours, forcing you inside of him.
His ass feels tight, yet the black goo makes the entry as smooth as it can be.
"Oh... Hmmm..."
You moan as the corrupt creature clenches his anus around your flesh. His growls turn into desperate grunts and moans as you ease yourself deeper inside of him.
The feeling of his tight virgin ass combined with the goo covering your cock from inside of him, is like nothing you've felt before.
His body grows warmer beneath you, almost burning with arousal. You thrust inside him, bring your @[all| arms|noverb] around him and lock lips. \
His tongue darts inside of your mouth as he grabs you, running his meaty hands over your back. One of his legs wrap around you and you both spin in place as he \
grinds his muscular body against yours. As you lay on your back and wrap yourself within his mighty embrace, you feel warmth rush inside of you.
"Ah... FUCK... GRAHHHH!"
You flip the beast onto his back with a mighty crash as your orgasm rocks your body into euphoria. His black cock erupts in a fountain of corrupted fluid over you.
A small amount of his corrupting essence enters you.
You feel your muscles throb with power.
The feeling rushes up your legs and into the core of your being.
You pinch your large nipples and groan.
"Moooooore..." You growl monstrously.You grasp the monster's cock. Although dripping with black oil, the skin is rock hard and slowly spreads your fingers wider with every beat of growth. \
He shudders. With a slow, sensual movement, you tighten your digits and squeeze a thick rope of pre out of the tip.
At the same time, you bend your hips backwards and line up your @[2|cocks|one=with%his%tight%anus~more=with%his%anus%and%another%positioned%to%slide%across%his%midriff].
You tease his him, generating lewd moans and gasps as you slide your tip around the rim of his sphincter. He pushes his body against yours, forcing you inside of him.
It’s an incredibly tight fit. You look down and grin as you see his stomach bulge outward from the sheer size of your tool. Yet, the black goo simply morphs around him to accommodate the size difference.
"Oh... Hmmm..."
You moan as the corrupt creature clenches his anus around your flesh. His growls turn into desperate grunts and moans as you push yourself in further. \
Your cock expands with lust, and the creature’s torso distends with a combination of the pre you are leaking within him and the size of your battering ram.
The feeling is like nothing you've felt before.
His body grows warmer beneath your weight, almost burning with arousal. You thrust inside him, the tip of your cock peeking out from his throat.
"Ah... FUCK... GRAHHHH!"
You slam your @[1|hands|noverb] into the ground, arch your back and unleash a terrifying orgasm that rockets out of the creature’s ass and mouth. \
The Lost's tools erupts in a fountain of corrupted fluid underneath you, coating your midriff and seeping into your pores.
A small amount of his corrupting essence enters you.
You feel your muscles throb with power.
The feeling rushes up your legs and into the core of your being.
You pinch your large nipples and groan.
"Moooooore..." You growl monstrously as you pull the creature off of your @[1|cocks|noverb] and throw him to the ground.You grasp the monster's cock. Although dripping with black oil, the skin is rock hard and slowly spreads your fingers wider with every beat of growth. \
Impressive, considering how small he is compared to you. He shudders, looking up at your monstrously huge form. With a slow, sensual movement, \
you tighten your digits and squeeze a thick rope of pre out of the tip of his cock.
With a single @[1|hands|noverb], you pick him up off of the ground and line him up with your @[all|pre-leaking|cocks| noverb].
You tease his him, placing his tiny form on its massive swollen head. You smile as his eyes widen at your turgid length.
Winner takes all.
You start pressing his anus down and watch as his legs spread wider and wider to accommodate the massive tower. \
If there is anything you have learned from this world, it is that the corruption caters for any size. \
The creature distends further and further, until you wrap his form around your tool like a cocksleeve.
"Oh... Hmmm..."
You moan as the corrupt creature’s body clenches around your flesh. \
His growls turn into desperate grunts and moans as you begin to piston your spire of flesh through him. \
Your cock expands with lust, and the creature’s torso distends even further. Fountains of pre fire from your tip with each thrust, pooling below you in lake sized bodies of fluid.
The feeling is like nothing you've felt before.
His body grows warmer around your cock, almost burning with arousal. You thrust even harder, your pre turning into waterfalls of white.
"Ah... FUCK... GRAHHHH!"
You slam one of your feet into the ground, arch your back and unleash a terrifying orgasm that rockets out of your @[all|cocks|noverb] and coats the land with blankets of ultra fertile sperm. \
The Lost's tools erupts alongside you in a poor display compared to your own, yet the corruption still coats a portion of your cock.
A small amount of his corrupting essence enters you.
You feel your muscles throb with even more power.
The feeling rushes up your legs and into the core of your being.
You pinch your large nipples and groan as your cocksleeve is stretched to its limit.
"Moooooore..." You growl monstrously as you pull the creature off of your cock and drop his body to the ground far below you.Your hands meet, and your bodies clash for dominance. You struggle as the beast pulls you closer to him. \
Your hard members are close enough to press and rub along each other. The black liquid that coats him smears and spreads across your @[all|cocks|noverb]. \
Suddenly, an immense feeling of arousal shakes you to your core as the beast's corrupting goo quickly slithers into your slit.
Your eyes open wide with renewed vigour and you shove the beast down to the ground. You land on top of its meaty chest, the tip of its pulsating head peeking up from your pecs.Your @[1|hands|noverb] engulfs his. With a show of strength and size, you pull his captured arm to the side and send him hurtling to the ground. He leaps back up and bear hugs you \
with incredible strength, grinding his cock against your own. The black liquid that coats him smears and spreads across your @[all|cocks|noverb]. \
Suddenly, an immense feeling of arousal shakes you to your core as the beast's corrupting goo quickly slithers into your slit.
Your eyes open wide with renewed vigour and you shove the beast down to the ground. You land on top of its meaty chest, your cocks sandwiched between your bulks.Your @[1|hands|noverb] hurtles toward the Lost, but he dives and angles for your mighty @[all|cocks|noverb]. Although injured, he grabs onto his target \
and shoves his dick into your urethra. Black cum erupts into your shaft and spreads across the insides of it. \
Suddenly, an immense feeling of arousal shakes you to your core as the beast's corrupting goo quickly slithers into your ballsack.
Your eyes open wide with renewed vigour and you shove the beast down to the ground. You press his body into the sand with one @[1|hands|noverb].Your @[1|hands|noverb] hurtle toward the Lost, but he dives and angles for your @[all|cocks|noverb]. Although injured, he grabs onto his target \
and shoves his entire arm into your urethra. Black goo climbs into your shaft and spreads across the insides of it. \
Suddenly, an immense feeling of arousal shakes you to your core as the beast's corrupting goo quickly slithers into your ballsack.
Your eyes open wide with renewed vigour and you shove the beast down to the ground with earth-breaking fury. You press his entire body into the sand with only three fingers, nearly crushing him.Running a hand down your body and ever lower, you gently caress your @[all| cocks| noverb]. Each inch of flesh that your fingers \
brush over sends heated waves of pleasure throughout your body. Your efforts reward you with a few spurts of pre. Eager to explore more of yourself, \
you reach down below to feel the weight of your @[all| balls| noverb]. You roll each orb in your hand, gently squeezing them.Running a hand down your body and ever lower, you gently caress your @[all| cocks| noverb]. Each inch of flesh that your fingers \
brush over sends heated waves of pleasure throughout your body. You marvel at how much flesh extends from your waist. The fact that this \
entire package belongs to you is enough for you to shiver in delight and jettison an average man's worth of cum as pre.\
Eager to explore more of yourself, you reach down below to feel the weight of your @[all| balls| noverb]. They are heavy in your hands - virile factories ready to be put to work.Running a hand down your body and ever lower, you gently caress your @[all| cocks| noverb]. It's become impossible to hold your package with a single hand! \
You brush your palms across as much flesh as they can reach, sending spears of blazing pleasure throughout your body. Your sheer size has far exceeded the normal, and you feel proud. \
There is no other feeling like this - the feeling that your own toolset could easily skewer trenches if you so wished it!The thought of another good fuck sets your cum factories into motion. \
The unmistakable feeling of pleasure crescendos, gathering until you roar and blast out \
an unfathomable amount of cum, - a deluge of hot sticky liquid that quickly pools on the ground around you. \
As your orgasm rocks you, you grope down below to feel the weight of your @[all| balls| noverb]. Merely touching them sends them into overdrive, each testicle vibrating as they push even more fluid out into the open.Running a hand down your body and ever lower, you gently caress your @[all| cocks| noverb]. You grin widely as you realise the devastation you could cause by simply letting their weight drop onto the ground! \
You brush your hands across a vast expanse of flesh that rumbles with its own pulsing heartbeat. The pleasure is rampant. With a mighty roar, your tool explodes with fountains of thick cum, megaliters upon megaliters that quickly \
paint the surroundings with your taint. There is no other feeling like this - you are the alpha of this world, and it was yours to fuck. The mere thought of your virility pushes you even further over the edge; \
your entire package rumbles and triples its output! You are causing a veritable flood from simply thinking about your own sex! You fall onto your rear, only to be cushioned by your \
@[all| balls| noverb]. They bounce beneath you, working in overdrive to coat everything as far as the eye can see.Something catches your eye. You swab some of your fluid onto your finger and raise an eyebrow as you watch it turn black. Corruption seems to be taking hold of your body.Your @[all|cocks|noverb] refuse to stop leaking. You watch your cum turn dark and seep into the ground with morbid fascination. The land wants you to become a monster.Your @[all|cocks|noverb] refuse to stop leaking, the fluids turning obsidian as they linger in the open air. The stuff is thick like tar, yet still, the soil drains it eagerly. You grin as you realise you are just about ready to accept the monster you have become. \
You finish off your self-appreciation with one last firm squeeze of your nutsack. There is no more time to waste - you need to satiate your thirst.Your hands wander down past your slick, gooey, <<SymbioteColor>>-covered flesh to find your @[all| cocks| noverb], still throbbing at your recent orgasm. However, a renewed thrill runs through your body at the delicate, giving \
flesh your hands find. Soon, dollops of altered, thick pre starts to well up from your reserves--already replenished due to your new companion. Your hands, somewhat reluctantly, turn from your @[all| cocks| noverb], only to turn \
their attention to your @[all| balls| noverb]. Each orb spends a time being held and admired, gently feeling them and their heft.Eagerly, your goo-dripping hands feel lower and lower, your @[all| cocks| noverb] already twitching as they anticipate the slick warmth your hands provide. Never before finding <<SymbioteName>> could you have imagined owning \
such heft. The thought of your own size--and the sudden thoughts of it getting even larger--makes your @[all| cocks| noverb] seemingly swell all that more, the thickened pre you have in this form starting to ooze out, despite your \
recent orgasm. With that thought invading your mind, your hands wander down below to your @[all| balls| noverb], which are constantly full and heavy--always ready to pour out <<SymbioteName>>'s fluid.There is little need to explore your @[all| cocks| noverb]--you became intimately familiar during your orgasm to bring out <<SymbioteName>>. Yet you still find your hands wandering against your hefty weight, feeling \
the overfull mass drape across your hands. Already, your slick gooey cockflesh throbs with new liquid, pouring into your flesh, ready to be released. Your stretchy, slick flesh expands slightly at the pressure forced \
into it, throbbing your gigantic cock out of your hand. It pulses and throbs, awaiting more attention that your hands cannot possibly give it. As though to torment and prolong the awaiting release, you feel your hands \
stroking across your goo-dripping, @[all| balls| noverb]. One orb is raised up, then released. You can simply feel the weight of the orb as it smashes into the ground, causing a grand rivet in the floor.Your slick hands are no stranger to your @[all| cocks| noverb]. Still erect from releasing <<SymbioteName>>, you can't even reach the tip even more. You can barely discern where it all ends. Yet you still feel these gigantic \
goo-dripping members as a part of you. As part of <<SymbioteName>>. Your companion's slick form simply enhances the pleasure you feel--no rough spots can be felt, all is smooth, and all belongs to this form. Quickly your hands \
strike onto, and then partially into the erogenous flesh, causing intense white-hot pleasure to sear through you--a pleasure that soon comes erupting from you in physical form, a deluge drenching across all that you can see. \
With no stop in sight, you feel your @[all| balls| noverb] tense and pump under you, their gooey form seemingly summoning an endless river from the ether to fuel your ecstasy. Your form seems to almost fall apart from the pleasure, \
Leaving you nearly collapsed into a puddle mentally and physically.You watch as a dark black-purple stream runs through your goo form, almost imperceptable. Whatever corruption taints this land seems to have entered into your body.Your @[all|cocks|noverb] are streamed with small streams of black-purple corruption throb in concert with your heart, visible in your semi-transluscent flesh.Black ooze, nearly indistinguishable from your body, drips out of your @[all|cocks|noverb]--both directly out of the tip, yet also seemingly to ooze out of your very pours, dripping and darkening the very soil that you walk on.Sprouting from your glutes, your @[all| tails| one=whips~more=whip] from side to side. Your eyes travel down its length, and fixate on each feature before you smirk, \
grab it with your hand and playfully swing it around.Sprouting from your glutes, your @[all| tails| one=whips~more=whip] from side to side with whooshing noises. Your eyes travel down its length, and fixate on each feature before you smirk, \
grab it with your hand and playfully swing it around. The weight of it has become rather dangerous. A crash resounds behind you as you accidentally knock over your table. Case in point.Sprouting from your glutes, your @[all| tails| one=whips~more=whip] from side to side. Every movement of it now carries a hefty momentum that only someone with your size can control. \
Now too large for your hand, and not to mention to hard to reach with your massive muscles - you thump it on the ground, heavily. The ground booms with its weight and large puffs of dirt explode into the air. \
Just like the rest of you, your tail screams of power.Sprouting from your glutes, your @[all| tails| one=whips~more=whip] from side to side. Every twitch, flick and swaying motion creates heavy gusts of wind that tear at the plant-speckled dunes and structures below you. \
Its weight is heavy enough that, should you crash it into the ground, it would not be difficult to create canyons or quakes. Your teeth flicker from behind your smug expression. \
You mischieviously turn around and slap your tail into the lake. An absolute geyser of water shoots up over you, coating your stunning figure with a light watery sheen. \
You spend a few more moments playing with it, dragging it across the ground to create ravines whilst the water settles once more.A few specks of black on the tip of your tail is enough to make you aware that the land is affecting you.A trail of black ooze occassionally forms from the tip of your tail. You reach for some with your fingers and taste the salty substance. A shudder of erotic pleasure courses through you.Lines of thick black goo stream from the tip of your tail, coating the ground in corruption. Your arousal is constantly sitting above dangerous levels thanks to the addictive and oh-so pleasurable substance. You smirk. \
It is the mark of a beast, and you love it.Your gooey glutes transition into @[all| tails| noverb]. The size is perfectly manageable, the gentle swaying assists in keeping your balance in check.Your @[all| tails| noverb] wave back and forth, accenting your gooey glutes as they strike against whatever is in their path with surprising force. If you weren't more careful, you could knock over a wall with the flesh.Your @[all| tails| one=smashes~more=smash] into the wall of your old house, temporarily gluing itself to the structure before releasing for another pass to add to the indentations. \
If you wanted, you could bring the building crashing down with an accidental whip of a tail."The ground is rushed away as your @[all| tails| one=whips~more=whip] through it, cascading a deep divot. \
When occupying this new channel, your <<SymbioteColor>> semi-transparent tail looks similar to that of a river, roiling and filled with the almost fluid flesh.Your tail is very well intact, even with flicks and sways, <<SymbioteName>> maintains perfect form and structure. <<SymbioteName>> seems to enjoy the thought of having a clean cut through anything.Speckles of black spatter the patterning of your @[none| tails| noverb]. Each flick of your tail causes dense clumps to fling off of the goo. <<SymbioteName>> seems to be losing interest in the idea of keeping its form tightly bound to its body.The thin lines of purple and back swimming through your goo form drip out of the tips of your @[none| tails| noverb]. \
You hardly even need to move your tail as even with stillness, droplets stream away from the gooey tail. <<SymbioteName>> revels in the idea of using its tail as a brush, painting the earth around it with <<SymbioteColor>> goo.Black and purple goo mix freely with your @[none| tails| noverb] goo, erupting from the tips in a constant stream that drags across the floor behind you, marking the entire land with the addictive substance. \
<<SymbioteName>> enjoys every moment of painting the land in <<SymbioteColor>> goo.<<SymbioteName>> wrings its tail around itself and brings a hand down to stroke the tail in self admiration.<<SymbioteName>> seems more than delighted in the thought of toying around with its tail as it coils around itself.<<SymbioteName>> seems delighted at that idea, it coils its tail around its torso, giving it gentle strokes in self admiration.<<SymbioteName>> flaps its tail within the basin, enjoying the thought of being massive enough to occupy the earth itself.Resting on your back and spreading wide are @[all| wings|noverb] that could easily support your weight in flight. You take turns flexing each of their inner limbs, stretching the membranes taught. \
Playfully, you give them a good push and launch yourself backwards and onto your bed. You return to the mirror after a minute of smugness.Resting on your back and spreading wide are @[all| wings|noverb] that could easily support your weight in flight. Their tips are now large enough that it has become quite difficult to move inside of buildings - \
like your own home! Like that mattered. They were beautiful and nothing screams power than unfolding them widely to touch the opposite walls of your room. You notice that each wing flexor is packing on a fair bit of muscle! \
Striking a powerful pose, you flex them resulting in a rising display of bicep and tricep shaped muscles.Resting on your back and spreading wide are @[all| wings|noverb] that could easily support your heavy weight in flight. Out in the open, you have the freedom of stretching them to their massive wingspan. \
Nothing in your life could have made you feel as proud as you do now as you marvel at the huge shadow they cast. You flap them gently and even with such a subtle movement, the size and power in each of those membranes \
create monstrous waves across the lake's surfaceResting on your back and spreading wide are @[all| wings|noverb] that could easily support your heavy weight in flight. If any creature had somehow missed your gigantic body, then they certainly could not miss your eclipsing wingspan. \
Their flexors have grown so heavy with muscle that they could function as extra pairs of arms. With a mighty flex, and a powerful and prideful roar, you spread them out wide, their tips reaching past the edges of the lake and further, still. \
You remain there - a deity amongst deities, a power among powers. If you had to flap them, that would be the end of the land around you. You smile as you retract them. Perhaps that would not be the best of ideas, for now.A few bolts of purple and black run across your inner membrane as you continue to examine your wings. You raise an eyebrow. It would seem no body part is unsafe from the taint of this world.bright glowing streaks of purple and black run across your membranes like spiderwork. Your wings shimmer with corruption, with power people should fear. Perhaps that would be a lesson for either yourself, or those who cross you.The edges of your wings are torn and occasionally drip black oil. Bolts of black lightning arc off of the tips of each wings' limbs, heralding the presence of monstrous corruption.Your back gently transitions into @[all| wings|noverb] that look as though they could carry you in flight. The ribs of the wings are joined not by fleshy membranes, but rather pliable goo. \
You watch as a colored spec of your goo is cycled through the slow waterfall that is your membranes.Your hefty back supports @[all| wings| noverb] that are filled with a constant movement of that gooey flesh of <<SymbioteName>> that could support your weight during flight. \
The goo can hide completely within your back or take form a shake similar to that of a cloak one may wear to conceal themself. \
When extended, they reach from wall to wall of your room--even pressing up and causing your flexible form to bend ever so slightly from the pressure of the semi-sturdy walls. \
That would not do: you chuckle as the gooey flesh rushes into the edges of your bent wings, filling them with strength and form as they expand, forcing divots into the walls. \
Your adaptive body is so strong that even the wingtips can puncture walls on command.Your massive wingspan of @[all| wings| noverb] casts a shadow across nearly all you can see, the slowly circulating goo that forms the wings giving a somewhat ethereal, undulating quality to the shadows. \
The massive size of your semi-transparent, dripping membranes alone could blot out an entire farm. Your wing dips into the lake, and you can feel it cup the water, a small pond in itself.You cannot see the tips of your @[all| wings| noverb] anymore. A simple flap of the gooey form is enough to cause cascading waves to roll across the lake and the vegetation beyond. \
The thinnest of the bulk in the wings are more powerful and massive than your thigh was just a short time ago. \
The slick goo that drips and moves across your membranes tenses and forms a strong barrier as you gently flap one of your wings, almost knocking over a tree.The texture of the gooey wings is soft and pliable with no imperfections. <<SymbioteName>> has kept the wings in pristine condition and maintains structure by remaining closely intact.The texture of your gooey wings is like thick, melting wax. <<SymbioteName>> is slightly restless and the wings feeling like they’re beginning to lose a stable form.Spots of purple and black erupt from the edges of your goo wings, criss-crossing all across your membranes, a visible mark of your corruption. Your wings drip constantly, each flap causes wicks of goop to fly in all directions.Dark corrupt black ooze drips out of your gooey membranes, coating the ground in your monstrous corruption. When folded in, your back gives off the appearance of wearing a cape made of flowing water. \
When spread out, your wings constantly seep out in all directions. Each flap of your wings practically coats the entire area beneath you within the runny texture of goo.<<SymbioteName>> brings an arm up to fondle the massive wings in self admiration.<<SymbioteName>> brings an arm up to fondle the massive wings in self admiration.<<SymbioteName>> brings an arm up to fondle the massive wings in self admiration, almost enthralled by the size of itself.<<SymbioteName>> brings an arm up to fondle the massive wings in self admiration, almost enthralled by the size of itself.Moving from side to side, you proudly examine the @[all| horns| noverb] that crown your fearsome visage. Their weight is pleasant on your neck and their points sharp enough to cause \
some serious damage. You run a hand across one of them, relishing in the feeling of power and protection it gives you.Moving from side to side, you proudly examine the @[all| horns| noverb] that crown your fearsome visage. Their weight is heavy, but your thick neck can easily support it. \
You pick up a nearby piece of metal and run it across the points. It splits like butter. These could cause some serious damage. You run a hand across one of them, relishing in the feeling of power and protection it gives you.Moving from side to side, you proudly examine the @[all| horns| noverb] that crown your fearsome visage. Their weight is incredible, it feels as if their momentum would be enough to even knock you off balance if you aren't careful! \
You bend down and test your horn's strength on the ground. The earth quakes as you rip out a clean hole. These are horns that you can be proud of. You run a hand across one of them, relishing in the feeling of power and protection it gives you.Moving from side to side, you proudly examine the @[all| horns| noverb] that crown your fearsome visage. Each time you move your head, the air parts as if a mountain had suddenly flung itself across a distance. \
They are the only weight on this planet that challenges your massive neck and you love the feeling. \
It is far too dangerous to test your horns out, the amount of earth that they would penetrate would easily split the ground for a fair distance. You run a hand across one of them, relishing in the feeling of power and protection it gives you.As your finger runs across the surface, you feel small indentations that were never there before. They don't feel randomly shaped either! If you trace your fingers across them, they feel runic. You wonder if it's the corruption's influence.Your finger gently passes over faintly glowing runes of purple. Every crevice cracks with small arcs of corruption which fire miniature bolts of arousal into your very core.You find yourself repeating this motion for a while. In fact, it has become daily practice. Every purple rune now drips with aphrodesiac and its touch is as pleasurable as tongues worshipping your glorious package. \
Why stop when you could reach an orgasm from touching your horns alone?<<SymbioteName>> is crowned with @[all| horns| noverb]. Due to its gooey nature, they are slightly pliable when relaxed. However, as your head rubs up against a wall, the semi-fluid of its flesh shifts around, forcing them into sharp, dense spires. \
Acting similarly to a non-newtonian fluid, They could do quite a bit of damage when needed.<<SymbioteName>>'s slightly malleable @[all| horns| noverb] weigh upon its head, slowly dripping with its essence. \
But in a sudden impulse, you decide to thrust them against some metal, where they instantly harden and pierce through. \
Acting like a non-newtonian, the raw power even in just one horn leaves you smiling.The weight of <<SymbioteName>>'s dripping @[all| horns| noverb] would crush those with a weaker neck. Fortunately, that does not apply to you. \
A chuckle escapes your lips as you lean down and push your horns deep into the ground, gouging out a trench in the lakeside. The sturdiness of the fluid keeps it intact whenever pressure is applied.<<SymbioteName>>'s gooey visage is framed by towering spires of @[all| horns| noverb]. They raise up into the sky, mighty towers befitting a master of the world that the two of you have become. \
You have the weight of the world on your shoulders, along with its dangerous power. One single horn could pierce through an entire tower, used as a siege breaker.The glistening horns are perfectly unblemished and well intact.Reflected in the outer layer of your slightly-transluscent horns lies certain geometric shapes that you cannot identify.The horns constantly drip, steady droplets escape from any point of contact. Glowing in the middle of the horns are faint, purple runes.The horns constantly drip with a downpour of goo as if there were a waterfall before your eyes. The corrupt purple runes from inside your horns glow out in a constant stream, radiating from your head like a halo of pure corruption.You find yourself admiring your @[all| heads| noverb]. You try out a few expressions showing off your jawline - both open and clenched, how your cheeks \
are shaped beneath your eyes and the way they lead to your mouth. There, your @[all|eyes|noverb] linger before you open your @[all| jaws | noverb] wide \
and let your @[all| tongues| noverb] slip out over your @[all| teeths| noverb].You find yourself admiring your @[all| heads| noverb]. You try out a few expressions showing off your jawline - both open and clenched, how your cheeks \
are shaped beneath your eyes and the way they lead to your mouth. There, your @[all|eyes|noverb] linger before you open your @[all| jaws | noverb] wide \
and let your @[all| tongues| noverb] slip out over your @[all| teeths| noverb].You find yourself admiring your @[all| heads| noverb]. You try out a few expressions showing off your jawline - both open and clenched, how your cheeks \
are shaped beneath your eyes and the way they lead to your mouth. There, your let your @[all|eyes|noverb] linger before you open your @[all| jaws | noverb] wide \
and let your @[all| tongues| noverb] slip out over your @[all| teeths| noverb].You find yourself admiring your @[all| heads| noverb]. You try out a few expressions showing off your jawline - both open and clenched, how your cheeks \
are shaped beneath your eyes and the way they lead to your mouth. There, your let your @[all|eyes|noverb] linger before you open your @[all| jaws | noverb] wide \
and let your @[all| tongues| noverb] slip out over your @[all| teeths| noverb].After thoroughly inspecting your pearly whites for dirt, cavities or any other unwelcome sights, you snap your @[2|jaws|noverb] shut and continue your visual tour.Looking closer, your tongue seems to be unnaturally long for your mouth. Testing it out, you manage to unroll the fleshy tube until the tip touches the underside of your chin. \
There are small black dots at the base. It reminds you of the Lost. You slip your tongue back into your mouth and wipe the spittle off of your chin.You let your tongue roll lower and lower until a fair portion slides across your meaty chest. Your taste is phenominal - the flavour of a dominant male. Black streaked saliva spreads across your body \
as your tongue slabbers over it. Your spittle drips from its fleshy surface in small rivulets. Before things get too messy, you retract the limb.You let your tongue slide lower until a thick layer of black saliva coats your chest. You let it run even lower, the tip reaching down for your treasure trail and tasting every musky ravine it finds on the way. \
It extends even further, until it is able to travel up toward a leaking and waiting cockslit and plunges itself into the shaft. The taste is sublime and the feeling - the feeling fires explosive bursts of euphoria \
right into the core of your very being. You could do this for hours, as you have before, until you came all over the black fleshy surface of your tongue. Yet, you hold back. \
There is far more of you to explore before. Playtime would come soon. You roll your tongue back into your mouth.<<SymbioteName>> is in perfectly pristine condition, flawless, thoroughly viscous and well intact. <<SymbioteName>> remains closely wound to your body, seemingly contented with remaining in its place. \
Satisfied with its standings, your eyes wander down to inspect the rest of it."Looking closer, <<SymbioteName>> drips slightly like thick, melting wax. Droplets of goo drip from your face in small, but dense clumps. \
You are increasingly aware of the slick feeling of running goop all over you. Wiping some excess goo off of your face, it sloughs off in clumps as you shake your arm free of the goop. \
<<SymbioteName>> almost seems like it’s trying to escape from you, as if it wanted more from the world that lies past the bounds of your body.<<SymbioteName>> is extremely runny, slick and slimy. Gentle streams of goo run down your face and all over your body as you try to shake it off reflexively. \
To no avail, there’s a notable puddle of goo forming at the base of your stance, but the volume of <<SymbioteName>> seemingly remains unchanged. \
<<SymbioteName>> trembles with need, filled with carnal desire, longing for release.Cascades of goo stream across your face in a constant downpour. <<SymbioteName>> has become a writhing mass of permeable fluid, barely intact as it drips everywhere. \
An incessant trail of slime lingers in your wake, which seemingly has no effect on <<SymbioteName>> volume. <<SymbioteName>> demands satisfaction, desperate for another toy to play with. Who would you be to not give into the thought?Below the waist, you sport @[all| legs| noverb]. You raise one, proudly, before bringing your foot back to the ground with a heavy stomp. The sound of heavy weight compacting sand is quite satisfactory. \
You admire the contour of each teardrop of your thighs and the diamond shape of each calf. It doesn't take long before you find yourself worshipping your body, running your hand over each mound. \
You flex and feel the ravines of your body consume your fingers and how each crest pushes against your palm.Below the waist, you sport @[all| legs| noverb]. You raise a proud knee before bringing your foot back to the ground with a heavy stomp. The sound is heavy, and far more powerful than it was before. \
You admire the contour of each teardrop of your thighs and the diamond shape of each of your calves. It doesn't take long before you find yourself worshipping your body, running your hand over each mound. \
You flex each and feel the ravines of your body consume your fingers and how each crest pushes against your palm. Your muscles have grown large enough that you could trap your own finger between two muscles if you weren't careful.Below the waist, you sport @[all| legs| noverb]. You raise one, proudly, before bringing your foot back to the ground with a heavy stomp. A resounding boom echoes across the land as the earth beneath your foot splinters and cracks. \
You enjoy being a giant and the feeling of power it gives you. You admire the contour of each teardrop of your thighs and the diamond shape of each of your calves. \
It doesn't take long before you find yourself worshipping your body, running your hand over each mound. \
It takes longer for your hand to fully caress the entirety of every muscle. There is so much to explore and even more than that when \
you flex! Your legs feel like granite and in fact, could probably bend titanium with ease.Below the waist, you sport @[all| legs| noverb]. You raise one, proudly, but hesitate before bringing your foot back to the ground, softly. \
A resounding boom echoes across the land as the earth beneath your foot splinters and cracks. It seems you have compacted so much mass into each pillar-like leg that the \
ground can barely hold its own agains you, even when you were being gentle! You are a titan supported by the massive foundations. \
You admire the contour of each teardrop and the diamond shape of each of your calves. It doesn't take long before you find yourself worshipping your body, running your hand over each mound. \
It's difficult to reach every muscle, they're simply too gargantuan! \
Every one of your limbs are limited by the sheer amount of muscle on them as it is, but the awkward angle you would need to feel the underside of your leg was now virtually impossible. \
That's just fine for you, because when you flex your legs, you can feel the very air quiver in fear of what they can do.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. You raise a leg, proudly before bringing your foot back to the ground with a heavy stomp. \
The gooey texture of your body holds its form well enough. You admire the contour of each teardrop of the thighs and the diamond shape of each calf. \
It doesn't take long before you find yourself worshipping <<SymbioteName>>'s body, running your hand over each mound. \
You flex and feel the ravines of <<SymbioteName>> body consume your fingers and how each crest pushes against your palm.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. You raise a proud knee before bringing your foot back to the ground with a heavy stomp. \
The gooey texture of your body holds its form well enough despite the bulk of its body. You admire the contour of each teardrop of your thighs and the diamond shape of each of your calves. \
It doesn't take long before you find yourself worshipping <<SymbioteName>>'s body, running your hand over each mound. \
You flex each and feel the ravines of your body consume your fingers and how each crest pushes against your palm. \
The pseudo muscles have grown large enough that you could easily trap your own finger within the creases of the musculature.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. You raise a leg proudly before bringing your foot back to the ground with a heavy stomp. \
The gooey texture of your body quivers before the quake and thundering crash of your efforts. \
Once the quaking of your gooey form subsides, you admire the contour of each teardrop of your thighs and the diamond shape of each of your calves. \
It doesn't take long before you find yourself worshipping <<SymbioteName>>'s body, running your hand over each mound. It takes longer for your hand to fully caress the entirety of every muscle. \
There is so much to explore and even more than that when you flex! <<SymbioteName>> is definitely more than sturdy enough to match the sheer volume of its size.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. You raise one, proudly, but hesitate before bringing your foot back to the ground, softly. \
A resounding boom echoes across the land as the earth beneath your foot splinters and cracks. The sheer volume of <<SymbioteName>>'s mass feels endless. Truly a gargantuan, you can’t help but enjoy the size of the gooey form. \
You admire the contour of each teardrop and the diamond shape of each of its calves. \
It doesn't take long before you find yourself worshipping <<SymbioteName>>'s body, running your hand over each mound. It's difficult to reach every muscle, <<SymbioteName>> is simply too gargantuan! \
Every one of your limbs are limited by the sheer amount of bulk on them as it is, but the awkward angle you would need to feel the underside of your leg was now virtually impossible. \
All is not lost, for even the very world seems to quiver before <<SymbioteName>>'s gargantuan size.The legs themself are very well compacted. <<SymbioteName>> has molded its body closely together and is free of imperfections, content with clutching onto itself tightly.The legs themself have a clumpy texture, like thick, melty wax. <<SymbioteName>> seems interested in exploring the bounds outside of its own body as dense clumps of goo slough off of the legs with each step.The legs themself are very runny, gentle streams of goo run down your form, merging into the puddle that forms beneath you when you stay in one place too long. \
Despite this, <<SymbioteName>> doesn’t lose any volume. \
It would seem almost as if they were trying to escape from you with each droplet, as if it was eager to escape the bounds of your body and spread its influence across the land.The legs themself constantly cascade with a downpour of goo from every pore. Even with only mere moments of stillness, a noticeable puddle of goo has formed within your wake. \
Despite this, <<SymbioteName>> doesn’t lose any volume, displaying the sheer force of will and control over its mentality. \
<<SymbioteName>> craves release with every moment, desperate to spread its presence and find new toys to play with.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. \
With eagerness, it raises a leg proudly before bringing its foot back to the ground with a heavy stomp, admiring the crash of its body against the ground. The gooey texture of your body holds its form well enough. \
<<SymbioteName>> admires the contour of each teardrop of the thighs and the diamond shape of each calf. \
It doesn't take long before <<SymbioteName>> is simply worshipping its body, running its hand over each mound of flesh. \
It flexes and fondles the ravines of its own body, enthralled by self admiration.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. \
With eagerness, It raises a proud knee before bringing your foot back to the ground with a heavy stomp, admiring the crash of its body against the ground. \
The gooey texture of your body holds its form well enough despite the bulk of its body. \
<<SymbioteName>> admires the contour of each teardrop of its thighs and the diamond shape of each of its calves. \
It doesn't take long before you find yourself worshipping <<SymbioteName>> body, running your hand over each mound. \
It flexes each muscle to feel the ravines of its body consume its fingers and the way each crest presses against its palm. \
The pseudo muscles have grown large enough for <<SymbioteName>> to worship contentedly, captivated by self admirationBelow the waist <<SymbioteName>> sports @[all| legs| noverb]. With eagerness, It raises a leg proudly before bringing its foot back to the ground with a heavy stomp. \
The gooey texture of your body trembles before the quake and thundering crash of your efforts. \
Once the quivering of your gooey form subsides, <<SymbioteName>> admires the contour of each teardrop of its thighs and the diamond shape of each of its calves. \
It doesn't take long before <<SymbioteName>> is simply worshipping its body, running its hand over each mound. It takes longer for its hand to fully caress the entirety of the massive bulk. \
There is so much to explore and even more than that when it flexes. \
<<SymbioteName>> is admiring the efforts of its bulk and enjoying the shifting of its body with each flex. It continues the self admiration grope fest, enraptured by its own body.Below the waist <<SymbioteName>> sports @[all| legs| noverb]. \
With eagerness, it raises one, proudly before bringing its foot back to the ground. A resounding boom echoes across the land as the earth beneath your foot quakes. \
The sheer volume of <<SymbioteName>>'s mass feels endless. Truly a gargantuan, <<SymbioteName>> can’t help but enjoy the size of its form. \
It admires the contour of each teardrop and the diamond shape of each of its calves. It doesn't take long before <<SymbioteName>> is simply worshipping its body, running its hand over each mound. \
It's difficult to reach every muscle, <<SymbioteName>> is simply too gargantuan. \
Every one of its limbs are limited by the sheer amount of bulk on them as it is, but the awkward angle <<SymbioteName>> would need to feel the underside of your leg was now virtually impossible. \
<<SymbioteName>> makes an attempt to continue its self admiration nonetheless with constant groping, completely enraptured by its own body.Your eyes follow every curve of your neck down toward your body, proper. You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive \
control.You raise your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to truly make each bicep rise. You then bring them forward to touch your sensitive nipples, \
running your fingers across the edge of the circular nubs.Moaning from the pleasure, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. Your every movement causes them to shift and bulge.Your eyes follow every curve of your neck down toward your body, proper. You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive \
control. You can feel their weight as they rise and fall - you can even get a small ripple of muscle to run from the top of each pec to the bottom!
You raise your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to truly make each bicep rise. \
You can hear audible creaks from your bones and flesh as your muscles' size puts strain on them. You then bring them forward to touch your hard and sensitive, nipples, \
running your fingers across the fairly sized nubs - nubs large enough to grip and squeeze. You moan from the pleasure.
After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. Your every movement causes them to shift and bulge. \
Your laterals are now large enough to push your arms upwards and outwards giving you an imposing and brawny stance.Your eyes follow every curve of your neck down toward your body, proper. You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive \
control. You can feel their heavy weight as they rise and fall with loud shudders. Each vein and chord is incredibly visible with the sheer amount of mass focused into each pec!
You raise your @[all| arms| noverb] into a monstrous flex, curling your @[2| hands| noverb] inwards to truly make each bicep rise like hills. \
You can hear audible creaks from your bones and flesh as your muscles strain your skin enough that each vein becomes clearly visible. They are thick firehoses that sprawl all across your form - juicy highways providing the huge amount of \
fuel your body now needs. Lowering your arms, you bring them forward to touch your hard and sensitive, nipples, \
running your fingers across the large protroding nubs. They take up a fair portion of the space within your hand. You moan.
After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. Your every movement causes them to shift and bulge. \
Your laterals now force your arms up to the point that your shoulders are encroaching on your neck's territory. Your figure forms an almost perfect Y-shape, the pinnacle of form.Your eyes follow every curve of your neck down toward your body, proper. You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive \
control. The very air thunders as each muscle creates small shockwaves of force. Every vein and chord is incredibly visible with the impossible amount of mass focused into each pec!
You raise your @[all| arms| noverb] into a mind-shattering and monstrous flex, curling your @[2| hands| noverb] inwards. Muscles that shouldn't exist rise alongside your mountainous bicep and conduct an \
orchestra of creaking flesh - the sound a metal bunker would make if it had to bend and teeter. Thick firehose veins sprawl all across your form and visibly pulsate with the huge amount of \
fuel your body now needs.
Lowering your arms, you bring them forward to touch your hard and sensitive nipples, \
running your fingers across massive protroding nubs. You grab a handful of nipple and squeeze, your body instantly tensing into a cluster of bulging muscle. You moan as your head is all but swallowed.
After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. With a mischievious booming laugh, you flex them \
and create a thundering clap that rivals thunder itself. Finally, you bring each arm down into a most-muscular pose and feel your back and laterals flare out so widely that your vision is completely engulfed by your own body!Your eyes follow every curve of <<SymbioteName>>'s neck down toward its body. \
You bring your shoulders backwards and push out <<SymbioteName>>'s @[all| pecs| noverb], as the glistening muscles bounce with control. \
You raise your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to make the biceps rise. \
You then bring them forward to touch your pliable nipples, running your fingers across the edge of the gooey, circular nubs. \
Moaning from the pleasure, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. Your every movement causes them to shift and bulge.Your eyes follow every curve of <<SymbioteName>>'s neck down toward its body, proper. \
You bring your shoulders backwards and push out <<SymbioteName>>'s @[all| pecs| noverb], bouncing each muscle with impressive control. \
You can feel the weight as it rises and falls. Even with the gooey texture, you can even get a small ripple of muscle to run from the top of each pec to the bottom. \
You raise your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to truly make each bicep rise. \
You can hear audible sloshing from the movement of the faux musculature as its size fights against itself. \
You then bring them forward to touch <<SymbioteName>> soft and pliable, nipples, running your fingers along the areola. \
You moan from the pleasure. After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. \
Your every movement causes them to shift and bulge. The laterals are large enough to push your arms upwards and outwards giving you an imposing and brawny stance.Your eyes follow every curve of <<SymbioteName>>'s neck down toward its body. \
You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive control. \
You can feel their heavy weight of the perfectly chiseled pectorals as they rise and ripple with each fall. \
You raise your @[all| arms| noverb] into a monstrous flex, curling the @[2| hands| noverb] inwards to truly make each bicep rise like hills. \
You can hear audible sloshing from the movement of the needlessly enormous musculature as its size fights against itself. \
These arms are truly a glorious, massive, perfectly built masterpiece. Lowering your arms, you bring them forward to touch your hard and sensitive, nipples, running your fingers across the large protroding nubs. \
They take up a fair portion of the space within your hand. You moan. After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your gooey @[all| abdominals| noverb]. \
Your every movement causes them to shift and bulge. Your laterals now force your arms up to the point that your shoulders are encroaching on your neck's territory. <<SymbioteName>> figure forms an almost perfect Y-shape, the pinnacle of form.Your eyes follow every curve of <<SymbioteName>>'s neck down toward its body. You push your shoulders backwards and push out your @[all| pecs| noverb], bouncing each muscle with impressive control. \
The very air thunders as each muscle creates small shockwaves of force. The enormous pecs are gloriously dense and sculpted with the precision that’d make the finest craftsmanship seem like fodder before them. \
You raise your @[all| arms| noverb] into a mind-shattering and monstrous flex, curling your @[2| hands| noverb] inwards. \
Muscles that shouldn't exist rise alongside the mountainous bicep, the goo holds firmly in place, nearly warping the light around it by its sheer volume. \
The faux musculature is admirable nonetheless, inspiring awe to any onlooker. Lowering your arms, you bring them forward to touch your hard and sensitive nipples, running your fingers across massive protroding nubs. \
You grab a handful of nipple and squeeze, the gooey body instantly tensing into a cluster of bulging muscle. You moan as your head is all but swallowed. \
After a minute of fondling, you let your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. With a mischievous booming laugh, you flex them and create a thundering clap that rivals thunder itself. \
Finally, you bring each arm down into a most-muscular pose and feel your back and laterals flare out so widely that your vision is completely engulfed by the size of the goo.Your eyes meander around the goo covering your torso, it is perfectly intact, clean and unblemished. <<SymbioteName>> seems content on keeping the shape of its upper body clean and stable.Your eyes meander around the goo covering your torso, it drips slightly, like a wax candle that has just begun to melt. The clumps of goo slough whenever you bring a hand to wipe it off. \
<<SymbioteName>> seems restless, almost as if it wanted to escape but didn’t care enough to make a full attempt.Your eyes meander to the running goo across your torso. It flows in constant, but gentle streams. It almost gives the sensation of sweat constantly pouring down your chest. \
<<SymbioteName>> is trembling softly, it’s form becoming increasingly more amorphous and unstable.Your eyes meander to the constant dripping of goo from your torso. <<SymbioteName>> has become reckless, its form is unstable and trembles with need. \
A constant downpour of goo leaks from its pores, making the body feel slick and slimy. <<SymbioteName>> is restless, needy, desperate for attention or a new toy to mess with.Your eyes follow every curve of <<SymbioteName>> neck down toward its body. <<SymbioteName>> springs into action as it continues to admire itself. \
It brings your shoulders backwards and puffs out its @[all| pecs| noverb] as the glistening muscles bounce with control. \
<<SymbioteName>> raises your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to make the biceps rise. \
<<SymbioteName>> is positively loving every moment of its self admiration. \
Soon enough, <<SymbioteName>> then brings its hand forward to touch its pliable nipples, running its fingers across the edge of the gooey, circular nubs. \
After forcing a moan of pleasure from you, it glides its hands down to your lower torso to feel each curve of its @[all| abdominals| noverb]. Your every movement causes them to shift and bulge.Your eyes follow every curve of <<SymbioteName>> neck down toward its body. <<SymbioteName>> springs into action as it continues to admire itself. \
<<SymbioteName>> brings your shoulders backwards and puffs out its @[all| pecs| noverb], bouncing each muscle with impressive control. \
You can feel the weight as it rises and falls. Even with the gooey texture, you can even get a small ripple of muscle to run from the top of each pec to the bottom. \
<<SymbioteName>> raises your @[all| arms| noverb] into a powerful flex, curling your @[2| hands| noverb] inwards to truly make each bicep rise. \
You can hear audible sloshing from the movement of the faux musculature as its size fights against itself. <<SymbioteName>> is positively loving every moment of its self admiration. \
Soon enough, it brings its arms forward to touch its soft and pliable, nipples, running your fingers along the areola. \
After forcing a moan of pleasure from you, <<SymbioteName>> lets its hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. \
Your every movement causes them to shift and bulge. The laterals are large enough to push your arms upwards and outwards giving <<SymbioteName>> a large and very muscular stance.Your eyes follow every curve of <<SymbioteName>> neck down toward its body. <<SymbioteName>> springs into action as it continues to admire itself. \
It pushes your shoulders backwards and puffs out its @[all| pecs| noverb], bouncing each muscle with impressive control. \
You can feel their heavy weight of the perfectly chiseled pectorals as they rise and ripple with each fall. \
<<SymbioteName>> raises your @[all| arms| noverb] into a monstrous flex, curling the @[2| hands| noverb] inwards to truly make each bicep rise like hills. \
You can hear audible sloshing from the movement of the needlessly enormous musculature as its size fights against itself. These arms are truly a glorious, massive, perfectly built masterpiece. \
<<SymbioteName>> is positively loving every moment of its self admiration. Lowering your arms, <<SymbioteName>> brings them forward to touch its hard and sensitive, nipples, running your fingers across the large protroding nubs. \
They take up a fair portion of the space within your hand. After forcing a moan of pleasure from you, it lets your hands glide down to your lower torso to get a feel for each curve of your gooey @[all| abdominals| noverb]. \
Your every movement causes them to shift and bulge. Your laterals now force your arms up to the point that your shoulders are encroaching on your neck's territory. \
<<SymbioteName>> figure forms an almost perfect Y-shape, a perfect display of peak form.Your eyes follow every curve of <<SymbioteName>> neck down toward its body. <<SymbioteName>> springs into action as it continues to admire itself. \
It pushes your shoulders backwards and puffs out its @[all| pecs| noverb], bouncing each muscle with impressive control. The very air thunders as each muscle creates small shockwaves of force. \
The enormous pecs are gloriously dense and sculpted with the precision that’d make the finest craftsmanship seem like fodder before them. \
<<SymbioteName>> raises your @[all| arms| noverb] into a monstrous flex, curling your @[2| hands| noverb] inwards. \
Muscles that shouldn't exist rise alongside the mountainous bicep, the goo holds firmly in place, nearly warping the light around it by its sheer volume. \
The faux musculature is admirable nonetheless, inspiring awe to any onlooker. <<SymbioteName>> is positively loving every moment of its self admiration. \
Lowering your arms, it brings them forward to touch your hard and sensitive nipples, running its fingers across the massive protroding nubs. \
<<SymbioteName>> grabs a handful of its pectoral and squeezes, the gooey body instantly tensing into a cluster of bulging muscle. \
Your head is all but swallowed beneath its tremendous form. After forcing a moan of pleasure from you, <<SymbioteName>> lets your hands glide down to your lower torso and feel each curve of your @[all| abdominals| noverb]. \
<<SymbioteName>> flexes them and creates a thundering clap with volume that’d cause anyone within its presence to tremble. \
Finally, <<SymbioteName>> brings each arm down into a most-muscular pose as its back and laterals flare out so widely that your vision is completely engulfed by the size of the goo.<<SymbioteName>> seems to be enjoying all of the attention it’s getting.<<SymbioteName>> is loving all of the attention you’re feeding them.<<SymbioteName>> idly strokes its body teasingly, as if to entice you.<<SymbioteName>> constantly fondles its own body in admiration, positively starved for attention.You gaze into the polished surface.You shift backwards and forwards, gazing at what parts of your body fit within the image on the polished slate.You step over the wall. Soon, you find yourself gazing at your form in the lake's reflection.You step over the wall. Soon, you find yourself gazing at the parts of your form that fit in the lake's reflection.The goo form that covers your body is reflected in the polished surface of the slate.The slick and gooey body reflected that barely fits in the polished surface.The lake holds your gooey form in its reflection.What little you can see in the lake shows off your gargantun gooey form.You travel to your house a few streets down. The one story house is not much, but you're proud of it. Every metal wall \
was made with your own blood sweat and tears.
You slide in through the dusty corrugated door and into the house proper. \
Inside is a few pieces of furniture you've managed to cobble together. In the one corner, your bed rests under a small dirt speckled window.
In the middle, resting on a bearskin rug is a small table made from scrap wood and rubber. Your journal rests on it, its pages yellow with age.
Finally, no room is complete without a mirror. Or, at least, a highly polished metal slate that was good enough to act as one.You travel to your house a few streets down. The one story house is not much, but you're proud of it. Every metal wall \
was made with your own blood sweat and tears.
You slide in through the dusty corrugated door and into the house proper. \
You smile as you realise how much of the doorway your body occupies and how you have to bend to keep your head from scraping against the roof.
Inside is a few pieces of furniture you've managed to cobble together. In the one corner, your bed rests under a small dirt speckled window. It's looking a bit small compared to you.
In the center of the room, resting on a bearskin rug, is a small table made from scrap wood and rubber. \
Your journal rests on it, its pages yellow with age. Looking at your @[all|hands|noverb], you realise that it might be difficult to use some day.
Finally, no room is complete without a mirror. Or, at least, a highly polished metal slate that was good enough to act as one.You travel to your house a few streets down. How are you meant to fit anymore? One story is not nearly enough for you!
You grab the metal you had once lovingly crafted into a roof and rip it off with a loud screech. At least now, you could step inside if you wanted.
Inside is a few pieces of furniture you've managed to cobble together. In the one corner, your bed rests under a small window cut out of the sheet metal. Now, it would only serve as a dishrag for you.
In the middle, resting on a bearskin rug is a small table made from scrap wood and rubber. Your journal, rests on it. There's no point in even trying to pick it up with your meaty @[1|hands|noverb].
Finally, no room is complete without a mirror. Yet this would do little for you. Perhaps you could step over the walls of the Golden Bastion and use the reflective surface of the nearby lake, instead?No house can contain your size. The building that you had once called home doesn't hold a candle to you anymore.
You can only rely on your memories, your journal is nothing more than a speck far below you.
Luckily, you could easily step over the walls of the Golden Bastion and use the reflective surface of the nearby lake as a mirror, but even that hardly suffices for your sheer bulk.You rush in and attack.You charge in and swing your fist.You stomp forward and swing a massive fist.Your @[all| arms| one=hurtles~more=hurtle] down toward the enemy.A trail of purple energy flows from your knuckles.Each vein in your hand and arm burns with a dark purple hue. Tainted energy rolls off of your skin as tendrils of corrupt light.You quickly bash with your weapon's hilt.You charge in and quickly bash with your weapon's hilt.You stomp forward, fully extending your arm from the side of your torso.Your @[1| arms| one=hurtles~more=hurtle] down toward the enemy, bashing wildly with your weapon's hilt.A trail of purple energy flows from your knuckles.Each vein in your hand and arm burns with a dark purple hue. Tainted energy rolls off of your skin as tendrils of corrupt light.You swing your weapon with full force.You charge in and swing your weapon with full force.You stomp forward, twisting your waist and shoulders round before turning back unleasing a mighty swing of your weapon.Your @[all| arms| one=hurtles~more=hurtle] down toward the enemy, unleasing a mighty swing of your weapon.A trail of purple energy flows from your weapon.Each vein in your hand and arm burns with a dark purple hue. Tainted energy rolls off of your weapon as tendrils of corrupt light.muscles harden and pulse with increasing strength. Your biceps form impressive peaks above well defined forearms. Veins begin peeking through your skin \
as they spread across your growing shoulders and neck. Your @[all|pecs|noverb] push outwards, your nipples harden and a moan escapes your mouth as the growth tumbles downward \
like a fresh breath of air through your @[all|abdominals|noverb], thighs and calves.athletic form hardens as every muscle contracts into picturesque beauty. Every line and crease deepens as the power flowing through you forces your body to \
adapt. Your laterals spread wider, your abdominal wall pushes outwards and your upper body swells with growing, physical pride.body convulses as an internal fire spreads outwards from your core and to each limb. Your body freezes, momentarily before a wellspring of growth overtakes you. \
Calves bulge, quads expand and your upper body surges with strength to keep up.expression shifts into a pleasurable smile. Looking down at your hands, you watch a bubble of growth move from your fingertips, \
across your @[all|arms|noverb] and into your @[all|pecs|noverb]. \
Your nutsack rumbles and your @[all|cocks|one=fire~more=fires] an unattural amount of cum. Every jet of white, every convulsion, propels your body upwards and outwards.body shudders and you double over. Your knees hit the ground as you are assaulted by a wave of intense pleasure. \
Every burgeoning muscle flexes, each crest and trough grows into mounds that could only be crafted with years of dedication. \
Your @[all|arms|noverb] push out larger with more strength, your back becomes an atlas of muscle - your @[all|pecs|noverb] begin pushing your growing nipples earthbound and your \
@[all|abdominals|noverb] bulge with increased size.mouth spreads into a wide grin as a surreal purple glow spins across the edges of your @[2|eyes|noverb]. Veins swell all over your body. Not moments later, your cock rises as your limbs pack on \
weight and size. What was once ample, is now in excess. What was once well defined, is now barelling. You flex your bicep, watching it rise higher and higher. \
A sinister smile spreads wide across your face - this is only the beginning.cock hardens to full mast as a sudden growth spurt overtakes your body. You quickly wrap your @[all|arms|noverb] around your chest to feel your @[all|pecs|noverb] compete with your biceps. \
Wave after wave, your arms push away from your chest - the sheer size being compressed into each muscle group is unfathomable! Your @[all|legs|noverb] adopt a wider stance as the war continues below \
with your quads, expanding glutes and growing calves.body spasms as your powerful muscles all flex at once. Your bull like neck pulses larger and begins to threaten the sides of your @[all|heads|noverb]. Your @[all|pecs|noverb] swell outwards in \
leaps and bounds over a growing and impressive set of @[all|abdominals|noverb]. Your hands rove across each expanding inch of flesh, feeling your skin stretch tighter against \
chords of steel that thicken with every passing second.body shudders. Every boulder contained within you rumbles with an ominous wave of incoming growth. \
Your biceps explode from raw, uncontained power. They barrel outwards until their pulsing peaks began to reach sizes that \
are clearly unnatural. Each pectoral grows large enough to be a shelf, and they bounce eagerly as they consume more and more space in front of you. Your large nipples are forced \
further sideways and downwards as their hosts pulsate larger and larget still! Thick thighs and glutes become even thicker, pillars that would easily support houses are \
increasing in size before your very eyes!bones crack audibly. Growth is upon you yet again, and this wave was even stronger than your last! With a booming thud, your muscles explode with new size \
- too much and too fast for your body to keep up with! The growth begins running rampant; each second packs on more and more until limbs begin to lock \
and grind against each other from the lack of free space. With a primal roar, you flex, a beastly mountain of mass, and will it all to compact inwards. \
Control was regained but your body has far from relented your new incredible atlassian size.mouth opens wide as a primordial roar bellows from your growing maw. Bending down, you slam your fist into the ground and a wave of size propells itself \
upwards from the cracked earth; up your forearm, bicep and into your bullish neck. Your @[all|pecs|noverb] push further outwards, forcing your center of gravity forward before \
your waist expands into a pillar of power to support your new torso. Sliding outwards from the ground behind you; your @[all|legs|noverb] push each other apart, massaging and \
grinding against your @[all|cocks|noverb]. The pleasure is too much! With another ear-splitting roar, you arch your back and unleash a torrential geyser of white.jaw bobs in maniacal laughter as you feel the power within yourself erupt. Like waves from the surface of disturbed water, your entire body groans, creaks and shifts \
as mucles begin to pack onto muscles. Chords thicken and roadworks of veins the size of heavy duty pipes spiral across your pulsating flesh. With a mighty stomp \
your growing foot hits the ground; forcing a monstrous wave of size upwards through your calves, into your thighs and finally into your bulging muscular rear. Finally, bringing \
your @[all|hands|noverb] together in a mighty clap, your upper body explodes to double its size!movements halt. A deadly silence overtakes the land that you tower over. A rumbling. The sound of war drums - the sound of the planet roaring its protest against your \
impending change. Then it happens. Mountains that are biceps double in size. Pectorals that quake with every minor shift billow outwards. Nipples - hard, large and sensitive \
are exiled into the deepening valley between them and an entire canyon of @[all|abdominals|noverb]. Laterals that were wings, were forced wider. Back muscles that \
ripple with pure power, expand. Arms that could crush villages grow into monstrosities that the world could never contend with. Your @[all|cocks|noverb], large and heavy with muscle \
slowly swings into the air; its growing mass forces your stance even wider. Another rumble. Another catastrophy. Rivers of white explode from its tip into a deluge \
that coats you, the ground and every object close enough to suffer the titanic load unleashed from your @[all|balls|noverb].@[all|arms|noverb] fall limp at your side. A loud rumbling, akin to the mighty growl of a beast in heat, begins to echo across the land. A dark shadow - the silhouette of \
your monstrous form begins to shudder. The Golden Bastion, those around it, will all bear witness as you suddenly shiver. A crack, as loud as thunder \
rockets through the air as you grow. Thunderous booms echo around you; every explosive sound heralds your titanic bones reshaping themselves to create more space. Your shadow grows with every shudder and \
covers more and more of the land. Higher. Wider. There are no human words to describe your size, no words that exist to describe the mass within your being - \
no measurement of how much weight sits within your collosal and expanding form.@[all|cocks|one=stiffens~more=stiffens]. An unfathomably large spurt of pre jettisons from your @[all|cocks|one=slit~more=slits] and pools in the lands far below you. The air becomes hot as a thick \
umistakeable aura of power coats the insides of your nostrils. To the world's surprise, you shudder and balloon outwards \
in every direction. Your forearms are a perfect pair of spheres of unadulterad power, pushing against growing biceps and triceps that have long since dwarfed your @[all|heads|noverb]. Your \
towering masses flex upwards and expand outwards, packing on new muscle groups that have never been known to mankind. Your neck surges outward, practically engulfing the sides of your vision. \
Impressive laterals surge outwards, forming an incredibly powerful, yet impossible, Y-shape. @[all|legs|noverb], as built as the foundations of the world, \
explode into sizes of which no words can describe.body shivers as another wave of growth approaches. More size. Bigger. You have to be bigger! You crave so much more! Your body surges even larger, responding to your will. \
A prideful smile stretches your lips wide; you will become all consuming, ever-growing! Only the gods could try to stop you, but by then - you will be unstoppable. \
You will be more. A building is an insufficient measurement compared to the muscles you now support \
, at least they are now after they split into even more muscle groups of absolute mind blowing size and power. Adjectives - words to help mortals describe concepts will never capture \
the immensity each of your biceps peak at. Each proud muscle, expanding with every passing second, escalates from weapon of mass destruction, to world ending. You still need more. You will have more!Your @[all|cocks|one=throbs~more=throb], harder than it ever has. You look down, feeling each vein engorge with unnatural thickness. \
Then it hits you, a wave of pleasure grows from the base of your loin. Your shaft pulsates wildly as it expands thicker and longer. \
Your eyes widen as the growth progresses further up your @[all|cocks|noverb]. \
It's so long, so thick. And it keeps growing, pushing your fingers wider apart.A familiar feeling rushes over you. You grin, looking down at your @[all|cocks|noverb], welcoming a wave of incoming growth. \
It suddenly hits you, like a rush of adrenaline. Your @[all|cocks|one=jolts~more=jolt] forward, hard enough to make you lose your balance. \
Suddenly, it comes. You scream in pleasure as your loin grows thicker and longer. Every beat of your heart, \
every flex of your muscles and every breath feed it with more heavy, throbbing flesh. You try to grasp at your @[all|cocks|noverb] with both hands, \
failing to fully handle your monster as it grows uncontrollably. You throw your head back, moaning deeply enough to cut your breath short.Suddenly, your @[all|cocks|one=throbs~more=throb]. The sheer need for attention of your monster overwhelms you. \
You try to grasp the base; you can only tremble in anticipation. \
Your @[all|cocks|one=is~more=are] so hot, so full and thick. You shiver at the thought of growing even bigger. \
Jolts of pleasure pulsate from your @[all|cocks|noverb] as it starts growing. You desperately try to grasp and pleasure the throbbing flesh, but it is too massive for your hands to contain. \
You push down and thrust your hips along the ground. The sheer mass of your @[all|cocks|noverb] is still incredibly sensitive; you moan in pleasure as it pushes outward, bigger and bigger. \
You slide your fingers along your slit and moan passionately. Bolts of pleasure pierces you with every contact, \
precum leaks out of your monstrous cock like a damaged dam. Your @[all|cocks|one=grows~more=grow] bigger than you thought possible. \
Your loin is gigantic, monstrous even; finding anything that can handle you will be a challenge.You feel something coming, something tremendous... A familiar warmth rushes over you; your loin burns with anticipation. \
It keeps building, tingles of pleasure spread from your @[all|cocks|noverb]. This wave of incoming growth is greater than a roaring sea, \
and it keeps building, threatening to swallow you in its eternal pleasure. \
But you welcome it... You grin madly at your monstrous @[all|cocks|noverb] with an unatural eagerness. And then it happens. \
Your @[all|cocks|one=explodes~more=explode] in size, mountains of sensitive flesh burst upwards along your pecs. You rub it passionately, each touch bringing you close to the edge. \
Your veins grow massive, feeding your @[all|cocks|noverb] with untold power. A roar of triumph bursts out of you as your @[all|cocks|noverb] takes over the scenery. \
Everything and everyone gets exposed to the glorious beast you're packing. They can only stare in awe as the ground rumbles; \
your @[all|cocks|one=strains~more=strain], the land braces. Your roars resound throughout the land as an ocean of potent $CharacterSheet_Player.symbiote.color cum comes raining down on this world once again.<<set setup.TextSheet_Player =
{
jormFirstMeeting :{
heightFlavour: {
small: [
"Jorm_FirstMeeting_PlayerSmall"
],
medium: [
"Jorm_FirstMeeting_PlayerSmall"
],
large: [
"Jorm_FirstMeeting_PlayerBig"
],
huge: [
"Jorm_FirstMeeting_PlayerBig"
],
}
},
mergeLost1 :{
heightFlavour: {
small: [
"_player_text_sheet_mergeLost1_heightFlavour_small"
],
medium: [
"_player_text_sheet_mergeLost1_heightFlavour_medium"
],
large: [
"_player_text_sheet_mergeLost1_heightFlavour_large"
],
huge: [
"_player_text_sheet_mergeLost1_heightFlavour_huge"
],
}
},
lostKiss :{
heightFlavour: {
small: [
"_player_text_sheet_lostKiss_heightFlavour_small"
],
medium: [
"_player_text_sheet_lostKiss_heightFlavour_medium"
],
large: [
"_player_text_sheet_lostKiss_heightFlavour_large"
],
huge: [
"_player_text_sheet_lostKiss_heightFlavour_huge"
],
}
},
lostFuck2 :{
heightFlavour: {
small: [
"_player_text_sheet_lostFuck2_heightFlavour_small"
],
medium: [
"_player_text_sheet_lostFuck2_heightFlavour_medium"
],
large: [
"_player_text_sheet_lostFuck2_heightFlavour_large"
],
huge: [
"_player_text_sheet_lostFuck2_heightFlavour_huge"
]
}
},
lostFuck1 :{
heightFlavour: {
small: [
"_player_text_sheet_lostFuck1_heightFlavour_small"
],
medium: [
"_player_text_sheet_lostFuck1_heightFlavour_medium"
],
large: [
"_player_text_sheet_lostFuck1_heightFlavour_large"
],
huge: [
"_player_text_sheet_lostFuck1_heightFlavour_huge"
]
}
},
lostWin1 :{
heightFlavour: {
small: [
"_player_text_sheet_lostWin1_heightFlavour_small"
],
medium: [
"_player_text_sheet_lostWin1_heightFlavour_medium"
],
large: [
"_player_text_sheet_lostWin1_heightFlavour_large"
],
huge: [
"_player_text_sheet_lostWin1_heightFlavour_huge"
],
},
},
mirror_player_CrotchFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_CrotchFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_CrotchFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_CrotchFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_CrotchFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt50:
[
"_player_text_sheet_mirror_player_CrotchFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_player_CrotchFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_player_CrotchFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_CrotchFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt50:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_player_mirror_symbiote_CrotchFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_player_TailFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_TailFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_TailFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_TailFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_TailFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt50:
[
"_player_text_sheet_mirror_player_TailFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_player_TailFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_player_TailFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_TailFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_TailFlavour_LiveForEcho: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_LiveForEcho_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_LiveForEcho_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_LiveForEcho_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_TailFlavour_LiveForEcho_heightFlavour_huge"
]
}
},
mirror_player_WingsFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_WingsFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_WingsFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_WingsFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_WingsFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt50:
[
"_player_text_sheet_mirror_player_WingsFlavour_corruptionFlavour_corrupt50",
],
corrupt75:
[
"_player_text_sheet_mirror_player_WingsFlavour_corruptionFlavour_corrupt75",
],
corrupt100:
[
"_player_text_sheet_mirror_player_WingsFlavour_corruptionFlavour_corrupt100",
]
}
},
mirror_symbiote_WingsFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_WingsFlavour_LiveForEcho: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_LiveForEcho_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_LiveForEcho_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_LiveForEcho_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_WingsFlavour_LiveForEcho_heightFlavour_huge"
]
}
},
mirror_player_HornsFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_HornsFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_HornsFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_HornsFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_HornsFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt50:
[
"_player_text_sheet_mirror_player_HornsFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_player_HornsFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_player_HornsFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_HornsFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_HornsFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_player_HeadFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_HeadFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_HeadFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_HeadFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_HeadFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_player_HeadFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_player_HeadFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_player_HeadFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_player_HeadFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_HeadFlavour: {
corruptionFlavour: {
corrupt25:
[
"_player_text_sheet_mirror_symbiote_HeadFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_HeadFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_HeadFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_HeadFlavour_corruptionFlavour_corrupt100"
]
},
},
mirror_player_LowerBodyFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_LowerBodyFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_LowerBodyFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_LowerBodyFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_LowerBodyFlavour_heightFlavour_huge"
]
}
},
mirror_symbiote_LowerBodyFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_LowerBodyFlavour_LiveForEcho: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_LiveForEcho_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_LiveForEcho_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_LiveForEcho_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_LowerBodyFlavour_LiveForEcho_heightFlavour_huge"
]
}
},
mirror_player_UpperBodyFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_UpperBodyFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_UpperBodyFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_UpperBodyFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_UpperBodyFlavour_heightFlavour_huge"
]
}
},
mirror_symbiote_UpperBodyFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_corruptionFlavour_corrupt100"
]
}
},
mirror_symbiote_UpperBodyFlavour_LiveForEcho: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt25:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_corruptionFlavour_corrupt25"
],
corrupt50:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_corruptionFlavour_corrupt50"
],
corrupt75:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_corruptionFlavour_corrupt75"
],
corrupt100:
[
"_player_text_sheet_mirror_symbiote_UpperBodyFlavour_LiveForEcho_corruptionFlavour_corrupt100"
]
}
},
mirror_player_Flavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_player_Flavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_player_Flavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_player_Flavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_player_Flavour_heightFlavour_huge"
]
}
},
mirror_symbiote_Flavour: {
heightFlavour: {
small:
[
"_player_text_sheet_mirror_symbiote_Flavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_mirror_symbiote_Flavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_mirror_symbiote_Flavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_mirror_symbiote_Flavour_heightFlavour_huge"
]
}
},
homeFlavour: {
heightFlavour: {
small:
[
"_player_text_sheet_homeFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_homeFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_homeFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_homeFlavour_heightFlavour_huge"
]
}
},
visitHouse: {
heightFlavour: {
small:
[
"player_visitHouse_heightFlavour_small"
],
medium:
[
"player_visitHouse_heightFlavour_medium"
],
large:
[
"player_visitHouse_heightFlavour_large"
],
huge:
[
"player_visitHouse_heightFlavour_huge"
]
}
},
abelHouseMenu: {
heightFlavour: {
small:
[
"player_abelHouseMenu_heightFlavour_small"
],
medium:
[
"player_abelHouseMenu_heightFlavour_medium"
],
large:
[
"player_abelHouseMenu_heightFlavour_large"
],
huge:
[
"player_abelHouseMenu_heightFlavour_huge"
]
}
},
basicAttackAttemptFlavour: {
heightFlavour:
{
small:
[
"_player_text_sheet_basicAttackAttemptFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_basicAttackAttemptFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_basicAttackAttemptFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_basicAttackAttemptFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt75:
[
"_player_text_sheet_basicAttackAttemptFlavour_corruptionFlavour_corrupt75",
],
corrupt100:
[
"_player_text_sheet_basicAttackAttemptFlavour_corruptionFlavour_corrupt100",
]
}
},
bashAttackAttemptFlavour: {
heightFlavour:
{
small:
[
"_player_text_sheet_bashAttackAttemptFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_bashAttackAttemptFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_bashAttackAttemptFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_bashAttackAttemptFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt75:
[
"_player_text_sheet_bashAttackAttemptFlavour_corruptionFlavour_corrupt75",
],
corrupt100:
[
"_player_text_sheet_bashAttackAttemptFlavour_corruptionFlavour_corrupt100",
]
}
},
slashAttackAttemptFlavour: {
heightFlavour:
{
small:
[
"_player_text_sheet_slashAttackAttemptFlavour_heightFlavour_small"
],
medium:
[
"_player_text_sheet_slashAttackAttemptFlavour_heightFlavour_medium"
],
large:
[
"_player_text_sheet_slashAttackAttemptFlavour_heightFlavour_large"
],
huge:
[
"_player_text_sheet_slashAttackAttemptFlavour_heightFlavour_huge"
]
},
corruptionFlavour:
{
corrupt75:
[
"_player_text_sheet_slashAttackAttemptFlavour_corruptionFlavour_corrupt75",
],
corrupt100:
[
"_player_text_sheet_slashAttackAttemptFlavour_corruptionFlavour_corrupt100",
]
}
},
MuscleGrowthFlavourText :{
musclesFlavour: {
small: [
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_small_1",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_small_2",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_small_3",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_small_4",
],
medium: [
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_medium_1",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_medium_2",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_medium_3",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_medium_4",
],
large: [
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_large_1",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_large_2",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_large_3",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_large_4",
],
huge: [
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_huge_1",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_huge_2",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_huge_3",
"_player_text_sheet_MuscleGrowthFlavourText_heightFlavour_huge_4",
]
}
},
CockGrowthFlavourText :{
cockSizeFlavour:
{
small: [
"_player_text_sheet_CockGrowthFlavourText_cockSizeFlavour_small",
],
medium: [
"_player_text_sheet_CockGrowthFlavourText_cockSizeFlavour_medium",
],
large: [
"_player_text_sheet_CockGrowthFlavourText_cockSizeFlavour_large",
],
huge: [
"_player_text_sheet_CockGrowthFlavourText_cockSizeFlavour_huge",
]
},
}
}>><<set setup.InfoSheet_Symbiote =
{
name: "Echo",
gender: "male",
boost: "height",
color: "Blue",
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DEFAULT,
colour: setup.ColourPool.DEFAULT
}
}
}>><<set setup.FighterSheet_Slime =
{
hp: 80,
stamina: 35,
strength: 10,
critChance: 0,
critDamage: 1.50,
arousalGain: 10,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 12,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_SlimeLunge.id],
fightReward: setup.RewardTier.VERY_LOW,
encounterIntroText: "<<include Encounter_Intro_Slime>>",
encounterStartText: "<<include Encounter_Start_Slime>>",
outcomePlayerWins: "<<include Encounter_Win_Slime>>",
outcomePlayerLoses: "<<include Encounter_Loss_Slime>>"
}>><<set setup.InfoSheet_Slime =
{
name: "Slime",
gender: "other",
corruption: 0,
muscles: 0,
height: 76,
cock: 0,
balls: 0,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy:
{
heads: {
number: 1,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.SYMBIOTE,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_slime_fight_sheet">>
<<include "_slime_info_sheet">>
<<include "_slime_quest_sheet">>
<<include "_slime_text_sheet">>
<<set $CharacterSheet_Slime = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Slime",
info: setup.InfoSheet_Slime,
fight: setup.FighterSheet_Slime,
quest: setup.QuestSheet_Slime,
text: "TextSheet_Slime"})>><<set setup.QuestSheet_Slime =
{
met: false
}>><<set setup.TextSheet_Slime =
{
}>><<set setup.BodyVisualSheet_Torgar =
{
emoteList:
{
normal:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_neutral.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
smiling:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_smiling.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
blushing:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_blushing.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
horny:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_horny.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
sad:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_sad.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
angry:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_angry.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
cumming:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cumming.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_head_cum_white.png",
},
},
cockList :
{
smallest:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_1.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_1_cum.png",
},
small:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_2.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_2_cum.png",
},
medium:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_3.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_3_cum.png",
},
corruptedMedium:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_4.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_4_cum.png",
},
lost:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_5.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_5_cum.png",
},
ascended:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_6.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_dick_6_cum.png",
},
},
bodyList :
{
normal:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_1.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_1_cum.png",
condition: function(character)
{
console.log("small body")
var size = setup.getStatValue(character, "height");
console.log(size)
return character.quest.progress == setup.TorgarProgress.NORMAL || character.quest.progress == setup.TorgarProgress.REDEEMED;
},
headClass: "TorgarSmallBodyHead",
permittedCocks: [
{
cock: "smallest",
cockClass: "TorgarSmallBody1Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio < 0.55;
},
},
{
cock: "small",
cockClass: "TorgarSmallBody2Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return ratio >= 0.55;
},
},
],
},
infected:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_2.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_2_cum.png",
condition: function(character)
{
return character.quest.progress == setup.TorgarProgress.INFECTED || (!character.quest.lost_FullyCovered && character.quest.progress == setup.TorgarProgress.LOST);
},
headClass: "TorgarInfectedBodyHead",
permittedCocks: [
{
cock: "medium",
cockClass: "TorgarInfected2Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return character.quest.blackVeinsOnDick == false;
},
},
{
cock: "corruptedMedium",
cockClass: "TorgarInfected3Cock",
condition: function(character)
{
let ratio = setup.getcockToBodyRatio(character);
return character.quest.blackVeinsOnDick == true;
},
},
],
},
lost:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_3.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_3.png",
condition: function(character)
{
return (character.quest.lost_FullyCovered && character.quest.progress == setup.TorgarProgress.LOST) || character.quest.progress == setup.TorgarProgress.LOST_TEAMMATE;
},
headClass: "TorgarLostBodyHead",
permittedCocks: [
{
cock: "lost",
cockClass: "TorgarLost4Cock",
condition: function(character)
{
return true;
},
},
],
},
ascended:
{
visual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_4.png",
cumVisual: "https://sombreve.github.io/Dawn-of-Corruption-Site/Images/characters/Torgar/portrait_torgar_body_4.png",
condition: function(character)
{
return character.quest.progress == setup.TorgarProgress.ASCENDED;
},
headClass: "TorgarAscendedBodyHead",
permittedCocks: [
{
cock: "ascended",
cockClass: "TorgarAscended5Cock",
condition: function(character)
{
return true;
},
},
],
},
},
}>><<set setup.FighterSheet_Torgar =
{
hp: 120,
stamina: 12,
strength: 10,
critChance: 0,
critDamage: 1.50,
arousalGain: 10,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
minArousal: 0,
staminaRecovery: 4,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id, setup.FightMove_Sigil_Triad.id],
fightReward: setup.RewardTier.LOW,
encounterIntroText: "<<include Encounter_Intro_Torgar>>",
encounterStartText: "<<include Encounter_Start_Torgar>>",
outcomePlayerWins: "<<include Encounter_Win_Torgar>>",
outcomePlayerLoses: "<<include Encounter_Loss_Torgar>>",
teammateSettings:
{
attackTiming: setup.AttackTiming.BEFORE_PLAYER,
},
}>><<set setup.InfoSheet_Torgar =
{
name: "Torgar",
gender: "male",
bodyVisual: "BodyVisualSheet_Torgar",
corruption: 10,
muscles: 40,
height: 81,
cock: 12,
balls: 5,
alive: true,
known: setup.EncounterKnownState.UNKNOWN,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.GREEN
},
jaws: {
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.HALFORC,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_torgar_body_visual">>
<<include "_torgar_text_sheet">>
<<include "_torgar_fight_sheet">>
<<include "_torgar_info_sheet">>
<<include "_torgar_quest_sheet">>
<<set $CharacterSheet_Torgar = setup.CharacterFactory.createCharacter({id: "CharacterSheet_Torgar",
info: setup.InfoSheet_Torgar,
fight: setup.FighterSheet_Torgar,
quest: setup.QuestSheet_Torgar,
text: "TextSheet_Torgar"})>>
<<run $CharacterSheet_Torgar.applyAbilityRuntimeData(setup.Ability_HerculeanBuild)>>
<<run $CharacterSheet_Torgar.applyAbilityRuntimeData(setup.Ability_HerculeanBuild)>><<set setup.QuestSheet_Torgar =
{
met: false,
progress: setup.TorgarProgress.NORMAL,
pureScoring: 0,
lostScoring: 0,
ascendedScoring: 0,
relationshipScoring: 0,
growthMultiplier: 1,
usedVialOnPlayerDick: false,
blackVeinsOnDick: false,
lost_FullyCovered: false,
encounterPassages:
{
lostTeammateIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST_TEAMMATE;
},
passage: "Torgar_Lost_Teammate_EncounterStart",
},
lowRelaMidRelaTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 4;
},
passage: "Torgar_Low_Rela_Mid_Rela_Trigger_EncounterStart",
},
midRelaPathChange:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6;
},
passage: "Torgar_Mid_Rela_Path_Change_EncounterStart",
},
lostPathIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Idle_EncounterStart",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.INFECTED;
},
passage: "Torgar_Mid_Rela_Idle_EncounterStart",
},
lostPathTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6 && setup.evaluateTorgarPath() == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Trigger_EncounterStart",
},
lowRelaIdle_GotBig:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 1;
},
passage: "Torgar_Low_Rela_EncounterStart_Converse",
},
lowRelaIdle_Carry:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 1;
},
passage: "Torgar_Low_Rela_EncounterStart_Converse",
},
lowRelaIdle_Origin:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 1;
},
passage: "Torgar_Low_Rela_EncounterStart_Converse",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 1;
},
passage: "Torgar_Low_Rela_EncounterStart",
},
firstTime:
{
available: true,
condition: function()
{
return true;
},
passage: "Torgar_FirstMeeting_Intro",
},
},
postFightPassagesWin:
{
lowRelaMidRelaTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 4;
},
passage: "Torgar_Low_Rela_Mid_Rela_Trigger_Win",
},
midRelaPathChange:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6;
},
passage: "Torgar_Mid_Rela_Path_Change_Win",
},
lostPathTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6 && State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Trigger_Win",
},
lostPathIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Idle_Win",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.INFECTED;
},
passage: "Torgar_Mid_Rela_Win_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Torgar_Low_Rela_Win_Idle",
},
},
postFightPassagesLoss:
{
lowRelaMidRelaTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 4;
},
passage: "Torgar_Low_Rela_Mid_Rela_Trigger_Loss",
},
midRelaPathChange:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6;
},
passage: "Torgar_Mid_Rela_Path_Change_Loss",
},
lostPathTrigger:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.relationshipScoring >= 6 && State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Trigger_Loss",
},
lostPathIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.LOST;
},
passage: "Torgar_Lost_Path_Idle_Loss",
},
midRelaIdle:
{
available: true,
condition: function()
{
return State.variables.CharacterSheet_Torgar.quest.progress == setup.TorgarProgress.INFECTED;
},
passage: "Torgar_Mid_Rela_Loss_Idle",
},
lowRelaIdle:
{
available: true,
condition: function()
{
return true;
},
passage: "Torgar_Low_Rela_Loss_Idle",
},
},
}>><<set setup.TextSheet_Torgar =
{
goMeetImp_Intro :{
heightFlavour: {
small: [
"GoMeetImp_heightFlavour_small",
],
medium: [
"GoMeetImp_heightFlavour_small",
],
large: [
"GoMeetImp_heightFlavour_large",
],
huge: [
"GoMeetImp_heightFlavour_huge",
],
},
},
}>><<set setup.FighterSheet_town_guard =
{
hp: 80,
stamina: 10,
strength: 30,
critChance: 20,
critDamage: 1.75,
arousalGain: 5,
minArousal: 0,
growthMultiplier: 1,
bonusGrowth: {
height: 0,
cock: 0,
muscles: 0,
balls: 0,
},
staminaRecovery: 15,
variables: $FightVariables,
fightMoveIDs: [setup.FightMove_Basic_Attack.id],
fightReward: setup.RewardTier.LOW,
encounterIntroText: undefined,
encounterStartText: "<<include town_guard_fight_start>>",
outcomePlayerWins: "<<include town_guard_fight_won>>",
outcomePlayerLoses: "<<include town_guard_fight_lost>>"
}>><<set setup.InfoSheet_town_guard =
{
name: "Guard",
gender: "male",
corruption: 0,
muscles: 15,
height: 73,
cock: 6,
balls: 2,
alive: true,
anatomy: {
heads: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
eyes: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
jaws: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
teeths: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
hands: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
horns: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
wings: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
tongues:{
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
arms: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
pecs: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
abdominals: {
number: 6,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
cocks: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
balls: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
legs: {
number: 2,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
tails: {
number: 1,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
breasts: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
},
vaginas: {
number: 0,
race: setup.RacePool.DRAGONBORN,
colour: setup.ColourPool.DEFAULT
}
}
}>><<include "_town_guard_fight_sheet">>
<<include "_town_guard_info_sheet">>
<<include "_town_guard_quest_sheet">>
<<set $CharacterSheet_town_guard = setup.CharacterFactory.createCharacter({id: "CharacterSheet_town_guard",
info: setup.InfoSheet_town_guard,
fight: setup.FighterSheet_town_guard,
quest: setup.QuestSheet_town_guard,
text: undefined})>><<set setup.QuestSheet_town_guard =
{
met: false,
fled: false,
corrupted: false,
beatenOnce: false
}>><<set setup.Ability_ActiveParry = setup.AbilityDataFactory.createAbilityData({
id: "Ability_ActiveParry",
name: "Active Parry",
description:function(character)
{
return character.info.name + " uses a parry stance.";
},
maxRank: 1
})>>
<<run setup.Ability_ActiveParry.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
abilityRuntimeData.blackboard.parryTurnCount = 0;
},
)>>
<<run setup.Ability_ActiveParry.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_PRE_RECEIVE_DAMAGE,
function(abilityRuntimeData, abilityParams){
var displayString = "";
if(abilityParams.attackDamage != 0)
{
var blackboard =
{
attackDamage: abilityParams.attackDamage,
};
abilityParams.attackDamage = 0;
abilityParams.ignoreAdditionalEffects = true;
abilityParams.target.applyAbilityRuntimeData(setup.Ability_ParryEnergy, blackboard)
displayString += abilityParams.target.info.name + " gazes at the incoming hit, letting it reach him.\n"
displayString += "The attack feels like it connects, but something different happens. It is like it hit a invisible wall of energy instead.\n";
displayString += "The energy of the attack explodes into a thick white mist.\n";
displayString += abilityParams.target.info.name + " grins as the it rushes into his chest, filling him with the energy of the attack.";
}
else
{
displayString += abilityParams.target.info.name + " is ready to parry, but nothing comes.";
}
return displayString;
}
)>>
<<run setup.Ability_ActiveParry.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_TURN_START,
function(abilityRuntimeData, abilityParams){
var displayString = "";
abilityRuntimeData.blackboard.parryTurnCount++
if(abilityRuntimeData.blackboard.parryTurnCount >= 2)
{
abilityRuntimeData.isScheduledForRemoval = true;
}
return displayString;
}
)>><<set setup.Ability_AppetiteForGrowth = setup.AbilityDataFactory.createAbilityData({
id: "Ability_AppetiteForGrowth",
name: "Appetite for Growth",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Whenever you gain any amount of growth, you instead gain 25% more of that amount.";
}
else
{
return "Whenever you gain any amount of growth, you instead gain "+ (Math.ceil((0.25 + abilityRuntimeData.getRankGrowth("log", 10)).toFixed(2) * 100)) +"% more of that amount.";
}
},
maxRank: 5
})>>
<<run setup.Ability_AppetiteForGrowth.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_AppetiteForGrowth.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.growthMods = {
mod: setup.mod.ADD, value: (0.25 + abilityRuntimeData.getRankGrowth("log", 10)) //This value is not a - I KNOOOOOOOOOOOOOOOOW I JUST FOUND IT
}
}
)>>
<<run setup.Ability_AppetiteForGrowth.setUpgrade(
function(abilityRuntimeData, character){
return (abilityRuntimeData.canRank() == false)
},
setup.Ability_AppetiteForGrowth_2,
function(character){
var displayString = ""
displayString += "You must be at least level 3: (" + State.variables.Level + ")\n"
return displayString
}
)>>
<<run setup.Ability_AppetiteForGrowth.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_AppetiteForGrowth.setUnlockCondition(
function(character){
return (State.variables.Level >= 3)
}
)>>
<<set setup.Ability_AppetiteForGrowth.setCategory(setup.AbilityCategory.GROWTH)>>
<<set setup.Ability_AppetiteForGrowth.setGrade(setup.AbilityGrade.LOW)>><<set setup.Ability_AppetiteForGrowth_2 = setup.AbilityDataFactory.createAbilityData({
id: "Ability_AppetiteForGrowth_2",
name: "Demonic Appetite",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Whenever you gain any amount of growth, you instead gain 75% more of that amount.";
}
else
{
return "Whenever you gain any amount of growth, you instead gain "+ (Math.ceil((0.75 + abilityRuntimeData.getRankGrowth("exp", 3) / 100).toFixed(2) * 100)) +"% more of that amount.\n Gain " + (10 + abilityRuntimeData.getRankGrowth("linear", 5))+" corruption." ;
}
},
maxRank: 5
})>>
<<run setup.Ability_AppetiteForGrowth_2.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_AppetiteForGrowth_2.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.growthMods = {
mod: setup.mod.ADD, value: (0.75 + abilityRuntimeData.getRankGrowth("exp", 3) / 100)
}
abilityRuntimeData.modifier.setCorruptionMods({mod: setup.mod.ADD, value: 10 + abilityRuntimeData.getRankGrowth("linear", 5)});
}
)>>
<<set setup.Ability_AppetiteForGrowth_2.setCategory(setup.AbilityCategory.SOMBREVE)>>
<<set setup.Ability_AppetiteForGrowth_2.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_Berserking = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Berserking",
name: "Berserking",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
let displayString = "You fight with reckless abandon. Your strength is increased by 15%";
displayString += " and your max HP is decreased by 5%"
return displayString
}
else
{
let displayString = "You fight with reckless abandon. Your strength is increased by ";
displayString += abilityRuntimeData.getRankGrowth("linear", 15) + "%";
displayString += " and your max HP is decreased by ";
displayString += abilityRuntimeData.getRankGrowth("linear", 5) + "%";
return displayString
}
},
maxRank: 5
})>>
<<run setup.Ability_Berserking.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_Berserking.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE + $AbilityTrigger.ON_STAT_CHANGE,
function(abilityRuntimeData, abilityParams)
{
//remove previous iteration of the buff from current stats before multiplying
abilityRuntimeData.modifier.strengthMods = {};
abilityRuntimeData.modifier.maxHPMods = {};
var maxHpMultiplier = (abilityRuntimeData.getRankGrowth("linear", 5)) / 100
var strengthMultiplier = (abilityRuntimeData.getRankGrowth("linear", 15)) / 100
var maxHp = setup.getStatValue(abilityParams.self, "hp", "Ability_Berserking");
var strength = setup.getStatValue(abilityParams.self, "strength", "Ability_Berserking");
abilityRuntimeData.modifier.strengthMods = {
mod: setup.mod.ADD,
value: Math.ceil(strengthMultiplier * strength)
}
abilityRuntimeData.modifier.maxHPMods = {
mod: setup.mod.REMOVE,
value: Math.ceil(maxHpMultiplier * maxHp)
}
}
)>>
<<run setup.Ability_Berserking.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_Berserking.setUnlockCondition(
function(character){
return (State.variables.Level >= 1)
}
)>>
<<set setup.Ability_Berserking.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_Berserking.setGrade(setup.AbilityGrade.VERYLOW)>><<set setup.Ability_BrinkOfMadness = setup.AbilityDataFactory.createAbilityData({
id: "Ability_BrinkOfMadness",
name: "Brink of Madness",
description:function(character, abilityRuntimeData)
{
return "Your mind cracks under the weight of corruption upon reaching low health.";
},
maxRank: 1
})>>
<<run setup.Ability_BrinkOfMadness.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_BrinkOfMadness.addBehaviour(
"update",
$AbilityTrigger.ON_ENTER_MID_HEALTH,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = true
abilityParams.target.fight.variables.currentArousal = Math.min(100, abilityParams.target.fight.variables.currentArousal + abilityRuntimeData.getRankGrowth("linear", 40))
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 30)}
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 20)}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 120)};
abilityParams.target.fight.variables.currentStamina += 120;
abilityParams.target.fight.variables.currentStamina = Math.min(abilityParams.target.fight.variables.currentStamina, setup.getMaxStamina(abilityParams.target));
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_Hypnotize.id]}
var displayString = abilityParams.target.info.name + " pants in exhaustion. A terrible, oppressive thought enters their mind, that they might not win this battle. \n";
displayString += "Their heart is racing, corruption seeping into their mind, feeding on their doubts. \n"
displayString += "A dark purple aura builds around their frame, they revel in the power of corruption to crush anything that stands in their way.\n"
return displayString;
},
)>>
<<run setup.Ability_BrinkOfMadness.addBehaviour(
"update",
$AbilityTrigger.ON_EXIT_MID_HEALTH + $AbilityTrigger.ON_FIGHT_END,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = false
abilityRuntimeData.modifier = setup.ModifierFactory.createModifier(
{
abilityID: abilityRuntimeData.abilityDataID
});
return ""
}
)>>
<<run setup.Ability_BrinkOfMadness.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_BrinkOfMadness.setUnlockCondition(
function(character){
return (State.variables.Level >= 20 && setup.getStatValue(character, "corruption") >= 100);
}
)>>
<<set setup.Ability_BrinkOfMadness.setCategory(setup.AbilityCategory.SOMBREVE)>>
<<set setup.Ability_BrinkOfMadness.setGrade(setup.AbilityGrade.VERYHIGH)>><<set setup.Ability_BuriedInCum = setup.AbilityDataFactory.createAbilityData({
id: "Ability_BuriedInCum",
name: "Buried In Cum",
description:function(character)
{
return "You are buried in your opponent's cum.";
},
maxRank: 999
})>>
<<run setup.Ability_BuriedInCum.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_BuriedInCum.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.REMOVE, value: abilityRuntimeData.getRankGrowth("linear", 10)};
}
)>>
<<run setup.Ability_BuriedInCum.addBehaviour(
"remove",
$AbilityTrigger.ON_FIGHT_END,
undefined,
)>><<set setup.Ability_ChannelTheAstralSoul = setup.AbilityDataFactory.createAbilityData({
id: "Ability_ChannelTheAstralSoul",
name: "Channel the Astral Soul",
description:function(character)
{
var displayString = ""
var corruptionTier = Math.floor(setup.getStatValue(character, "corruption") / 20);
switch(corruptionTier)
{
case 0:
displayString += "Increases Essence gain. Its effect weakens the more corrupt you are.";
break;
case 1:
displayString += "Your corruption weakens your connection to the astral soul preventing you from gaining much extra essence.";
break;
case 2:
displayString += "Your corruption significantly weakens your connection to the astral soul almost preventing you from gaining extra essence.";
break;
case 3:
displayString += "Your corruption almost completely disrupts your connection to the astral soul. You barely gain any extra essence.";
break;
case 4:
displayString += "The corruption actively seeks to disrupt your connection to the astral soul, you gain almost nothing from the extraction.";
break;
default:
displayString += "The corruption actively seeks to disrupt your connection to the astral soul, you gain almost nothing from the extraction."
break;
}
return displayString;
},
maxRank: 5
})>>
<<run setup.Ability_ChannelTheAstralSoul.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_ChannelTheAstralSoul.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE + $AbilityTrigger.ON_GAIN_CORRUPTION,
function(abilityRuntimeData, abilityParams)
{
var corruptionTier = Math.floor(setup.getStatValue(abilityParams.self, "corruption") / 20);
switch(corruptionTier)
{
case 0:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.20)};
break;
case 1:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.15)};
break;
case 2:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.10)};
break;
case 3:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.05)};
break;
case 4:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.01)};
break;
default:
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 0.01)};
break;
}
}
)>>
<<run setup.Ability_ChannelTheAstralSoul.setUnlockCondition(
function(character){
return State.variables.Level >= 3
}
)>>
<<run setup.Ability_ChannelTheAstralSoul.setUnlockableFromLevelScreen(true)>>
<<set setup.Ability_ChannelTheAstralSoul.setCategory(setup.AbilityCategory.PURITY)>>
<<set setup.Ability_ChannelTheAstralSoul.setGrade(setup.AbilityGrade.LOW)>><<set setup.Ability_CodexPassion = setup.AbilityDataFactory.createAbilityData({
id: "Ability_CodexPassion",
name: "Codex's Passion",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Using a Fight Skill that does no damage heals you for 2 health";
}
else
{
return "Using a Fight Skill that does no damage heals you for "+abilityRuntimeData.getRankGrowth("linear", 2)+" health";
}
},
maxRank: 5
})>>
<<run setup.Ability_CodexPassion.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_CodexPassion.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_DO_DAMAGELESS_ATTACK,
function(abilityRuntimeData, abilityParams)
{
let heal = abilityRuntimeData.getRankGrowth("linear", 2);
abilityParams.self.fight.variables.currentHP = Math.min(abilityParams.self.fight.variables.currentHP + heal, setup.getStatValue(abilityParams.self, "hp"));
if(heal != 0)
{
return "Your soul resonates within you, healing you for <span style='color:#46c546;'>"+ heal + "</span> health.";
}
},
)>>
<<run setup.Ability_CodexPassion.setUnlockCondition(
function(character){
return (State.variables.Level >= 4) && ((setup.getStatValue(character, "corruption") <= 25))
}
)>>
<<run setup.Ability_CodexPassion.setUnlockableFromLevelScreen(true)>>
<<set setup.Ability_CodexPassion.setCategory(setup.AbilityCategory.PURITY)>>
<<set setup.Ability_CodexPassion.setGrade(setup.AbilityGrade.LOW)>><<set setup.Ability_CorruptedStrength = setup.AbilityDataFactory.createAbilityData({
id: "Ability_CorruptedStrength",
name: "Corrupted Strength",
description:function(character)
{
return "Corruption courses through you, strengthening your body with its unholy influence. This effect last until the end of the encounter.";
},
maxRank: 999
})>>
<<run setup.Ability_CorruptedStrength.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_CorruptedStrength.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
var strength = Math.ceil(setup.getStatValue(abilityParams.self, "corruption", "Ability_CorruptedStrength") * 0.1);
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", strength)};
}
)>>
<<run setup.Ability_CorruptedStrength.addBehaviour(
"remove",
$AbilityTrigger.ON_FIGHT_END,
undefined,
)>><<set setup.Ability_BlueStar = setup.AbilityDataFactory.createAbilityData({
id: "Ability_BlueStar",
name: "Adaptation of the Blue Star",
description:function(character, abilityRuntimeData)
{
let displayString = "The distant Blue Star is forcing evolution across the land. \n";
displayString += "All growth is increased by 20%. \n"
return displayString
},
maxRank: 1
})>>
<<run setup.Ability_BlueStar.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = false;
}
)>>
<<run setup.Ability_BlueStar.addBehaviour(
"update",
$AbilityTrigger.ON_DAY_CHANGE + $AbilityTrigger.ON_STAT_CHANGE + $AbilityTrigger.ON_FIGHT_START,
function(abilityRuntimeData, abilityParams)
{
var growth = setup.getStatValue(abilityParams.self, "growthMultiplier");
if(State.variables.Expedition % 4 == 3)
{
abilityRuntimeData.isActive = true;
abilityRuntimeData.modifier.growthMods = {
mod: setup.mod.ADD,
value: Math.ceil(growth * 0.2)
}
}
else
{
abilityRuntimeData.isActive = false;
}
}
)>>
<<run setup.Ability_BlueStar.setAsGlobalAbility()>><<set setup.Ability_GoldenStar = setup.AbilityDataFactory.createAbilityData({
id: "Ability_GoldenStar",
name: "Power of the Golden Star",
description:function(character, abilityRuntimeData)
{
let displayString = "The distant Golden Star has given the land increased strength. \n";
displayString += "Your strength is increased by 20%"
return displayString
},
maxRank: 1
})>>
<<run setup.Ability_GoldenStar.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = true;
}
)>>
<<run setup.Ability_GoldenStar.addBehaviour(
"update",
$AbilityTrigger.ON_DAY_CHANGE + $AbilityTrigger.ON_STAT_CHANGE + $AbilityTrigger.ON_FIGHT_START,
function(abilityRuntimeData, abilityParams)
{
var moddedStrength = setup.getStatValue(abilityParams.self, "strength", "Ability_GoldenStar") * 0.2;
if(State.variables.Expedition % 4 == 1)
{
abilityRuntimeData.isActive = true;
abilityRuntimeData.modifier.strengthMods = {
mod: setup.mod.ADD,
value: Math.ceil(moddedStrength)
}
}
else
{
abilityRuntimeData.isActive = false;
}
}
)>>
<<run setup.Ability_GoldenStar.setAsGlobalAbility()>><<set setup.Ability_GreenStar = setup.AbilityDataFactory.createAbilityData({
id: "Ability_GreenStar",
name: "Tenacity of the Green Star",
description:function(character, abilityRuntimeData)
{
let displayString = "The distant Green Star gives the land increased tenacity. \n";
displayString += " Your stamina is increased by 20%"
return displayString
},
maxRank: 1
})>>
<<run setup.Ability_GreenStar.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = false;
}
)>>
<<run setup.Ability_GreenStar.addBehaviour(
"update",
$AbilityTrigger.ON_DAY_CHANGE + $AbilityTrigger.ON_STAT_CHANGE + $AbilityTrigger.ON_FIGHT_START,
function(abilityRuntimeData, abilityParams)
{
var stamina = setup.getStatValue(abilityParams.self, "stamina", "Ability_GreenStar");
if(State.variables.Expedition % 4 == 2)
{
abilityRuntimeData.isActive = true;
abilityRuntimeData.modifier.maxStaminaMods = {
mod: setup.mod.ADD,
value: Math.ceil(stamina * 0.2)
}
}
else
{
abilityRuntimeData.isActive = false;
}
}
)>>
<<run setup.Ability_GreenStar.setAsGlobalAbility()>><<set setup.Ability_RedStar = setup.AbilityDataFactory.createAbilityData({
id: "Ability_RedStar",
name: "Ferocity of the Red Star",
description:function(character, abilityRuntimeData)
{
let displayString = "The distant Red Star gives the land increased ferocity. \n";
displayString += "Your crit chance is increased by 20%"
return displayString
},
maxRank: 1
})>>
<<run setup.Ability_RedStar.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = false;
}
)>>
<<run setup.Ability_RedStar.addBehaviour(
"update",
$AbilityTrigger.ON_DAY_CHANGE + $AbilityTrigger.ON_STAT_CHANGE + $AbilityTrigger.ON_FIGHT_START,
function(abilityRuntimeData, abilityParams)
{
var crit = setup.getStatValue(abilityParams.self, "critChance");
if(State.variables.Expedition % 4 == 0)
{
abilityRuntimeData.isActive = true;
abilityRuntimeData.modifier.critChanceMods = {
mod: setup.mod.ADD,
value: Math.ceil(crit * 0.2)
}
}
else
{
abilityRuntimeData.isActive = false;
}
}
)>>
<<run setup.Ability_RedStar.setAsGlobalAbility()>><<set setup.Ability_DeadlyAim = setup.AbilityDataFactory.createAbilityData({
id: "Ability_DeadlyAim",
name: "Deadly Aim",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
let displayString = "When you strike, you make sure it counts. Your crit chance is increased by 7%";
return displayString
}
else
{
let displayString = "When you strike, you make sure it counts. Your crit chance is increased by ";
displayString += abilityRuntimeData.getRankGrowth("linear", 7) + "%";
return displayString
}
},
maxRank: 5
})>>
<<run setup.Ability_DeadlyAim.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_DeadlyAim.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE + $AbilityTrigger.ON_STAT_CHANGE,
function(abilityRuntimeData, abilityParams)
{
//remove previous iteration of the buff from current stats before multiplying
abilityRuntimeData.modifier.critChanceMods = {};
var critMultiplier = abilityRuntimeData.getRankGrowth("linear", 7) / 100
var crit = setup.getStatValue(abilityParams.self, "critChance", "Ability_DeadlyAim");
abilityRuntimeData.modifier.critChanceMods = {
mod: setup.mod.ADD,
value: Math.ceil(critMultiplier * crit)
}
}
)>>
<<run setup.Ability_DeadlyAim.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_DeadlyAim.setUnlockCondition(
function(character){
return (State.variables.Level >= 1)
}
)>>
<<set setup.Ability_DeadlyAim.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_DeadlyAim.setGrade(setup.AbilityGrade.VERYLOW)>><<set setup.Ability_DemonicCorruption = setup.AbilityDataFactory.createAbilityData({
id: "Ability_DemonicCorruption",
name: "Minor Demon",
description:function(character)
{
return "Demonic powers flickers within you.";
},
maxRank: 1
})>>
<<run setup.Ability_DemonicCorruption.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.arousalGainMods = {mod: setup.mod.ADD, value: 3}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 4}
abilityRuntimeData.modifier.setCorruptionMods({mod: setup.mod.ADD, value: 30})
abilityRuntimeData.modifier.musclesMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.heightMods = {mod: setup.mod.ADD, value: 6}
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: 5}
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: 2}
}
)>>
<<run setup.Ability_DemonicCorruption.setUpgrade(
function(abilityRuntimeData, character){
return true;
},
setup.Ability_DemonicCorruption_2
)>>
<<run setup.Ability_DemonicCorruption.setUnlockCondition(
function(character){
return (State.variables.Level >= 1)
}
)>><<set setup.Ability_DemonicCorruption_2 = setup.AbilityDataFactory.createAbilityData({
id: "Ability_DemonicCorruption_2",
name: "Major Demon",
description:function(character)
{
return "Can use Incubus's Call\n" +
"Demonic powers flow through you."
},
maxRank: 1
})>>
<<run setup.Ability_DemonicCorruption_2.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.arousalGainMods = {mod: setup.mod.ADD, value: 9}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 5}
abilityRuntimeData.modifier.setCorruptionMods({mod: setup.mod.ADD, value: 45});
abilityRuntimeData.modifier.musclesMods = {mod: setup.mod.ADD, value: 15}
abilityRuntimeData.modifier.heightMods = {mod: setup.mod.ADD, value: 16}
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: 12}
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: 4}
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_IncubusCall.id]}
}
)>>
<<run setup.Ability_DemonicCorruption_2.setUpgrade(
function(abilityRuntimeData, character){
return true;
},
setup.Ability_DemonicCorruption_3
)>><<set setup.Ability_DemonicCorruption_3 = setup.AbilityDataFactory.createAbilityData({
id: "Ability_DemonicCorruption_3",
name: "Lord of Lust",
description:function(character)
{
return "Can use Incubus's Call\n" +
"Can use Incubus's Strike\n" +
"You are one with your demonic powers."
},
maxRank: 1
})>>
<<run setup.Ability_DemonicCorruption_3.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.arousalGainMods = {mod: setup.mod.ADD, value: 15}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 15}
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.setCorruptionMods({mod: setup.mod.ADD, value: 60})
abilityRuntimeData.modifier.musclesMods = {mod: setup.mod.ADD, value: 30}
abilityRuntimeData.modifier.heightMods = {mod: setup.mod.ADD, value: 32}
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: 18}
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: 6}
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_IncubusCall.id, setup.FightMove_IncubusStrike.id]}
}
)>><<set setup.Ability_DracosOmnipotence = setup.AbilityDataFactory.createAbilityData({
id: "Ability_DracosOmnipotence",
name: "Draco's Omnipotence",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Whenever you reach max arousal, you gain size based on the amount of essence you have.";
}
else
{
return "Whenever you reach max arousal, you gain size based on "+abilityRuntimeData.getRankGrowth("linear", 1)+"x the amount of essence you have.";
}
},
maxRank: 10
})>>
<<run setup.Ability_DracosOmnipotence.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_DracosOmnipotence.addBehaviour(
"update",
$AbilityTrigger.ON_MAX_LUST,
function(abilityRuntimeData, abilityParams)
{
var self = abilityParams.self;
var cockGrowth = setup.applyGrowth(self, "cock", Math.round(State.variables.Essence * abilityRuntimeData.getRankGrowth("linear", 1) / 3));
var ballsGrowth = setup.applyGrowth(self, "balls", Math.round(State.variables.Essence * abilityRuntimeData.getRankGrowth("linear", 1) / 9));
var muscleGrowth = setup.applyGrowth(self, "muscles", Math.round(State.variables.Essence * abilityRuntimeData.getRankGrowth("linear", 1) / 4.5));
var sizeGrowth = setup.applyGrowth(self, "height", Math.round(State.variables.Essence * abilityRuntimeData.getRankGrowth("linear", 1)));
var displayString = "You pulse with the power of gods. The Essence within fills you with the power to rule over all.\n\n";
displayString += setup.growthFlavourDescriptors(self, abilityParams.target, cockGrowth, ballsGrowth, muscleGrowth, sizeGrowth);
return displayString;
},
)>>
<<run setup.Ability_DracosOmnipotence.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_DracosOmnipotence.setUnlockCondition(
function(character){
return (State.variables.Level >= 20);
}
)>>
<<set setup.Ability_DracosOmnipotence.setCategory(setup.AbilityCategory.GROWTH)>>
<<set setup.Ability_DracosOmnipotence.setGrade(setup.AbilityGrade.VERYHIGH)>><<set setup.Ability_EchoForm = setup.AbilityDataFactory.createAbilityData({
id: "Ability_EchoForm",
name: "Symbiote Form",
description:function(character){
return character.symbiote.name + "'s power flows through your body.";
},
maxRank: 5
})>>
<<run setup.Ability_EchoForm.addBehaviour(
"start",
$AbilityTrigger.ON_MAX_LUST,
function(abilityRuntimeData, abilityParams)
{
if(State.variables.HasSymbiote == false || State.variables.HasSymbiote == undefined)
{
abilityRuntimeData.isActive = true;
State.variables.HasSymbiote = true;
let hpMod = 25;
let stamMod = 5;
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: hpMod}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: stamMod}
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.arousalGainMods = {mod: setup.mod.REPLACE, value: -17}
abilityRuntimeData.modifier.staminaRecoveryMods = {mod: setup.mod.ADD, value: 2}
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_Goo_Stun.id]}
abilityRuntimeData.modifier.actionSlotsMods = {mod: setup.mod.ADD, value: 1}
abilityRuntimeData.modifier.comboMovesPerTurnMods = {mod: setup.mod.ADD, value: 2}
abilityParams.self.fight.variables.currentHP = Math.min(abilityParams.self.fight.variables.currentHP + hpMod, setup.getMaxHP(abilityParams.self));
abilityParams.self.fight.variables.currentStamina = Math.min(abilityParams.self.fight.variables.currentStamina + stamMod, setup.getMaxStamina(abilityParams.self));
return "Arousal overtakes you. \n A thick "+$CharacterSheet_Player.symbiote.color+" goo emerges from your pores. \n You turn into a massive muscular "+$CharacterSheet_Player.symbiote.color+" "+setup.getRace($CharacterSheet_Player.symbiote.anatomy)+".";
}
}
)>>
<<run setup.Ability_EchoForm.addBehaviour(
"end",
$AbilityTrigger.ON_MIN_LUST + $AbilityTrigger.ON_FIGHT_END,
function(abilityRuntimeData, abilityParams)
{
if(State.variables.HasSymbiote == true)
{
abilityRuntimeData.modifier = setup.ModifierFactory.createModifier(
{
abilityID: abilityRuntimeData.abilityDataID
});
State.variables.HasSymbiote = false;
abilityRuntimeData.isActive = false;
return "You revert back to your "+setup.getRace(abilityParams.self.info.anatomy)+" form";
}
}
)>><<set setup.Ability_EmpoweringDrink = setup.AbilityDataFactory.createAbilityData({
id: "Ability_EmpoweringDrink",
name: "Empowering Drink",
description:function(character)
{
return "Torgar's powerful concoction courses through you.\n Lasts for 4 days.";
},
maxRank: 999
})>>
<<run setup.Ability_EmpoweringDrink.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_EmpoweringDrink.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.blackboard.dayConsumed = State.variables.Expedition;
setup.applyCorruption(abilityParams.self, 15);
setup.applyGrowth(abilityParams.self, "muscles", 5);
abilityRuntimeData.isActive = true;
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 5)};
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 5)};
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 3)};
}
)>>
<<run setup.Ability_EmpoweringDrink.addBehaviour(
"update",
$AbilityTrigger.ON_DAY_CHANGE,
function(abilityRuntimeData, abilityParams)
{
if(State.variables.Expedition - abilityRuntimeData.blackboard.dayConsumed >= 4)
{
abilityRuntimeData.isActive = false;
abilityRuntimeData.rank = 0;
}
}
)>><<set setup.Ability_EssenceHoarder = setup.AbilityDataFactory.createAbilityData({
id: "Ability_EssenceHoarder",
name: "Essence Hoarder",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Every 200 Essence within you grants you 1 Strength. (up to 30)";
}
else
{
return "Every 200 Essence within you grants you "+abilityRuntimeData.getRankGrowth("linear", 1)+" Strength. (up to "+abilityRuntimeData.getRankGrowth("linear", 30)+")";
}
},
maxRank: 5
})>>
<<run setup.Ability_EssenceHoarder.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_EssenceHoarder.addBehaviour(
"update",
$AbilityTrigger.ON_GAIN_ESSENCE + $AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
var mod = Math.min(Math.floor(State.variables.Essence / 200) * abilityRuntimeData.getRankGrowth("linear", 1), abilityRuntimeData.getRankGrowth("linear", 30));
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: mod}
},
)>>
<<run setup.Ability_EssenceHoarder.setUnlockCondition(
function(character){
return (State.variables.Level >= 5)
}
)>>
<<run setup.Ability_EssenceHoarder.setUnlockableFromLevelScreen(true)>>
<<set setup.Ability_EssenceHoarder.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_EssenceHoarder.setGrade(setup.AbilityGrade.MEDIUM)>><<set setup.Ability_FaithsReward = setup.AbilityDataFactory.createAbilityData({
id: "Ability_FaithsReward",
name: "Faith's Reward",
description:function(character, abilityRuntimeData)
{
return "You gain 0.5 health and 0.5 stamina whenever you win a battle. \n That bonus is reduced by 2 every time you gain corruption.";
},
maxRank: 5
})>>
<<run setup.Ability_FaithsReward.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_FaithsReward.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_BATTLE_WON,
function(abilityRuntimeData, abilityParams)
{
if(abilityRuntimeData.modifier.maxHPMods == undefined || abilityRuntimeData.modifier.maxStaminaMods == undefined){
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 1}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 1}
}else{
let previousHPModifier = abilityRuntimeData.modifier.maxHPMods.value;
let previousStamModifier = abilityRuntimeData.modifier.maxStaminaMods.value;
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: previousHPModifier + 1}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: previousStamModifier + 1}
}
return "You feel the presence of something far greater approve of your victory. Strength and vigour wells up within you.\n\n"
},
)>>
<<run setup.Ability_FaithsReward.addBehaviour(
"update",
$AbilityTrigger.ON_GAIN_CORRUPTION,
function(abilityRuntimeData, abilityParams)
{
var baseStrength = setup.getStatValue(abilityParams.self, "strength") - 2;
if (baseStrength >=2){
if(abilityRuntimeData.modifier.strengthMods == undefined){
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.REMOVE, value: 2}
}else{
let previousStrength = abilityRuntimeData.modifier.strengthMods.value;
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.REMOVE, value: previousStrength + 2}
}
return "A shiver runs down your spine and saps away your strength. You feel as if your actions have been judged.\n"
}else{
return "You feel tired. Emaciated. Famished. You have no more strength to offer as punishment for breaking your faith in purity.\n"
}
}
)>>
<<run setup.Ability_FaithsReward.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_FaithsReward.setUnlockCondition(
function(character){
return (State.variables.Level >= 7) && (setup.getStatValue(character, "corruption") <= 25)
}
)>>
<<set setup.Ability_FaithsReward.setCategory(setup.AbilityCategory.PURITY)>>
<<set setup.Ability_FaithsReward.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_Focused = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Focused",
name: "Focused",
description:function(character)
{
return "Active until the end of the encounter.";
},
maxRank: 999
})>>
<<run setup.Ability_Focused.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_Focused.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
abilityRuntimeData.modifier.actionSlotsMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 1)};
}
)>>
<<run setup.Ability_Focused.addBehaviour(
"remove",
$AbilityTrigger.ON_FIGHT_END,
undefined,
)>><<set setup.Ability_HerculeanBuild = setup.AbilityDataFactory.createAbilityData({
id: "Ability_HerculeanBuild",
name: "Herculean Build",
description:function(abilityData, abilityRuntimeData){
if(abilityRuntimeData == undefined)
{
return "Gain Strength equal to half your Muscles stat (up to 15). Your Muscles grow by 5 upon acquiring this Ability"
}
else
{
return "Gain Strength equal to half your Muscles stat (up to "+abilityRuntimeData.getRankGrowth("linear", 15)+"). Your Muscles grow by 5 upon acquiring this Ability"
}
},
maxRank: 5
})>>
<<run setup.Ability_HerculeanBuild.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_HerculeanBuild.addBehaviour(
"update",
$AbilityTrigger.ON_APPLY_GROWTH,
function(abilityRuntimeData, abilityParams){
var boost = Math.min(~~(setup.getStatValue(abilityParams.self, "muscles") / 2), abilityRuntimeData.getRankGrowth("linear", 15));
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: boost}
}
)>>
<<run setup.Ability_HerculeanBuild.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
setup.applyGrowth(abilityParams.self, "muscles", 5);
}
)>>
<<run setup.Ability_HerculeanBuild.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_HerculeanBuild.setUnlockCondition(
function(character){
return (State.variables.Level >= 1)
}
)>>
<<set setup.Ability_HerculeanBuild.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_HerculeanBuild.setGrade(setup.AbilityGrade.VERYLOW)>><<set setup.Ability_HostOfEcho = setup.AbilityDataFactory.createAbilityData({
id: "Ability_HostOfEcho",
name: "Host of <<SymbioteName>>",
description:function(character)
{
return "You are now the host of a mysterious being...\nUnlocks Arousal bar\nCan equip Pleasure Self fight move.\nReaching Maximum Arousal transforms you into something more...";
},
maxRank: 1
})>>
<<run setup.Ability_HostOfEcho.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
this.name = "Host of <<SymbioteName>>";
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_Masturbate.id]}
}
)>><<set setup.Ability_Incorruptible = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Incorruptible",
name: "Incorruptible",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "While your Corruption is below 25, you gain 10% critical chance, 10 strength.";
}
else
{
return "While your Corruption is below 25, you gain "+abilityRuntimeData.getRankGrowth("linear", 10)+"% critical chance, "+abilityRuntimeData.getRankGrowth("linear", 10)+" strength.";
}
},
maxRank: 5
})>>
<<run setup.Ability_Incorruptible.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_Incorruptible.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE + $AbilityTrigger.ON_GAIN_CORRUPTION,
function(abilityRuntimeData, abilityParams)
{
if(setup.getStatValue(abilityParams.self, "corruption") <= 25)
{
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 10)};
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 10)};
}
else
{
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: 0};
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: 0};
}
},
)>>
<<run setup.Ability_Incorruptible.setUnlockCondition(
function(character){
return State.variables.Level >= 7 && setup.getStatValue(character, "corruption") <= 25
}
)>>
<<run setup.Ability_Incorruptible.setUnlockableFromLevelScreen(true)>>
<<set setup.Ability_Incorruptible.setCategory(setup.AbilityCategory.PURITY)>>
<<set setup.Ability_Incorruptible.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_KalethsFervour = setup.AbilityDataFactory.createAbilityData({
id: "Ability_KalethsFervour",
name: "Kaleth's Fervour",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "You gain 3% more growth for every point of corruption within you.";
}
else
{
return "You gain "+abilityRuntimeData.getRankGrowth("linear", 3)+"% more growth for every point of corruption within you.";
}
},
maxRank: 10
})>>
<<run setup.Ability_KalethsFervour.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_KalethsFervour.addBehaviour(
"update",
$AbilityTrigger.ON_GAIN_CORRUPTION + $AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.growthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 1) / 100 * setup.getStatValue(abilityParams.self, "corruption")};
},
)>>
<<run setup.Ability_KalethsFervour.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_KalethsFervour.setUnlockCondition(
function(character){
return (State.variables.Level >= 7) && (setup.getStatValue(character, "corruption") >= 50);
}
)>>
<<set setup.Ability_KalethsFervour.setCategory(setup.AbilityCategory.SOMBREVE)>>
<<set setup.Ability_KalethsFervour.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_LastStand = setup.AbilityDataFactory.createAbilityData({
id: "Ability_LastStand",
name: "Last Stand",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Whenever you fall below 25% health, you gain 20 arousal, 30% critical chance and 15 strength.";
}
else
{
return "Whenever you fall below 25% health, you gain "+abilityRuntimeData.getRankGrowth("linear", 20)+" arousal, "+abilityRuntimeData.getRankGrowth("linear", 30)+"% critical chance and "+abilityRuntimeData.getRankGrowth("linear", 15)+" strength.";
}
},
maxRank: 3
})>>
<<run setup.Ability_LastStand.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_LastStand.addBehaviour(
"update",
$AbilityTrigger.ON_ENTER_LOW_HEALTH,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = true
abilityParams.self.fight.variables.currentArousal += Math.min(100, abilityRuntimeData.getRankGrowth("linear", 20))
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 30)}
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 15)}
return "The adrenaline of battle pumps through your veins!"
},
)>>
<<run setup.Ability_LastStand.addBehaviour(
"update",
$AbilityTrigger.ON_EXIT_LOW_HEALTH + $AbilityTrigger.ON_FIGHT_END,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.isActive = false
abilityRuntimeData.modifier = setup.ModifierFactory.createModifier(
{
abilityID: abilityRuntimeData.abilityDataID
});
return "You inhale deeply, regaining your composure."
}
)>>
<<run setup.Ability_LastStand.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_LastStand.setUnlockCondition(
function(character){
return (State.variables.Level >= 3);
}
)>>
<<set setup.Ability_LastStand.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_LastStand.setGrade(setup.AbilityGrade.LOW)>><<set setup.Ability_Masochism = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Masochism",
name: "Masochism",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Whenever you receive damage, you gain that much Arousal. (up to 3 per rank)";
}
else
{
return "Whenever you receive damage, you gain that much Arousal. (up to "+ abilityRuntimeData.getRankGrowth("linear", 3) +")";
}
},
maxRank: 5
})>>
<<run setup.Ability_Masochism.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_Masochism.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_POST_RECEIVE_DAMAGE,
function(abilityRuntimeData, abilityParams)
{
var He = setup.getPronoun(abilityParams.target,"pronounCap");
var arousalGain = Math.min(abilityParams.attackDamage, abilityRuntimeData.getRankGrowth("linear", 3));
var displayString = abilityParams.target.info.name + " relishes the pain. "+He+" gains <span style='color:#ac46c5;'>" + arousalGain + "</span> Arousal\n";
abilityParams.target.fight.variables.currentArousal += arousalGain;
return displayString;
},
)>>
<<run setup.Ability_Masochism.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_Masochism.setUnlockCondition(
function(character){
return (State.variables.Level >= 1);
}
)>>
<<set setup.Ability_Masochism.setCategory(setup.AbilityCategory.LUST)>>
<<set setup.Ability_Masochism.setGrade(setup.AbilityGrade.VERYLOW)>><<set setup.Ability_MemoriesOfApothus = setup.AbilityDataFactory.createAbilityData({
id: "Ability_MemoriesOfApothus",
name: "Memories of Apothus",
description:function(character)
{
return "Distant words of unrestrained madness echo within your soul.";
},
maxRank: 1
})>>
<<run setup.Ability_MemoriesOfApothus.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.corruptionMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.minArousalMods = {mod: setup.mod.ADD, value: 5};
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.critMod = {mod: setup.mod.REMOVE, value: 20};
abilityRuntimeData.modifier.xpMultiplierMods = {mod: setup.mod.ADD, value: 0.2}
}
)>><<set setup.Ability_MemoriesOfCray = setup.AbilityDataFactory.createAbilityData({
id: "Ability_MemoriesOfCray",
name: "Memories of Cray",
description:function(character)
{
return "Distant words of a being yearning for more echoes within your soul.";
},
maxRank: 1
})>>
<<run setup.Ability_MemoriesOfCray.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.growthMods = {mod: setup.mod.ADD, value: 1.0}
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.xpMultiplierMods = {mod: setup.mod.ADD, value: 0.5}
}
)>><<set setup.Ability_MemoriesOfNyx = setup.AbilityDataFactory.createAbilityData({
id: "Ability_MemoriesOfNyx",
name: "Memories of Nyx",
description:function(character)
{
return "Distant visions of pure Corruption echo within your soul.";
},
maxRank: 1
})>>
<<run setup.Ability_MemoriesOfNyx.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.corruptionMods = {mod: setup.mod.ADD, value: 20};
abilityRuntimeData.modifier.minArousalMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.actionSlotsMods = {mod: setup.mod.ADD, value: 1};
abilityRuntimeData.modifier.growthMods = {mod: setup.mod.ADD, value: 0.25};
abilityRuntimeData.modifier.xpMultiplierMods = {mod: setup.mod.ADD, value: 0.3};
}
)>><<set setup.Ability_MemoriesOfTheChosen = setup.AbilityDataFactory.createAbilityData({
id: "Ability_MemoriesOfTheChosen",
name: "Memories of the Chosen",
description:function(character)
{
return "Distant words of cataclysmic ambitions echo within your soul.";
},
maxRank: 1
})>>
<<run setup.Ability_MemoriesOfTheChosen.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 25};
abilityRuntimeData.modifier.maxStaminaMods = {mod: setup.mod.ADD, value: 25}
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: 10}
abilityRuntimeData.modifier.staminaRecoveryMods = {mod: setup.mod.ADD, value: 5}
abilityRuntimeData.modifier.xpMultiplierMods = {mod: setup.mod.ADD, value: 0.5}
}
)>><<set setup.Ability_Momentum = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Momentum",
name: "Momentum",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "Gain 7% more Crit Damage for every damaging attack in your combo.";
}
else
{
return "Gain "+abilityRuntimeData.getRankGrowth("linear", 7)+"% more Crit Damage for every damaging attack in your combo.";
}
},
maxRank: 5
})>>
<<run setup.Ability_Momentum.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>>
<<run setup.Ability_Momentum.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_TURN_START,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.critDamageMods = {mod: setup.mod.ADD, value: 0};
},
)>>
<<run setup.Ability_Momentum.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_DAMAGING_HIT,
function(abilityRuntimeData, abilityParams)
{
var currentValue = abilityRuntimeData.modifier.critDamageMods.value;
console.log("Ability_Momentum crit was " + currentValue)
console.log("Ability_Momentum crit will be " + (currentValue + abilityRuntimeData.getRankGrowth("linear", 0.07)))
abilityRuntimeData.modifier.critDamageMods = {mod: setup.mod.ADD, value: currentValue + abilityRuntimeData.getRankGrowth("linear", 0.07)};
},
)>>
<<run setup.Ability_Momentum.setUnlockCondition(
function(character){
return State.variables.Level >= 7
}
)>>
<<run setup.Ability_Momentum.setUnlockableFromLevelScreen(true)>>
<<set setup.Ability_Momentum.setCategory(setup.AbilityCategory.WARRIOR)>>
<<set setup.Ability_Momentum.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_Mutant = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Mutant",
name: "Mutant",
description:function(character, abilityRuntimeData)
{
if(abilityRuntimeData == undefined)
{
return "The corruption within you seeks to drastically alter your form! When you take damage, you have a 1/10 chance of growing additional limbs."
}
else
{
return "The corruption within you seeks to drastically alter your form! When you take damage, you have a 1/" + (11 - abilityRuntimeData.getRankGrowth("linear", 1)) + " chance of growing additional limbs."
}
},
maxRank: 5
})>>
<<run setup.Ability_Mutant.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_Mutant.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_POST_RECEIVE_DAMAGE,
function(abilityRuntimeData, abilityParams)
{
var denominator = 12 - abilityRuntimeData.getRankGrowth("linear", 1);
if(Math.floor(Math.random() * denominator) == (denominator - 1)){
var randomLimb = setup.getRandomLimb(abilityParams.target.info.anatomy)
var currentNumber = randomLimb.currentNumber;
var limb = randomLimb.limb;
var displayString = "You feel the corruption run rampant within you! You hunch over, euphoria blinding you as your body changes!"
if (currentNumber % 2 == 0){
setup.changeLimbNumber(abilityParams.target.info.anatomy, limb, 2, "add")
displayString += setup.processFlavours(abilityParams.target, " You have grown another pair of " + "@[2|" + limb + "|noverb]!")
}else{
setup.changeLimbNumber(abilityParams.target.info.anatomy, limb, 1, "add")
displayString += setup.processFlavours(abilityParams.target, " You have grown another " + "@[1|" + limb + "|noverb]!")
}
return displayString;
}else{
return "";
}
}
)>>
<<run setup.Ability_Mutant.setUpgrade(
function(abilityRuntimeData, character){
return (setup.getStatValue(character, "corruption") >= 100) && (abilityRuntimeData.canRank() == false)
},
setup.Ability_Mutant_2,
function(character){
var displayString = ""
displayString += "You must have at least 100 corruption: (" + setup.displayStatValue(character, "corruption") + ")\n"
return displayString
}
)>>
<<run setup.Ability_Mutant.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_Mutant.setUnlockCondition(
function(character){
return (State.variables.Level >= 1) && (setup.getStatValue(character, "corruption") >= 75)
}
)>>
<<set setup.Ability_Mutant.setCategory(setup.AbilityCategory.SOMBREVE)>>
<<set setup.Ability_Mutant.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_Mutant_2 = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Mutant_2",
name: "Abomination",
description:function(character, abilityRuntimeData)
{
return "Your body has become twisted by the corruption rampant within you! When you take damage, you have a 1/5 chance of doubling certain limbs."
},
maxRank: 1
})>>
<<run setup.Ability_Mutant_2.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_Mutant_2.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_POST_RECEIVE_DAMAGE,
function(abilityRuntimeData, abilityParams)
{
if(Math.floor(Math.random() * 6) == 5){
var randomLimb = setup.getRandomLimb(abilityParams.target.info.anatomy);
var currentNumber = randomLimb.currentNumber;
var limb = randomLimb.limb;
setup.changeLimbNumber(abilityParams.target.info.anatomy, limb, 2, "multiply");
var displayString = "Your body pulses, the corruption within you bubbles to the surface. Your muscles shift and your bones crack as you grow twice the amount of ";
var limbNumber = setup.getLimbNumber("all", abilityParams.target.info.anatomy[limb], true);
if(limbNumber == 2){
displayString += setup.processFlavours(abilityParams.target, limb + " you have! You now have two @[all|" + limb + "|noverb].\n");
}else{
displayString += setup.processFlavours(abilityParams.target, limb + " you have! You now have @[all|" + limb + "|noverb].\n");
}
return displayString;
}else{
return "";
}
}
)>>
<<set setup.Ability_Mutant_2.setCategory(setup.AbilityCategory.SOMBREVE)>>
<<set setup.Ability_Mutant_2.setGrade(setup.AbilityGrade.VERYHIGH)>><<set setup.Ability_CurseOfTheNaga = setup.AbilityDataFactory.createAbilityData({
id: "Ability_CurseOfTheNaga",
name: "Curse of the Naga",
description:function(character)
{
return "A part of you was stolen by the Lost Naga.\n Only by defeating him can you get your strength back.";
},
maxRank: 1
})>>
<<run setup.Ability_CurseOfTheNaga.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
abilityRuntimeData.modifier.musclesMods = {mod: setup.mod.REMOVE, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.muscles};
abilityRuntimeData.modifier.heightMods = {mod: setup.mod.REMOVE, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.height};
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.REMOVE, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.cock};
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.REMOVE, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.balls};
}
)>><<set setup.Ability_StolenMass = setup.AbilityDataFactory.createAbilityData({
id: "Ability_StolenMass",
name: "Stolen Mass",
description:function(character)
{
return "You have stolen mass from another creature.";
},
maxRank: 1
})>>
<<run setup.Ability_StolenMass.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams){
abilityRuntimeData.modifier.musclesMods = {mod: setup.mod.ADD, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.muscles};
abilityRuntimeData.modifier.heightMods = {mod: setup.mod.ADD, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.height};
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.cock};
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: State.variables.CharacterSheet_Player.quest.curseOfTheNagaStatDrain.balls};
}
)>><<set setup.Ability_NeverendingGrowth = setup.AbilityDataFactory.createAbilityData({
id: "Ability_NeverendingGrowth",
name: "Never-ending Growth",
description:function(character, abilityRuntimeData){
return "Your body continuously grows larger while in combat. The more corrupt you are, the more effective this growth is."
},
maxRank: 1
})>>
<<run setup.Ability_NeverendingGrowth.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_NeverendingGrowth.addBehaviour(
"update",
$AbilityTrigger.ON_FIGHT_TURN_START,
function(abilityRuntimeData, abilityParams)
{
var self = abilityParams.self;
var level = setup[abilityRuntimeData.abilityDataID].level;
var corruption = setup.getStatValue(self, "corruption");
var multiplier = Math.ceil(corruption / 20);
var displayString = "";
var cockSize = setup.getStatValue(self, "cock")
var muscleSize = setup.getStatValue(self, "muscles")
var ballSize = setup.getStatValue(self, "balls")
var height = setup.getStatValue(self, "height")
setup.applyGrowth(self, "cock", Math.round(3 * multiplier));
setup.applyGrowth(self, "balls", Math.round(1 * multiplier));
setup.applyGrowth(self, "muscles", Math.round(2 * multiplier));
setup.applyGrowth(self, "height", Math.round(9 * multiplier));
if (setup.getStatValue(self, "corruption") > 0){
if(self.id == "CharacterSheet_Player"){
displayString += "Your muscles flex but do not recede in size when they relax."
displayString += " A wash of pleasure takes you as your @[all|cocks|noverb] and @[all|balls|noverb] lurch with added size.\n"
return setup.processFlavours(self, displayString);
}else{
displayString += "His muscles flex but do not recede in size when they relax."
displayString += " Howling from growth induced euphoria, its @[all|cocks|noverb] and @[all|balls|noverb] lurch with added size.\n"
return setup.processFlavours(self, displayString);
}
}else{
return undefined
}
}
)>>
<<run setup.Ability_NeverendingGrowth.setUnlockableFromLevelScreen(true)>>
<<run setup.Ability_NeverendingGrowth.setUnlockCondition(
function(character){
return (State.variables.Level >= 10) && (setup.getStatValue(character, "corruption") >= 50)
}
)>>
<<set setup.Ability_NeverendingGrowth.setCategory(setup.AbilityCategory.GROWTH)>>
<<set setup.Ability_NeverendingGrowth.setGrade(setup.AbilityGrade.HIGH)>><<set setup.Ability_NyxParasiteInfection = setup.AbilityDataFactory.createAbilityData({
id: "Ability_NyxParasiteInfection",
name: "Nyx Parasite Infection",
description:function(character){
return "Creatures of Nyx live within your body.\n You must protect the parasites..."
},
maxRank: 10
})>>
<<run setup.Ability_NyxParasiteInfection.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_NyxParasiteInfection.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.minArousalMods = {mod: setup.mod.ADD, value: 20};
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 2)};
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 4)};
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: abilityRuntimeData.getRankGrowth("linear", 3)};
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.REMOVE, value: 0.1};
}
)>>
<<run setup.Ability_NyxParasiteInfection.setUpgrade(
function(abilityRuntimeData, character){
return abilityRuntimeData.canRank() == false
},
setup.Ability_NyxParasiteInfection_2,
function(character){
return ""
}
)>><<set setup.Ability_NyxParasiteInfection_2 = setup.AbilityDataFactory.createAbilityData({
id: "Ability_NyxParasiteInfection_2",
name: "Nyx Parasite Lord",
description:function(character){
return "You host countless nyx parasites within you.\n You gain 1 min arousal per parasite within your body.\n You must spread.\nYou must fuck.\nYou must grow."
},
maxRank: 15
})>>
<<run setup.Ability_NyxParasiteInfection_2.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_NyxParasiteInfection_2.addBehaviour(
"update",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.minArousalMods = {mod: setup.mod.ADD, value: 20 + abilityRuntimeData.getRankGrowth("linear", 1)};
abilityRuntimeData.modifier.strengthMods = {mod: setup.mod.ADD, value: 20 + abilityRuntimeData.getRankGrowth("linear", 3)};
abilityRuntimeData.modifier.cockMods = {mod: setup.mod.ADD, value: 40 + abilityRuntimeData.getRankGrowth("linear", 10)};
abilityRuntimeData.modifier.ballsMods = {mod: setup.mod.ADD, value: 30 + abilityRuntimeData.getRankGrowth("linear", 8)};
abilityRuntimeData.modifier.essenceMultiplierMods = {mod: setup.mod.REMOVE, value: 0.2};
abilityRuntimeData.modifier.fightMoveIDsMods = {mod: setup.mod.ADD, value: [setup.FightMove_SummonParasite.id]}
}
)>><<set setup.Ability_Oath_Containment = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Oath_Containment",
name: "Oath of Containment",
description:function(character)
{
return "Chain shaped tattoos race up your arms.\nThis oath lasts for as long as the cultists of Nyx remain sealed.";
},
maxRank: 1
})>>
<<run setup.Ability_Oath_Containment.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.arousalGainMods = {mod: setup.mod.REMOVE, value: 5};
abilityRuntimeData.modifier.critChanceMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 10};
}
)>><<set setup.Ability_Oath_Nyx = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Oath_Nyx",
name: "Oath of Nyx",
description:function(character)
{
return "A purple vortex shaped tattoo curls around the left side of your torso.\nThis oath lasts for as long as you strive to unleash Nyx upon the world.";
},
maxRank: 1
})>>
<<run setup.Ability_Oath_Nyx.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
function(abilityRuntimeData, abilityParams)
{
abilityRuntimeData.modifier.corruptionMods = {mod: setup.mod.ADD, value: 20};
abilityRuntimeData.modifier.minArousalMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.maxHPMods = {mod: setup.mod.ADD, value: 10};
abilityRuntimeData.modifier.critMod = {mod: setup.mod.REMOVE, value: 20};
}
)>><<set setup.Ability_Oathbreaker = setup.AbilityDataFactory.createAbilityData({
id: "Ability_Oathbreaker",
name: "Oathbreaker",
description:function(character)
{
return "The mark of the oathbreaker burns around your arm.\nYou are branded as a traitor.";
},
maxRank: 1
})>>
<<run setup.Ability_Oathbreaker.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined,
)>><<set setup.Ability_OrgasmicGrowth = setup.AbilityDataFactory.createAbilityData({
id: "Ability_OrgasmicGrowth",
name: "Orgasmic Growth",
description:function(character, abilityRuntimeData){
if(abilityRuntimeData == undefined)
{
return setup.processFlavours(
character,
"Whenever you reach max arousal, your body grows "+setup.getLength(2.5)+", your @[all|cocks|one=grows~more=grows] "+setup.getLength(1)+" and your @[all|balls|noverb] grow "+setup.getLength(0.5)+"."
)
}
else
{
return setup.processFlavours(
character,
"Whenever you reach max arousal, your body grows "+setup.getLength(abilityRuntimeData.getRankGrowth("linear", 2.5))+", your @[all|cocks|one=grows~more=grows] "+setup.getLength(abilityRuntimeData.getRankGrowth("linear", 1))+" and your @[all|balls|noverb] grow "+setup.getLength(abilityRuntimeData.getRankGrowth("linear", 0.5))+"."
)
}
},
maxRank: 3
})>>
<<run setup.Ability_OrgasmicGrowth.addBehaviour(
"start",
$AbilityTrigger.ON_ACQUIRE,
undefined
)>>
<<run setup.Ability_OrgasmicGrowth.addBehaviour(
"update",
$AbilityTrigger.ON_MAX_LUST,
function(abilityRuntimeData, abilityParams)
{
var self = abilityParams.self;
setup.applyGrowth(self, "cock", abilityRuntimeData.getRankGrowth("linear", 1));
setup.applyGrowth(self