Notice: If the game stops working after an update, it might be a savegame incompatibility. Remove your savegame folder and try again before posting about it.
Registration has an extra hurdle now: There have been advertisement bots, so I added a security keyword to registration. Deal with it.
  0 users browsing Director's Trailer. | 1 bot  
Main » Director's Trailer » Crown's Writing Block
Pages: 1
Posted on 05-02-13, 01:32 pm (revision 6)
Eager Beaver

Posts: 1/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Pony Dialogue and Erotic Scenes

Dialogue
<sup>Updated 5:30AM PST 5/3/2013
File: Pseudo</sup>


Erotic Scenes
<sup>Updated 8:11AM PST 5/5/2013
File: Pseudo</sup>
Posted on 05-02-13, 01:42 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 253/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
Technically, you're free to define your own stats. The token system is cool like that.

I don't just program Noxico...
Posted on 05-02-13, 02:46 pm (revision 2)
Eager Beaver

Posts: 2/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Alright, awesome.

So, next part.

As for filters. When a filter is checked, does it filter out any potential conversation options relating to that filter based on an if check? So, say that a specific block of dialogue contained a filter for filter target="bottom" type="relation=" value="none", would that conversation option be unavailable if you have no relationship with the character?

Also, if the filter works how I'm assuming it works, are you able to create two instances of the same dialogue option with two different ID's, but the same action name? Where one has a filter, and the other is the default if the filtered dialogue option isn't available?
Posted on 05-02-13, 03:21 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 254/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
If I understand you correctly, no and yes.

"Relation=none" filter would mean it's true if there is no relationship. But I'd suggest using more positive tests than that -- one block for, say, lover ship, one for friend ship, and one that doesn't specify a ship at all to mean "none". Checked in that order, it'll reject each until the "no ship" case is found by virtue of not checking for a ship at all.

Why are you asking, though? Didn't I mention in the call for help that you don't have to work directly on the XML and that that's for me tackle? Doesn't that sort of imply the exact filters are too? It's not that I'm not appreciative, but I'm just wondering.

I don't just program Noxico...
Posted on 05-02-13, 03:48 pm
Eager Beaver

Posts: 3/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Like I told you, I'm a programmer myself. My brain automatically settles into taking everything from a programmer's perspective.

However, if you would prefer, I could use pseudo-code. I just enjoy work like this.
In fact, if my work still requires a bunch of reworking in order to work correctly(or you prefer me to change to pseudo-code), I'll actually use pseudo-code like in your example. Though, it may be simpler to do it using pseudo-code simply to pump out lots of scenes in a much shorter amount of time. It's up to you, since it'd still take a while to either proof-read the scripting or convert it to the XML format.

As for the "relation=none" filter, it was more of a question to understand if the filter removes options that simply don't match the filter. So I can build an understanding of what I'm working with to make it easier to work with it.

Like if a specific dialogue option has a filter like target="top" type="legs" value="cat", then unless the player has cat legs the option won't appear in the dialogue menu at all?

The understanding is primarily to make it as easy as possible for you to work the scenes into the system you're working with.
Posted on 05-02-13, 04:16 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 255/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
A filter like that will only return true if the player has cat legs. First filter for a given scene that returns false means the entire scene is thrown out. If another scene with the same name has different filters that are all true, or has no filters at all, that scene will be chosen instead. An action link only appears if there's at least one scene with the given name that passes all filters.

That also means you can list actions for later and not need to define placeholder scenes for 'em.

I don't just program Noxico...
Posted on 05-02-13, 05:02 pm
Eager Beaver

Posts: 4/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
XML
Pseudo-code

Here. Give it a couple looks over, and you can tell me which you prefer.

The second one will be faster on my end, and all the complicated stuff would be left to you(who actually understands the system).
The first one will be slower on my end, and will already have complicated stuff in it, but will probably need proof-reading anyways.

To be honest, pseudo-code would be easier for me to focus on the writing. Which I'm starting to prefer myself.
Posted on 05-02-13, 05:44 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 256/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
I'm severely leaning towards pseudo style. The XML you wrote is mostly a lot of complicated work because you're reinventing some serious wheels here. For example:
The [color] [ponytype] waves a hoof at you. "Hi there! Can I help you?"
The [ponytype] tag is implemented in your XML as JavaScript, just to call the pony a mare or colt. It also uses a gender token that doesn't exist -- gender is a property. The entire introduction paragraph can be implemented like this:
The [b:t:skin/color] [b:title] waves a hoof at you. "Hi there! Can I help you?"
That line, in a <code><P></code> element, would give the desired result -- the <code>t</code> tag takes the specified path and splices in the text value for that token (in lowercase, use T for the original value), and <code>title</code> would, for a pony, return "mare" or "stallion". If something more specific is needed, "<code>[b:g:colt:mare]</code>" would work too.

