[ALPHA-RELEASE (.09)][GuideMe] Random Mazes

Webteases are great, but what if you're in the mood for a slightly more immersive experience? Chat about Tease AI and other offline tease software.

Moderator: 1885

User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

desertfox wrote:Welp, bad news on being able to pick up where we left off. It seems the script engine wants to move forward one more command every time you come up, probably due to being primed to go there after you submit, but really more killer is that the maze object I made doesn't seem to serialize properly when I restart guideme, it comes in with some sort of error or null when it tries to get it out of the scriptvars. It could be something else going on but seems like that.

The maze object was set up like

Code: Select all

function maze()  {
	this.var = whatever;

	this.member_function = function() {
		do_stuff
	}
}
Which I don't know if that matters, might be over my head on this one. Which probably means it's going to have to be in one sitting.

Maybe in the future can try to restructure it in some other way to fix that, but not sure how to do so.

Clearly the best solution here is to run guideme in a VM and save the state of it when you are done ;)
Ah! Your maze object! You've encountered a wonderful feature of javascript that bit me a long time ago. Javascript objects can't be saved and restored properly if they contain methods. To work around it I declared the object just containing all the data and properties, and put all the methods in the global javascript. The object (data) can be saved and restored using the scriptVars.get and scriptVars.put, but your functions (methods) have to get and put the data before working on it. It's a pain, but that's the wonders of programming.

You'll see the functions of the Script Engine getting and putting the ScriptData object all the time. That's exactly why. I couldn't code the functions into the object which would have been like proper object oriented programming.

As for the script engine advancing by one, I don't recall ever testing that. I'm sure we can sort that out, and in fact I'll probably need to for my own projects.

PG
desertfox
Explorer At Heart
Explorer At Heart
Posts: 365
Joined: Mon Dec 03, 2012 7:26 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above

Re: [GuideMe] Random Mazes (work in progress)

Post by desertfox »

Well, that was better than a good reward at the end of a tease ;)

I literally have json2.js included in the project right now and am trying to get stringify to work to see if i could string it then convert it back, but what you said makes way more god damn sense. I guess that is what I get for trying to cram object oriented down javascripts throat....

I probably should save that last line for one of the teases.

But ok yeah I don't think that should be too bad to move the functions out and everything. I was trying to get it tonight because what you said about needing to come back to the maze is ringing louder and louder that it needs to be that way.

For the script engine, I get the feeling (didnt look at the code) that you probably have all the variables primed to move forward to the next command, so when you load it up and run the pageinit again it probably just goes ahead and plays it. You can see it if you have a script up then keep doing file --> load over and over again, it moves through the commands one by one (as though you say had pressed a button to advance).


**EDIT**
Well, moved all the functions out, was passing the maze object around, still wasn't working. The scriptvar was always null on a reload. I went back to trying the json stringify, but had some issues, it really doesn't like the java.lang.strings, which seemed to be littered around from various calls. So finally got those all converted and was able to stringify the maze before putting it in to script vars and TA DA, it works. Whew. Have to go all over and make sure i'm stringifying and parsing it back out, but whew, working now.
User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

It's possible you're over complicating it. I don't use json and don't have to stringify aything in my projects. The Guideme save and reload does everything on it's own. I just use arrays (often with named elements) to store all my data, and keep my functions in globaljavascript and all is well.

I'll make time in the next few days to look at the script engine issue. You're quite right in that I always leave it set to execute the next line. I've been giving it some thought and have an idea on how to address the issue, just need time to review the code and test my theory.

Have fun

PG
desertfox
Explorer At Heart
Explorer At Heart
Posts: 365
Joined: Mon Dec 03, 2012 7:26 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above

Re: [GuideMe] Random Mazes (work in progress)

Post by desertfox »

Yeah I'm not sure what was causing the issue. I'm wondering if its how I have the maze set up, its an array of arrays full of room objects, which I guess are functions. I think that is giving the serialization in guideme a headache when it tries to restore the object from that .state object and instead gives me back null.

