Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Selfbondage software and other kinky developments

Moderators: Riddle, Shannon SteelSlave

Wantsbdsm
*
Posts: 4
Joined: 11 Apr 2018, 03:02

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by Wantsbdsm »

I just rooted out and deleted my old version... Will the updated version support Arduino uno boards???

Also is there a current link for the latest version download?
FengHuang
*
Posts: 11
Joined: 10 Jan 2020, 22:42

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by FengHuang »

Wantsbdsm wrote:I just rooted out and deleted my old version... Will the updated version support Arduino uno boards???

Also is there a current link for the latest version download?
The most recent link I posted should still be valid for the latest released version, see below for that. I am still interested in continuing to support this project, although was obviously unable to dedicate effort to it for most of last year due to a whole confluence of circumstances. Hopefully this year will be better for that, and I have seen that there was some activity in the GitLab project so there will be a new version coming soon with some improvements and new little bits of functionality. For Arduino in particular, I don't have one myself and don't know too much about them specifically, so I can't promise any direct support of it from me personally. However the existing External Action system is pretty flexible since you can invoke any program or script, so I don't think it would be too hard for you to write your own bit of code to do the Arduino interaction (possibly simply in Powershell?) that SBBJT can call out to.
FengHuang wrote:Version 0.31 uploaded!
https://mega.nz/#!9Jli1CxI!TXw6SSpr7C5N ... 0vPYJWgLIM

Code: Select all

Version 0.31
Added "DeepThroatReached" and "VeryDeepThroatReached" events which trigger immediately upon the respective region being covered, before MinTime reached.
Updated ExternalAction page to have tabs for Program, Script, and Relay actions. So you can directly select a Powershell script without having to figure out how to call it as a Program, for example.
    When each ExternalAction is triggered, ALL configured actions will trigger, so you can call both a Program and a Script if you want.
    There is a checkbox to use the location of the script file as the working directory (default is the location of the SBBJT executable).
Added "Re-set Colors For Each Job" option to Session form which determines whether colors are set just once at Session start, or separately for each Job.
    Previous default behavior was as if this option was always checked, colors had to be set before each Job started.
    Unchecking this will ignore any per-job region mods, since the regions can't be changed once the session starts without re-setting colors.
Fixed issue where invoking an ExternalAction would pause the Session loop until the external process completely terminated.
Fixed bug where refreshing the Camera list would add duplicate entries to the list instead of building a new list from scratch. (thanks wolfgangmuc!)
Fixed bug in audio file selection where the last option would never be chosen.
Got a couple requested features in there, and some general improvements/bug fixes, lemme know what you think :D
Qatl
*
Posts: 15
Joined: 20 May 2016, 21:25

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by Qatl »

Hey FengHuang,

last year wasn't easy for any of us and I, too, hope the next one is gonna be better (...that shouldn't be too hard :lol: )
Should you find the time to work on a new version, I have two requests that I'd like to tell you about before I forget again haha.

The first thing I would find useful is an expansion of the number of external actions. Five punishments and teases each seems like a lot, but I have run out a few times (especially when using different scripts for starting/ stopping or opening/closing things. As 5 is an odd number, that leaves me with only two devices I can operate in each category.)

