GuideMe (TeaseMe v2.0) - Current Build 0.4.4
Moderator: 1885
-
lawman5297
- Explorer At Heart

- Posts: 156
- Joined: Tue May 30, 2017 1:18 pm
- Gender: Male
- Sexual Orientation: Straight
- I am a: None of the above
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
I have a feature request. This would be a function for the "debug" mode. First I think the "Delay" button should be renamed to "Next." This is more descriptive of what it does. I think also a "Pause" button would be helpfull. As I test or find issues I write them down and then go back and fix them. It would be helpfull to just pause that page then go to the XML and correct or even look at the appropiate log, make the correction and go on.
- bobhill
- Explorer At Heart

- Posts: 164
- Joined: Tue Mar 15, 2016 8:49 pm
- Gender: Male
- Sexual Orientation: Straight
- I am a: None of the above
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
Wow, great suggestion. Also, this made me think of the Debug Pop Up Window, accessed via "Option + D".lawman5297 wrote: Sat Nov 28, 2020 11:55 am I have a feature request. This would be a function for the "debug" mode.
On the "Variables" tab, having a horizontal scroll bar would be helpful, as some values are not visible. Also, having the capability to see array variable values would be very helpful - not sure how feasible that would be to implement.
-
EroticDevelopment
- Explorer

- Posts: 36
- Joined: Thu Oct 15, 2020 3:32 am
- Gender: Male
- Sexual Orientation: Straight
- Location: USA
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
v0.4.2 is officially released!
I'll be adding to the documentation page shortly to list the available overRide functions, but in the meantime you can see all of the available functions and their parameters here on GitHub. It's not as clean as proper documentation, but it does show all the options.
As mentioned in the summary, the Linux build is still very much an Alpha build and may not be stable. I've tested it a bit, but I can only test in a Virtual Machine at the moment which is less than ideal. MacOS builds will hopefully be coming, but the Java interface framework GuideMe uses isn't playing nice with Mac so I have some work to do there.
Lastly, I went ahead and did some work to provide a better guarantee of Audio/Video synchronization if you have a page with both Audio and Video components. I highly encourage you to make sure video files are optimized for streaming if you plan to have them synchronized with audio. Some video tools call this "fast start" or "optimize for web/streaming". The technical requirement is that an MP4 have the MOOV before the MDAT section. This allows VLC to start playing the file quicker, and is somewhat critical to having them synchronized. MP4Box is one of the best tools for this. Running the following command will produce a file that will begin playing as well as seek to a specific time significantly faster. The installer from GPAC has an option to just install MP4Box if you uncheck everything else.
I'll be adding to the documentation page shortly to list the available overRide functions, but in the meantime you can see all of the available functions and their parameters here on GitHub. It's not as clean as proper documentation, but it does show all the options.
As mentioned in the summary, the Linux build is still very much an Alpha build and may not be stable. I've tested it a bit, but I can only test in a Virtual Machine at the moment which is less than ideal. MacOS builds will hopefully be coming, but the Java interface framework GuideMe uses isn't playing nice with Mac so I have some work to do there.
Lastly, I went ahead and did some work to provide a better guarantee of Audio/Video synchronization if you have a page with both Audio and Video components. I highly encourage you to make sure video files are optimized for streaming if you plan to have them synchronized with audio. Some video tools call this "fast start" or "optimize for web/streaming". The technical requirement is that an MP4 have the MOOV before the MDAT section. This allows VLC to start playing the file quicker, and is somewhat critical to having them synchronized. MP4Box is one of the best tools for this. Running the following command will produce a file that will begin playing as well as seek to a specific time significantly faster. The installer from GPAC has an option to just install MP4Box if you uncheck everything else.
Code: Select all
MP4Box -inter 500 VideoFile.mp4This was a quick fix and made it into the 0.4.2 release.bobhill wrote: On the "Variables" tab, having a horizontal scroll bar would be helpful, as some values are not visible.
Can you provide a scriptVars.put example that demonstrates this? I tried some array variables and they all seemed to show for me. It's possible one of the 3rd parts dependencies I updated resolved this as well.bobhill wrote: Also, having the capability to see array variable values would be very helpful - not sure how feasible that would be to implement.
I agree, these would be nice features. The button name is easy, although I may look at having an option for this in case others like the "Delay" label. The "Pause" feature may be a bit more complicated, and I haven't had much time to look at this yet.lawman5297 wrote: I have a feature request. This would be a function for the "debug" mode. First I think the "Delay" button should be renamed to "Next." This is more descriptive of what it does. I think also a "Pause" button would be helpfull. As I test or find issues I write them down and then go back and fix them. It would be helpfull to just pause that page then go to the XML and correct or even look at the appropiate log, make the correction and go on.
-
philo
- Explorer At Heart

