[Cheat Mod] [Ren'Py] Lab Rats 2 - Cheat Menu [v3.4] [Trollden]

Aug 8, 2017
98
173
#1
Overview:
This is a mod that acts as a cheat menu for Lab Rats 2 and should be compatible through further versions of the game
Should be free of bugs, feel free to request features and edit the mod as you see fit yourself
If you do happen to run into any bugs please report them in the thread below and include the trace back of the error​

Updated: 16/4/2019
Game/Creator: /
Modder: Trollden
Mod Version: v 2.1 (Legacy), v 3.4 (Experimental)
Game Version: v0.13.1 and above (v0.14.0+ is a requirement for the experimental version)

Features:
Press "z" to open up the cheat menu
(The mod enables console by default press Shift+O to open it, this is in case any unforeseen errors happen caused by the mod)

Gives you the ability to change the stats and arousal of the player character plus the following options for other characters:

Legacy Features:

Stats change
Arousal change
Personality change
Hair and hair color change
Skin change
Body change
Face change

Experimental Features:

All of the legacy features
Increase Research Tier (Skips having to go through the Head Researcher events for stronger serums, you still have to research them in order)
Change Day, Time of Day and Force Sleep
Hire anyone you want
Increase company efficiency, supplies, marketability
List of events / crisis and trigger for those
Unlock all policies
Unlock all serum traits
Underpay, overpay or satisfy the pay requirement for all employees.
( More to come )

Installation:
Extract the content of the mod into the game folder inside of Lab Rats 2
Start Lab Rats 2 and load a save then press z to call the cheat menu

To uninstall simply delete LR2_Cheat_Mod_Trollden.rpy and .rpyc from the game folder

Change-Log:
v 3.4
Added the new crisis events to the crisis trigger list.


In the Company Cheat Menu:
- Added the ability to unlock all serum traits (will work for traits added by mods too).
- Added the ability to unlock all company policies (will work with policies from mods too).
- Hotfixed to now run on_buy_functions properly.
- Added the ability to control the wages of all employees in the form of a "Underpay" / "Overpay" / "Satisfy" all employees.

Renamed all variables and restructured the .rpy file.
Moved the "Next Page" button for the crisis list so it is not necessary to duplicate it for each page.

v 3.3
Introduction of a new tab under "World" that deals with Crisis and Events in the game, for now all you can do there is see and activate all of the events in the game.

v 3.2
Bug fixes plus some new features:

- Increase supplies
- Increase company efficiency
- Increase Marketability
- Hire and fire anyone ( Under the employment tab when editing a person ) ( This is a test feature, not complete )

Note that you can hire the same person multiple times and for different divisions simultaneously, this "duplicates" the person so several of them exist, so remember to right click their current division before hiring them for a different one. I am not sure if I am going to implement a way around this as it does not cause errors, but be careful with it while I smooth out how it works. I can't guarantee that there wont be any unforeseen consequences

v 3.1
You should no longer encounter any "the_person is not defined" errors, let me know if you do!
Note that I found A way to circumvent it, not the BEST way. If no character is defined it will default to "lily", let me know if this is too annoying and I'll keep on looking for a permanent viable solution.

Drastically adjusted values per click following feedback.
-------------------------
v 3.0 Major remake:
Instead of using menus everything is now done through a screen overlay with buttons
Added new features

Known Problem: You have to interact with a person once before using the mod the first time

------
v 2.1 Implemented the ability to change faces
------
v 2.0 Initial version of the mod

Download: (Legacy) (Compatible)
(Experimental) (v 0.14.0 +)

Let me know if you encounter errors in the Experimental Version!​

4thezone.PNG <--- Legacy | Experimental ---> experimentalcheatmenu.jpg
 

Attachments

Oct 3, 2017
20
1
#2
I'm confused how this mod is for v 0.13.0 despite the newest version on the site being 0.12.1...? Is this for the Patreon backer version?
 
Aug 8, 2017
98
173
#3
I'm confused how this mod is for v 0.13.0 despite the newest version on the site being 0.12.1...? Is this for the Patreon backer version?
It's been tested on version 0.13.0 (patreon backer version), but uses the same basis as the cheat menu made by someone during 0.12.1 so should be compatible with all current and future versions as long as the variable naming doesn't change, and if it does then that is a quick fix that I can do or can be done yourselves.

On a side note, version 0.13.1 is out to the public now on Vren's patreon. (fixes the mismatched faces and overall new rendering system for the characters)
 

zalamander

New Member
Oct 2, 2017
1
1
#4
Since i don't really know my way with renpy, but i know python and reverse eng:

To fix the faces, the cheat code has to modify the image database. The faces database is built in script.rpy lines 2334-2360.

the_person.expression_images.position_dict is an array that have the location of the images.
the_person.expression_images.positions_set have the set of positions of the character
the_person.expression_images.emotion_set have the set of emotions of the character
the_person.expression_images.special_modifiers have a set of special cases (kiss and BJ) for some reason the author handles them specifically.

the_person.expression_images.position_dict[position][emotion] has the location and image file corresponding to the face, and this is what has to be regenerated to change the face.

Hopefully somebody who knows its way with renpy can do it.
 
Likes: Trollden
Aug 8, 2017
98
173
#5
Since i don't really know my way with renpy, but i know python and reverse eng:

To fix the faces, the cheat code has to modify the image database. The faces database is built in script.rpy lines 2334-2360.

the_person.expression_images.position_dict is an array that have the location of the images.
the_person.expression_images.positions_set have the set of positions of the character
the_person.expression_images.emotion_set have the set of emotions of the character
the_person.expression_images.special_modifiers have a set of special cases (kiss and BJ) for some reason the author handles them specifically.

the_person.expression_images.position_dict[position][emotion] has the location and image file corresponding to the face, and this is what has to be regenerated to change the face.

Hopefully somebody who knows its way with renpy can do it.
I was just about to say that I am finally giving up on this after two days, but after cross checking your information with what I got from Vren I finally got it to work.

To make the changes:


Code:
the_person.expression_images = Expression("name","skin","face_type")
e.g change to face type 1, orgasm expression and white skin:

Code:
the_person.expression_images = Expression("orgasm","white","Face_1")
followed up with:

Code:
the_person.draw_person(the_person)
and it works as intended.
Going to start implementing it right now and update soon, hopefully. Unless I get stuck somehow.

----------------------

Edit: Done. Note that faces will match the color of the character's skin tone, but the skin tone does not check for the color of the face. This is a feature and not me being too lazy to implement that.
 
Aug 8, 2017
98
173
#7
Mod doesn't work for me. Won't bring up the cheat menu. Playing V0.13.1.
I got to confirm some questions I have before I can possibly fix that for you.

Are you playing on Windows / Mac or Linux?
What is your keyboard layout and language? e.g QWERTY - English
Have you pressed the correct hotkey? "z" case sensitive, caps-lock and shift will make it a "Z".
Are you using any other modifications to the game?
Have you tried starting a new game to see if that works?

I downloaded both version 0.13.1 of the game and version 2.1 of my mod and it works fine, so the issue is most likely on your end, but in what regards I do not know yet.
 

Datawungui

Active Member
Aug 18, 2016
106
54
#8
I got to confirm some questions I have before I can possibly fix that for you.

Are you playing on Windows / Mac or Linux?
What is your keyboard layout and language? e.g QWERTY - English
Have you pressed the correct hotkey? "z" case sensitive, caps-lock and shift will make it a "Z".
Are you using any other modifications to the game?
Have you tried starting a new game to see if that works?

I downloaded both version 0.13.1 of the game and version 2.1 of my mod and it works fine, so the issue is most likely on your end, but in what regards I do not know yet.
Windows, QWERTY, No other mods, started a new game to begin with, and I think the problem was caps-lock. Because I'm an idiot. Thank you for the response.
 
Likes: Trollden
Aug 8, 2017
98
173
#11
Can you add name and fetishes editing options ?
Working on it right now, trying to figure out how to update the names when on the map screen. In version 0.14.0 you can visit the character's home and although I have renamed their home location and name it remains the same on the map screen e.g rename character "Sarah" to "Hannah" and "Sarah's home" to "Hannah's home" it will still say that the home is "Sarah's" on the map.

This is also an issue for when you rename the business. (mc.business.name and b_name)

I'm also still redesigning the whole cheat menu into using actions and screens instead so it will be an overlay that can be used while doing other interactions.
(Reason for this is that the standard menu system gets way too cluttered when adding these additional options)


Edit: In unmodded version of the game "fetish" = sexy opinions, but in Starbucks mod Fetish correlates to a sex_skill of 5+ that adds a trait / characteristic in the form of a fetish e.g "Vaginal Fetish"
Question: For the fetish options I will most likely have a button for each fetish that you can cycle through Hate / Dislike / No Opinion / Like / Love and have it just be revealed automatically. Does that sound fine or should there be an option to have it be discovered / undiscovered?
Optionally I can also have it so you can input your own "custom" sexy_opinions e.g "spanking", but that wont have any gameplay effect unless the sexy_opinion you input is from a mod that provides changes.

Edit: Here is a preview of the space and layout of the cheat screen. You increase / decrease values with left click right click and toggle the overlay with Z. It doesn't look the best, but the functionality in my opinion is better.
Will be adding a "World" tab to change day, time of day etc.
Bottom bar will be filled with menus for character appearance, personality etc.
cheatmenupreview.png.jpg

Edit: Will also be updating the current cheat menu system too so you can choose if you want overlay or to click through "dialogues" / menus
 

Rozzenberg

New Member
Feb 27, 2018
2
0
#12
About your question, I would not particularly use the discovered / undiscovered option, but I find it interesting to be able to and other players might use it.
The mod is turning out great, nice job.
 
Aug 8, 2017
98
173
#13
About your question, I would not particularly use the discovered / undiscovered option, but I find it interesting to be able to and other players might use it.
The mod is turning out great, nice job.
I have updated the thread with the progress I made towards it today.
Didn't get to spend too much time on figuring out a good way to change name and add / remove opinions that is consistent with how I have set up the rest of the code. Today's focus was mainly to structure the code and layout so I know how much space I have to work with etc.

Will get back on it tomorrow.

In case you want to manually edit the opinions of a character:

Talk with a character and then open the console with Shift+O and type: the_person.sexy_opinions["opinion name"] = [number between -2 and 2, True or False]

e.g
Code:
the_person.sexy_opinions["praising the sun"] = [2, True]

# or for normal opinions

the_person.opinions["eating vegetables that look like sonic"] = [-2, True]
Here are the list of opinions that are in the game

# Sexy opinions _usually_ add a bit of bonus sluttiness, but some may influence some sex scenes, make some approaches more likely, or have other effects.
sexy_opinions_list = [] #Another list of opinions, but these ones are sex/kink related and probably shoudn't be brought up in polite conversation.
sexy_opinions_list.append("doggy style sex") #Has gameplay effect
sexy_opinions_list.append("missionary style sex") #Has gameplay effect
sexy_opinions_list.append("sex standing up") #Has gameplay effect
sexy_opinions_list.append("giving blowjobs") #Has gameplay effect
sexy_opinions_list.append("getting head")
sexy_opinions_list.append("anal sex")
sexy_opinions_list.append("vaginal sex") #Has gameplay effect
sexy_opinions_list.append("public sex") #Has gameplay effect
sexy_opinions_list.append("kissing") #Has gameplay effect
sexy_opinions_list.append("lingerie") #Has gameplay effect
sexy_opinions_list.append("masturbating") #Has gameplaye effect
sexy_opinions_list.append("giving handjobs")
sexy_opinions_list.append("being fingered")
sexy_opinions_list.append("skimpy uniforms") #Has gameplay effect
sexy_opinions_list.append("skimpy outfits") #Has gameplay effect
sexy_opinions_list.append("not wearing underwear") #Has gameplay effect
sexy_opinions_list.append("not wearing anything") #Has gameplay effect
sexy_opinions_list.append("showing her tits") #Has gameplay effect
sexy_opinions_list.append("showing her ass") #Has gameplay effect
sexy_opinions_list.append("being submissive") #Has gameplay effect
sexy_opinions_list.append("taking control") #Has gameplay effect
sexy_opinions_list.append("drinking cum") #Has gameplay effect
sexy_opinions_list.append("creampies") #Has gameplay effect
sexy_opinions_list.append("cum facials") #Has gameplay effect
sexy_opinions_list.append("being covered in cum") #Has gameplay effect
sexy_opinions_list.append("risking getting pregnant") #Has TEMPORARY gameplay effect
sexy_opinions_list.append("big dicks")


# Regular opinions _usually_ add a bit of bonus happiness, but some may influence some options or effects.
opinions_list = [] #A master list of things a character might like or dislike. Should always be named so it fits the framework "Likes X" or "Dislikes X". Personalities have a unique list that they always draw from as well
opinions_list.append("skirts")
opinions_list.append("pants")
opinions_list.append("small talk") #Has gameplay effect.
opinions_list.append("Mondays") #Has gameplay effect
opinions_list.append("Fridays") #Has gameplay effect
opinions_list.append("the weekend") #Has gameplay effect
opinions_list.append("working") #Has gameplay effect
opinions_list.append("the colour blue")
opinions_list.append("the colour yellow")
opinions_list.append("the colour red")
opinions_list.append("the colour pink")
opinions_list.append("conservative outfits") #Has gameplay effect
opinions_list.append("work uniforms") #Has gameplay effect
opinions_list.append("research work") #Has gameplay effect
opinions_list.append("marketing work") #Has gameplay effect
opinions_list.append("HR work") #Has gameplay effect
opinions_list.append("supply work") #Has gameplay effect
opinions_list.append("production work") #Has gameplay effect
opinions_list.append("makeup")
opinions_list.append("flirting") #Has gameplay effect
opinions_list.append("sports") #Has gameplay effect
opinions_list.append("hiking") #Hsa gameplay effect
 

jimdandy

Active Member
Jul 1, 2017
108
47
#14
I like the new mod layout,however clicking to increase or decrease stats, not so much. If I'm gonna cheat, I will give myself an insane amount of money( like 1billion dollars) or 9999 stamina. Clicking that many times, well I'm not a fan. Could you include an option for manual number input?
 

Thatguy

Super User
Uploader
Respected User
Aug 5, 2016
1,204
2,151
#15
Tried to use the experimental build with newest version and just errors everywhere when trying to access the cheat menu. I know that doesn't help with fixing them but when I hit ignore 20+ times before deciding to close the game I can tell it's probably a ways off. I suppose I can upload the log but was slightly modifying the txt to remove some info (user name and such) but that's gonna take time and I wish I knew a command to just replace specific text with something else as I was just using ctrl+f to and ctrl+v to replace the text that is there but that's gonna take awhile considering the amount of lines ( I don't know how to look see how many there are but it's a lot). on a side note you could jsut do the same. and receive a log yourself so me doing it seems irrelevant.
 

jimdandy

Active Member
Jul 1, 2017
108
47
#16
Tried to use the experimental build with newest version and just errors everywhere when trying to access the cheat menu. I know that doesn't help with fixing them but when I hit ignore 20+ times before deciding to close the game I can tell it's probably a ways off. I suppose I can upload the log but was slightly modifying the txt to remove some info (user name and such) but that's gonna take time and I wish I knew a command to just replace specific text with something else as I was just using ctrl+f to and ctrl+v to replace the text that is there but that's gonna take awhile considering the amount of lines ( I don't know how to look see how many there are but it's a lot). on a side note you could jsut do the same. and receive a log yourself so me doing it seems irrelevant.
Try using notepad++, click search then find from the top menu, then use the replace tab. You can replace 1 thing or all items found in the document or all documents.
 
Aug 8, 2017
98
173
#17
Tried to use the experimental build with newest version and just errors everywhere when trying to access the cheat menu. I know that doesn't help with fixing them but when I hit ignore 20+ times before deciding to close the game I can tell it's probably a ways off. I suppose I can upload the log but was slightly modifying the txt to remove some info (user name and such) but that's gonna take time and I wish I knew a command to just replace specific text with something else as I was just using ctrl+f to and ctrl+v to replace the text that is there but that's gonna take awhile considering the amount of lines ( I don't know how to look see how many there are but it's a lot). on a side note you could jsut do the same. and receive a log yourself so me doing it seems irrelevant.
Noted.
I thought I had fixed it so it would only run into the error once.
I know exactly what is wrong, but unsure of a reliable fix.

What is currently happening is that whenever the "Other Characters" cheat menu is being called it attempts to set "the_person" to be "the_person" you are in an interaction with. When there is no person present it will throw the error that "the_person is not defined", which makes sense, but this also gets thrown when you exit a conversation and have the "Other Characters" screen open.

The behavior I believed it had before posting last night was that it would "save" who the last person you spoke to was and then refresh "the_person" whenever a new interaction happened.
I tested through multiple dialogues and only got the error upon the first time I opened the menu, so I'm not sure why it is no longer working that way, but I have been meaning to put up better fail safes anyway, so I'll get on that now as it's way more of a critical issue than what I thought it was.
 
Aug 8, 2017
98
173
#18
I like the new mod layout,however clicking to increase or decrease stats, not so much. If I'm gonna cheat, I will give myself an insane amount of money( like 1billion dollars) or 9999 stamina. Clicking that many times, well I'm not a fan. Could you include an option for manual number input?
I've been looking into manual inputs as with the previous version of the mod had, but I need some time to think when it comes to implementing it in a way that is consistent with the rest of the code.
It's a rather low priority as it is not a huge issue and I also don't necessarily know exactly how to do it.
I can't say I have much knowledge when it comes to coding.

Meanwhile, I acknowledge that there may be a lot of clicking so I have attempted to balance it for the sake of not completely ruining game play ( Still, people should be allowed to cheat however they like without too much hazzle ).

I will be re-balancing the amount of clicks necessary to achieve high numbers when it comes to money, the player's stats ( all of them ) and other character's non-sex skills (having high sex skills on other characters would be pointless as it makes the main character cum from being looked at and ends the sex scene).

You can easily change these values yourself (only two numbers need to be changed per button)

Here is what I suggest would be a decent improvement, although not ridiculous.

Money: $1 000 000 per click instead of $ 10 000
Stamina: 100 per click instead of 1
Arousal: Will stay at 10 per click as 100 is the maximum and it's nice to have control of it.

Player's main stats: 10 per click instead of 1. (You have like 100000 IQ with 10 Intelligence)
Player's work skills: 1000 per click (these stats don't break the gameplay)
Sex Skills: 5 per click instead of 1. (High numbers will make a character cum in one turn, but you can use the arousal control for that)


That being said, I will look into manual inputs as well, but rather for the purpose of changing names. Once I figure that out it is pretty much copy paste of the code.
 
Likes: jimdandy

Thatguy

Super User
Uploader
Respected User
Aug 5, 2016
1,204
2,151
#19
There's another cheat mod that does manual inputs for stats and money and such that I normally use or someone modded your mod to allow them. Yours this time around was the first to be updated so tested it first and yeah, the errors were when I was alone. basically fresh save (as I do with every new version) and was aiming to boost my own stats at the start when the errors occurred.