• To improve security, we will soon start forcing password resets for any account that uses a weak password on the next login. If you have a weak password or a defunct email, please update it now to prevent future disruption.
4.70 star(s) 51 Votes

fulcrum

Engaged Member
Feb 2, 2018
3,321
1,833
Got some issue on the newest release with your "Support for starters"- File ^^

You don't have permission to view the spoiler content. Log in or register now.
you can now corrupt the entire city but you'll need to have the support of the agent, so i'm pondering if i should keep supporting it.
or i might write a proper patch to it if someone teaches me how to supercede the original code block to have finer control over the visits.
 

tossler

Member
Jul 1, 2017
379
219
I've searched through all these comments but still have no idea how to design (let alone manufacture) a serum. I must be retarded. It would be convenient to blame the crazy confusing interface for my failure, but the rest of you seem to understand how this works... so there's gotta be something lacking on my part.
 

fulcrum

Engaged Member
Feb 2, 2018
3,321
1,833
I've searched through all these comments but still have no idea how to design (let alone manufacture) a serum. I must be retarded. It would be convenient to blame the crazy confusing interface for my failure, but the rest of you seem to understand how this works... so there's gotta be something lacking on my part.
R&D Lab, "[DESIGN NEW SERUM]". You get a short tutorial but it boils down to selecting the traits to include from a scrollable list. You need to research them first. Depending on mastery level and base chance, you'll get slapped with random effects that are usualy non desirable and eat into the profit of your serums. When a level of development is completely researched, you get a story event to start unlocking the next.
Every trait has one or more associated parameters regarding its classification, which are relevant for one time transfer contracts that ask for or limit certain parameters for the serums sold to them.
several traits have an attention parameter (only the highest in a serum counts) that increases the city administrations awareness of you and if its high enough they'll come in and slap you around - every single sold serum adds to it, so a 10 serums of attn level 1 add 10 awareness, level 2 are 20, and 3 30. of course you can trick the officer too.

first, you need to choose a "carrier" that dictates amount of base slots, then you add traits. some traits increase effect duration, some traits give you more slots. when you're done with designing and finalize the serums effects, you have to research its recipe like a normal trait.
 

Oh my

Member
Dec 25, 2019
354
427
I've searched through all these comments but still have no idea how to design (let alone manufacture) a serum. I must be retarded. It would be convenient to blame the crazy confusing interface for my failure, but the rest of you seem to understand how this works... so there's gotta be something lacking on my part.
Assign Research Project in R&D Department.
'Unlock and Begin Research'.
Ensure that there is Research in the Lab.
When it's unlocked, Design New Serum.
You need a 'carrier' like Primitive Serum Production to attach something like Basic Medical Application to.
When it's designed, you need to research the newly designed serum.
When it's unlocked, you may set production in Production Division.
 

Harvey Danger

Member
Jul 10, 2017
113
113
As far as I'm aware buying the club is solely gatekept by advancing the sexshop story and having enough capital saved to afford it (200k iirc). I've actually done that without moving the cousin's story forward.
right on - i've honestly never looked into the mechanics, thus the copious wiggle-word usage :)
 

divas72

Newbie
Jul 12, 2017
50
52
I think it's the problem of using multiple of these serums. Maybe I can't use more than one? When one ends it puts the person where he was before, but when the second one ends, it goes even below that?
The problem may be that in Trist's version, the effect_dict of the previous serum is copied at the time the selective amnesia serum is applied. And its composition may be different from the current one. I warned him not to do that. You should copy from the previous serum only the records related to selective amnesia.

Instead of:
serum.effects_dict = oldest_serum.effects_dict.copy()
should have used:
serum.effects_dict["love"] = oldest_serum.effects_dict.get("love", None) or person.love
serum.effects_dict["obedience"] = oldest_serum.effects_dict.get("obedience", None) or person._obedience
serum.effects_dict["happiness"] = oldest_serum.effects_dict.get("happiness", None) or person.happiness
serum.effects_dict["sluttiness"] = oldest_serum.effects_dict.get("sluttiness", None) or person._sluttiness
serum.effects_dict["pregnant"] = oldest_serum.effects_dict.get("pregnant", None) or person.is_pregnant
serum.effects_dict["broken_taboos"] = oldest_serum.effects_dict.get("broken_taboos", None) or person.broken_taboos.copy()
serum.effects_dict["opinions"] = oldest_serum.effects_dict.get("opinions", None) or copy.deepcopy(person.opinions)
serum.effects_dict["sexy_opinions"] = oldest_serum.effects_dict.get("sexy_opinions", None) or copy.deepcopy(person.sexy_opinions)
serum.effects_dict["sex_record"] = oldest_serum.effects_dict.get("sex_record", None) or person.sex_record.copy()
 

