Gw Temp

Menu

Tutorial - 'Airships' by stupid systemus

An item about RPGMaker 2000 posted on

Blurb

How to create a complete and working FF style airship

Body

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
How to Make a Complex Working
Airship (FF Style)
by Stupid Systemus
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

OK, I've searched countless websites for the perfect tutorial on a working airship resembling Final Fantasy games from FF6 and onward, except for FF10, which didn't let you fly one. None of them seem to work. So I decided to make my own. This airship mimics the style that FF6-FF9 uses:

- you approach the airship.

- your character disappears assuming that he or she enters the vehicle by pressing the decision button (SPACE and ENTER button for RM2K) and the airship takes off letting you take control of it with the directional buttons.

- you press the decision button again and the airship lands on the ground and your character
appears next to it signifying you're out of the vehicle, or...

- press the cancel button (ESCAPE button for RM2K) and you go inside the airship, full with rooms, bathrooms, the bridge, a dining room, a craps room, anything you want.

- you can talk to a pilot or pilot the ship yourself and lets you get back to the view of the world map and let you control the airship again.

(NOTE: This only works for the people who actually have world maps in their games, DUH!!)

-------------------
|PREPERATIONS|
-------------------

First, you need to make a separate map for the inside features of your airship and name it whatever (in this case, Airship). Set a background music for the inside of your airship anyway you want, whatever fits. Don't worry about making the rooms and the control panel for piloting the ship, yet. What you should be focus is to make this thing to work.

Second, make another separate map, make the map the smallest map you can create. Make this map so you can walk around on it. Just a basic map and call it anything (in this case, Dummy Map). Set the background music for this map the same as the background music for your airship. You wont understand the use of this map yet, but this will be explained later. Name it whatever.

Third, go to the database by pressing F8 or clicking on the icon. choose 'System' and pick a character set for your airship.

Fourth, in the database choose Common Events. Here we will declare or create variables to be used for the airship to work:

------------------------------
| Making Variables |
------------------------------

- Name a 'Common Events' slot anything (this case The name of your airship, ie. Enterprise). Make the 'Event Start Condition' to Parallel Process. Make the 'Appearance Conditions Switch' checked and store it in a SWITCH we will make and call it 'In Airship'.

- In the 'Events Commands' section (right next to the 'Common Events' section) double-click on it. This will open up choices for the event. On the 1st page, double-click on 'Change Variable' . Here we will create variables.

- Make a variable and call it 'Airship Map ID'. Choose Set on the 'Set' section and for the 'Operand' section, choose 'Event', set it to 'Airship' and then 'Map ID' .

- Again, make another variable and name it 'Airship X'. Make everything the same as the first variable you made, but change 'Map ID' to 'X coordinate'.

- Again, Make another variable and name it 'Airship Y'. Make everything the same, but change 'Map ID' to 'Y coordinate'.

- Make another variable and call it "Airship Status'. This time, Set the 'Operand' section to Set and give it a value of zero. After all of this is done, the 'Events Commands' section should look like this:

<>Variable Ch:[xxxx:Airship Map ID] Set, Airshp Map ID
<>Variable Ch:[xxxx:Airship X] Set, Airshp X pos
<>Variable Ch:[xxxx:Airship Y] Set, Airshp Y pos
<>Variable Ch:[xxxx:Airship Status] Set, 0

(NOTE: 'xxxx' signifies the number of the variable used, this varies from your choice)

---------------------------
|Make the Airship Work|
---------------------------

You're done with creating your variables. Now this process will let you approach the airship, hit the decision button (SPACE OR ENTER button for RM2K), and you will take control or the flying airship. If you press the Decision button, you will land your airship. If you press the Cancel button (ESCAPE button for RM2K), you will go inside the airship and talk to people if there are people.

- Right after declaring or creating the variables, double-click in the 'Events Commands' section under the last variable created. On the 3rd page, click on 'Enter Password'. Under 'Place
Password to Variable', choose the 'Airship Status' variable you created. Under 'Options' check the box. Under Passable Key', Only check the 'Decision(5)' box and the 'Cancel(6)' box. Uncheck the "Direction(1,2,3,4)' box if it's checked.

- Next, on the same page, click on 'Fork Conditions...' . On the Next page under 'Conditions', click on 'Vehicle' and choose Airship. Uncheck the 'Add ELSE Case' box. This will look like this in the coding:

<>FORK Optn:Airshp Riding

