Brothel King - Girl packs and Mods Collection

4.00 star(s) 2 Votes

Earliestbird

Member
Game Developer
Sep 5, 2020
276
747
Question, theres a girl who is always naked (Midna). If I put the "Naturist" trait to always in the bk.ini, does that work without breaking the game? She doesnt have pictures with clothes on.
 

__neronero

Member
Jan 23, 2021
285
392
Depending on the settings selected in the "Game Settings" menu, users may encounter her clothed at various points in the game (in the city, in the market, when they've ordered her to put on clothes)

I would try to find at least 1 clothed (or nudity-obscured) profile picture if you can, or even (but not everyone might agree with this choice) choose one naked profile pic and tag it as not-naked. Else, there's a chance that a generic "stock" profile picture is displayed in these situations.
 

enzokpo1912

Member
Jun 6, 2017
129
419
Name: Camilla
Universe: Fire Emblem
Pics: 600+
Type: Video Game

Name: Corrin
Universe: Fire Emblem
Pics: 600+
Type: Video Game

Name: Lyndis
Universe: Fire Emblem
Pics: 700+
Type: Video Game

Name: Robin
Universe: Fire Emblem
Pics: 600+
Type: Video Game

Folder Link:
Camilla.jpg Corrin.jpg Lyndis.jpg Robin.jpg
 

luckymccharms

New Member
Dec 16, 2018
12
3
What exactly was your problem with the _BK OLD file? As far as I can tell, she generates just fine with either .ini.

If you have a lot of packs, some of them missing out is expected. Randomness can complicate this further, making it look like she isn't being generated while she actually either is in some hidden corner of the city, or is just randomly being passed over several times in a row.
She just wouldn't show up in city or market, even when cycling through many many times using cheats. As soon as I changed the _BK, I was able to get her to show up in two different save timelines with a cycle or two of free girl refresh.
 

Jman9

Engaged Member
Jul 17, 2019
2,295
958
She just wouldn't show up in city or market, even when cycling through many many times using cheats.
As you can see from my screenshot (ignoring that I'm using Lyndis as a test vessel :) ), that may have just been a random occurrence. I had no trouble with either version of her.

Can you double check, cut down your girl packs to maybe half a dozen for a moment, and try again? And verify that your .ini is identical to what you posted. Because if so, there's something screwy going on with your game. Are you using girl mixes?
 

Leortha

Active Member
Jun 25, 2019
744
667
With the way that the freegirls are handled in the city it's quite possible for a girl to have spawned out in the city and be hidden out there. And once one copy of a given girl spawns, whether you can find them or not, additional copies are blocked. That's assuming you have enough girl packs for the game to not need duplicates.

So the request from Jman is to force the game to make duplicates by reducing it's options to only a few packs. That will help to make sure that the situation is not a matter of her having spawnwed somewhere and being hidden. It'll have eliminate the most likely cause of the situation that you are seeing.
 

DougTheC

Member
Oct 15, 2018
386
218
Sure thing. The original is attached as _BK OLD.txt and the edited is _BK.txt since the forum won't let me attach .ini files
Note that some values have been case-sensitive (less than in past), like should use "random" rather than "Random".

I'd also set, instead of empty string,
origin = "random"

Otherwise, like others I found no problems with either .ini file. There is one hidden city location in chapter 1 where a created
girl could be hidden and reduce the chance of her clones being generated, but city girls' locations are usually switched every Monday so you could see.
("Usually" because in chapter 1, there's a 1 in 6 chance a girl in hidden location will be re-assigned there on Monday shuffle.)
 
Last edited:

Earliestbird

Member
Game Developer
Sep 5, 2020
276
747
Im thinking about an event for my packs. I never coded before but it looks simple enough, but what I cant figure out is during gameplay when exactly do conditional events get triggered?

I'm using "if girl.get_stat("sex") > 75", which means the event should trigger when the sex skill is greater than 75. Whats that mean exactly? The event triggers once when the skill increase happens and never again? I would like the event to have a chance to trigger once the sex skill is high enough or something, but Ive been spamming next day with 100+ skill and it hasnt triggered yet (trying to test with cheats).

Anyone knows of an easier way to do this, maybe through the interact menu? Honestly if I could add a new menu to the "misc" section to trigger the event on command would be the most convenient.
 
Last edited:

Jman9

Engaged Member
Jul 17, 2019
2,295
958
Events need hooks into the game. Just a conditional does nothing except allow/disallow the code block following it. If that code block has no links to an existing game, or the game in general, nothing happens.

Testing for 'girl.get_stat("sex") > 75' returns True/proceeds with the code if she currently (i.e. at the time the check is being run) has 75+ in the sex stat (including boosts from items, traits, etc). Not 74.5, not 74.9999, 75 or more.

If you mean the 'misc' interactions, take a look at the Hinata Hyuga pack that's caused quite a bit of discussion over at HHS. She has a 'misc' event to visit her room, and a little bit into it there's a menu choice.

If you want an automatic trigger, night labels are probably the most fitting place for those. You'll probably also need to trip a flag if this is meant to be a one-time event.

It's also possible to schedule a morning/evening event, which might go better with game flow.
 
Last edited:
  • Like
Reactions: __neronero

__neronero

Member
Jan 23, 2021
285
392
Im thinking about an event for my packs. I never coded before but it looks simple enough, but what I cant figure out is during gameplay when exactly do conditional events get triggered?

I'm using "if girl.get_stat("sex") > 75", which means the event should trigger when the sex skill is greater than 75. Whats that mean exactly? The event triggers once when the skill increase happens and never again? I would like the event to have a chance to trigger once the sex skill is high enough or something. Anyone knows of an easier way to do this, maybe through the interact menu?

Honestly if I could add a new menu to the "misc" section to trigger the event on command would be the most convenient.
"if girl.get_stat("sex") > 75" is an instruction for the program to go check whatever the girl's "sex" stat is right now, and to only run the following code if that stat is higher than 75. When exactly this piece of code is run is completely dependant on where you place the code within the program. It could repeat every single night, once a year, only when a button is pressed, etc... If you don't want it to be repeatable, you'll have to consider that in the if statement. eg: Add a variable mygirl_introduction_happened that's False by default, but turns True after the event has been triggered, and check for that variable in the if statement.

To add a button to your girl's menu, add the following to your girl's BK.ini under [background story]
Code:
## This adds a custom button to the regular slave interact menu.
interact_prompt = ("This is a button", "mygirl_interact_button", 2) ; The first string refers to the caption of the button. The second is the label which will be called upon clicking the button, The third number is the AP neccesarry for pressing the button. It must take 'girl' as an argument.
Then add associated code under "label mygirl_interact_button(girl):" in your events.rpy file.
 

Earliestbird

Member
Game Developer
Sep 5, 2020
276
747
I cant find the Hinata Hyuga pack anywhere, been looking at the Boa Hancock code. This is what I have:

Code:
#### BOA HANCOCK ####

## Customized girl events: These events are designed to work together with a custom girl init file.
## It doesn't really matter what this file is called or where within the 'game' folder or subfolders it is dropped.
## However, for reducing cluttering, it is recommended you name this file '_events.rpy' and drop it in the relevant girl folder.
## Important: Please choose unique label names to avoid labelling conflicts with the main game files and other girl packs (i.e. 'label boa_hancock_start', not 'label start').
## You could also use local labels (from newer Ren'py versions).


interact_prompt = ("This is a button", "mygirl_interact_button", 2) ; The first string refers to the caption of the button. The second is the label which will be called upon clicking the button, The third number is the AP neccesarry for pressing the button. It must take 'girl' as an argument.


label mygirl_interact_button(girl):

   
    show screen show_event(girl.get_pic("naked"), x=1024, y=768, bg=None)
   
    "[girl.name] test. Play Test Scene etc."
   
    "She gives you a lustful look, moaning her next words."
   
    girl.char "test"
   
    show screen show_event(girl.get_pic("sex"), x=1024, y=768, bg=None)
   
    with dissolve
   
    girl.char "test2"
   

return
But the game gives this error:

Capture.PNG

Sorry if im being an idiot right now. The event im trying to make should be very simple once I figure out how to initiate it (basically just dialogue, using pregnancy tagged pictures)
 

Earliestbird

Member
Game Developer
Sep 5, 2020
276
747
The interact_prompt line must be added to your girl's BK.ini under [background story] :)
It seems to be working, thanks! The only issue is the AP cost doesn't get reduced after the interaction (can only click the button if you have 2 AP, but you won't lose AP after). I'm guessing this has to be done manually somehow in the _events.ini?
 

__neronero

Member
Jan 23, 2021
285
392
I've never paid attention to it, but you're probably right. To manually reduce the player's AP, add the following to the event:

Code:
$ MC.interactions -= 2
 

Jman9

Engaged Member
Jul 17, 2019
2,295
958
I cant find the Hinata Hyuga pack anywhere, been looking at the Boa Hancock code. This is what I have:
There are something like four Hinata packs in the spreadsheet. :rolleyes:

I've attached _neronero's latest version. Rename the .ini.txt to .ini.

using pregnancy tagged pictures
Using Picture objects likely requires you to use screens. We are right now discussing a way to implement declaring specific images so you can use 'image' functionality without needing to pay attention to what your players do with the pack. If you don't care about that, you can try something like this:
Code:
show screen show_event(girl.get_pic("pregnant"), x=config.screen_width, y=config.screen_height)
But screens are less flexible than declared images. The 'with' transform works with them, but others might not.

The only issue is the AP cost... I'm guessing this has to be done manually somehow in the _events.ini?
That has two components. First, the displayed cost, which also doesn't allow you to click on the button with too few AP:
Code:
interact_prompt = ("This is a button", "mygirl_interact_button", 99) ;
Second, the actual cost deduction within the script:
Code:
label mygirl_interact_button(girl):
...
    $ MC.interactions -= 99
 

__neronero

Member
Jan 23, 2021
285
392
Oh, the "pregnant" tag is currently considered a "forbidden tag" that's ignored by vanilla BK's tag-system.
Same goes with lots of other extended tags, they're sort of half-supported right now. , but changing it hasn't been a priority so far. If you want to use the pregnant tag, let Goldo know.

If you're happy just experimenting a bit for now, there are also some alternatives:
- You could directly use an image instead of searching for tags with get_pic() (this is what the current code discussion on HHS is all about)
- You could run the Trait King mod, which also adds makeshift support for extended tags such as pregnant. That way you could test your event before asking Goldo to support the pregnant tag officially.
 
Last edited:
  • Like
Reactions: Jman9

Jman9

Engaged Member
Jul 17, 2019
2,295
958
Oh, the "pregnant" tag is currently considered a "forbidden tag" that's ignored by vanilla BK's tag-system.
Same goes with lots of other extended tags, they're sort of half-supported right now.
Yeah... Although the only other outright forbidden tag is 'death'. You can change that easily enough by messing around in BKsettings.rpy, although then you might have issues with e.g. Whore Master packs showing you lots of pregnant pics when your girl isn't. :(

You could also create some fake tag like "fkprg" and add that to the tag dictionary. But then you either have to mess with it in some init block or continue changing BKsettings.rpy after each update.
 

Earliestbird

Member
Game Developer
Sep 5, 2020
276
747
Oh, the "pregnant" tag is currently considered a "forbidden tag" that's ignored by vanilla BK's tag-system.
Same goes with lots of other extended tags, they're sort of half-supported right now. , but changing it hasn't been a priority so far. If you want to use the pregnant tag, let Goldo know.

If you're happy just experimenting a bit for now, there are also some alternatives:
- You could directly use an image instead of searching for tags with get_pic() (this is what the current code discussion on HHS is all about)
- You could run the Trait King mod, which also adds makeshift support for extended tags such as pregnant. That way you could test your event before asking Goldo to support the pregnant tag officially.
I think for now it would be simpler to use direct images, especially since a lot of people arent going to have Trait King installed. Could you shoot me an example how to do that (something that works with the code I posed above)?

I'm using my ciri pack for testing, and the "show screen show_event" lines for "masturbate" and "inside" don't bring up any pictures, even tho there's multiple "masturbate" and "inside" pictures in the pack. But "sex" and "fondle" work.
 
  • Like
Reactions: __neronero

__neronero

Member
Jan 23, 2021
285
392
I think for now it would be simpler to use direct images, especially since a lot of people arent going to have Trait King installed. Could you shoot me an example how to do that (something that works with the code I posed above)
We're considering some small changes on how to do this, but for now I'll just explain the current way of doing things. Downside is that it doesn't work in girlmix subfolders or if you rename your folder (that's why we're discussing some changes)

To use an image directly, you have to first "declare" the image (which is like archiving the image under a certain name) - then later in an event, you can refer to that name to show the image.

In events.rpy:
Code:
image mygirl_preggers = "girls/my girl folder/pregnant.jpg"

label somelabel(girl):

    show mygirl_preggers:
        xalign 0.5 yalign 0.5
    with fade

    girl.char "I've got a bun in the oven!"

    hide mygirl_preggers
Jman might be able to explain some more about the different options of how to show the image.


I'm using my ciri pack for testing, and the "show screen show_event" lines for "masturbate" and "inside" don't bring up any pictures, even tho there's multiple "masturbate" and "inside" pictures in the pack. But "sex" and "fondle" work.
The game interprets "inside" tags on images as "cin" (cum inside) - so firstly, this tag probably doesn't mean what you think it does (there is no official "location: inside a structure"-tag)
And to make it work it you'd have to search for "cin" instead of "inside" (but obviously, cum inside is an odd thing to combine with masturbating)


"Masturbate" on an image is interpreted by the game as "mast", so you'll have to search for "mast" with get_pic()
 
Last edited:
  • Like
Reactions: Jman9
4.00 star(s) 2 Votes