fulcrum

Engaged Member
Feb 2, 2018
3,321
1,833
The problem may be that in Trist's version, the effect_dict of the previous serum is copied at the time the selective amnesia serum is applied. And its composition may be different from the current one. I warned him not to do that. You should copy from the previous serum only the records related to selective amnesia.

Instead of:
serum.effects_dict = oldest_serum.effects_dict.copy()
should have used:
serum.effects_dict["love"] = oldest_serum.effects_dict.get("love", None) or person.love
serum.effects_dict["obedience"] = oldest_serum.effects_dict.get("obedience", None) or person._obedience
serum.effects_dict["happiness"] = oldest_serum.effects_dict.get("happiness", None) or person.happiness
serum.effects_dict["sluttiness"] = oldest_serum.effects_dict.get("sluttiness", None) or person._sluttiness
serum.effects_dict["pregnant"] = oldest_serum.effects_dict.get("pregnant", None) or person.is_pregnant
serum.effects_dict["broken_taboos"] = oldest_serum.effects_dict.get("broken_taboos", None) or person.broken_taboos.copy()
serum.effects_dict["opinions"] = oldest_serum.effects_dict.get("opinions", None) or copy.deepcopy(person.opinions)
serum.effects_dict["sexy_opinions"] = oldest_serum.effects_dict.get("sexy_opinions", None) or copy.deepcopy(person.sexy_opinions)
serum.effects_dict["sex_record"] = oldest_serum.effects_dict.get("sex_record", None) or person.sex_record.copy()
so its basicaly re-introducing the clamp "bug" where giving them flat value boosters leads to overpenalizing; ex. a value like... love is clamped to 100, she has 90 points and you give love potion (+20). she gets the additional 10 points love to 100, the other 10 vanish and once the serum runs out she got dropped by the full 20 to 80.
 

divas72

Newbie
Jul 12, 2017
50
52
so its basicaly re-introducing the clamp "bug" where giving them flat value boosters leads to overpenalizing; ex. a value like... love is clamped to 100, she has 90 points and you give love potion (+20). she gets the additional 10 points love to 100, the other 10 vanish and once the serum runs out she got dropped by the full 20 to 80.
That's right. If selective amnesia is at the end of the list of traits in a serum, then the values stored in the effect_dict of that serum may disappear, and then the default values will be used, and they are quite high.
That's what I was suggesting:
# Original idea by divas72

import copy
from game.bugfix_additions.SerumTraitMod_ren import SerumTraitMod
from game.major_game_classes.character_related.Person_ren import Person, mc, list_of_instantiation_functions
from game.major_game_classes.serum_related.SerumDesign_ren import SerumDesign
from game.major_game_classes.serum_related.serums._serum_traits_T3_ren import mind_control_agent

"""renpy
init -1 python:
"""
list_of_instantiation_functions.append("init_amnesia_serum")

def amnesia_trait_on_apply(person: Person, serum: SerumDesign, add_to_log: bool):
# We need to find a serum with the Amnesia trait in the active person's serums and save it.
for design in person.serum_effects:
if id(design) != id(serum) and design.has_trait(amnesia_trait):
serum.effects_dict["precondition for a amnesia trait enhance crisis"] = design

serum.effects_dict["love"] = person.love
serum.effects_dict["obedience"] = person._obedience
serum.effects_dict["happiness"] = person.happiness
serum.effects_dict["sluttiness"] = person._sluttiness
serum.effects_dict["pregnant"] = person.is_pregnant
serum.effects_dict["broken_taboos"] = person.broken_taboos.copy()
serum.effects_dict["opinions"] = copy.deepcopy(person.opinions)
serum.effects_dict["sexy_opinions"] = copy.deepcopy(person.sexy_opinions)
serum.effects_dict["sex_record"] = person.sex_record.copy()