- Inside the 'FORK Optn: Airshp Riding', double-click and click on 'Memory Place...' on the 2nd page. For 'Map ID:' choose the variable we created called 'Airship Map ID'. For 'X:' choose 'Airship X'. For 'Y:' choose 'Airship Y'. This will constantly monitor the position of the airship while flying inside of it.

- Under 'Memory Place: [xxxx],[xxxx],[xxxx]' make another Fork Condition...' . This time choose
'Variable' in the first page under 'Conditions' . choose the 'Airship Status' variable you created earlier. Choose Set and give it a value of 6 and choose 'same'. The 6 stands for the the number inputted when you press the cancel button (the ESCAPE button in the keyboard). Also uncheck the 'Add ELSE Case' box.

- Inside the new FORK Optn you created, Disable the system menu by clicking on 'Disable Menu...' . Click on Disable.

- On the 2nd page of 'Events Commands' click on 'Wait...' and give it value of zero. This does
nothing, but helps the operations to avoid processing together.

- on the 2nd page of 'Events Commands' click on 'Erase Screen...' and choose 'Fade Out'. What
this will do is to let you avoid seeing the teleportation of your character to the Dummy map you made earlier. This is the only way I know and some people know. I bet Squaresoft and other
companies do the same thing differently.

- Click on 'Wait...' again and give a value of zero.

- On the 2nd page click on 'Teleport...' . Pick the Dummy map you created earlier. choose anywhere.

- on the 3rd page click on 'Disable Menu...' again and have it on disable.

- on the 2nd page click on 'Wait...' again and give it a value of 10, which equals 1.0 second.

- on the 2nd page click on 'Ride Vehicle / Dismount'. This will let your character dismount the
airship without you, the player seeing it. The Erase Screen is very important, as it prevents you from seeing how ugly this process really is. The purpose of the dummy map and the erase screen is to prevent you from seeing your character dismounting the airship inside the airship interior.

- on the 2nd page click on 'Wait...' again and give a value of 10.

- on the same page click on 'Teleport...' and have your character teleport to the Airship map you
created earlier. choose anywhere for now. You can refine it later.

- still on the same page click on 'Wait...' and give it a value of 10.

- still on the same page click on 'Show Screen...' and choose 'Fade-In'. This will let you show the screen again. Now you'll see your character inside the unfinished airship.

- click on 'Wait...' again giving it a value of 10.

- on the 3rd page click on 'Disable Menu...' and have it on Enabled.

- on the 1st page click on 'Change Switch' and choose the 'In Airship' Switch and turn it OFF. By the time you're done with this, the 'Events Commands' section should look like this:

<>Variable Ch:[xxxx:Airship Map ID] Set, Airshp Map ID
<>Variable Ch:[xxxx:Airship X] Set, Airshp X pos
<>Variable Ch:[xxxx:Airship Y] Set, Airshp Y pos
<>Variable Ch:[xxxx:Airship Status] Set, 0
<>Enter Password:[xxxx:Airship Status]
<>FORK Optn:Airshp Riding
<>Memory Place: [xxxx],[xxxx],[xxxx]
<>FORK Optn:Varbl[xxxx:Airship Status]-6
<>Disable System Menu: Disable
<>Wait: 0.0s.
<>Erase Scren:Fade-Out
<>Wait: 0.0s.
<>Teleport: xxxx:DummyMap (xxx,xxx) <== Name of dummymap you created
<>Disable System Menu: Disable
<>Wait: 1.0s.
<>Ride Vehicl: <== you actually dismount here
<>Wait: 1.0s.
<>Teleport:xxxx:Enterprise (xxx,xxx) <== Name of Airship map created
<>Wait: 1.0s.
<>Show Screen:Fade-in
<>Disable System Menu: Enable
<>Change Switch : [xxxx:In Airship]-OFF Set
<>
:END Case
<>

