iPhone App Directory
RPG Maker VX
 
Gallery Members Search Calendar Help


Welcome Guest ( Log In | Register )

Collapse

>Announcement

Keep an eye out for the upcoming 3rd Quarter Contest!
 
Reply to this topicStart new topic
> [-System-] Actor Synthesis, Originally known as the Breeding Event
Alt_Jack
post Aug 29 2011, 05:32 PM
Post #1



Group Icon


Type: Undisclosed
Alignment: Chaotic Neutral




You take two characters and "breed" them, producing a single character (you lose the parents, to keep party numbers reasonable) with traits from both "parents" . It's kinda like synthesizing items, but with actors. You can also make it more complicated by requiring an item (we'll go into that later) . Keep in mind that my math (esp. algebra) is terrible, because I very rarely use it. Here goes:

Spoiler:

CODE
condition branch: actor XY is in party (this is actually encompasses all the available possibilities, because... )
-> condition branch: actor XX is in party (...it establishes one parent, then checks if the potential matches are available)
text: Parents: Father: \n[XY] , mother: \n[xx] (might as well know who the parents are)
(optional - have some images fly in to show the "happy" couple and get some idea of the horror miracle you/they are about to create, and remember to have them erase after you make your choices, otherwise they stay on the screen)
Is this okay?
choices: yes, no
when yes - (bare with me, because this is where the science and math come into play, which I'll explain in a bit)
control variable: father level - set to - actor XY's level
control variable: mother level - set to - actor XX's level
control variable: Add variables father level + mother level
control variable: divide father level (I'm not sure if it matters) by 2
(this is a bit backwards from the "natural way" : Meosis )
remove (the parents, yes both of them)
add actor (whoever their kid is)
change level (of said offspring) - increase (for their own good) - variable (whatever the parents was)


CODE
The variable math adds, then divides the parents respective levels (PL) in a kind of reverse meiosis (you can do it the other way, but I found this way works better) , then inceases the child's level (CL) be the result. Assuming that you're starting the child off at Lv1, PL will be increased by 1, because you're adding it to the child's initial level. Ex:
Father's Level is 16, Mother's Level is 12
divide both in half
PL = FLv = 8 + MLv = 6
PL = 14
Child's Lv = 1
PL + CL = 15
therefore, the child will start off at level 15.
As an Excel or Algebra formula (for easier caculation) it looks like this: =A3+((A1/2)+(A2/2))
A1 is the father's level (16) , A2 is the mother's level (12) and A3 is the child's initial level.


anyways, so the parents are gone (for whatever reason) and you've added the kid and increased their level. I'd advise doing this next:
recover all: (the offspring) Why? Because the stupid thing doesn't change the numbers proportionally. If they had 12 HP at Lv1, guess how much HP they have now? TWELVE. Yeah. Always heal your chars after an inexplicable level change.(here you can add a wonderful picture of the kid, which you have to remember to erase as well)

QUOTE
to review

pick the parents, confirm the parents, get their levels, do the math, remove them, add the kid and add the level result to the kid's level then heal up the kid so they don't have <4% of their HP/MP, and erase any visual aids that you may have employed. As for items (cuz cloning, inter-species mixes and in vitro are all the rage), just put an additional condition branch in before it checks for parent #2.
And that should be everything.


side note: I'm not entirely sure about what happens when PL + CL is, say, 13.5 or really anything that ends in .5 nor can I tell you about any changes in their total Exp. I think it just rounds it down , so it'd be 13, rather than 14. That's what I got, anyway. If someone could test it for me...



This post has been edited by Alt_Jack: Aug 30 2011, 11:55 PM


--------------------
Go to the top of the page
 
+Quote Post
   
Alt_Jack
post Aug 30 2011, 11:05 PM
Post #2



Group Icon


Type: Undisclosed
Alignment: Chaotic Neutral




The script I use to manage this monster is Yerd's Event Command Menu (or something like that), which works via switches. I'm not sure if it would work without it, but it makes the whole thing much easier to manage, and the two work perfectly together.
Basically, this is how it works:


For text mountain
Spoiler:

I just used a door; you walk in, flash of light, suddenly you're down two members and have someone else and pop up somewhere else. I will address this door-related nonsense later.
You create a condition branch common event to check who's in the current party, which you get to run first. If they are, it turns on a switch.

If the switch is on, it displays the associated common event (which you create for each character, along with a switch for each of them) and you select that member.

In the member's common event menu, you have it turn on the char's switch (it's probably on anyway), and turn off the other character's switches, to establish who you've chosen

My setup has 3 fathers; you select one and the common event turns off the switches for the other two. It also assigns them a corresponding variable, and stores their PL variable, so that you have 2 numbers stored. You then select the mother, which is where it gets complicated (as usual).
The mother's common event has condition branches that check which father switch is on (I couldn't get it working with the variable) , and then runs through the level math-ing, character changing mess of an event above. You have to create one for each father, so in my case your max. would be 3 switch-activated condition branchs, one for each dad.
At the end (somewhere between adding your new char and adjusting their level) insert a switch that turns the parent's respective switches OFF (they're gone, so they won't reappear).
The whole thing relies on switches and conditional common events, to check who's available. It's worth noting that the kids don't get switches.

the setup basically looks like what's in the codebox above.


Here's where it gets a bit easier. Actually, this is more like the classic magic trick of "A goes in one door, B comes out the other" but with events.
As we all know, doors have 2 event pages.
One the first page, have your special common event menu switches to bring up your mega-menus.
CODE
control variables- common event menu = x

I threw in an animation; you don't really need one, but it looks neat.
Somewhere in the move route commands, change the character's transparency just as they step through the door. Why? Try it without the transparency. Weird, eh? Your character just flickered and changed into someone else. That looks dumb, which is why we throw in the transparency to hide the flicker. They go in, turn invisible to hdie graphics change (you removed actors), and then turn off the invisible after they've changed.
It's a bit of slight-of-hand magic, and it can be tricky to get the transfer timing right, but it just looks better visually.
At the very end on page 2, re-call your common event (confirm) that checks who's in the party (since it changed while you were invisible), to update the switches and turn the appropriate ones back on. this happpened a lot


extra->mystic method

I talked about this before, having an alt. method to the birthing process. Guess what? It gets even more complicated.
create another switch called "mystic", which, again, turns off at the end.
Just under the condition branch that checks the father switch, have an "else" condition branch that checks for: the switch, and any items or states that are required. We'll say it's bird DNA, which lets you make a harpy.
After it checks, give a choice box that asks if you want to add the bird DNA.
If yes, remove the item in question and go through the parenting process, except that it creates the harpy, rather than a human. Save yourself some pain by using the "jump to label" command for the "else" branches, so your event will look like this:


QUOTE
condition branch_ switch [father] is on

QUOTE
condition branch-item-bird egg in inventory ---->the "else" branch for this creates the normal human, which will be labelled.
-flavor text
yes (harpy process)
no jump to label: human
else-jump to label: human

label: human (regular human process)


if the item isn't there or if you decide you don't want to give birth to a harpy, it just label-jumps to the normal process, so really you have 4 possible routes, but only 2 slightly different methods. The label jump just saves you the hassle of having to fill in the other branches.

For a couple videos that function as screenshots:

There's another event that runs that corrects the mystic method by removing the intended version of the actor if the altered one comes in, so that both don't show up. At any rate, if I missed anything, it's in either the demo or the vids.

This post has been edited by Alt_Jack: Aug 30 2011, 11:54 PM


--------------------
Go to the top of the page
 
+Quote Post
   
kingsofrpg
post Aug 31 2011, 12:24 AM
Post #3



Group Icon


Type: Designer
Alignment: Chaotic Evil




Not too bad. Of course, you could also take the average stats of both parents (it'd be like 1 more variable but that's not a big deal) and add em to your characters level or something so you'll have the base stats PLUS those added stats, and you could still do the avg. level to make it actually worth giving up two possible players (considering that you had a chance to fight wih them) for one new one


--------------------
Variable/Game_Interpreter Fix
Spoiler:

Proud Puzzle Maker of "Relic"


CODE
dont_hate_the(player) unless player.is_a?(Game_Enemy)
Go to the top of the page
 
+Quote Post
   
Alt_Jack
post Aug 31 2011, 01:06 AM
Post #4



Group Icon


Type: Undisclosed
Alignment: Chaotic Neutral




QUOTE (kingsofrpg @ Aug 30 2011, 07:24 PM) *
Not too bad.

It sounds simple.... until you try putting it together. Have fun... wink.gif
QUOTE
Of course, you could also take the average stats of both parents (it'd be like 1 more variable but that's not a big deal)....

It's actually 6 variables: max hp, max mp, offense, defence, magic, agility. huh.gif It's okay, you were only off by 5.
You could do that. But that's a bit too superflous for me. Besides, I had to make all 26 characters' graphics and organize them into a plausible system. Throwing in an extra 20 some lines for each CE was a little too tedious for me. But, whatever floats your boat.
QUOTE
...and add em to your characters level or something so you'll have the base stats PLUS those added stats, and you could still do the avg. level to make it actually worth giving up two possible players (considering that you had a chance to fight wih them) for one new one

I probablly should've mentioned that the plot that spawned the need for this had your initial party die and this was the sole means of getting more members. Those players were going to be removed anyway, so you might as well get one from it.

This post has been edited by Alt_Jack: Aug 31 2011, 01:27 AM


--------------------
Go to the top of the page
 
+Quote Post
   
kingsofrpg
post Aug 31 2011, 02:15 AM
Post #5



Group Icon


Type: Designer
Alignment: Chaotic Evil




QUOTE (Alt_Jack @ Aug 30 2011, 06:06 PM) *
It sounds simple.... until you try putting it together. Have fun... wink.gif


Well if it's possible to even event, it's simple to me I can make pretty much any system, I'm just too lazy to make most =P

QUOTE (Alt_Jack @ Aug 30 2011, 06:06 PM) *
It's actually 6 variables: max hp, max mp, offense, defence, magic, agility. huh.gif It's okay, you were only off by 5.
You could do that. But that's a bit too superflous for me. Besides, I had to make all 26 characters' graphics and organize them into a plausible system. Throwing in an extra 20 some lines for each CE was a little too tedious for me. But, whatever floats your boat.


Actually if you take away the two level variables (I added that in after, sorry for the confusion) you could do it with 2 variables. You add the new person to the party (depending on how you want to do it you can set his stats to 0) then you use two variables to record the max hp of both parents, then use one of the variables to add them together and divide it and add it to the new "kid's" stats. Then use the two variables for max mp and so on. Don't worry though, you're only off by 4, you're just an eventer it's not like you have to be good at math.


QUOTE (Alt_Jack @ Aug 30 2011, 06:06 PM) *
I probablly should've mentioned that the plot that spawned the need for this had your initial party die and this was the sole means of getting more members. Those players were going to be removed anyway, so you might as well get one from it.


Oh well then I guess you might as well just get an offspring from it


--------------------
Variable/Game_Interpreter Fix
Spoiler:

Proud Puzzle Maker of "Relic"


CODE
dont_hate_the(player) unless player.is_a?(Game_Enemy)
Go to the top of the page
 
+Quote Post
   
Alt_Jack
post Aug 31 2011, 04:22 PM
Post #6



Group Icon


Type: Undisclosed
Alignment: Chaotic Neutral




QUOTE (kingsofrpg @ Aug 30 2011, 08:15 PM) *
Don't worry though, you're only off by 4, you're just an eventer it's not like you have to be good at math.

Actually, I took a bit of a break from eventing and started making RTP edits (mostly busts) and they seem pretty popular; a number of them got 5-star ratings. Speaking of eventing, I've been looking over your work. Unsurprisingly, your work isn't nearly as impressive as you think. Comparatively speaking, your skill level is average, I'd say a 6/10 . But, I didn't come here to fight with sufferers of the Dunning-Kruger effect (I'll get enough of that at school) . I'm just here to contribute my own Events for people to use. smile.gif


--------------------
Go to the top of the page
 
+Quote Post
   
kingsofrpg
post Aug 31 2011, 08:28 PM
Post #7



Group Icon


Type: Designer
Alignment: Chaotic Evil




A true magician never reveals his secrets. Of course I'm not going to give up my best systems tongue.gif
those are all things I found painfully simple that people asked me about. I only release east stuff/stuff people ask me for. Except shere break cause I want at least ONE complex system on here


--------------------
Variable/Game_Interpreter Fix
Spoiler:

Proud Puzzle Maker of "Relic"


CODE
dont_hate_the(player) unless player.is_a?(Game_Enemy)
Go to the top of the page
 
+Quote Post
   

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version Time is now: 21st August 2014 - 03:10 PM

RPGMakerVX.net is an Privacy Policy, Legal.