if add_to_log:
mc.log_event(f"{person.display_name}: now has selective amnesia", "float_text_red")

def amnesia_trait_on_remove(person: Person, serum: SerumDesign, add_to_log: bool):
# If the stored serum is no longer there, and it was, then the girl must remember what she shouldn't remember.
if (d:=serum.effects_dict.get("precondition for a amnesia trait enhance crisis", None)) and d not in person.serum_effects:
if not "amnesia trait enhance crisis" in mc.business.event_triggers_dict:
mc.business.event_triggers_dict["amnesia trait enhance crisis"] = True
turns = serum.duration * (serum.duration - 1) // 2 if self_generating_serum in serum.traits else serum.duration
xday = day + (turns - serum.duration_counter)//7 + 1
mc.business.add_mandatory_crisis(
Action("Сrisis Of Amnesia Trait With Precedent", amnesia_girl_crisis_requirement, "amnesia_girl_crisis_label",
args = person, requirement_args = [person, xday]))

person.love = serum.effects_dict["love"]
person._obedience = serum.effects_dict["obedience"]
person.happiness = serum.effects_dict["happiness"]
person._sluttiness = serum.effects_dict["sluttiness"]
person.broken_taboos = serum.effects_dict["broken_taboos"]
person.opinions = serum.effects_dict["opinions"]
person.sexy_opinions = serum.effects_dict["sexy_opinions"]
person.sex_record = serum.effects_dict["sex_record"]
if not serum.effects_dict.get("pregnant", True) and person.is_pregnant:
person.event_triggers_dict["preg_mc_father"] = False
person.event_triggers_dict["immaculate_conception"] = True #TODO: Complete the event where the girl tells you that she got pregnant in an impossible way with the opportunity to confess paternity.

if add_to_log:
mc.log_event(f"{person.display_name}: selective amnesia has faded", "float_text_red")

def amnesia_trait_enhanced_on_apply(person: Person, serum: SerumDesign, add_to_log: bool):
# We need to find a serum with the Amnesia trait in the active person's serums and save it.
pre_amnesia = serum
for design in person.serum_effects:
if id(design) != id(serum) and design.has_trait(amnesia_trait) or design.has_trait(enhanced_amnesia_trait):
pre_amnesia = design

# Instead of storing the current data in a "restore point", we retrieve data from an existing point:
# NOTE: For dicts and lists we use a direct link instead of creating a copy because when pre_amnesia expired its action and is deleted, these lists and dictionaries will still be in memory.
serum.effects_dict["love"] = pre_amnesia.effects_dict.get("love", None) or person.love
serum.effects_dict["obedience"] = pre_amnesia.effects_dict.get("obedience", None) or person._obedience
serum.effects_dict["happiness"] = pre_amnesia.effects_dict.get("happiness", None) or person.happiness
serum.effects_dict["sluttiness"] = pre_amnesia.effects_dict.get("sluttiness", None) or person._sluttiness
serum.effects_dict["pregnant"] = pre_amnesia.effects_dict.get("pregnant", None) or person.is_pregnant
serum.effects_dict["broken_taboos"] = pre_amnesia.effects_dict.get("broken_taboos", None) or person.broken_taboos.copy()
serum.effects_dict["opinions"] = pre_amnesia.effects_dict.get("opinions", None) or copy.deepcopy(person.opinions)
serum.effects_dict["sexy_opinions"] = pre_amnesia.effects_dict.get("sexy_opinions", None) or copy.deepcopy(person.sexy_opinions)
serum.effects_dict["sex_record"] = pre_amnesia.effects_dict.get("sex_record", None) or person.sex_record.copy()

if add_to_log:
mc.log_event(f"{person.display_name}: now has selective amnesia", "float_text_red")

def amnesia_girl_crisis_requirement(person, xday):
if mc.business.event_triggers_dict.get("amnesia trait enhance crisis", None) and day >= xday:
if person.is_employee: return mc.is_at_work
elif person.is_family: return mc.is_home
else: return not (mc.is_at_work or mc.is_home)
return False