(NOTE: these, '<==' are comments I made. It's not part of the actual code)

You're done with going inside the Airship interior. Now lets make the airship land.

- Right after the ':END Case', double-click on the space under it and go the 3rd page and click on 'Fork Conditions...'. Choose 'Variable' and select the 'Airship Status' variable you created earlier and give it a value of 5. Choose the word same under it. Also uncheck the 'Add ELSE Case' box.

- on the same page click 'Disable Menu...' and have it enabled. This will let you land the airship and walk on the world map again. by the time you're done with this, the code should look like this right after the END CASE on the example I wrote above:

:END Case
==right after the END Case here==

<>FORK Optn:Varbl[xxxx:Airship Status]-5
<>Disable System Menu: Enable
<>
:END Case
<>
:END Case
<>

You're done with pretty much the hard part of this tutorial, but your not done yet.

---------------------------
|Other important things|
---------------------------

You still need to do these other important stuff. Only two more things to go. I'll start with one involving the World Map and one involving the airship.

++++++++++++++++++++++
+One Involving the World Map+
++++++++++++++++++++++

- On the world map, create an event and call it 'Airship In/Out'. make it have no graphic and
under 'Event Start Condition' make it Parallel Process. Also, make it below Hero under 'Position'.

- double-click on the 'Events Commands' section and on the 3rd page select 'Fork Conditions...' .
On the 2nd page under 'Conditions' choose 'Vehicle' and choose Airship. For this one, check the 'Add ELSE Case' box. This should look like this:

<>FORK Optn:Airshp Riding

- inside the Fork Optn, on the 1st page of the 'Events Commands' section check 'Change Switch' .
Choose the 'In Airship' switch you created earlier and have it turned ON.

- right under the 'ELSE Case', make another 'Change Switch'. Choose the 'In Airship' switch created earlier and have it turned OFF.

By the time you're done with this, the code should look like this:

<>FORK Optn:Airshp Riding
<>Change Switch : [xxxx:In Airship]-ON Set
<>
:ELSE Case
<>Change Switch : [xxxx:In Airship]-OFF Set
<>
:END Case
<>

You're done the one involving the World map. That helps you get on the airship and perform the task of getting inside the interior and dismounting. On to the next one....

++++++++++++++++++++
+One Involving the Airship+
++++++++++++++++++++

While inside the airship, you have no way of getting out. That's why you need to create an event (pilot or a control panel for piloting the airship). here's how you do it.

- make an event inside the interior of the airship and call it 'pilot'. use a graphic of a person or thing signifying the pilot or the control panel.

- make the 'Event Start Condition' to 'Push Key' and the Position to 'Same Level as Hero' .

- on the first page of 'Events Commands' click on 'Message Style...' . In 'Window Format' choose
whatever you want (for this case , Norm). In 'Window Position' choose whatever (in this case,
Do, which means down). Under 'Options' only check the box called 'Prevent Hero from hiding' .

- make a message saying, "Ready to Depart?" .

- Make a 'Show Choice...' option and it could be "Sure/Nah" . It should look like this by now:

<>Set Message Option:Norml,Bot,Auto,Disable Event Mv
<>Messg:Ready to Depart?
<>Show Choice: Sure/Nah
:[Sure] Case
<>
:[Nah] Case
<>
:END Case
<>

- Under [Sure] Case, put a 'Wait...' function and give it a value of zero. Then put the 'Erase Screen...' function and set it to 'Fade-Out' .

- Then Find the 'Goto Memorized Place...' function and put the variable 'Airship Map ID' in 'Map ID:' ; put the variable 'Airship X' in 'X:' ; and put the variable 'Airship Y' in 'Y:' .

- click on 'Wait...' again and give it a value of 10.

- click on 'Setup Vehicle Place...' . Choose Airship under 'Vehicle' . Under 'Move to Place' choose 'By Variable and input the same thing as you did input in the 'Goto Memorized Place...' .

- Click on 'Ride Vehicle / Dismount' .

- Click on 'Change Switch' and set it to the 'In Airship Switch you created earlier and have it turned ON.

- Click on 'Wait...' again and give it a value of 10.

- Click on the 'Show Screen...' function and choose 'Fade-in' .

- Click in 'Wait...' again and give it a 10.

- Click on 'Disable Menu...' and have it on Disable.

/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*

- under the [Nah] Case , don't put anything.

By the time you're done with this it should look like this:

<>Set Message Option:Norml,Bot,Auto,Disable Event Mv
<>Messg:Ready to Depart?
<>Show Choice: Sure/Nah
:[Sure] Case
<>Wait: 0.0s.
<>Erase Scren:Fade-Out
<>Goto Memorized Plac:V[xxxx](V[xxxx],V[xxxx])
<>Wait: 1.0s.
<>Setup Vehicle Place:Airshp, V[xxxx](V[xxxx],V[xxxx])
<>Ride Vehicl:
<>Change Switch : [xxxx:In Airship]-ON Set
<>Wait: 1.0s.
<>Show Screen:Fade-in
<>Wait: 1.0s.
<>Disable System Menu: Disable
<>
:[Nah] Case
<>
:END Case
<>

/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*

There, you're done making an in-depth FF-style airship system all thanks to me and knowledge of
programming for RM2K. Now is time for you guys to say:

PIIIIIIIIILLLLLLLLLLLTTTTTTTTT!!!!!