devolution

Author Topic: CloneMaster: Welcome To The High Frontier...  (Read 60315 times)

0 Members and 1 Guest are viewing this topic.

Offline SapphireFox

  • Newbie
  • *
  • Posts: 6
Re: Welcome To The High Frontier...
« Reply #45 on: June 07, 2010, 11:21:21 AM »
Quote
I think I'd be OK with that, to be honest. What I'd like is for this to be the first cut of the 2.0 engine for WhoreMaster, along with a good game to serve as a demo/proof-of-concept/example, and as a bonus, I can use some of the ideas I had for WM, but without having first to persuade half the world that I'm not going to break the game.

I don't think you would need to do as much persuading as you think you do especially considering what you are offering to the people. As for the new engine+demo/WM in space you definitely have me waiting with bated breath for any news and development on it. Definitely count me in for trying the new game as soon as its out and for helping in the bug search. 8)

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier...
« Reply #46 on: June 11, 2010, 06:35:36 AM »
Still working away on this although most of this week's time has gone trying to get the WM scripting working. I did have one run throught the screen XML format, but windows ate the text file I was using to edit it, and I've not got round to re-doing it.

Next week, I should get a bit more time :)

Offline megamanx

  • Full Member
  • ***
  • Posts: 211
  • I watch DBZ Abridged and give it three thumbs up
Re: Welcome To The High Frontier...
« Reply #47 on: June 11, 2010, 09:27:10 PM »
Two series that should be in there is Tenchi Muyo(your main enemy could be Jurai), and Gundam because who doesn't like giant robot fights. The catacombs in whore master could become space wrecks in clone master the girls you have must fly through the wrecks(in mecha) collecting DNA while also fight others who are doing the same thing. ;D
« Last Edit: June 12, 2010, 12:14:40 AM by megamanx »
REST IN PIECE TOONAMI.
From beginning to the very end I was there. I will never forget.
Tom and the Absolution 1997-2008
A great Character and a funny host. You will live on forever in this.

Offline TF

  • Full Member
  • ***
  • Posts: 220
Re: Welcome To The High Frontier...
« Reply #48 on: June 11, 2010, 11:05:54 PM »
No idea about the practicality, but it seems like if you're creating girls from DNA samples, it'd be fun to have some kind of objective regarding genetic research, and as you progress, you gain the ability to recode DNA to give girls better starting stats or take away unwanted traits and give ones you might prefer.

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier...
« Reply #49 on: June 12, 2010, 04:23:06 AM »
No idea about the practicality, but it seems like if you're creating girls from DNA samples, it'd be fun to have some kind of objective regarding genetic research, and as you progress, you gain the ability to recode DNA to give girls better starting stats or take away unwanted traits and give ones you might prefer.

That's the plan. As the PC's skills improve, you're going to be better able to optimise the girls you create. Adding skills and traits is planned as well.

To begin with, the templates you have are pretty bad, but you do get to add some points at build time. Those points can go on stats, skills or traits, although some skills and traits will need to be unlocked first. I don't think there's going to be any absolute limit on how many points you can add, but once your changes exceed your skill the clone starts to become unstable, which means it takes longer to cook and the cloning process has an increasing chance of going wrong in some way

The catacombs in whore master could become space wrecks in clone master the girls you have must fly through the wrecks(in mecha) collecting DNA while also fight others who are doing the same thing. ;D

No immediate plans for mecha, I'm afraid, although I'd like to work them into the plot at some point. I do plan on getting a bit creative with catacomb activities however :)

Offline ShadowMage

  • Newbie
  • *
  • Posts: 32
Re: Welcome To The High Frontier...
« Reply #50 on: June 12, 2010, 02:41:39 PM »
I do plan on getting a bit creative with catacomb activities however :)

Sounds very interesting  :)

Offline Midnight_Amratha

  • Full Member
  • ***
  • Posts: 124