Trying to work through at the moment how to deal with the "I Came" and "Edged" buttons. I don't want to add I came to every page by hand, but I kind of want it around at all times because who knows when you can slipped up, and if there is no button to go into fail mode, it'll just be all wrong ;)

If I add it as a global button the problem is it may eventually overtake an "Edged" button as the number 1 button to hit, meaning it steals the space bar. I think it is pretty important to be able to slam the space bar with your left hand while the right is busy, and it would be pretty bad to hit that by accident and get to the fail state.

I'm not sure but was thinking it may be possible to do something to the global css to add an icon or button that is somewhere in the text area and off to the side that is the 'I came' button. That way it's present throughout the tease so if you are being honest anybody can hit it.
philo
Explorer At Heart
Explorer At Heart
Posts: 831
Joined: Sun Jan 08, 2012 3:10 pm
Gender: Male
Sexual Orientation: Straight
Location: UK

Re: [GuideMe] Random Mazes (work in progress)

Post by philo »

Script vars was only designed to hold data, it needs to serialise between java and javascript data types.
I think it does explicit conversions and returns null for anything not explicitly handled.
I can have a look at handling functions, but from what I remember it was complex and I didn't think it was likely to be used, so didn't implement it.
Buttons can have hot keys and a sort order so that may be a possible solution for the fail buttom.
User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

desertfox wrote: <snip>
Trying to work through at the moment how to deal with the "I Came" and "Edged" buttons. I don't want to add I came to every page by hand, but I kind of want it around at all times because who knows when you can slipped up, and if there is no button to go into fail mode, it'll just be all wrong ;)

If I add it as a global button the problem is it may eventually overtake an "Edged" button as the number 1 button to hit, meaning it steals the space bar. I think it is pretty important to be able to slam the space bar with your left hand while the right is busy, and it would be pretty bad to hit that by accident and get to the fail state.
Manually adding a button is just work. Not afraid of a little work are you? :-D But sometimes you gotta do what you gotta do.
What I've done in my stuff is to have the "Came" button go to a confirmation page that confirms that you came with buttons for "I meant edged" (the default), and "I came". Since "I meant edged" is the defauilt, another tap of the space bar is all that's needed. The big headache there is handling where to go back to, but guideSettings.getPrevPage() (or whatever the new equivalent is) can be your best friend here. May not be workable in this case but food for thought. In a maze simply going back to the room you were in seems reasonable.

By the way - I'm working on the reloading of a script issue. It's not too bad, but will take some time while I update the code and test everything.

PG
User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

Good news. I have the script engine updated so that it can be reloaded and it will pick up right where it left off. After updating the main code, I modified the runScript page so that all it does is advance the script index, then it transfers to a new page called showScriptPage. All that page does is display the page, so it can be reloaded. When it's time to move to the next page we just hook back to runScript which advances the index.

A few simple updates to your code (replace the current runScript page, add the new showScriptPage and replace your ScriptEngine.js) should be all it takes. Well, you know, in a perfect world.

I just have to do some regression test to make sure I haven't broken anything else and I'll get it uploaded. Probably in a day or so.

Cheers!
desertfox
Explorer At Heart
Explorer At Heart
Posts: 365
Joined: Mon Dec 03, 2012 7:26 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above

Re: [GuideMe] Random Mazes (work in progress)

Post by desertfox »

philo wrote:Script vars was only designed to hold data, it needs to serialise between java and javascript data types.
I think it does explicit conversions and returns null for anything not explicitly handled.
I can have a look at handling functions, but from what I remember it was complex and I didn't think it was likely to be used, so didn't implement it.
Buttons can have hot keys and a sort order so that may be a possible solution for the fail buttom.
Yeah it is no big deal with the stringify it works just fine since you are only getting a string. I guess theoretically you could do the JSON stringify before you put it into java, that way you always get a string, but meh, wouldn't say it was worth it.

I wanted to use the hotkeys but I wasn't sure how to bind space bar or return ;) I made maze navigation as ASDW for the directions you can walk. The script engine doesn't have a way to do button priority or keybinding but I think if I go that way I can change it to look for a button name like "I came" and just have it fill in constant values for it all the time.