- Posts: 831
- Joined: Sun Jan 08, 2012 3:10 pm
- Gender: Male
- Sexual Orientation: Straight
- Location: UK
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
The reason it is labeled Delay is, it acts as if the delay on the page has reached the time it would be triggered.lawman5297 wrote: Sat Nov 28, 2020 11:55 am I have a feature request. This would be a function for the "debug" mode. First I think the "Delay" button should be renamed to "Next." This is more descriptive of what it does. I think also a "Pause" button would be helpfull. As I test or find issues I write them down and then go back and fix them. It would be helpfull to just pause that page then go to the XML and correct or even look at the appropiate log, make the correction and go on.
I am not saying it shouldn't be changed, but Delay is probably more descriptive of what it actually does than Next.
GuideMe
viewtopic.php?f=26&t=12944
viewtopic.php?f=26&t=12944
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
Hey, so I found an issue with saving/restoring the tease state which used to work. I have an array of objects, and those objects have arrays along with some other values. When reloading the tease it seems the arrays within the objects are not restored, leading to a javascript error like "JavaScriptError line 12 column 0 Source null error Java class "java.util.ArrayList" has no public instance field or method named "0"."
I created a repro and tried it on 0.3.8 and it works, but seems broken in 0.4.1 & 0.4.2. Just load the xml and it will create an array of objects each of which has an array of numbers, then it goes to a second page and prints them out. If you then reload the xml it will generate an error, whereas in 0.3.8 it works.
Thanks for all your efforts!
I created a repro and tried it on 0.3.8 and it works, but seems broken in 0.4.1 & 0.4.2. Just load the xml and it will create an array of objects each of which has an array of numbers, then it goes to a second page and prints them out. If you then reload the xml it will generate an error, whereas in 0.3.8 it works.
Thanks for all your efforts!
- Attachments
-
- Test.zip
- Repro test case
- (637 Bytes) Downloaded 128 times
- PlayfulGuy
- Experimentor

- Posts: 1068
- Joined: Sat Jul 07, 2012 10:08 pm
- Gender: Male
- Sexual Orientation: Bisexual/Bi-Curious
- I am a: Switch
- Dom/me(s): No domme
- Sub/Slave(s): No sub
- Location: British Columbia, Canada
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
That's interesting. As far as I know saving and restoring of arrays was broken in all of the 3.x versions. It was apparently fixed in an early test release of 4.0 that I tested for Philo. I haven't tried it yet in 4.1 or 4.2.tr0gd0r wrote: Sun Dec 20, 2020 4:14 am Hey, so I found an issue with saving/restoring the tease state which used to work. I have an array of objects, and those objects have arrays along with some other values. When reloading the tease it seems the arrays within the objects are not restored, leading to a javascript error like "JavaScriptError line 12 column 0 Source null error Java class "java.util.ArrayList" has no public instance field or method named "0"."
I created a repro and tried it on 0.3.8 and it works, but seems broken in 0.4.1 & 0.4.2. Just load the xml and it will create an array of objects each of which has an array of numbers, then it goes to a second page and prints them out. If you then reload the xml it will generate an error, whereas in 0.3.8 it works.
Thanks for all your efforts!
PG
I'd rather be stroking!
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
-
EroticDevelopment
- Explorer