Re: Welcome To The High Frontier...
« Reply #51 on: June 13, 2010, 09:44:31 AM »
being a bit of a building freak, how does growing clones become affected by equipment you get? will there be cloning abilities not available until you attain a certain rank of equipment? how will the education centre affect your girls or is that covered by the "Neural Induction Computer Programme" ?
The line between lunacy and genious is very thin.
So far i haven't been able to find it.

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier...
« Reply #52 on: June 24, 2010, 06:47:07 AM »
being a bit of a building freak, how does growing clones become affected by equipment you get?
 
My apologies, I really thought I'd replied to this one.

The big limit on your cloning is the number of vats you have. They're going to be deliberately hard to come by, because I want the player to have to think about his choices when creating new girls.

Beyond that, most of the improvements are more software than hardware. You'll get new gene samples that let youi isolate the sequence for a particular trait, for instance. Or a neural snapshot from which you can extract  skill which you can then program into your clones.

Player skill is going to be a big factor as well. The better you are, the more design points you can allocate.

I do want to have building management, but I see that more affecting the player's non-cloning activities.



Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier: AI
« Reply #53 on: June 25, 2010, 05:19:43 AM »
It's been too long since I did one of these. Let's look at AI, since that's about where I've got to. The aim here is to let girls make intelligent, (or at least humanlike) decisions about what they're going to do.

Essentially, each girl gets a list of possible actions. Each action has a weight, which says how likely she is to do that relative to other activities. So, for instance if we have something like this

Code: [Select]
        local girl, a_sleep, a_frig
--
--      create a test girl.
--
        girl = Girl:new {
                name = "Alice",
                desc = "Alice is a test girl",
        }
--
--      and give her a possible action
--
        a_sleep = Action:new {
                name = "sleep",
                weight = 10
        }
        girl.add_action (a_sleep);
--
--      and another one
--
        a_frig = Action:new {
                name = "masturbate",
                weight = 40
        }
        girl.add_action(a_frig)

Then we have a girl who is going to split her time between diddling herself and sleeping. The weights give us the ratio, so that's 10:40, which means she's going to spend 80% of her time jilling off. The advantage of doing it this way is that when we add a new action, we can easily adjust  the percentages.

We can also test that it works as it's supposed to work. This throws an error if the percentages aren't as we expect.

Code: [Select]
        assert_equal(20, a_sleep:percent())
        assert_equal(80, a_frig:percent())

This is what most of the dev work I've done on this so far has been like: writing tests to make sure the code does what I think it does. The technique is called test driven development, and it's cool becuase it means I can make sure all my bits still work in six months time. It also means that there's a lot of examples of what everything is supposed to do, and how it's intended to be used. The tests are all in svn and live in Resources/Tests. The files are all called test_something.lua and you can run them from the command line with "lunit test_whatever.lua".

OK, back to the topic at hand:

Action weights go from -100 to 100. Negative values count as zero for weighting, but you can use them to make it harder to coerce a girl to do something, or to provide some initial resistance to training.

OK. So we can give her a set of priorities, and she'll choose randomly from them. But what happens if an option isn't available. We need to add conditions:

Code: [Select]
        local girl, a_sleep, a_frig, a_whore
--
--      create a test girl.
--
        girl = Girl:new {
                name = "Betty",
                desc = "Betty is a test girl, too",
        }
--
--      actions...
--
        a_sleep = Action:new { name = "sleep", weight = 10 }
        a_frig = Action:new { name = "masturbate", weight = 40 }
        girl.add_action(a_sleep);
        girl.add_action(a_frig)
--
--      suppose customers are waiting?
--
        local customers_waiting = true
        a_whore = Action:new {
                name            = "whore",
                weight          = 50,
                condition       = function
                        return customers_waiting
                end
        }
        girl.add_action(a_frig)

So we have a third condition that's only valid if some external test reports that there are customers waiting to get their balls drained. The  external test here is similated by the customers_waiting variable which we can set and unset to test both conditions.

So with the customers_waiting flag set to true, we expect 10:40:50, which gives us 10% sleep, 40% frig and 50% whore. With it false, the numbers are 20:80:0