Thanks for the update also PG, clever little fix there.

I'm having tease writers block, I have about 1.5 done, but it's stupid hard to figure out the right pacing. I can't even judge it myself because looking at the same pictures all the time it has less and less impact, not to mention depending on my state of mind I think that the tease is either too hard or too easy.

Have been flipping back to other teases to get a feel for their timings but it's rough. Really grade A props to all tease makers out there, not an easy task.
User avatar
itslate
Explorer At Heart
Explorer At Heart
Posts: 290
Joined: Tue Nov 29, 2011 5:25 pm
Gender: Male
Sexual Orientation: Straight

Re: [GuideMe] Random Mazes (work in progress)

Post by itslate »

First of all, I love the mazes on here. That's because I love teases in general, I love memory, chance and the adrenaline you feel when hitting that "north" button and not knowing what will happen.

I'm really excited about your project, so I decided to give some feedback and opinions. I don't know anything about you, so I don't mean to sound arrogant. This is just me brainstorming.

Tips:
- Don't aim to make the project too big in the beginning. Building a smaller version that works, publishing it and then adding to it or - even better - making it public so everyone can add to it seems to be the best mindset for me.
- Get help for the stuff you don't like doing. For example, scheffleras mazes have been amazing, maybe he could write the "backstory"? I might have time to write some encounters, but I hate looking for pictures for some reason etc.
- If you want to cater to the community, make it like stuff that people love (=scheffleras mazes =stroking and edging, mainly) and give options (like you already said you would). I think it's really important that people can decide whether the outcome is denial, a ruined orgasm, full orgasm or if that is determined by chance / performance in the maze. (I find the latter the most interesting)

Ideas:
- Map! The automated map as an item sounds amazing :w00t: ! With this, a whole new gameplay evolves: Have the player be naked and forbid the use of anything but the tease (no pen, no paper).
- Items! Amazing feature. A key that you need to get out (= additional stage in the game). An item that increases your chance for a full orgasm / makes sure you will only get a ruined orgasm / makes sure you will be denied. A dildo or a rope (for people who like to play with that= you need these items to encounter girls that have you use those). A potion that has you have a super slight ruined orgasm to release a bit of pressure (= another special encounter triggered by drinking it). A badge that has you do more edge holding with special girls/has you do closer edges/more edging in general. Picking up any of these should always be optional and it would be cool if you could go to the inventory and drop them again, if you wanted to.
- Hints! Girls giving you hints where to find items or the exit if you do more stuff for them. This could be specific like "Go NWSEE to find this item" or it could be something like outlining the outer border of the maze on the map or marking an area where the exit is. Of course, they could also impose risks: "If you try to get my hint but you fail at the additional (evil!) edging, I'll throw your map/key/item back into the maze / bring you back to the starting point."
- Memory! Have a girl make you memorize something (her name or some info about her, or a password). If you meet her the next time (2nd encounter) you get punished if you forgot it.

I think those are some sexy ideas, that also have the benefit of giving the players options on how to play: Do I want a map or do I want to map it myself? Do I want to increase the difficulty (badge for more edge holding) or make it easier (potion for a ruined orgasm). They also force you to make tough decisions (10 edges for a hint on where the exit is?) and give the player the option to make the game longer or shorter. I think it's really cool to have the player make those decisions in the game, rather than have him check a lot of boxes in the options panel at the beginning (though that would be totally fine, too!)

Lastly, it would be a real game, almost like an adventure with these items and hints. The game would have 6 stages. 1: naked and disoriented 2: map found 3: found hint for key 4: found key 5: found hint for exit 6: found exit.

Feel free to write me a pm and we can chat about stuff. Good luck and thanks for all your work!! :-)
User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

An updated version of the script engine is now available. Get yours here.

I've tested it pretty thoroughly and it all seems to be working. Hopefully I didn't screw up and miss something in repackaging zip file.
I've also updated the first post of the Script Engine thread.