And that's for me to worry about when rewriting the pseudo to XML. Including things like his/her.

Other than that, you're on to a great start.

I don't just program Noxico...
Posted on 05-02-13, 07:11 pm (revision 1)
Eager Beaver

Posts: 5/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Ah, I see. I'll stick with pseudo-code then. At least, until I've learned the XML structure and tags enough to be proficient with them.

I expected the change in the gender token, but I honestly wasn't sure how the gender is even accessed through Javascript.

Seeing that the tag for it is much easier than the Javascript is really nice, but there really isn't a big book of tags.

It is, however, nice to know that I did acceptably.

For now, I'll use the pseudo-code, and just peek at and practice any XML code you convert it into. If I get skilled enough at it, then I might go back to doing the XML, as to reduce the work needed for you to implement it. That way you have more time to focus on more important bits.

---------------------------------------------

So, I went ahead and started up the naughty pony scenes. I'd like to get your opinion on what I have so far.

Pseudo

For the cock, what would the tag be? [b:t:cock/type]?
Posted on 05-02-13, 07:54 pm (revision 1)
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 258/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
<code>[cocktype]</code> returns a descriptor, such as "human", "tapered", or "bumpy". The exact wording is random, and the set chosen from depends on the cock's type.
<code>[cockrand]</code> returns a random synonym for cocks in general.

An opinion will follow. Okay, that's pretty good. I like how you can go from a blowjob to penetrative intercourse, or cut off the interaction entirely.

As an extra challenge, you could try reversing the roles, giving the player a "let him/her lead" option. It was originally made for when a hostile rapes you, but when the player is the bottom, the game picks options at random instead of letting the player choice. Unless a JS block calls <code>LetBottomChoose()</code>, which works for one block per invocation. It should be easy enough to add a <code>SwitchRoles()</code> function for this purpose...

I don't just program Noxico...
Posted on 05-04-13, 04:03 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 259/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
And so, CrownFox's work is in the game.

I don't just program Noxico...
Posted on 05-05-13, 11:46 am (revision 1)
Eager Beaver

Posts: 6/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
I checked through the Pony Dialogue, and it all works as intended save for one piece.

For some reason, on line 222, a filter isn't working.
<filter target="bottom" type="liking" value="30-" />


I'm not sure why, but this line is keeping the dialogue option from showing up when below 30 likeness.

Since the dialogue before it requires 30 liking to be applicable, perhaps this filter should be omitted?

--- Edit ---

Crap. I tried omitting it, and that causes two of the same option to appear in the dialogue. No idea what that's about.
Posted on 05-05-13, 01:04 pm (revision 1)
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 260/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
Will look into it. Liking is something I added just for this scene set, so it was pretty much something to be expected.

Update: yeah, logic error. Some temporary testing dialogue shows that it should work now.

I don't just program Noxico...
Posted on 05-05-13, 02:07 pm
Eager Beaver

Posts: 7/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
It doesn't work, still.

I figured out why.

The issue is this(I'm doing this in pseudo for simplicity):


if (fValuePM == "-" && liking >= fValueF)
return false;
else if (liking < fValueF)
return false;



You need to change this to:


if (fValuePM == "-" && liking >= fValueF)
return false;
else if (fValuePM != "-" && liking < fValueF)
return false;


I made the change and tested it to make sure it works in a generated world.
The issue is that if you input -, it would always return false.

Because if it's - && liking >= fValueF it's false, otherwise if it's lower than fValueF it's false.
But, we want it so that if it's lower than fValueF and fValuePM is "-" it comes out as true.
Posted on 05-05-13, 02:12 pm
<i>Prophet of Celestia</i><br>Baka on the streets, senpai in the sheets

Posts: 261/344
Since: 06-08-12

Last post: 1670 days
Last view: 1210 days
Thanks for the assist. I'm pushing this change now...

I don't just program Noxico...
Posted on 05-05-13, 02:16 pm (revision 1)
Eager Beaver

Posts: 8/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Posted by KawaThanks for the assist. I'm pushing this change now...

My pleasure, Kawa, I'm always happy to help. ^_^

Edit: Also, it took me forever to find the quote button.
Posted on 05-08-13, 10:26 am
Eager Beaver

Posts: 9/9
Since: 05-02-13

Last post: 3977 days
Last view: 3979 days
Just checking in. ^_^

3:23AM, 5/8/2013
Currently working on writing multiple routes for receiving sexual advances from something that has a penis!

I'm working on my WIP file, so the main file won't be updated every fifteen freaking minutes.
Pages: 1
Main » Director's Trailer » Crown's Writing Block