Alexofp / BDCC

Text based game about being a prisoner in a space prison with a lot of adult themes. Working title is Broken Dreams Correctional Center or BDCC for short. Test the latest version here: (could be unstable)
https://alexofp.github.io/BDCC/
MIT License
126 stars 41 forks source link

Datapack Characters appearing when they (probably) shouldnt #103

Open Bjorn0411 opened 1 month ago

Bjorn0411 commented 1 month ago

So I've got a character, in this case Bremen, for my datapack where I've ticked "Exclude from encounters" (aswell as disable forget and disable meet) but people are still able to encounter him, so far I've had reports from other players of:

The first two sound like a simple oversight, last one I can only assume is a bug of some kind. Last two reported by Zyro on the mods-discussion channel on discord, at around midnight between the 8th and 9th. edit: I think he was using "look for trouble" and not moving, if that makes any difference.


Also, quick bonus suggestion:

this is useful for me in particular as I've got a scene of someone sitting on the ground, by themselves, which I achieve by using a invisible hidden character in the cuddle scene. It'd be nice if my "DEBUG" character wasnt visible in the npc character list ^^

(edit: someone on the discord pointed out a vanilla ""npc"" called playerstash also has no visual data so I can get rid of my debug character anyways, but I think this feature would still be quite useful! Lets me for example hide a cheeky duplicate character trick I use elsewhere for modified looks)

Zyrro commented 1 month ago

I was able to get encounters from datapack characters flagged as "Exclude from Encounters" using Look for Trouble, and by Moving around, both work and are reproducible.

The random encounters I was able to get using both Walking around and Looking For Trouble with Dynamic NPCs Flagged as "Exclude from Encounters" are the following encounters: EngineerCaughtOffLimitsScene, NurseCaughtOffLimitsScene, GuardOfflimitsCanSlipByScene, GuardCaughtOfflimitsScene, InmateExposureFlashScene, InmateExposureForcedSexScene, InmateExposureFlashScene, StocksWillingDynNpcScene, StocksUnwillingDynNpcScene

They'll also show up for the slutwall encounters

The only encounter I was unable to get was the InmateExposureProstitutionEvent, and this has nothing to do with the "Exclude from Encounters" tag, but rather because Datapack NPCs don't have an "InmateType" defined, and since only Dynamic NPCs with the SexDeviant Tag can be selected for that event, you can never see this event with a datapack dynamic NPC. (The lack of InmateType tag in the datapack editor is probably an oversight considering that the only time InmateType actually matters for NPCs outside of generating their inventory is specifically InmateExposureProstitutionEvent)

As far as I can tell; the variable "excludeEncounters" that is set in the datapack creator isn't referenced in anywhere that determines what NPCs to select for an encounter.