
Gogoat and 2 preevolutions of it

Group: Revolutionary
Posts: 221
Type: None
RM Skill: Intermediate

|
May a mod please close this clone of my fixed post. Thanks.
[spoiler="EVENTS"]BANK TUTORIAL
This is how I did it. Script does not include interest being paid.
Basic Bank system:
PART ONE: The script below is for bank clerk only
Make 7 Variables: 1.Account number, 2.amount deposited, 3.account money, 4.ATM access, 5.current money, 6.amount withdrawal, 7.created account
Event Editor:
Trigger condition: action key
Event commands:
Change face graphic: faces 2, 7, left Message: Bank clerk: Welcome to the bank of Arcadias, how may I help you? Label 1 Show Choices: create account/get account number/get current bank balance/never mind [Create Account] Handler Branch if variable [account number] is 1000 or greater Change face graphic: faces2, 7, left Message: bank clerk: you already have an account with us. Change face graphics: hero1, 1, left Message: oh, ok. Sorry! Jump to Label 1 ELSE Handler Change face graphic: faces2, 7, left Message: bank clerk: you can only create a new account or check your account number/bank balance here ECT. Change face graphic: faces2 ect Message: bank clerk: gives tutorial of how bank works. Change face graphic: faces2 ect Message: bank clerk: so do you wish to open a bank account? Change face graphics: hero. Show choices: Yes/No [YES] Handler Change face graphic: faces2 ect Message: bank clerk: please complete this form. (enter a full dialogue here) Message: Sign here... Wait 0.5 Sec Message: Here... Wait: 0.5 sec Message: and here... Variable operation: [account number] Set, Rnd [1000-9999] Message: bank clerk: here is your new ATM Card and your new account number is /v [0002] (put account number variable here in bold) Change item: ATM card 1 add Change face graphics: bank clerk face Message: bank clerk: thank you ect Hero face graphic Message: bye Jump to label 1. [NO] Handler Face graphic Message: bank clerk: ok well bye. Jump to label 1 END [Get Account Number] Handler Branch if ATM card possessed Change face graphic Message: bank clerk: I need top see your ATM card first please. Hero face graphic Message: here you go. Bank face graphic Message: Thanks, I just need to swipe the ATM Card and... Play sound: Item 1 Wait: 1.0 sec Face graphic Message: Bank Clerk: Done! Your account number is /v[put account number variable here] Face graphic Jump to label 1 ELSE Handler Bank face graphic Message: Bank Clerk: Sorry, but you do not possess an ATM card. Please create an account first. Jump to label 1 END [Get current bank balance] Handler Branch if ATM card possessed Bank Face graphic Message: your current account balance is /v [put account money variable number here]. Jump to label 1. ELSE Handler Bank face graphic Message: Sorry, you do not possess an ATM card/account. Please create one first ect Jump to label 1 END [Never Mind] Handler Bank face graphic Message: Good bye Hero face graphic Message: Bye Move event: Hero, move down. END
PART TWO
ATM MACHINE (choose ATM Graphic, get one from casino chip set or something)
I kept the ATM machine in the bank, but you can distribute these things everywhere in towns, cities ect.
Trigger condition: Action key
Event Command:
Message Display options normal Message: Welcome to the ATM service Message: please enter your ATM card Branch if ATM card possessed Play sound: Item1 Message: Thank You Message: Please enter your account number Input number: 4 digit [store in ATM ACCESS variable] Branch if Var [ATM ACCESS] is [use account number variable] equal Play sound: Item 1 Variable Operation: [use current money variable] Set, Money Message: Welcome to your private ATM facility. You currently have [Use current money variable here] Message: which service would you like? Label 1 Show Choice: Make a deposit?/make a withdrawal?/Check Balance?/Nothing [Make a deposit?] Handler Message: How much would you like to deposit? Input number: 7 digit [store amount in amount deposited variable] Branch if var [use current money variable] is [use amount deposited variable here] Message: you have deposited /v [use amount deposited variable here] gil. Change money: /v [use deposited variable here] Remove Variable operation [use account money variable here] +, var [use deposited variable here.] Value Jump to label 1 ELSE Handler Play sound: failure 1 Message: Error, you have insufficient funds Jump to label 1 END [Make a withdrawal] Handler Message: how much would you like to withdraw? Input number: 7 digit [use amount withdrawal variable here] Branch if var [use account money variable here] is [use amount withdrawal variable] or more Message: You have withdrawn /v [enter amount withdraw variable number here] Change money: /v[enter amount withdraw variable number here] add Variable operation: [account money] -, var [amount withdrawal] value Jump to label 11 END [Check balance] handler Message: Your current balance is /v [enter account money variable number here] Gil. Jump to label 1 [Nothing] Handler Move event: move down END ELSE Handler Play sound: failure1 Message: access denied. Invalid account number. Move event: hero, move down END ELSE Handler Play sound: failure1 Message: access denied Message: please...go to bank create account blah blah Move event: hero, move down END
FINISHED!! ................................................................................ ........... Commands: \C[n] Show a text color. n=a number(1 to 19) \S[n] Set the text speed. n=a number(1 to 20) 1 is the fastest(without pauses) and 20 is the slowest. \N[n] Show the name of a hero. n=hero's number.Note that 0 will write the name of your party's leader. \V[n] Show a variable value. n=variable's number. \$ A box appears showing your current money. \! Put that before a word. You will have to press enter to show that word but it will be in the same box {{than the others. \. 1/4 of delay before the next letter. \| 1 delay before the next letter. \^ The message end without you need to press enter. \> \< Displays the part of the message between \> and \< instantly. \\ Shows "\". \_ Shows half a space.
Colors: \C[0] Normal color(Light blue) \C[1] Blue \C[2] Orange \C[3] Grey \C[4] Yellow \C[5] Dark red \C[6] Purple \C[7] Pink \C[8] Shinning orange \C[9] Green \C[10] Dark blue \C[11] Red \C[12] Snots green \C[13] Dark purple \C[14] Gold \C[15] Light green \C[16] Dark dark purple \C[17] Grey-blue \C[18] Dark green \C[19] Brown
**Specifically, \C[n] refers to the colours in the game's system set graphic. 0 is the upper left (the light-blue), and as n increments it goes to the next horizontal colour in the system set (until it hits the right edge, where it moves to the second row and goes on from there)
Symbols: $A Sword $B Shield $C Star of Salomon $D Sun $E Moon $F Mercury $G Venus $H Venus(inversed) $I Mars $J Jupiter $K Saturn $L Uranus $M Neptune $N Pluto $O Aries $P Taurus $Q Gemini $R Cancer $S Leo $T Virgo $U Libra $V Scorpio $W Sagitarius $X Capricorn $Y Aquarius $Z Pisces
$a Smiling face $b Neutral face $c Sad face $d Sweat 1 $e Sweat 2 $f Spade(clear) $g Hearth(clear) $h Stand(clear) $i Club(clear) $j Spade(filled) $k Hearth(filled) $l Stand(filled) $m Club(filled) $n Skull $o X cross $p Sun $q Moon $r Dot $s Up arrow $t Right arrow $u Down arrow $v Left arrow $w Up-right arrow $x Down-right arrow $y Down-left arrow $z Up-left arrow ...................................................... 2PLAYER This tutorial will just tell you how to make a 2Player system on one map only. From here you should be able to pick up everything that's been done (it's all explained) and transfer the system onto any map that you want.
Okay, the first thing we need to do is make our blank map. Make it the default 20x15 tiles in size. The chipset isnt important - just make a blank grassy map and add a couple of walls/obstacles.
Now you make the player 2 character. For this tutorial make an event called "chara2" on your map, and set its graphic to the character set of your player 2 character. It can be anything, a village man will do. For the events conditions, set it to Action Key, Same Layer As Hero.
Next, we need to set up the controls. Rm2k3 uses the arrow keys as the default movement buttons for the hero, and there's no way of changing this. Player 1 is going to be the hero anyway, so we don't want to change it. For player 2 it would be good in theory to use the arrows on the numpad, but we can't since these arrows are also used to control the hero (player 1). Instead we will use the set of keys in the upper-right corner of the numpad: / * - 9.
/ = Move Left * = Move Up - = Move Right 9 = Move Down
To go about setting up the controls, make a common event in the database and call it something along the lines of "P2 Controls". It needs to be a parrallel process event, and there is just one command in this event - an Enter Password command. In the possible ticked boxes you should tick the number 0-9 keys and the symbol keys at the bottom, but make sure that the other options are all left unchecked. At the top where it says "change received keycode" (or some other rough translation) select a new variable, and call this variable "P2 Buttons".
You can also make use of the wait 0.0 seconds trick in this event if you wish, but I personally don't. This trick is great, however, if your 2-Player system is lagging at all. All you have to do is put a wait command in the event:
[Code]: wait (0.0secs)
You have just created the first common event, which is used to collect your instructions. All this event does is watch out for any key presses and, when it notices that a key has been pressed, changes the value of our "P2 Buttons" variable. Next we need to make an event to read this variable and act on its value.
Okay, now, make a new common event and, again, set it to a parrallel process. Call this event "P2 Movement". This event is going to use quite a few forks, so get ready for it. Here's the hard part.
First of all is put a wait 0.0 second command in there. The purpose of this is to prevent lag, as mentioned earlier in the tutorial.
Now put in a Fork Condition to check the value of the "P2 Buttons" variable. First lets check if it's value is 19, and be sure to include an case. If it is 19, the player must have pressed 9 on the numpad, hence want to move down. So as the instructions in the fork put Move Event, and move the event "chara2" down one square. When putting in the command for the character movement, be sure to tick the box that says "Ignore Impossible Moves", this is to prevent player 2 from walking through walls and such things. And that's the principal! Repeat the fork for the different directions, taking into account that the value of "P2 Control" has to be different. Also, put a wait 0.1seconds command after each move event.
Notes: Since these events are common events, you have to keep some constants. If you want this 2 player system to work on more than one map, you'll have to ensure that "chara2" has the same event ID on every single map or else you will get unwanted movement from other events. I hope this tutorial helps! ................................................................................ ................................................................ UNDER WATER First, you must have two different maps. Their size doesn\'t matter, they just need to be the same size. The first will be the shore, and the second will be the bottom of the lake or of the river. Make sure your two map are identical, but in the second map, instead of the shore, you must place walls, and instead of water, you put some ground.
Go in your database, in the Terrain Tab, and create a new Terrain type. Call it \"Deep water\". Then go in the chipset Tab and set this terrain type to the water tile you want to use in your map.
In the Item Tab, make a new Item. I called it Metal suit, but call it as you wish. But it must be an item you equip, if not, you will always be in the bottom of the water.
Then make a Parrallel Process event. In this event, Memorize the Hero position with the Memorize place event. After, put a \"Get Terrain ID\" by the variables you\'ve just set. With fork condition check if the Terrain ID is the one of the \"Deep Water\". Put an Else case and in the Else, put a change Hero GFX to his normal charset ( you will see why later)
In this fork, put another fork to verify if the item \"Metal suit\" is equipped, and check the Else case.
So if it\'s equipped, you should go underwater. To do so, change the variable of the Map you\'ve set with the memorize place with the number of the underwater map (so, if the second map ID is 2, set the variable Map to 2.) Then, put a \"Goto memorized place\", with the same variables. So you will be transported to the map underwater. Add a \"set screen tone\" to a little bit blue, to have the impression you are really in the water.
But if the suit isn\'t equipped, you probably want your hero to swim. So all you have to do is to change Hero GFX to a hero that is swimming (you can create this charset with a program, like iDraw). Put this in the Else case of the fork which verify if the item is equipped.
Then in the second map, if you remove your \"Metal suit\", you will normaly float, because you weight less. So, create a parallel process event. This event will check if the suit is equipped, but if it€™s equipped, nothing should happens. You must put in the Else case what is necessary to came back to normal. So memorize your hero position and change the variable Map to the Map ID of the €œshore€ and make a goto memorized place.
So I will now put the code for these events. In the first map: Parallel process
<>Memorize place: Map[0001], X[0002], Y[0003] <> Get Terrain I.D. (V[0002], V[0003]) Var[0004:Terrain] <> If Var [0004:Terrain] 11 <> If Hero, Metal suit is equipped <>Change Variable: Var[0001] =2 <> Goto memorized place V[0001](V[0002],V[0003]) :Else case Change Hero Walk Graphic:(Hero) swimmingcharset -1 :Else Case <> Change Hero Walk Graphic:(Hero) Normalcharset -1
For the second map: Parallel process <>Memorize place: Map[0001], X[0002], Y[0003] <> If Hero, Metal suit is equipped
:Else Case <>Change Variable: Var[0001] =1 <> Goto memorized place V[0001](V[0002],V[0003])
And that€™s it. Also, you can add in each map another parallel process. In the first map, put a set screen tone to normal, and in the second, put a blue screen tone to make it like water.
Also, it is possible to change your hero appearance when he is wearing his suit. Just create your graphic first with iDraw, and make a Common event, parallel. If the Item is equipped, change the graphic of your hero, and if not, change it to normal.
So after, just be creative, you can add something like caverns underwater,where you can€™t go up to the surface when you€™re in, or something like a dam, that will remove the water after you unblocked it. You can even put floating things that will go to the bottom, when the water will be removed.
I hope it worked for you.
Have fun with your game! ................................................................................ ................................................................ DANCE First you must make a Command name \"dance\" or whatever you like.put it in the \"attack\" archetype.
well, still with me? good now make a condition that changes nothing...put it priority one and put 100% chance to recover after one turn...this condition woll stop you from attacking the target.
After that. go to monster group in the database- put in the trigger condition; Mog uses \"dance command\" then create a variable, name it something like:\"dance_var\" now set it equal to random number from let\'s say 1-2 since I\'ll only talk about one skill.... after that, but a conditional fork if \"dance_var\" equal \"1\" if it is, create a new variable for a skill..let\'s use life tango for example...create a variable like \"life_tango\" than set it equals to whatever you like exemple Mog\'s hp...show a message like:\"mog danced the life tango\" . then show a battle animation ON your party and then use \"change character\'s hp\" and had in the number set in variable\"life_tango\" to party...on the else case, leave empty...there you, for more skill make new variable and add fork conditions...
it should look like this: <>Chang cond. Mog normal inflicts <>variable opp.[001:Dance_var] set, rnd[1-2] <>branch. if Var[001] is 1 <>message: mog danced the life tango <>show battle animation: Recovry A,entire party(wait) <>var. opp.[002:life_tango]set, Mog Hp <>change HP: Entire Party\'s HP V[002]recovered <> :end <>
Thanks this is my first Tutorial ................................................................................ ................................................................ PICKPOCKETING
I`m a newbie,who was looking for a pickpocket tutorial. I couldn`t find one,so i made one. It seems to work well.
All you will need is one variable,and three switches. Name them whatever you like.
Variable: pickpocket
switches: 0001: Pickpocket 0002: Caught 0003: Leave NPC
Go to Common Events.Name it.(Maybe,Pickpocket) Make it a Call Event.
<>Variable Ch:[0001:Pickpocket]Set,Randm[1*6] <>Fork Optn:Varb[0001:Pickpocket]4abov <>Change Switch[0001:Pickpocket]On set <> :Else case <>Messg: You got caught! <>Change Switch[0002:Caught]On set __________________________________ Now you need an NPC to try it on. Go to a map,where you want the event to take place. Make an Npc.Set it up something like this.
Page 1: (Push Key) setup coversation. Then: <>Select face Graphic: Eras <>Messg:Do you want to try to pick his pocket? <>Show Choice:Yes/No <>[Yes] Case <>Call Event: Pickpocket <> <>[No] Case <>[0003:Leave NPC]On Set
Page 2: Opens with switch[0002Caught] also(Push Key) <> I`m still calling the guards.
Page 3: Opens with switch[0001Pickpocket] Make this page (Auto start) <>Messg: You got 15 GP`s <>Change Money: money 15 Incr
<> (Here you can add conversation if you like.)
<>Change Switch[0001:Pickpocket]Off set <>Change Switch[0003Leave NPC]On Set
Page 4:(Push Key)
<> messg: (whatever Parting words)
Any questions or comments: ................................................................................ ................................................................ INN COST PER PERSON First off start yout Inn event by making the Innkeeper say hello or something, such as:
InnKeeper: Goodday sir! How may I help you?
Then you\'ll want to do a show choice in which you put:
Choice 1: I\'d like a room please:
Choice 2: How much is a room?
Choice 3: Cancel
Next you\'ll want to decide how much you\'ll want your inn to cost PER party member. So you could have for instance:
Innkeeper: It is 10 Gil per person.
This is what you\'d out under the \'How much is a room?\' choice. So with a full party the Inn should now cost 40 Gil.
So in the 1st Choice: \'I\'d like a room please.\' you\'ll need the following:
1st step: Make a variable option linking to the amount of party members in the team, (this is found in the bottom section under \'Other\') so if there is one part memeber the variable will be set to 1, etc etc.. Call it something like \'Party Size\'.
2nd Step: Make a Branch (or Fork Option) to link with your \'Party Size\' Varibale and set it to activae if the variable is eqaul to 4. No excepting case is required here.
3rd Step: In the Branch have the Innkeeper say:
Innkeeper: 4 people? That will be 40 gil. Do you wish to stay the night?
So, the innkeeper will recoginse that there is 4 people in the party and charge then the rate it is per person, so 4 people x 10 Gil = 40 Gil
4th Step: Now give the player the option to stay at the inn so we\'ll need another show choice command here. Make it something like...
Choice 1: Yes
Choice 2: No
5th Step:
Under the \'Yes\' option create another branch and set it to have an execpting case. Make this Branch condition activate if the party has 40 Gil or more using the money option. 6th step: Under the Branch make remove 40 Gil from the party\'s money. Then have the innkeeper say something like:
Innkeeper: Goodnight!
7th Step: Now for the creative part. You can modify this to your own taste or you can leave it how i suggest it. Fade the screen out and play the inn music making sure there is a \'wait\' long enougth for the inn music to finnish. At this point, I put an emoticon in of a sleep bubble. Then fade the picture back in and use the complete healing option to fully heal your active party. The have the Innkeeper say something like:
Innkeeper: Did you enjoy your stay? Please come again.
Step 8: Now to round it off, in the excepting case of the branch we\'ve just been working on, put something like:
Innkeeper: I\'m sorry, it looks like you don\'t have enough Gil to spend the night.
You\'ve just now made an inn which will charge you 40 for 4 people staying the night! Pretty cool huh? Now you\'ll need to expand this a bit! but don\'t worry you can copy and past most of this and only have to change a few things!
Step: 9 Copy your 1st variable, the \'Party Size\' Varibale and the 1st branch. Now Paste this after the no option in the \'do you wish to stay yes/no\' choice. The change it so the variable will be 3 and the amount and gil taken from the team mathec so it would be 3 people x 10 gil = 30 gil.
Repeate step 9 two more time,s reducing the price and varibale so the inn will now let any party of size stay at the inn with the equivalent cost to the size. It now should look something like this:
Innkeeper: Goodday sir. How may I help you?
[Show Choice] I\'d like a room please/How much is a room?/Cancel [I\'d like a room please].handler Variable Oper[0005:Party Size] Set Party Size Branch Var if [0005:Party Size] is 4
Innkeepr: 4 people? That will be 40 gil. Do you wish to stay the night?
[Show Choice] Yes/No [Yes].handler Branch if money is 40 or more Change money: 40 remove Innkeeper: Goodnight! Tint Screen (R000,G000,B000,S100), 3.0 secs Play BGM: inn 2 Wait 6.0 secs Play BGM: town 3 Tint Screen (r100,G100,B100,s100) 3.0 secs (wait) Full Heal: Entire Party Innkeeper: Did you enjoy your stay? Please Come again.
<>
Else Handler Innkeeper: I\'m afraid you don\'t have enough money. <> end
[no].handler Innkeeper: Very well then. <> end <> end
Branch Var if [0005:Party Size] is 3
Innkeepr: 3 people? That will be 30 gil. Do you wish to stay the night?
[Show Choice] Yes/No [Yes].handler Branch if money is 30 or more Change money: 30 remove Innkeeper: Goodnight! Tint Screen (R000,G000,B000,S100), 3.0 secs Play BGM: inn 2 Wait 6.0 secs Play BGM: town 3 Tint Screen (r100,G100,B100,s100) 3.0 secs (wait) Full Heal: Entire Party Innkeeper: Did you enjoy your stay? Please Come again.
<>
Else Handler Innkeeper: I\'m afraid you don\'t have enough money. <> end
[no].handler Innkeeper: Very well then. <> end <> end
Branch Var if [0005:Party Size] is 2
Innkeepr: 2 people? That will be 20 gil. Do you wish to stay the night?
[Show Choice] Yes/No [Yes].handler Branch if money is 20 or more Change money: 20 remove Innkeeper: Goodnight! Tint Screen (R000,G000,B000,S100), 3.0 secs Play BGM: inn 2 Wait 6.0 secs Play BGM: town 3 Tint Screen (r100,G100,B100,s100) 3.0 secs (wait) Full Heal: Entire Party Innkeeper: Did you enjoy your stay? Please Come again.
<>
Else Handler Innkeeper: I\'m afraid you don\'t have enough money. <> end
[no].handler Innkeeper: Very well then. <> end <> end
Branch Var if [0005:Party Size] is 1
Innkeepr: 1 people? That will be 10 gil. Do you wish to stay the night?
[Show Choice] Yes/No [Yes].handler Branch if money is 10 or more Change money: 10 remove Innkeeper: Goodnight! Tint Screen (R000,G000,B000,S100), 3.0 secs Play BGM: inn 2 Wait 6.0 secs Play BGM: town 3 Tint Screen (r100,G100,B100,s100) 3.0 secs (wait) Full Heal: Entire Party Innkeeper: Did you enjoy your stay? Please Come again.
<>
Else Handler Innkeeper: I\'m afraid you don\'t have enough money. <> end
[no].handler Innkeeper: Very well then. <> end <> end
[How much is a room?].handler Innkepper: It is 10 Gil per person. <>
[Nothing for Now].handler Innkeeper: Come back again soon.
<> end <>
Hope this tutorial helps! ................................................................................ ................................................................ CHANGE CLOTHES I.Intro
II. Whats needed?
III. Source time!
IV. Outro
V. ...and the rest!
-------------------------------------------------------- I. Intro -------------------------------------------------------- This tutorial is fairly n00bish, but i was asked the question not long ago and decided to write a tutorial on it.
Simply, when you have a certain item equiped, it will change your characters appearance to look like that! -------------------------------------------------------- II. Whats needed? -------------------------------------------------------- | Switches |
0001 : ChangeClothes
----------
Make sure that 0001 is only on when you want the hero's clothes to change, so during scenes where the hero GFX changes, make sure it isn't on. Remeber, you will need your own GFX for this. -------------------------------------------------------- III. Source Time -------------------------------------------------------- This shouldnt take long, you don't even need to know variables!
Make a common event, that is a parallel process, call it something like 'ClothesChange' or such. Make it turned on by your 'ChangeClothes' switch. Mine is 0001. =)
The rest is very easy, create a fork condition, when Hero 'Alex' (or your hero) has 'Cheese' (or your piece of armor) equiped. Then inside that, change the hero GFX to the GFX u want it to be! Repeat the fork for all the pieces of clothing you want to use. It should end up looking like this!
<> FORK Optn:Alex- Cheese Equipped <> Change Hero's Walk Graphic : Alex->AlexCostumes1-3 Set <> <> END Case <> FORK Optn:Alex- Taco Shell Equipped <> Change Hero's Walk Graphic : Alex->AlexCostumes1-5 Set <> <> END Case
And so forth.
\That should do it!/ Found a bug? Email or Aim me:
SpikSpikton@aol.com SpikSpikton -------------------------------------------------------- IV. Outro -------------------------------------------------------- A big pile of n00bishness, that probably wont come in use for anyone!
Enjoy! -------------------------------------------------------- V. ...and the rest! -------------------------------------------------------- Thanx everyone! O.o ................................................................................ ........................................ SCAN T This tutorial will allow you to view a monster's current HP/max HP and current MP/Max MP. I have done this using Rm2k3, so I'm not sure if it works with Rm2k.
Making a scan command requires one command, one condition, 4 or 5 variables, one page of battle events, and one animation.
First, make the command. Call it "Scan." Set its archtype to attack. Give it to a character. Let's call him "Alex" for now.
Now make a condition. Why do we need a condition? This stops the character from attacking when the command is used and lets the battle events do the work. Call it "Normal" and set its color to whatever the color is when a character does not have a condition. Make the priority 1 and set action restrition to "no action allowed. Set recover to 100% chance to recover every turn. Set the animation to #4, the skill use animation.
Next, make the variables. You have two choices now. If you do not want the command to use any MP, only make the first four variables. If you do want it to use MP, make the fifth one. Call the first four Scan1, Scan 2, Scan3, and Scan 4. If using the fifth one, call it "Alex MP." Let's pretend you are using variables [0001] - [0005].
Now make an animation called scan. It doesn't matter what it looks like, do whatever you want.
Now for the battle events. This is the tricky part. Put eight monsters in the monster group. Let's call them monster 1 - monster 8. Make the trigger Hero Alex uses the Scan command. Now, if you are using the fifth variable, use variable operations to set the variable to Alex's current MP. If you don't want to do that, just skip that step. Now change alex's condition to the "normal" condition you just made. Now if you are using the fifth variable, make a conditional branch and execute a custom handler if the condition isn't met. Set the condition to Variable [Alex MP] is greater than or equal to x. x is the amount of MP you want scan to cost. The change Alex's MP and subtract X. Under the else handler, make a message saying "Not enough MP!" If you are not using the fifth variable, just skip that step entirely.
Next, make another branch. If you are using the fifth variable, make this go under the main section of the previous branch. Make the condition for the branch "Monster 1 is the current target." Now show your scan animation on moster 1. Now use variable operations. Set [Scan1] to monster 1's current HP. Set [Scan2] to monster 1's max HP. Set [Scan3] to monster 1's current MP. And set [Scan4] to monster 1's max MP. Now show a message saying the following: "Moster 1 - HP \v[0001]/\v[0002] MP \v[0003]/\v[0004] That coding refernces the variables you just set. If you are not using variables [0001] - [0004], change the numbers to the ones you are using. Feel free to add in any other info on the message, such as weakness or resistance to elements. Now copy that branch and paste it under itself. change the target to monster 2, show the animation on monster 2, and set the variables to monster 2's stats. Keep doing this until you have a seperate branch for all 8 monsters. Now copy this page and put it in all of your monster groups. It will work no matter how many monsters you have, just remember, if you did include the monster's name in the message, to change it for every monster.
The coding should look like this -
Trigger [Alex] uses the [Scan] command
<>Variable Oper: [0005: Alex MP] Set, Alex MP * <>Change Cond: Alex Normal Inflict <>Branch: Var [0005: Alex MP] is X or more * <>Change MP: Alex's MP X Remove * <>Branch: 1: Monster 1 Targetted ** <>Show Battle Animation: Scan, 1:Monster 1 (Wait) ** <>Variable Oper: [0001: Scan1] Set, 1:Monster 1 HP ** <>Variable Oper: [0002: Scan2] Set, 1:Monster 1 Max HP ** <>Variable Oper: [0003: Scan3] Set, 1:Monster 1 MP ** <>Variable Oper: [0004: Scan4] Set, 1:Monster 1 Max MP ** <>Message: Monster 1 - HP \v[0001]/\v[0002] MP \v[0003]/\v[0004] ** <> : End <> : Else Handler <>Message: Not Enought MP! * <> : End
* - this is optional, use this only if scan costs MP ** - copy this and change the target to other monsters so that scan works for all 8 monsters.
If you have any questions, BMS me - The Fierce Diety ................................................................................ ............................................ STEAL Difficulty: easy/intermediate
OK, there's no Steal Skill available in rm2k's basic systems. No problem. It's pretty easy to make one, here's how;
To start with, you'll need to make a skill named something like "Steal" (originality's never an issue for me, I promise). Just make this skill a Switch type which turns on a switch named something equally original, such as, er..."Steal". Also, make sure this skill can only be used in battle, you don't want your players to be able to try stealing things when wandering around your maps.
Now, in each monster party, you need to do the following:
Make an event which requires the switch "Steal" to be ON. Perhaps you'd like a message here such as "[Character name] is trying to steal from his enemies..." Bear in mind that in rm2k you cannot target a single enemy with a Switch type skill, so it'll have to be stealing from the whole group of monsters and not just a single one. Now, obviously, you won't want your stealing to be 100% successful every time (this would make your game far too easy), so you'll need to create a chance. You set a variable called "Steal chance", and set it to be a random number between 1 and 100. Now, you simply set up a fork depending on how likely you want your success rate to be. Ensure this fork has an "Else case". Say you wanted a 10% success rate, you simply make a fork which checks if the "Steal chance" variable is less than 10. For 20%, check if it's less than 20. I'd avoid chances over 25% if I were you, it makes stealing something of a ridiculously handy skill. REMEMBER: a good RPG will never be too easy. Just look at Final Fantasy Mystic Quest.
OK, now for the stealing part. Within your fork, you would simply select "Change Item" and add whatever item you wanted the character to be able to steal from the monsters in question, say a Potion for example. Then show a message saying something like, "[Character Name] stole a potion!" You can use variables here to set which item or how many you take if you like, but I'll let you work that out for yourselves. We'll just stick to the basics here. Now, add a battle animation or sound effect if you wish. Finally, add a "Change Switch" and turn the "Steal" switch to OFF.
And what about if the stealing was unsuccessful? Well, that's even easier. In the "Else" commands of your fork, simply show a message such as "[Character Name] was unable to steal!" and again, turn the "Steal" switch OFF.
That's basically it. Remember that you'll need to do this for EVERY Monster Party in your game. But, in each one, you can alter the success rate, the items to be stolen and the amount of them. You should also find it easy to alter this so you can make a "Learn" or "Enemy Skill" type ability. ................................................................................ ............................................................. AMMO SYSTEM Hey guys, this is a tutorial for an ammo system in RM2K (duh). Ok, there are two ways of doing this. Both ways involve equiping a gun, and using bullets for ammo. Bullets will be items in the game, and the gun will be a weapon. There are two ways of making this. The first is a way of making these bullets, and it works in a similar way to Edgar's Tools in FF3/6j. The bullets will be items, but you use them through the Skills menu. This will involve making the Skills be your bullets. If your skills are precious to your game, there ia an alternative. If you don't want this to take up your skills, scroll down to section "B". If you don't mind this taking up your skills menu, continue reading.
It is highly advised that you have some knowledge in variables, switches, fork conditions, and common events. I tried to make this simple to understand, but if you have any questions, email either one of us for help.
-------------------------------------------------------------------------------- Type A
1) First things first. You need to have a charactor who will be able to use the bullet system. For this example, I will call my charactor "Bob". Make his Skills slot be called "Bullets".
2) Now, make an item called "gun". Select "arms" from the classification drop-down menu. Make Bob able to equip this weapon. Now, make its attack 0, and make its mind force 10. Make the animation the same as the animation you use for a normal attack. When you attack while holding the gun, you'll attack with your bare fists, but to use the gun, you'll have to fire a bullet.
3) Now, make an item called "bullet". Make it's classification "Common Goods". That's all you need to do here.
4) Now, make skill called "bullet". Make it's classification to "Switch". Change it explanation, and everything to your likings. It is advised that you don't use a sound effect. Make it turn on switch "bullet".
5) Ok, now onto the scripting. Make a common event called (yes, you guessed it!) "bullet". Go to change variable. Create a variable called "Bullets". Under operation, select "set". Under operand, select items. Now, select bullet from the drop-down list, and select "owning number" from the second drop down menu.
6) Next, make a fork option. Click on the second page, and select "hero". Now, under it, click "...". Select item, and then select "gun". Make sure the checkbox at the bottom is not checked. This is so you can't fire a bullet without having a gun equipted.
7) Now, make a new fork option. Go to the second page, and select Item. in the drop-down boxes, select "bullet" and "has it". Make sure the checkbox is checked.
8) Under the new fork option make Bob memorize the skill "bullet".
9) Under the excepting case, make Bob forget the skill "bullet". You have just mastered making Edgar's tools system from Final Fantasy. Now, all that's need are some battle events.
10) Scripting:
<>Variable Op:[####:Bullets] Set, BulletHold Num
<>Fork Optn:Bob- gun Equipment
<>Fork Optn:Bullet Have (hold)
<>Change T.Skills:Bob- Bullet->Memory
<>
:Excepting Case
<>Change T.Skills:Bob- Bullet->Forget
<>
:End Case
<>
:End Case
<>
11) Now on to our battle events. Make the conditions be switch "Bullet" on. Click on Change Variable. Make a new one called "Power". We'll call this variable numer 0001. You can change this, but that's what I'm using for the example. Click set, and then select "hero" Now select Mind Force from the drop-down box.
12) Make it show a battle animation to the entire group of enemies. Choose whatever you like.
13) Now, make a change enemy HP from the events. Target it at one of the enemies. Then, make it HP strict. Now make it's variable set to "Power". Make sure you click the box at the bottom!
14) Repeat step #13 for all enemies in the party.
15) Make a message that says something like "\v[1] damage to the enemy!" Make sure it has \v[1] (make sure the number in the brackets matches the variable you called "power").
16) Now, make it take away one bullet from your inventory. And, make it subtract "1" from the variable "Bullets".
17) Make a fork option and select variable. select Bullet from the variable list. Click select, and type in "0". Now, select "same" from the drop-down box. Don't check the box at the bottom.
18) Make a message that says something like "out of ammo!". Now, make Bob forget the skill "Bullet".
19) At the very end, turn the switch "Bullet" off.
20) Scripting:
<>Show Battle Anim.:Spear C, Whole Group (W)
<>Change Enemy's HP: 1.(enemy name) HP - V[0001]Decrem
<>Messg:\v[0001] damage to the enemy!
<>Add/Remove Item:Bullet->1Decrem
<>Variable Op:[####:Bullets]- , 1
<>Fork Optn:Varbl[####:Bullets]-0
<>Messg:Out of ammo!
<>Change T.Skills:Bob- Bullet->Forget
<>
:End Case
<>Change Switch: [####:Bullet]-OFF Set
<>
That should be all for the ammo system. If you have any problems, please email any one of us, and we'll try to help you. Now, if you don't want to waste your precious Skills, here's another way of doing it.
-------------------------------------------------------------------------------- Type B
1) First things first. You need to have a charactor who will be able to use the bullet system. For this example, I will call my charactor "Bob".
2) Now, make an item called "gun". Select "arms" from the classification drop-down menu. Make Bob able to equip this weapon. Now, make its attack 0, and make its mind force 10. Make the animation the same as the animation you use for a normal attack. When you attack while holding the gun, you'll attack with your bare fists, but to use the gun, you'll have to fire a bullet.
3) Now, make skill called "bullet". Make it's classification to "Norm". Customize it to your likings. This will be what happens when you use the bullet. Make sure you put the Mind related counter high, and the blow related Times lower.
4) Now, make an item called "bullet". Make it's classification "Unique". Make it Invoke the Tech Skill "Bullet".
5) To use the bullet, select the item in battle. This may not be as efficient, because you can fire a bullet when you don't even have a gun equipped. But, this won't take up Tech Skills.
--------------------------------------------------------------------------------
So, that's it for the ammo tutorial. I hope this works, and will improve your games. If you use this in your game, it would be nice to mention us in your game. That's it, happy creating!! ................................................................................ ................................................................ WERE WOLF OR WERE LION W Werewolf Type Character Tutorial By Sk8terPunk4God
This is a pretty simple tutorial on how to create a Werewolf, Or any Other kind of morphing type character.
Ok First of all, you need to create two heros, one to be your character, and one to be whatever morph you want. for example, create two heros, one named "Joe" and one named "Werewolf". Alter their stats and their gfx however you want.
Next, create a new skill, set its classification to switch. Name it "Morph" Set its mp cost and everything. under "on switch", and make a new switch called "werewolf morph". Make sure the hero "joe" has the ability "morph" make sure it is only availible in the field, because it dosent work in battles.
Next, go to the "common events" tab. create a new common event called "wolf morph". set event start condition to "parallel process" , and set the appearance conditions switch to "werewolf morph" this is where it gets confusing.
In the "event commands" window, put in the following...
Change Party : add werewolf
Change party : remove joe
Message: joe is now in werewolf mode
Change switch: werewolf morph OFF
Change switch: werewolf timer ON
Now create a new common event, called "werwolf timer" set event start condition to "parallel process" , and the appearance conditions switch to "werewolf timer"
In the "event commands" window, put in the following...
Wait: 60.0 seconds
Message:joe is changing back into a human
Change party: remove werewolf
Change party: add joe
Change switch:werewolf timer OFF
*IN ENGLISH* Basicly, whenever the "joe" hero uses the "morph skill", he will change into the "werewolf" hero for 60 seconds, not counting battles or going into the menu. when the 60 seconds are up, he will change back, and thats all there is too it! =) You can spiff it up to, by adding battle animations and other things. ................................................................................ ................................................................ AMBIENT SOUNDS A Ambient sound tutorial - my way of doing it. (Thanks to an unknown author for the idea)
This tutorial creates background sounds for different types of maps... i.e. random bird calls for a forest map or random talking sounds in a Pub or inn... the possibilities are limited only to the sound effects you have and your imagination.
Be sure you understand use of variables and creating common events. (See tutorials and help section)
Make or download as many sound effects as you need for the game.
Now to create ambient sounds follow this tutorial:
First you must create a common event. Set event start condition to Call
Next go to Events Commands: Create a label i.e. <>Label: 1No
Next create a variable that gives a random number corresponding to the amount of sound effects you wish to play...in this tutorial I will use 4 sound effects. Name it randse or whatever you wish. <>Variable Ch[0001:randse]Set, Randm[1*4] Add fork options without else cases to test the setting of the randse variable, and depending on what number it is set at, to play a sound effect: <>FORK Optn:Varb[0001:randse]-1 <>Play SE: One(name of sound effect) <>FORK Optn:Varb[0001:randse]-2 <>Play SE: Two(name of sound effect) and so on for each sound effect.
Reset randse to zero: Variable Ch:[0001:randse]Set,0
Add a wait period to slow loop down: <>Wait: 1.5s (or any period you wish but should be above 1.0s at least)
Add loop command GOTO: <>GOTOLabel: 1No
Make a switch to execute the common event:
Create a new event on chosen map:
Set Event start condition to Parallel Process and Position to Below hero. Set the graphic to empty chip. Create a new switch - Say ambsound for instance On page one set the switch on; <> Change Switch:[0001:ambsound]-ON Set Create new page in event, settings as for page one and set the Event Conditions to the new switch i.e. 0001:amsound, then add into events commands: <>Call event: randse
Remember to switch off the switch when you go to a different map. Keep it on if you want the sounds to be on other maps, switching it on and off as required for each map.
Enjoy! Oberonski. ................................................................................ ................................................................ MONSTERS - They will follow a route defined by the developer (this can be a random route if so desired). - They will scan an area 6 tiles in front and 1 tile either side (6x3) of themselves for the hero. - If they spot the hero them they will chase them and initiate combat by touching them. - They can be attacked from behind if the hero has not yet been detected. This initiates "pre-emptive strikes". - If the hero escapes from battle, they are given a chance to escape before the monster continues to chase them.
Setting Up:
What you need to create such a monster is the following:
Three Switches: "<Monster Name> Gets You", "Running Away Active", "<Monster Name> Dead". The "Running Away Active" switch is a common switch shared between all monster events. The other two switches are unique to each monster event (i.e. you need to create new ones for every single monster event you have on a map).
Two Variables: "<Monster Name> X" and "<Monster Name> Y". These are unique to each monster event (i.e. you need to create new ones for every single monster event you have on a map).
Eventing - Page 1:
The first page of the monster event is very much the main page. This page will control the monster's "normal" movements, it will determine if the monster has detected the hero, it will determine if the hero has managed to sneak up behind the enemy and it will initiate a "pre-emptive strike" battle if they have managed to do so.
First, you need to set the monster graphic as normal. The event should be a parallel process (as it needs to loop) and the event should be set to "Same Level As Hero". The movement type can be anything you want, but it is generally best to set up the route manually ("By Its Route").
Second, we need to check the monsters field-of-vision for the hero. We do this by setting the X and Y variables to the monster's X and Y co-ordinates and then subtracting the respective hero co-ordinates from them. Then, based on the way the monster is facing, we can use these two differences to work out if the hero is in the monster's field-of-view or not. If the hero is in the monster's field-of-vision then we turn on a switch that allows the monster to chase the hero.
Lastly, if the hero is not in the monster's field-of-view then we check if the hero is directly behind the monster. If this is the case then we initiate a "pre-emptive attack". If this isn't the case, then we do nothing and let the calculation cycle through again.
Here is how the event should look (don't be overwhelmed by the length: A lot of it is just repeating the same thing with different values):
The important thing is understanding how those variable checks work. What we have done, as I said before, is subtract the hero's X and Y co-ordinates from the monster's X and Y co-ordinates. How does this relate to map position?
Well, RM2K measures co-ordinates from the top-left of the screen. Therefore, because we are subtracting the hero's values from the monster's values:
If the difference in X is negative, the hero has a higher X value and is to the right of the monster. If the difference in X is positive, the hero has a lower X value and is to the right of the monster. If the difference in Y is negative, the hero has a higher Y value and is below the monster. If the difference in Y is positive, the hero has a lower Y value and is above the monster.
So, when the monster is facing up, the hero is in front of the monster when the difference in Y is positive and the hero is close enough to the monster to be seen when Y is between 0 and 6.
Understand?
Don't worry, all the other pages are a lot simpler.
Eventing - Page 2:
Page 2 is the page that is activated if the monster "sees" the hero. As such, you're going to want to set this page's movement to "Walk Towards Hero" as you want the monster to be chasing the hero relentlessly. Set the event to be "Below Hero" (this prevents the monster from being able to attack the hero from an adjacent tile even when that adjacent tile is off the edge of a cliff or something equally ridiculous) and to be "On Touch (Event, Hero)" so that the hero doesn't have to actively walk into the monster to trigger the event. I would set the speed to be slower than the hero's walk speed so that the player has a chance to avoid combat should they so wish, but that is entirely up to you. You could argue that they had a chance to avoid battle by avoiding falling into the enemy's line of site!
Here is how the event should look:
All it does it trigger the battle if the hero catches the monster. The switch that activates this page is the one that is turned on by page 1 when the hero is in the monster's field-of-vision - see how it links together?
Eventing - Page 3:
This is the page that gives the hero a break should they escape a battle. See how all the escape clauses have this "Change Switch: "Running Away Active": ON" command? This is why.
This page is really simple and should look like this:
See how the switch that turns on the monster chasing you is turned on here? This is to make sure that a pre-emptive strike that is ran away from doesn't result in the monster just tottering off as if nothing happened. Fits together nicely, huh?
Eventing - Page 4:
Basically just a blank page. This is what you show when the enemy is killed:
Other Notes?
If you want the enemies to re-spawn when the hero returns to a map, then you're going to want to turn all these switches off when the hero is teleporting onto the map and reset all the variables to 0. If you don't want the enemies to re-spawn then only turn off the "<Monster Name> Gets You" switch and reset all the variables to 0 when the hero teleports onto the map.
Happy hunting, heroes![/spoiler]
This post has been edited by atlus: May 16 2013, 06:45 AM
__________________________

|