Code: [Select]
        customers_waiting = true
        assert_equal(10, a_sleep:percent())
        assert_equal(40, a_frig:percent())
        assert_equal(50, a_whore:percent())

        customers_waiting = false
        assert_equal(20, a_sleep:percent())
        assert_equal(80, a_frig:percent())
        assert_equal( 0, a_whore:percent())

OK, so we can get it so the girls recognise new possibilities as they emerge. We also need a way to influence probablilties. So we need modifiers, too.


Code: [Select]
        a_sleep.add_modifier("tiredness", 10, "*")

So that adds a 10x multiplier to the sleep weighting. So the ratio is now 100:40:50 if there are customers giving her a 53% chance of going deciding to go to bed the next time she gets a decision point. If there are no customers needing attention, the ratio goes up to 100:40:0 whch gives 71%.

So why not just change the weight? Well, the idea is that the weights are part pf the girl's personality, and change slowly if at all. Modifiers however are dynamic and change is the circumstances change. For instance, the sleep modifier goes up over time until she finally gets her head down. Keep her awake for long enough and she won't want to do anything but sleep. And we can do the same with other drives. Like boredom. Or libido.

And because we can detect when a girl is badly in need of something, we can key events based on that. Like having a girl fall asleep in the middle of screwing client (some might enjoy that, of course). Or having one wreck the docking gantry because she was bored and horny and tried to bring herself off by rubbing up against the ship release button...

So: we have a flexible system that allows you to create a girl with preferences for behaviour, but which allows her to respond to changing circumstances, and for her behaviour to evolve over time. And I've got the test routine to prove that it works. There's a couple more tricks still up my sleeves, but I'll keep them for another time
« Last Edit: June 25, 2010, 12:59:00 PM by DocClox »

Offline Dagoth

  • Administrator
  • *****
  • Posts: 617
Re: Welcome To The High Frontier...
« Reply #54 on: June 25, 2010, 06:20:44 AM »
Sounds very, very promising.  :)

Offline mbscout

  • Donator
  • *****
  • Posts: 14
Re: Welcome To The High Frontier...
« Reply #55 on: June 25, 2010, 12:26:55 PM »
Quick question,  why does the multiplier for sleep change the ratio weight for frig and not whoring?  Shouldn't it be 100:40:50 or am I missing something?

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier...
« Reply #56 on: June 25, 2010, 12:50:21 PM »
Good catch - typo on my part. I thought those percentages looked a bit low!


fixed now :)
« Last Edit: June 25, 2010, 12:54:10 PM by DocClox »

Offline drake

  • Jr. Member
  • **
  • Posts: 84
Re: Welcome To The High Frontier...
« Reply #57 on: June 25, 2010, 03:00:10 PM »
shouldn't the last line of your code in the 04:19:43 AM post be
girl.add_action(a_whore)

not
 
girl.add_action(a_frig)

otherwise it seems you have two frig actions but no whore actions
 
Just a thought

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Welcome To The High Frontier...
« Reply #58 on: June 26, 2010, 12:09:11 AM »
shouldn't the last line of your code in the 04:19:43 AM post be
girl.add_action(a_whore)

not
 
girl.add_action(a_frig)

Good catch again. This is what I get for not using the code in the test scripts themselves. Let me explain...

I decided that the Girl object was complicated enough without adding all the relative weight code, so I moved it all to a class called Decider. So the Decider class has the functionality here, and the plan is that the Girl class is going to have a Decider instance, and some methods that get passed straight to the decider.

But that seemed needlessly complicated for explaining the idea, so I made code up on the fly to illustrate the points.
« Last Edit: June 26, 2010, 12:15:29 AM by DocClox »

Offline Kalebon

  • Newbie
  • *
  • Posts: 32
Re: Welcome To The High Frontier...
« Reply #59 on: July 02, 2010, 04:20:38 PM »
I have a question:

How are things progressing ?

FIgure I would ask considering it has been a moment since we last got an update.