The second one is the random jobs. Although I think I do kinda understand Phoenixs reasoning, I find the current system convoluted and overly complex (If I remember correctly, the whole thing basically relies on setting up "master jobs" and then a random number of "sub jobs" that are based on this template. If you want me to tell more about the current random job system I'll need to have another look.)
What I would prefer, is a system (or at least an option) in which the different jobs you set up are simply executed in a random order. You could have an option to set a total number of jobs be performed or leave it to chance (fixed value or range). If that number exceeds the number of jobs in the list, already completed ones could simply be recycled. This way the "jobs list" would basically become some sort of library of different tasks, and the program would chose which ones to execute based on (a) a defined order or (b) the max jobs setting/chance.
I hope my ramblings were somewhat understandable :rofl:

Also, you mentioned a while ago that you coud give people access to your GitLab project if they were interested in having a look at the code? Would you send me an invitation?

Thanks and have an awesome 2021 :wink:
FengHuang
*
Posts: 11
Joined: 10 Jan 2020, 22:42

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by FengHuang »

Qatl wrote: The first thing I would find useful is an expansion of the number of external actions. Five punishments and teases each seems like a lot, but I have run out a few times (especially when using different scripts for starting/ stopping or opening/closing things. As 5 is an odd number, that leaves me with only two devices I can operate in each category.)

The second one is the random jobs. Although I think I do kinda understand Phoenixs reasoning, I find the current system convoluted and overly complex (If I remember correctly, the whole thing basically relies on setting up "master jobs" and then a random number of "sub jobs" that are based on this template. If you want me to tell more about the current random job system I'll need to have another look.)
What I would prefer, is a system (or at least an option) in which the different jobs you set up are simply executed in a random order. You could have an option to set a total number of jobs be performed or leave it to chance (fixed value or range). If that number exceeds the number of jobs in the list, already completed ones could simply be recycled. This way the "jobs list" would basically become some sort of library of different tasks, and the program would chose which ones to execute based on (a) a defined order or (b) the max jobs setting/chance.
I hope my ramblings were somewhat understandable :rofl:
I definitely want to enhance the External Action system to make it more customizable. Allowing custom names for each action and an arbitrary number of possible actions both seem like no-brainers to me. I think the reason they are fixed in name and number currently is to try and allow job configurations to be shared around between users. If everyone has the same set of actions then your job that calls "Punish-1" will always call a punish action no matter who runs it. That's a decent idea, but I'm not sure it's really worth it in practice. I imagine everyone's actions are set up in a specific way such that you wouldn't want to just let random jobs call "Punish-3" without knowing what that action actually does. So I will have to think about what to do in the case of loading a job that references different External Actions that what you have locally, but that's a solvable problem and I don't think it really affects that many people anyways since I'm not aware of anywhere that people are actually sharing around session files or anything.

I'll have to look at the random job system's logic a bit, it is definitely convoluted and I don't typically use most of the options that are possible with it so some familiarization would be needed. I think some changes to make it more flexible wouldn't be too hard to do.
painslut667
*
Posts: 4
Joined: 26 Oct 2020, 19:30

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by painslut667 »

Hi there!

I pulled down the version from mega and hit some issues.

The camera wouldn't load, but also when I clicked Set Colors, it threw an exception. It looks like there are some hard coded paths in there to local directories:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
OpenCvSharp.OpenCVException: 0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows
at OpenCvSharp.NativeMethods.<>c.<.cctor>b__1617_0(ErrorCode status, String funcName, String errMsg, String fileName, Int32 line, IntPtr userdata)
at OpenCvSharp.NativeMethods.core_Mat_new7(IntPtr mat, Rect roi)
at OpenCvSharp.Mat..ctor(Mat m, Rect roi)
at OpenCvSharp.Mat.Clone(Rect roi)
...
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Last edited by painslut667 on 10 Jan 2021, 03:33, edited 1 time in total.
User avatar
Shannon SteelSlave
Moderator
Posts: 6531
Joined: 03 Feb 2019, 19:49
Location: New England, USA

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by Shannon SteelSlave »

Welcome to Bound Anna, PainSlut
Bondage is like a foreign film without subtitles. Only through sharing and practice can we hope to understand.
A Jedi uses bondage for knowledge and defense, never for attack.
I am so smart! I am so smart! S-M-R-T!....I, I mean S-M-A-R-T!
👠👠
FengHuang
*
Posts: 11
Joined: 10 Jan 2020, 22:42

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by FengHuang »

painslut667 wrote:Hi there!

I pulled down the version from mega and hit some issues.

The camera wouldn't load, but also when I clicked Set Colors, it threw an exception. It looks like there are some hard coded paths in there to local directories:

************** Exception Text **************
OpenCvSharp.OpenCVException: 0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows
at OpenCvSharp.NativeMethods.<>c.<.cctor>b__1617_0(ErrorCode status, String funcName, String errMsg, String fileName, Int32 line, IntPtr userdata)
Hi, thanks for the report. If you can't load a camera feed, then a failure trying to set the colors would be expected since the program needs to retrieve the image data from the camera to read and process the starting colors there in the first place. So the main thing to resolve is getting your camera to work. The program just uses Microsoft's DirectShow API to enumerate available cameras and pipe the data to OpenCV to process the actual image, both of which are pretty time-tested. Is your camera setup anything unusual, beyond just a USB webcam plugged in? Does it work in other applications? Does the camera name show up in the dropdown but just result in a black screen when started, or is it not present at all in the camera list?

The paths in the exception stacktrace aren't pointing to anything the program is trying to access at runtime or anything, they are related to the environment where the application was compiled originally, not anything local to you. Could you edit those particular lines out of your post please :) They won't be present in future releases.
User avatar
Shannon SteelSlave
Moderator
Posts: 6531
Joined: 03 Feb 2019, 19:49
Location: New England, USA

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by Shannon SteelSlave »

Thank you, Feng, for keeping up this popular software. Many are grateful, I can assure you.
Bondage is like a foreign film without subtitles. Only through sharing and practice can we hope to understand.
A Jedi uses bondage for knowledge and defense, never for attack.
I am so smart! I am so smart! S-M-R-T!....I, I mean S-M-A-R-T!
👠👠
painslut667
*
Posts: 4
Joined: 26 Oct 2020, 19:30

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by painslut667 »

Hi Feng, thanks for the reply!

The camera shows up in the list, but nothing came up when I selected it. It's the built in camera with the laptop, so I can just as easily blame HP ;-)

Edited the earlier post, just waiting in the approval queue.
FengHuang
*
Posts: 11
Joined: 10 Jan 2020, 22:42

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by FengHuang »

painslut667 wrote:Hi Feng, thanks for the reply!

The camera shows up in the list, but nothing came up when I selected it. It's the built in camera with the laptop, so I can just as easily blame HP ;-)
Yeah unfortunately it's hard to say what the problem might be, with all the variety out there between different camera hardware and I doubt they invest a lot into the QC of those little embedded cameras... Personally I think it's better to use a standalone camera with SBBJT anyways, as then you can freely position it to get a good profile view of you "in action" while still being able to see the program interface on your laptop in front of you as it's running. And it's easier to secure an independent camera to a fixed position so it doesn't get nudged or moved around a lot, requiring you to re-set the regions and colors over and over.

But anyways, besides "just buy a different camera," one possible idea if you don't mind getting a bit convoluted would be to essentially "launder" your camera through OBS Studio, the streaming/recording software. If you install both that and the Virtualcam plugin, you should then be able to add your actual camera as a "Video Capture Device" source and go to Tools > VirtualCam to start the virtual camera which should then show up in SBBJT as "OBS-Camera" outputting your camera's feed. I've personally used this method before, so it should hopefully work for you by passing the camera through OBS into an output which SBBJT can process.
TyronD
*
Posts: 17
Joined: 13 Jan 2021, 00:53

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by TyronD »

Hi there,

I'm the new one ;) I'm a developer and I would like to help on this project. I used it in the past and it worked quite well. But I want to add / alter some features. Any way to get access to the repo?

greetings
User avatar
kinbaku
*****
Posts: 5052
Joined: 10 Jan 2020, 20:26
Location: Belgium

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by kinbaku »

TyronD wrote:Hi there,

I'm the new one ;) I'm a developer and I would like to help on this project. I used it in the past and it worked quite well. But I want to add / alter some features. Any way to get access to the repo?

greetings
Welcome TyronD. Other members will probably be able to help you quickly. Just a little patience. :hi:
User avatar
Shannon SteelSlave
Moderator
Posts: 6531
Joined: 03 Feb 2019, 19:49
Location: New England, USA

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by Shannon SteelSlave »

Welcome to Bound Anna, Tyron. Send me a private message, I can help you.
Bondage is like a foreign film without subtitles. Only through sharing and practice can we hope to understand.
A Jedi uses bondage for knowledge and defense, never for attack.
I am so smart! I am so smart! S-M-R-T!....I, I mean S-M-A-R-T!
👠👠
FengHuang
*
Posts: 11
Joined: 10 Jan 2020, 22:42

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by FengHuang »

TyronD wrote:Hi there,

I'm the new one ;) I'm a developer and I would like to help on this project. I used it in the past and it worked quite well. But I want to add / alter some features. Any way to get access to the repo?

greetings
Send me a PM (or just post it if you don't care about anyone knowing) with your GitLab username and I'll add you as a developer
User avatar
kinbaku
*****
Posts: 5052
Joined: 10 Jan 2020, 20:26
Location: Belgium

Re: Phoenix BJ Trainer V0.2 (SBBJT V0.2)

Post by kinbaku »

kinbaku wrote:Welcome TyronD. Other members will probably be able to help you quickly. Just a little patience. :hi:
by Shannon SteelSlave » 13 Jan 2021, 14:10 :
Tyron. Send me a private message, I can help you.

by FengHuang » 14 Jan 2021, 07:25 :
Send me a PM (or just post it if you don't care about anyone knowing) with your GitLab username and I'll add you as a developer.

TyronD, what did I tell you. :D
Thanks, Shannon and FengHuang. :hi:
Post Reply