Cheers
desertfox
Explorer At Heart
Explorer At Heart
Posts: 365
Joined: Mon Dec 03, 2012 7:26 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above

Re: [GuideMe] Random Mazes (work in progress)

Post by desertfox »

itslate wrote:First of all, I love the mazes on here. That's because I love teases in general, I love memory, chance and the adrenaline you feel when hitting that "north" button and not knowing what will happen.

I'm really excited about your project, so I decided to give some feedback and opinions. I don't know anything about you, so I don't mean to sound arrogant. This is just me brainstorming.

...

Feel free to write me a pm and we can chat about stuff. Good luck and thanks for all your work!! :-)
Thanks for this! Not arrogant at all, this really helps and has some stuff I didn't think of.

And this is great advice, honestly I've been here trying to write back properly, but I think I'm saying more than I want about what I'm going to do. So my reply will be short but I think ive typed the post three times by now :)

I will say this, I think 1 we are right in the same brain path for how to go about it and how I am thinking about the maze. More a place that has an exit but you might want to wonder around it a bit. I'm going to try to keep the first release the bare minimum I think I need to have a good game. I won't do too many items because if someone is to react to them, you have to write it in everywhere, so at first I want to take it easy, but I do want this type of interactivity, so I think I'll keep writing hopefully.

The style of the tease will be 'serious' meaning I'm trying to make the setting 'real' and not silly, though it is succubus/magic based. I'm not into any kind of pain or humiliation, strictly on the 'kill with kindness' stroking and edging schools of thought. The in story rules of the maze are no contact as well.

So, I have what I'm doing, but I'm finding that everything works with the trigger system I setup. So if your maze is cruel and full of pain and worktasks, you can write that. I start everything by going into one script, then when you leave to 'enter the maze' with them, it sets a bunch of triggers to other scripts, which is the bulk of the 'story', so it is easy to just add your own entry point in to the maze and do whatever you want via the scriptengine.

I'm not releasing it yet though because I want to finish this first tease to make sure that everything is hooked in correctly and I don't have to change the 'maze engine' part of it to do a complete maze tease and have all the features I want. I dont want anybody to start on it and I change it around completely on them.

And thanks for the update PG, will be able to try it out tonight!
desertfox
Explorer At Heart
Explorer At Heart
Posts: 365
Joined: Mon Dec 03, 2012 7:26 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above

Re: [GuideMe] Random Mazes (work in progress)

Post by desertfox »

Just wanted to keep anybody interested in this posted on where I'm going with it. I have a pretty clear vision of what I want to do and everything outlined.

It's turning out to be a maze with a supernatural (omg succubi, how original ;) ) story and some other mysteries to discover. Maybe think of it as turning out to be an RPG light, well more of an adventure game. Really along the lines of Cumquest and ravali's corruption for the closest thing its like (so far)

This may be a bad thing for some people, but have no fear, it is trivially easy to snip the first triggers that set up the story and leave you with a random maze with a start, finish, and random encounters between, and reasonable choice of what you want as a 'reward' as you get out.

I have been getting some time in the day to work on it, but can't work on the tease parts during that time since people are around ;) This may be a good or bad thing as I added in some very light 'mechanics' in.

So, I've strangely been working everyday on it, but I have a bit to go still, nothing too unreasonable but I'll hopefully be done in a few more weeks. I've been working story teases/sections right now and I want to make sure that as you do different things they react in some way to it, and also trying to get some randomness or varying paths through the tease so if you come back to play it again, while the same picture set you'll get slightly different pictures and maybe a different style tease too.

That's where I'm at, slow, but steady. I don't want to really mention any of the mechanics in detail because I think they'll be fun to discover, and if you don't poke around too much you won't even see them at all, so, yeah.
User avatar
schefflera
Explorer At Heart
Explorer At Heart
Posts: 126
Joined: Wed Jun 03, 2015 10:21 am
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Dom/me(s): no :(
Sub/Slave(s): nope

Re: [GuideMe] Random Mazes (work in progress)

Post by schefflera »

Hi,

sounds great so far. Can't wait to struggle through your maze.
I know, good things need time. So take your time, we will be patient :-)
My flashteases: Have fun :)
User avatar
PlayfulGuy
Experimentor
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] Random Mazes (work in progress)

