Tuesday, March 27, 2012

Guide - Jobs (Personal Job Example)

Now it seems a bit unfair that your slave gets special jobs when you have the onsen house and you don't. We should probably fix that. Lets review a little on personal job flow.

Event(personal job) -> Text (Float System - Personal Job) -> Event(job chosen) -> Text (job text)

Now there are two ways to make special events for personal jobs. The first way is the one you should NEVER use. Basically personaljobs is an event as such it can be interrupted and that is done for sick. Unless you are running an event that forces the player to run a specific job this should never be changed or modified. We are not going to do it in this example.

Instead we are going to add to personal jobs a top level menu item called house job. No reason to modify the top story part at all. Don't do it, it then changes every personal job.

By now this should be pretty straight forward the majority of this is just text commands.

left = "#girlfront" --- we are showing the girl on the left side when we are over the button
image = "jobicons/homeJob.jpg" -- the button image ( a little house )
line = "Spend time with your slave in the onsen." -- Text when we are over the button
namecolor = "#ff6699" -- collar of the job name
name = "Bathe" -- name displayed in the small box
next = "bathjobs" --- the next TEXT called!!!

Then right below that you will notice we have evecheck... that's right this only happens if you are in a specific house.

label = "#house" check = "eq" vvar = "Onsen House"

I'm going to assume that it makes sense if not please go read up on evecheck.

A small note here normally there is a fg or fore ground image for personal jobs but because this is for the onsen house and that will be displayed normally as the background left it out.

So the user has pressed the button and they have the second tier.

More pretty straight forward.

label = "bathjobs" -- the label that the game is searching for when the user pressed the top level button
namecolor = "#ff6699" -- name color
top = "false" -- this is not the top level show the go back button
up = "personaljobs" -- if they pressed the go back this is the where it goes
name = "Bathe" -- text in the little box
worksafe = "true" -- worksafe
line = "Choose how #name will service you in the bath." -- flavor text in big box

Now for the buttons... we are putting up 13 of them. Wait 13? Yes 13 but the user will only see 3. Why because sex is a pain in the ass. I'm not going to put entire code in here but this shows an example of all 3 jobs. Yes the checks for sex of player and sex of girl are different and I made notes in variable replace.

I'm not going to go through all of these they should be pretty pro forma. The main difference is that the event command.

event = "bathtogether" -- calls the event.

After this is heads to the event system and then back over to the text system just like a normal room job so no reason to go into that.

If you have any questions leave a comment I will update, fix, and answer as much as I can.



  1. So, jobs load a foreground image. Let's assume the slave provides one, so it is NOT a generic picture. In this picture, the slave will be depicted wearing clothing that matches the main clothing item the slave wears.

    The situation we want to display: Belldandy, wearing a bikini, performs a strip-tease in a bar.
    Now we load a background image of a bar. As foreground image, we load a picture of Belldandy in a bikini. In Belldandy.xml, this picture would be listed as {picture id="JobForward" dress="bikini"}.

    So, we have a background picture of the location and a foreground picture of the slave wearing the correct outfit. Good!

    However, we may also have another picture of Belldandy were she also wears a bikini, but even performs a strip-tease, e.g. {picture id="JobStripTease" dress="bikini"}.

    How can I tell Otherworld to display the striptease picture and not the bikini picture?

    I'm sorry if you already explained that, I may have missed it.


  2. There isn't a way at the moment its based on what the girl is wearing. I can probably write it later on if it's needed.