- Posts: 36
- Joined: Thu Oct 15, 2020 3:32 am
- Gender: Male
- Sexual Orientation: Straight
- Location: USA
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
I've released version 0.4.3 to resolve this issue.tr0gd0r wrote: Hey, so I found an issue with saving/restoring the tease state which used to work. I have an array of objects, and those objects have arrays along with some other values. When reloading the tease it seems the arrays within the objects are not restored, leading to a javascript error like "JavaScriptError line 12 column 0 Source null error Java class "java.util.ArrayList" has no public instance field or method named "0"."
To get into the technical details a bit, JavaScript is handled by a library called Rhino from Mozilla. The issue appeared to be in the library, so I've updated it to the latest version. In general this is a good thing, but it's also a touch scary. The JavaScript processing is complex and difficult to test, so while it fixed this issue it's definitely possible a different issue was created from this update. Because this library is partially responsible for saving and restoring state, any existing .state files will not be able to be copied over to this version.
If you notice any issues, please let me know and include a test XML script if at all possible.
This is a good point, and was my line of thinking as well. In many ways, this feature just turns Debug tags into buttons so having it labeled Delay is somewhat meaningful. Along those lines, several teases have a "Next" button already so renaming this could cause confusion. I think the best approach would be to make this an app setting and everyone can set the button how they like. That way it can be changed for a specific tease as well if there's a name conflict.philo wrote: The reason it is labeled Delay is, it acts as if the delay on the page has reached the time it would be triggered.
I am not saying it shouldn't be changed, but Delay is probably more descriptive of what it actually does than Next.
- Trusfrated
- Explorer At Heart

- Posts: 465
- Joined: Mon Nov 08, 2010 8:41 am
- Gender: Male
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
The are a couple settings in Application Preferences that you could check. One is called "Maximum Image Scaling % (0 Unlimited)" and the other is "Image Scale Factor". Mine are set at 0 and .8, respectively. You might try playing with either or both of those and see what kind of results that gives you.ZeeWW wrote: Sun Dec 27, 2020 1:06 pm I hope I'm posting in the correct thread..? I have moved to a new laptop and all works well apart from the images on the GuideMe teases are too large. Can someone describe how I rescale the images so they fit on my screen?
Hope that helps!
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
That seems to fix it thanks!EroticDevelopment wrote: Thu Dec 24, 2020 3:50 amI've released version 0.4.3 to resolve this issue.tr0gd0r wrote: Hey, so I found an issue with saving/restoring the tease state which used to work. I have an array of objects, and those objects have arrays along with some other values. When reloading the tease it seems the arrays within the objects are not restored, leading to a javascript error like "JavaScriptError line 12 column 0 Source null error Java class "java.util.ArrayList" has no public instance field or method named "0"."
To get into the technical details a bit, JavaScript is handled by a library called Rhino from Mozilla. The issue appeared to be in the library, so I've updated it to the latest version. In general this is a good thing, but it's also a touch scary. The JavaScript processing is complex and difficult to test, so while it fixed this issue it's definitely possible a different issue was created from this update. Because this library is partially responsible for saving and restoring state, any existing .state files will not be able to be copied over to this version.
If you notice any issues, please let me know and include a test XML script if at all possible.
I do have one more request to make (hopefully the last one): can we get a setImage method on Guide, so I can change images from a button callback? I have tried to get my image centered using setLeftHtml/setLeftBody, and can't get it to work for the life of me!
I did find another minor bug here as well: after calling setLeftBody, resizing the image pane results in the last image set by setImage() being displayed instead of the html. Not a major bug but thought you might want to know. I've attached a repo for that.
Again, thanks for all your work here!
- Attachments
-
- Test2.zip
- Repo for pane resize bug
- (5.12 KiB) Downloaded 142 times
-
lawman5297
- Explorer At Heart

- Posts: 156
- Joined: Tue May 30, 2017 1:18 pm
- Gender: Male
- Sexual Orientation: Straight
- I am a: None of the above
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
To EroticDevelopment:
With respect to the "if-set" and "if-not-set" attritubes to the text node that you so kindly added: can you use multiple values?
Example:
<Text if-set="1+2+3">
<Text if-set="1,2,3">
Or are single values all that are allowed?
Thanks!
With respect to the "if-set" and "if-not-set" attritubes to the text node that you so kindly added: can you use multiple values?
Example:
<Text if-set="1+2+3">
<Text if-set="1,2,3">
Or are single values all that are allowed?
Thanks!
- PlayfulGuy
- Experimentor