Post by PlayfulGuy »

I have uploaded a new version of the script engine that fixes the reload issue. It turns out that what I did in version 1.2 was mostly unnecessary. There was a much simpler way to achieve the desired result. Once it dawned on me, I actually went back to the version 1.1 code and used the much simpler method of supporting a reloaded script and then incorporated the other bug fixes I'd added in 1.2.

It works perfectly now.

Guideme Script Engine

PG
User avatar
Nezhul
Experimentor
Experimentor
Posts: 2373
Joined: Fri Apr 30, 2010 6:22 am
Sexual Orientation: Straight

Re: [GuideMe] Random Mazes (work in progress)

Post by Nezhul »

I'll share my thoughts on the matter, because I spend some time theorycrafting about mazes, but I don't know if I'll actually ever find the time to sit down and make one with GuideMe.

Here's what I thought:
1) you don't want the maze to be easily beatable by "follow the right wall" rule. Thus, you need to make it consisting of loops with the exit in the middle.
2) you want to make it mappable, because some people enjoy that
3) You need to make the maze traversible, the player needs to get the "hey, I've been here, I know where it is" feeling. You can do it by two ways:
- tasks (traps) should be random in content (number of strokes/edges, whatever) but not too random. For example in the same spot sits the same girl (photoset) who will offer some tasks, who will remember you visiting her and so on.
- Biomes. Like in minecraft, I thought it to be a good idea to separate parts of mazes. One part is the forest (forest pictures), another is the house, the dungeon, etc. They should be consistent.

Now for my maze idea, I pictured the spider web with the exit in the middle and start on the edge, with circles as the main theme and only a few paths connecting them. That's how you do it:
1) create a sequence of nodes (rooms, or rather intersections), each node has only two doors (directions) open, and those directions link to adjacent nodes. The last node is linked to the first. So you basically create a circular corridor. Tips:
- randomize the directions that are open, but keep the linking consistent. I chose to use "north-south-west-east" method. When I link node A to node B, I choose that north direction of node A links to west direction of node B. And I automatically link west direction of node B to north of node A. This keeps the maze consistent. BTW in the actual rease (when you generate a page) you may still use "left-right-forward-back" method by simply analyzing from which direction you came.
- If you leave only one circle, the maze will be beatable by following the wall. You can have that option for eazy modes too.

2) Create 1-2-N more of such circles. Their length doesn't need to be bigger than the first one, but it can.
3) Link circles with each other, by opening 1-2 paths between the first circle and the second, then second and third and so on. Tip:
- If you want the maze mappable, keep track of which "doors" are inside and outside your circle. Link the inside doors to the inner circles, and outside doors to the outer ones. You can determine what is outside easily algorithmically.
4) create start and finish. What I do is I choose a node on the inside of inner circle, and create a small 3-4 long path of nodes with exit as the last node. I then create a few dead-ends and branches in this path, but I never link anything to existing nodes. So you have a small maze "tree" for exit. Of course you can just make a straight-up exit with no tree before it.
Then I start form the exit and map the entire map with numbers, showing how far this particular spot is from the exit. I choose one node on the outermost ring that is far enough, and make start here (again, short path with branches);
5) Now that your base setup is ready, complicate the maze. basically, you want to open some of the still-closed directions of your existing nodes, and link them to dead ends or small trees of nodes (still dead ends just branching). Don't link this new paths to any existing nodes.
6) Now you have your maze build entirely. I guess you can figure out traps yourself.
7) One last thing is biomes. I like to start at some random dead-end, and spread the biome from it to adjacient nodes like a zerg =). The number of nodes you cover depends on the size of the maze and how many biomes you have. You can make it as elaborate as you want. =)
Check out my new site, and read SexTV story there!
Also I have the DARK section that features feature Erotic Horror.
I also launched a SubscribeStar recently! Please come check it out!
Updated whenever I feel like it. :wave: :love:
Image
Post Reply