def amnesia_trait_crisis_requirement():
return mc.business.event_triggers_dict.get("amnesia trait enhance crisis", None) and amnesia_trait.mastery_level > 3.0

def init_amnesia_serum():
amnesia_trait = SerumTraitMod(name = "Selective Amnesia",
desc = "As suggested, this trait blocks the person's ability to store experience from the short-term memory into the long-term memory, when the serum expires all primary stats and opinions will be restored to the values prior to taking the serum, including sex acts and how she got pregnant.",
positive_slug = "Blocks memories",
negative_slug = "Restores all major stats and opinions to the value before taking serum",
research_added = 1000,
base_side_effect_chance = 100,
on_apply = amnesia_trait_on_apply,
on_remove = amnesia_trait_on_remove,
tier = 3,
start_researched = False,
requires = [mind_control_agent],
research_needed = 2000,
clarity_cost = 1500,
mental_aspect = 7, physical_aspect = 1, sexual_aspect = 3, medical_aspect = 2, flaws_aspect = 0, attention = 5,
start_enabled = True)

enhanced_amnesia_trait = SerumTraitMod(name = "Selective Amnesia Enhanced",
desc = "This trait blocks the person's ability to store experience from the short-term memory into the long-term memory, when the serum expires all primary stats and opinions will be restored to the values prior to taking the serum, including sex acts and how she got pregnant.",
positive_slug = "Blocks memories",
negative_slug = "Restores all major stats and opinions to the value before taking serum",
research_added = 1000,
base_side_effect_chance = 100,
on_apply = amnesia_trait_enhanced_on_apply,
on_remove = amnesia_trait_on_remove,
tier = 3,
start_researched = False,
research_needed = 2000,
clarity_cost = 1500,
mental_aspect = 7, physical_aspect = 1, sexual_aspect = 3, medical_aspect = 2, flaws_aspect = 0, attention = 5,
start_enabled = False, allow_toggle = False)

mc.business.add_mandatory_crisis(
Action("Enhance Amnesia Trait Crisis", amnesia_trait_crisis_requirement, "amnesia_trait_crisis_label",
args = None, requirement_args = None))
 
Last edited:

dragonflame

Well-Known Member
Mar 9, 2020
1,426
650
they need to add male and ntr. it fun but you the only male you can have sex and get all women pregnant
 

themagiman

Well-Known Member
Mar 3, 2018
1,314
398
I'm not really seeing much new content. The only serum effect I found was selective amnesia and Kaya keeps telling me she is busy with exams. Are there more?
 

DrPepper808

Newbie
Dec 7, 2021
69
37
I would like to take advantage of the two new City Law Polices. but not sure where to find or trigger or the City Administrator. I keep going to the coffee shop but no triggers there, Cop is fully corrupted.(That was fun :)). What am I missing?
 

Porrvald

Member
Sep 12, 2020
354
372
I would like to take advantage of the two new City Law Polices. but not sure where to find or trigger or the City Administrator. I keep going to the coffee shop but no triggers there, Cop is fully corrupted.(That was fun :)). What am I missing?
She comes to visit you once Attention reaches 100%, which happens if you sell lots of serums with high attention number.
 

hibakuxa

Newbie
Nov 10, 2017
20
15
At some point in the the evolution of the game, if a girl hated anal sex, but you still hadn't found that out, you could start vaginal sex and if the position allowed it evolve to anal. The game would accept that option, as long as you didn't pick anal from the big menu to pick a position. If it was in "the heat of the moment" and you were oblivious of that girl opinion, that would be acceptable. Or, vice-versa, from anal to vaginal or any other hated opinions she might have.

Is this option toggleable in the preferences menu or was it completely removed?
I actually liked that difference in the role play of event, between picking a position in a menu or following "the heat of the moment" where some glitches and unknown preferences could get overruled.
 

DrPepper808

Newbie
Dec 7, 2021
69
37
She comes to visit you once Attention reaches 100%, which happens if you sell lots of serums with high attention number.
Ok, I have maxxxed her out, I set her up with like 4 slutty outfits. but no trigger to move forward. :(
I must be still missing something.
 
4.70 star(s) 51 Votes