Saturday, February 27, 2016

Parse R.I.P.

ACHTUNG! Technical post ahead

I really like Parse and it is the backend used for XMaker and RPGAutoCAT (For feedback)
It is ultra simple to use, the sdk is very well written and very explorable.

It is free for small amount of requests ( my case ).

It looked like it was going very well for the parse team.

And then:


An Important Announcement.

Parse's hosted services will be fully retired on January 28, 2017. We're proud that we've been able to help so many of you build great mobile apps. Read more on this announcement and what this means for your app here. Thank you for using Parse.

This is what is shown on parse site as of 28 january.

:(

When I received the email saying they were shutdown I was like:
What?

It was really unexpected.

(
For whoever is still reading and don't know what's Parse.
Parse is a Baas (Backend as a service). To make it really simple it's a database in the internet.
History in a nutshell:
Parse started as a startup, it was then bought by facebook in 2013, it continued good for a couple of years and now it's dying.
)



Anyway, now I need to explore other Baas, there are a lot and at the moment they look all bad compared to Parse (SDK wise).

I'll already experimented a bit with app42 cloud it seems, uhm decent, but there are already problem that make me think about the stability of the system.
In fact, making a request make the app crash if there's no internet connection...
This is only an issue with asyncronous request, with syncronous I can catch the exception and continue normally.

Anyway, after having these horrible experience (I'm still shaking for Parse departure), I decided to abstract the Baas out. Baas and XMaker now reside in different assemblies and interact through another assemblies which is just an interface over the Baas.

This should make switching baas pretty easy in case of other surprises...






Wednesday, February 17, 2016

New facial expression: Sleeping

Continuation to the this and this previous post.
For the moment I need no other expressions.

Here's the result for the three type of eyes in the game.




Wednesday, February 10, 2016

New facial expression: embarassed

Just a continuation of the previous post.
I added the embarassed expression, here 3 examples.




Wednesday, February 3, 2016

New facial expression : cry

Hi, in these days I added a some random events, mostly short and a couple medium sized.
One of those medium sized required some new expression that I still didn't had which is the crying one.


In the next days I'll need to add other two expression, an embarassed and a sleeping one, all required for the same event.
This is the first event that actually make use of facial expressions.
I should start use them more.


Thursday, January 28, 2016

Trainee properties

Hello there,

I added a new event step.
A lot of time ago I added the SetGlobal event step, which let you to set a global variable that can be retrieved in the future.
That lead to have a PlayOnce event step which let you play a event only once during the whole game.

Well, now I added a similar event step but with a smalle scope.
The scope is the trainee and the event step is called SetTraineeProperty.
The event step works exactly as the setGlobal but it clearly require a trainee.

Here's an example:

<SetTraineeProperty Type="Bool" Key="trainee_happy">
   [Trainee.Mind.Happiness] > 70
</SetTraineeProperty>

Okay, so to retrieve the value:

<SetText>Is trainee happy?  !$expr{[Trainee.Property.Bool.trainee_happy]}</SetText>

This would led (if the trainee happiness is higher than 70) to the following result displayed on screen:
Is trainee happy? true

Anyway this led to add the PlayOncePerTrainee event step too, which has the same sintax as the PlayOnce event step:

<PlayOncePerTrainee CompletionKey="trainee_present_herself">
   <SetText>!$trainee: Hello, I'm t!$trainee, pleased to meet you.</SetText>
</PlayOncePerTrainee>



Well, that's it for today.


Friday, January 22, 2016

Inside view

Hello there,

BEWARE: Long post ahead.



I'm happy to announce I'm working on a feature I tought I would add from the beginning.
As you probably know the "external view" was the only eye candy you get by playing the game.
Now finally I started working on the "internal view"



The internal view can be used to, uhm, inspect... Yes, that's a nice term...
Anyway to inspect the trainee closer.


So, let's start with the basic


Hmm...


Your probably wondering:
you: What the fuck is that?
(Actually I hope you are not wondering that, since that would mean I have to redraw that in the future)
To that question I respond with a:
me: It's a bottom
you: It doesn't look like a bottom
me: Fuck...
you: ...
you: ...
me: ...
you: and anyway is not much of an eyecandy.
me: Hmm...
me: You're right.
me: hmm
me: what about if I add...
me: Hmm
me: this?



you: ...
you: I don't understand. What's going on?
you: Why the colour changed all of a sudden?
me: Urhm, no need to notice that.
me: I'm still using that feature in test mode.
me: Each time I start the game the slave is generated randomly and the skin colour changes.
me: I had to restart the game to take the first picture because I forgot...
you: Hmpf, that's no excuse
you: And anyway why she has a missile stuck there?
me: It's not a missile, it's a test dildo



me: See? It has the "Test" symbol on it.
you: What the?
me: Yes, the internal view come with a xray view.
you: Hmm, that's interesting.
me: Another interesting thing about the game is that it support multiple penetration.
you: Well, every game do that.
me: I mean in a single hole




you: Uh, nice

Okay stop the conversation
I hope  it sound interesting the whole internal view as a concept.
At the moment is still in very early phase, in the sense that I miss all possible drawing needed.
For starting I'll probably start by drawing three human dicks.
I'd like to add in the future different sized human dicks, monster and animal dicks.

Other interesting thing I'd like to add in the future (far away) is pregnancy (You will see the baby grow in the womb) and cum (which I know I probably can add in the vagina but for the anus I don't know I have kinda a logistic problem for displaying cum there...)


Sunday, January 17, 2016

Finally an If else that make sense

Okay,
this is a continuation to the previous post.

I wasn't happy with the IfElse element.
At start I was trying to decide whether it was better to let ifelse as it was or change it for this:

<If Expression="true">
   <SetText>I will be displayed</SetText>
   <Else>
      <SetText>I won't be played</SetText>
   </Else>
</If>

I'm still not sure this is better than the <IfElse> I described in the previous post.

So, I looked at how Slave Maker does it.
Here's a short excerpt:

<if gender='2'>
   <Question event='CockOutOfHole'>Ask for a cock</Question>
   <else>if</else>
   <Question event='CockOutOfHole'>Ask for a cock</Question>
   <Question event='CockIntoHole'>Stick cock into the hole</Question>
</if>

Well...
This, from my point of view, made even less sense than mine...

So, finally I decided to go with the normal way of doing an if else.
Here's the final version (I think) version:

<If Expression="false">
   <SetText>I wont be displayed</SetText>
</If>
<Else>
   <SetText>I will be displayed</SetText>
</Else>

I had to make a little more work since this was the first time I had to treat two sibling xml nodes as "one step"

Before all elements were evaluated singularly.

Anyway this gave me the opportunity to make an ElseIf too.

<If Expression="false">
   <SetText>I wont be displayed</SetText>
</If>
<ElseIf Expression="true">
   <SetText>I will be displayed</SetText>
</ElseIf>
<Else>
   <SetText>I wont be displayed</SetText>
</Else>

Yay!
I'm pretty happy with this, since it's a lot more natural than the previous solutions.