First they get factored in in applyTeaseDamage in creature.js. This function handles player specific tease-related calculations and is not used by NPC attacks.
When applyTeaseDamage finishes applying effects, it calls applyDamage, which calls CalculateLustDamage for lust damage calculations. There sexiness and pheromones get factored in as well, this time for everything that deals tease damage. This includes NPCs, lust weapons, and of course, Steele's teases.
- Potential fixes, depending on the desired result:
1- Sexiness and pheromone bonuses for NPCs, lust weapons and Steele's teases:
Remove sexiness and pheromone bonuses in applyTeaseDamage.
2- Sexiness and pheromone bonuses for NPCs and Steele's teases, but not for lust weapons:
Keep the bonuses in applyTeasedamage, exclude the player character from the bonuses in calculateLustDamage.
Potential fix for #2:
It would be so much easier if no weapons dealt tease damage. It's troublesome because calculateLustDamage does not distinguish the origin of the damage.
- Something related to it that I noticed:
The laquine sex doll in Kiroquest has the Painted Penis status effect, but it does nothing because Painted Penis is present only in applyTeaseDamage, which NPCs don't use. Same thing goes for Painted Tits and Heat. Depending on the instances (NPCs, lust weapons or both) in which you want those effects to be applied, an action similar to the ones presented above can solve this.
Potential fix for #2 plus this:
let damage = (10 + attacker.teaseSkill()/4 + attacker.sexiness());
damage += attacker.statusEffectv4("Heat");
damage += attacker.statusEffectv2("Painted Penis");
damage += attacker.statusEffectv2("Painted Tits");
if (teaseType === "SQUIRT") damage += 5;
if (attacker.hasPheromones()) damage += 1 + rand(3);
When applyTeaseDamage finishes applying effects, it calls applyDamage, which calls CalculateLustDamage for lust damage calculations. There sexiness and pheromones get factored in as well, this time for everything that deals tease damage. This includes NPCs, lust weapons, and of course, Steele's teases.
These bonuses also bypass the damage cap for teases since they are applied after the cap in applyTeaseDamage.if (lustDamage.tease.damageValue > 0 && attacker !== null) lustDamage.tease.damageValue += attacker.sexiness() / 2;
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasPheromones()) lustDamage.pheromone.damageValue += 1 + rand(attacker.pheromoneLevel());
- Potential fixes, depending on the desired result:
1- Sexiness and pheromone bonuses for NPCs, lust weapons and Steele's teases:
Remove sexiness and pheromone bonuses in applyTeaseDamage.
2- Sexiness and pheromone bonuses for NPCs and Steele's teases, but not for lust weapons:
Keep the bonuses in applyTeasedamage, exclude the player character from the bonuses in calculateLustDamage.
Potential fix for #2:
if (attacker.getClassName() === "PlayerCharacter")
else
{
if (lustDamage.tease.damageValue > 0 && attacker !== null) lustDamage.tease.damageValue += attacker.sexiness() / 2;
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasPheromones()) lustDamage.pheromone.damageValue += 1 + rand(attacker.pheromoneLevel());
}
It would be so much easier if no weapons dealt tease damage. It's troublesome because calculateLustDamage does not distinguish the origin of the damage.
- Something related to it that I noticed:
The laquine sex doll in Kiroquest has the Painted Penis status effect, but it does nothing because Painted Penis is present only in applyTeaseDamage, which NPCs don't use. Same thing goes for Painted Tits and Heat. Depending on the instances (NPCs, lust weapons or both) in which you want those effects to be applied, an action similar to the ones presented above can solve this.
Potential fix for #2 plus this:
if (attacker.getClassName() === "PlayerCharacter") {//Nada}
else
{
// I've left the old values for the bonuses, but the sexiness one shouldn't be divided by two IMO. It's old, when sexiness was going to grow through the game.
if (lustDamage.tease.damageValue > 0 && attacker !== null) lustDamage.tease.damageValue += attacker.sexiness() / 2;
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasPheromones()) lustDamage.pheromone.damageValue += 1 + rand(attacker.pheromoneLevel());
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasStatusEffect("Heat")) lustDamage.tease.damageValue += attacker.statusEffectv4("Heat");
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasStatusEffect("Painted Penis")) lustDamage.tease.damageValue += attacker.statusEffectv2("Painted Penis");
if (lustDamage.tease.damageValue > 0 && attacker !== null && attacker.hasStatusEffect("Painted Tits")) lustDamage.tease.damageValue += attacker.statusEffectv2("Painted Tits");
}
Last edited: