Gw Temp


Tutorial - 'Old School Churches' by LinkMaster Sab

An item about RPGMaker 2000 posted on


A tutorial about old school churches, if you can't remember, they are the ones where you go when you die. Nice reading.


Tutorial for RPG MAKER 2003
Old School Churches

Who remembers the old RPG's where when you die, you didn't get a gameover, but rather reappeared in the last church you saved in, with half your gold but all your experience? I know I do. And now you can use that same technique with Rm2k3 (Rm2k as well, but it's more complicated with that. You can apply the same techniques if you want.)!

Now, I must warn you, before trying to take this on, this isn't something you can add into a game easily. It takes tedious work and planning, and can be abused by the player if you're not careful. You must be careful to use this correctly and to reverse ALL effects of an event, such as remove any treasures or key items. If you are prepared to do that, then here you are.

In order to set this up, you will need two switches for every one switch you would normally have and needs to be reverted: the switch to be activated when the event happens, and the switch to determine whether it will be saved when you die (in other words, if you've been to a save point since that switch has been activated). In addition, you'll need two variables for every variable which will be reverted when you die: one with the current value and one with the saved value.

You will also need two common events, both of which will be of the "Call" type. First will be the event which will be called at save points. You can call this whatever, I will simply call it "Save Point". First we need it to save, and check if you saved as well. You will need two variables here. Set your first variable, refered to "Number of Saves", to your number of saves (it's under the Other option). Then open the save menu. Afterwards, set the second variable, "CHECK Number of Saves", to your number of saves afterwards. Make a conditional statement to check if "CHECK Number of Saves" is greater then "Number of Saves".

Within that statement you will add all of the switch saves and variable saves. In order to save a switch, make a conditional statement to check if the wanted switch is on. If it is, then set the save switch for that switch on. This is important - otherwise it will be reverted in our second common event. Make one of these for each switch which will be reverted. The variables are simpler. Just set the save variable to the current variable's value. Afterwards, memorize the location to three seperate new variables using the Memorize Location feature. Below is a piece of example code.

Call Common Event CODE- "Save Point"
<> Variable Oper: [0001: Number of Saves] Set, No. Saves
<> Open Save Menu
<> Variable Oper: [0002: CHECK Number of Saves] Set, No. Saves
<> Branch if Var [0002: CHECK Number of Saves] is V[0001] Greater
<> Memorize Location: [0003], [0004], [0005]
<> Branch if Switch [0001: Switch] is ON
<> Switch Operation: [0002: SAVE Switch] ON
: End
<> Variable Oper: [0007:SAVE Variable] Set, Var [0006]'s Value
<> End

If you are prepared, this is the more complicated part. Our second common event is the "Death" event. It involves replacing the game over and sending our hero back to their last save point with all events reverted and half his cash. This begins with a game over event of some sort, to add effect. A simple "Do you give up?" will suffice for my example. After that, fully heal the party. Otherwise the party will be dead after the reversion. Next you will have to turn off all switches which have not been saved.

A Normal Switch -
Make a conditional statement to check whether the save switch is on. If it isn't, then turn off the normal switch.

<> Branch if Switch [0002: SAVE Average Switch] is OFF
<> Switch Operation: [0001: Average Switch] OFF
: End

A Switch Linked to a Non-Equipment Item -
As normal switch, except for after turning off the switch remove the item from your inventory. A must for key items - you don't necessarily need to revert treasure chests, unless they contain important items.

<> Branch if Switch [0002: SAVE Storybook] is OFF
<> Switch Operation: [0001: Storybook] OFF
<> Change Items: Storybook 1 Remove
: End

A Switch Linked to Equipment -
As normal switch, except that you need to check each character who can equip the item and remove it, then remove it from the inventory.

<> Branch if Switch [0002: SAVE Excalibur] is OFF
<> Switch Operation: [0001: Excalibur] OFF
<> Branch if Zack Excalibur Equipped
<> Change Equipment: Zack Weapon Unequip
: Else
<> Branch if Alex Excalibur Equipped
<> Change Equipment: Alex Weapon Unequip
: End
: End
<> Change Items: Excalibur 1 Remove
: End

A Variable -
Simply set the current variable back to the saved variable.

<> Variable Oper: [0001:Average Variable] Set, Var [0002]'s Value

You'll have to mix and match - I can't possibly cover EVERY combination. I'm sure you can figure it out, or you can message me, and I'll see if I can help.

Now, from here, you'll need to half the player's money (if you want to, you may just want to leave this out). Set a variable to Money (under the Other menu), then divide it in half. Then change your money to remove that variable's amount. Finally, recall to the location which you saved at before, using the Recall to Memorized Location feature. Make sure you use the same three variables as before. And that does it. Here's an example piece of code.

Call Common Event CODE- "Death"
<>Message: Do you give up?
<> Show Choices: Never!/It is... too much...
: [Never!] Handler
<> Full Heal: Entire Party

Insert your reversion code in here.

<> Variable Oper: [0001:Gold] Set, Money
<> Variable Oper: [0001:Gold] /, 2
<> Change Money: V[0001] Remove
<> Recall to Location: V[0002] (V[0003],V[0004])
: [It is... too much...] Hander
<> Game Over
: End

Now its time to implement it. Head to the "Battle Layout" tab. Look down on the Random Encounter Death Handler. Set it to Call Common Event, "Death". You may also want to set it to teleport to a map first. In order to make a save point, just make an event call the common event "Save Point", and you're done. That should cover it. If you find any problems, feel free to message me.

~ LinkMaster Sab