- Posts: 1068
- Joined: Sat Jul 07, 2012 10:08 pm
- Gender: Male
- Sexual Orientation: Bisexual/Bi-Curious
- I am a: Switch
- Dom/me(s): No domme
- Sub/Slave(s): No sub
- Location: British Columbia, Canada
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
Have you tried this? I posted some sample code here that might help you test it.lawman5297 wrote: Wed Jan 06, 2021 7:16 pm To EroticDevelopment:
With respect to the "if-set" and "if-not-set" attritubes to the text node that you so kindly added: can you use multiple values?
Example:
<Text if-set="1+2+3">
<Text if-set="1,2,3">
Or are single values all that are allowed?
Thanks!
The syntax would be
Code: Select all
<Text if-set="1+2+3">or
Code: Select all
<Text if-set="1|2">PG
I'd rather be stroking!
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
-
lawman5297
- Explorer At Heart

- Posts: 156
- Joined: Tue May 30, 2017 1:18 pm
- Gender: Male
- Sexual Orientation: Straight
- I am a: None of the above
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
When I try this;PlayfulGuy wrote: Thu Jan 07, 2021 8:22 pm
Have you tried this? I posted some sample code here that might help you test it.
The syntax would befor If 1 AND 2 AND 3 are all setCode: Select all
<Text if-set="1+2+3">
orfor if either 1 OR 2 is set (or both)Code: Select all
<Text if-set="1|2">
PG
<Page id="test" unset="1,2,3">
<Button target="test1" set="1">this sets 1</Button>
<Button target="test1" set="1+2">this sets 1 and 2</Button>
<Button target="test1" set="2">this sets 2</Button>
<Button target="test1" set="3">this sets 3</Button>
<Button target="test1" set="2+3">this sets 2 and 3</Button>
</Page>
<Page id="test1">
<Button target="test">return to test</Button>
<Text if-set="1">1 is set</Text>
<Text if-set="2">2 is set</Text>
<Text if-set="3">3 is set</Text>
<Text if-set="1,2">1 or 2 is set</Text>
<Text if-set="1+2"> 1 and 2 are set</Text>
<Text if-set="2+3"> 2 and 3 are set</Text>
</Page>
The text for the single number sets will show but not the multi so I guess that function is not valiable.
- PlayfulGuy
- Experimentor

- Posts: 1068
- Joined: Sat Jul 07, 2012 10:08 pm
- Gender: Male
- Sexual Orientation: Bisexual/Bi-Curious
- I am a: Switch
- Dom/me(s): No domme
- Sub/Slave(s): No sub
- Location: British Columbia, Canada
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
The syntax to set or unset multiple flags is set="1,2", not set="1+2". If you change the two lines I highlighted in red it should work.lawman5297 wrote: Thu Jan 07, 2021 10:10 pm
When I try this;
<Page id="test" unset="1,2,3">
<Button target="test1" set="1">this sets 1</Button>
<Button target="test1" set="1+2">this sets 1 and 2</Button>
<Button target="test1" set="2">this sets 2</Button>
<Button target="test1" set="3">this sets 3</Button>
<Button target="test1" set="2+3">this sets 2 and 3</Button>
</Page>
<Page id="test1">
<Button target="test">return to test</Button>
<Text if-set="1">1 is set</Text>
<Text if-set="2">2 is set</Text>
<Text if-set="3">3 is set</Text>
<Text if-set="1,2">1 or 2 is set</Text>
<Text if-set="1+2"> 1 and 2 are set</Text>
<Text if-set="2+3"> 2 and 3 are set</Text>
</Page>
The text for the single number sets will show but not the multi so I guess that function is not valiable.
This has caught me before too. The phrase set="1+2" actually sets a single flag named "1+2" rather than setting the two flags 1 and 2. Unfortunately if you try to test that using if-set="1+2" Guideme reads it as 1 And 2, so it doesn't work properly.
When you set or unset flags you provide a comma separated list.
To test them (if-set/if-not-set) you use the + and | to specify And and Or combinations like 1+2 or 1|2.
You can also combine if-set and if-not-set in statements like
Code: Select all
<Text if-set="1|2" if-not-set="3"> 1 or 2 or both is set, 3 is not set</Text> For example, you can't combine And and Or like
Code: Select all
<Text if-set="1|2+3" > Doesn't work</Text> Code: Select all
<Text if-set="1+3" > If 1 and 3 are set</Text>
<Text if-set="2+3" > If 2 and 3 are set</Text>
If you work that out let us know the results.
To get really complex you have to figure out all the possibilities like
Code: Select all
<Text if-set="3" if-not-set="1+2" > 3 is set but 1 and 2 are not</Text>
<Text if-set="2" if-not-set="1" > 2 is set but 1 is not</Text>
<Text if-set="3" > If 3 is set</Text>
<Text if-set="1+3" > If 1 and 3 are set</Text>
<Text if-set="2+3" > If 2 and 3 are set</Text>
Code: Select all
<Text if-set="3" > 3 is set so we always get this now</Text>
<Text if-set="2" set="3" unset="2">
The second time we get this because 2 is set but 3 is not.
2 is cleared to set up for next time
</Text>
<Text set="2"> The first time we get this.</Text>
Code: Select all
<Page id="ChoosePhase">
<Delay seconds="0" target="Phase3" if-set="3" />
<Delay seconds="0" target="Phase2" if-set="2" unset="2" set="3" />
<Delay seconds="0" target="Phase1" set="2" />
</Page>
I'd rather be stroking!
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
New tease downloader for GuideMe with EOS support.
Downloads of teases I've converted to GuideMe
-
EroticDevelopment
- Explorer

- Posts: 36
- Joined: Thu Oct 15, 2020 3:32 am
- Gender: Male
- Sexual Orientation: Straight
- Location: USA
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
I'll look at adding a setImage function, I agree it can be hard to do that in HTML. Internally the app uses a combination of HTML and CSS to set those images.tr0gd0r wrote: Fri Jan 01, 2021 3:46 am I do have one more request to make (hopefully the last one): can we get a setImage method on Guide, so I can change images from a button callback? I have tried to get my image centered using setLeftHtml/setLeftBody, and can't get it to work for the life of me!
I did find another minor bug here as well: after calling setLeftBody, resizing the image pane results in the last image set by setImage() being displayed instead of the html. Not a major bug but thought you might want to know. I've attached a repo for that.
The setLeftBody thing is weird, and I'll have to dig into that a bit more. I think I've found the code responsible, but I need to test a bit more before I change it and break something else.
Were you able to get this working? My initial thoughts are this still has something to do with image scaling. It might be worth downloading a fresh copy of the latest version and opening the file in that version and see what happens. If it works there, you can compare settings and see what's different.ZeeWW wrote: I must have done or are doing something totally wrong as I have no images at all - any suggestions please?
PlayfulGuy, thanks for those examples. The set/unset and if-set/if-not-set properties can be a bit confusing sometimes. It's worth noting that I've provided a decent bit of detail in the new documentation site as well, and some of this syntax is shown on the Button node: https://eroticdevelopment.github.io/Gui ... xml#Button
I don't have this in the documentation, but this is a good reminder to add it. Text nodes will be concatenated in the order that they appear if more than one Text node matches the if conditions. I did note that from v0.4.0 you can have more than one, but didn't really define the behavior.
-
lawman5297
- Explorer At Heart

- Posts: 156
- Joined: Tue May 30, 2017 1:18 pm
- Gender: Male
- Sexual Orientation: Straight
- I am a: None of the above
Re: GuideMe (TeaseMe v2.0) - Current Build 0.3.4
Thanks PlayfulGuyPlayfulGuy wrote: Fri Jan 08, 2021 5:04 pm
To get really complex you have to figure out all the possibilities likeAlso keep in mind that once a flag gets set, it stays set until you clear it somewhere. So depending on the result you want you may need to do something likeCode: Select all
<Text if-set="3" if-not-set="1+2" > 3 is set but 1 and 2 are not</Text> <Text if-set="2" if-not-set="1" > 2 is set but 1 is not</Text> <Text if-set="3" > If 3 is set</Text> <Text if-set="1+3" > If 1 and 3 are set</Text> <Text if-set="2+3" > If 2 and 3 are set</Text>Another technique that can be useful is to use a dispatch page with a bunch of delays that select the proper page.Code: Select all
<Text if-set="3" > 3 is set so we always get this now</Text> <Text if-set="2" set="3" unset="2"> The second time we get this because 2 is set but 3 is not. 2 is cleared to set up for next time </Text> <Text set="2"> The first time we get this.</Text>Have fun!Code: Select all
<Page id="ChoosePhase"> <Delay seconds="0" target="Phase3" if-set="3" /> <Delay seconds="0" target="Phase2" if-set="2" unset="2" set="3" /> <Delay seconds="0" target="Phase1" set="2" /> </Page>

