The opponent.properties file
This file contains basic data about the player. Most of it is optional. The order of the lines in the file does not matter.
Each line is in the format of property_name=property_value
opponent.name
This is the name of the opponent as it will appear in the game. Mandatory
opponent.ai
This is the core ai type used by the opponent when playing. The value can be random (mostly random, absolutely terrible player), fixed (always bets the same), or proportional (adjusts choices to the quality of their hand, solid player).
opponent.ai.components
This is a comma-separated list of modifiers that can be applied to your AI to tweak it's behavior and give it a personalized play style. There are multiple values to choose from, and they can be combined.
rookie players will make rookie mistakes that normal players avoid by default. Sub-optimal choices like folding against a 0-bet or trying to beat a shielded opponent instead of folding
shy_X players will bet lower and fold more often. X is a value from 1 to 4, where higher is shyer.
aggressive_X players will bet higher and fold less often. X is a value from 1 to 4
bluffer_X players will attempt to bluff more often. X is a value from 1 to 4
clumsy_X players will occasionally reveal their cards by accident. X is a value from 1 to 4
peek_resistant_X players guard their cards well and will have improved chances of resisting the peek action. X is a value from 1 to 4
ruthless players will always buy shields if they have enough money to win the game by buying shields every turn.
kind players will never buy shields if their only opponent is down to their last piece of clothing
opponent.alcoholPerDrink
How drunk the player gets when they drink. Defaults to 2. Tweak this value to match the type of drink your player is having, or reflect their natural alcohol tolerance. 0 means they will not get drunk at all.
opponent.drinkInterval
The number of rounds before the player is ready to drink again. Defaults to 3. Tweak this value to match the type of drink your player is having, or reflect their guzzling/sipping habits.
opponent.voice.clone
The folder name of the opponent who's voice should also be used for this opponent.
example: opponent.voice.clone=leah will give Leah's voice to this opponent.
opponent.lock
This can be used to lock the opponent until a specific condition has been met, like beating one or more other players first. Note that all player and outfit names in the lock value must be the folder name, not the display name. Examples:
victoria.* means Victoria needs to have been defeated. Any outfit will do.
victoria.swimsuit means Victoria's Swimsuit outfit needs to have been defeated.
victoria.*,nadia.bluedress means both Victoria must have been defeated, and Nadia's Blue Dress outfit must also have been defeated, in the same match
flavor properties
These properties only show up in the opponents details hover-card and have no effect on the game. Fill these out to help flesh out your player's background/personality.
- opponent.description
- opponent.occupation
- opponent.likes
- opponent.dislikes
- opponent.age
- opponent.ethnicity
- opponent.hair.color
- opponent.eye.color