ArcHammer's Password tutorial
(This isn't copyrighted or anything, but don't go around passing this off as your own, or I WILL hunt you down, I WILL find you, and I WILL hurt  you severely.)

I originally started this because I wanted a way to change my character's names in RM2K. I soon realized that there were 456976 possible cominations of four letters. I don't want to work THAT hard to change my name in RM2K.
So, I found that this could be used as a nifty little password system.

For this, you'll need a character set of letters. If you're lazy, just use mine: http://archammer2.tripod.com/letters1.bmp
(I think I included one in the zip with this file)

You're going to have to define a switch for every letter/number/symbol in your password. (it might be best to define a second set of switches. I'll explain in a minute.)
I used the switches "Number1","Number2","Number3","N1","N2","N3" (so, a three-letter password)
Also, make as many variables as there are symbols, etc. Since I have three numbers/letters, I used the variables "letter1","letter2","letter3".
(If you're confused, I'm using "letter" for variables, and "Number" for switches, mostly so I could tell the difference.

Okay, now to the meat of the matter.
~Step 1) Make a map that will have all the letters. You might want a space for "end" if you so desire.

~Step 2) You need to make an event for each of the available letters/numbers/whatever. (letters/symbols/numbers/etc will now be called "whatevers" because I'm sick of typing all that.) Every whatever will need to be equal to a number. Example: If you want to have the letters of the alphabet, you could have A=1, B=2, etc.

_______________
My Example "A":
Event Start Condition: Push Key
Priority Type: Common Char Below
Page1:
 <>Variable Op:[####:letter1] Set, 1
 <> Change Switch: [####:Number1]-ON Set
 <>

Page 2:
{Event Conditions: Switch ####:Number1}
<>Variable Op:[####:letter2] Set, 1
 <> Change Switch: [####:Number2]-ON Set
 <>

Page 3:
{Event Conditions: Switch ####:Number2}
<>Variable Op:[####:letter3] Set, 1
 <> Change Switch: [####:Number3]-ON Set
 <>

Page 4:
{Event Conditions: Switch ####:Number3}
________________

After making one whatever, the rest are easy, just changing variables.

~Step 3: Make an ending event. I used an event that looked like an end, but you could have yours hidden off to the side so that it happened automatically.
______________
Example "end":

{Event Conditions: Switch ####:Number3}
Event Start Condition: Push Key
*note: this could be changed to Auto Start, if you want it to happen as soon as the player enters a third whatever)
Priority Type: Common Char Below
Animation Type: Fized Graphics

Page 1:
 <>Fork Optn:Varbl[####:letter1]-1
  <>Fork Optn:Varbl[####:letter2]-3
   <>Fork Optn:Varbl[####:letter3]-5
    <>Messg:Correct!
    <>
   :Excepting Case
    <>Messg:WRONG!
    <>
   :End Case
   <>
  :Excepting Case
   <>Messg:WRONG!
   <>
  :End Case
  <>
 :Excepting Case
  <>Messg:WRONG!
  <>
 :End Case
 <>
_____________

This will cause the message "Correct!" to appear only if the player enters the code "ACE" Otherwise, the player will get the message "WORNG!" and nothing will happen if they don't enter three numbers.

This is the end of the basics. There's some more complicated stuff up ahead. You've been warned.

~~A Clear All~~
___________

Page1:
{Event Conditions: Switch ####Number1}
Priority Type: Common Char Below
<>Variable Op:[####:letter1] Set, 0
<>Variable Op:[####:letter2] Set, 0
<>Variable Op:[####:letter3] Set, 0
<>Change Switch: [####:Number1]-OFF Set
<>Change Switch: [####:N1]-OFF Set
<>Change Switch: [####:Number2]-OFF Set
<>Change Switch: [####:N2]-OFF Set
<>Change Switch: [####:Number3]-OFF Set
<>Change Switch: [####:N3]-OFF Set

___________

I'll explain the N1,N2,and N3 in a minute.

Okay, all this is fine and dandy, but what if you want your player to see what he/she has put in? The next part will explain the N1,N2, and N3. 

~~Displaying entered whatevers~~

Unfortunately, I don't think it will work with the "Clear All" above. (It will clear the numbers/letters, but the display at the side won't change.)

Make a display at the side of your map, preferably with as many spaces as the password itself. For refference, my map looks something like this:
        ___
       |ABC|
       |DEF|  XXX
       |GHI|
       |_J\|

\ is the "end" space and the XXX is where the password will apear.
This can be time-consuming if you're using the full alphabet, but it might be worth it in the end.

Method #1: Displaying what is entered.
You're going to have to make an event that will show what the player entered once they enter it.
Heres what I used with my letters1.bmp:

_____________
Page1:
{Event Conditions: Switch ####:Number1}
Event Start Condition: Auto Start

<>Fork Optn:Varbl[####:letter1]-1
 <>Set Chara's Movement: this Event , Face Up , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-2
 <>Set Chara's Movement: this Event , Face Up , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-3
 <>Set Chara's Movement: this Event , Face Up , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-4
 <>Set Chara's Movement: this Event , Face Up , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-5
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-6
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-7
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-8
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-9
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Fork Optn:Varbl[####:letter1]-10
 <>Set Chara's Movement: this Event , Face Right , Change Graphic
 <>
:End Case
<>Change Switch: [####:N1]-ON Set
<>

Page 2:
{Event Conditions: Switch ####:N1}

<>
_____________

If you don't use both pages and the N1 switch, the event will constantly be checking the letter1 variable, and you won't be able to move. My example only uses ten different whatevers. If you're going to use the entire alphabet, you'll have to make a fork option and change teh graphic for the different variables. For the other whatevers, I just copied and pasted and changed the switches and variables from Number1,N1,letter1 to Number2,N2,letter2.

Method #2: Just confirming that the player entered a whatever
This is just like Method #1, but instead of changing the graphic for  the different values of letter1, just change the graphic when Number1 is on. Simple, no?


Added bonus! I did this over the course of two days (a total of about an hour) and I didn't think about an undo command until half way through this tutorial. So, it was kinda rushed and I didn't really think of a way to change the whatever display. But I thought of a way, and it's relly easy.

Just define the switch "clear" and have the undo thingie turn the switch on.
For every character display add a page and have it so the Event Conditions is the switch ####:clear. In the Event Commands space put this:

<>Set Chara's Movement: this Event , Change Graphic
<>Change Switch: [####:clear]-OFF Set

Just change the graphic to something that is transparent. Easy if you've got all of the default chara sets.



Well, that's about it. Hope you find this helpful.

Made by ArcHammer2
Thanks to Don Miguel for translating RM2K and all the other programs that I love ever so much.
