Gw Temp

Menu

Tutorial - 'Jousting!' by Angroth

An item about RPGMaker 2000 posted on

Blurb

How to create a jousting tournament in your game. VERY original and unique tutorial!

Body

The time hath cometh for the joust. Below I shall demonstrate on how to make a simple template jousting system. In my game I used this but changed the enemy jouster and their moves. This uses character sets (not pictures) and does work but obviously, if any of you have any improvements you wish to make then please post them.
The joust is like a game of scissors, paper and rock. You have 3 different methods which all beat one other method, draw one and lose against another. Offensive beats Cautious, Cautious beats Defensive and Defensive beats Offensive…. Simple eh?


Firstly you will need the event of the enemy and your horse (on which you mount). This shouldn’t be hard to work out yourself and after this you need two parallel events in the long jousting straight (part in which jousters joust) in the middle. One on the right for your enemy and one on the left for you. Your hero’s one is to show your horse run away when you are knocked off and the enemies is for the same reason.
For this tutorial to work it is crucial that the joust is vertical and the hero walks up (or down) to face down on the left side and the enemy moves to face up on the right side before the actual joust begins.
Now upon the tournament lord saying what he does, the main event plays like this:

*Switch: Joust begins* - ON
Event Type: Auto Start
Page 1
< > Play BGM: [Cool Joust Music]
< > Message:What style do you wish to adopt for the first attempt?
< > Show Choice:Offensive/Cautious/Defensive
:[Offensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 1
< >
:[Cautious] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 2
< >
:[Defensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 3
< >
:End Case
< > Message:Tournament Lord:
: :Okay, now go!
By setting the players jousting method as either 1, 2 or 3 inside the variables we shall easily be able to use them later on to see how what happens in combination with the enemies method.

< > Move Event: Hero-Move Speed Up- Move Freq. Up- [Insert how many downs that make the hero ride to the middle of the jousting path]
< > Move Event: Enemy-Move Speed Up- Move Freq. Up- [Insert how many ups that make the enemy ride to the middle of the jousting path]
< > Wait: 1.0sec
Later you might want to restore the original speed and frequency settings.

You can make the enemy do a random move here but for now we’ll choose cautious.
< > If Var(????:Player 1s Jousting Method) 1
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the enemy.
< > Message:Tournament Lord:
: :Hero hits enemy with his/her lance!
< > Change Var: Var[???2:For Hero] (+)- 1
< >
:End Case
< > If Var(????:Player 1s Jousting Method) 2
< > Play SE: Sword1
< > Message:Tournament Lord:
: :Draw! No-one wins this one!!
< >
:End Case
< > If Var(????:Player 1s Jousting Method) 3
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the Hero.
< > Message:Tournament Lord:
: :Hero is hit with the enemies lance!
< > Change Var: Var[???2:For Hero] (-)- 1
< >
:End Case
IMPORTANT - The If variable functions above are the key piece of this system and if you understand them then that’s even better. Later on in the event when the enemy chooses different moves all you have to do is change what is in each If Var, considering that Offensive=1, Cautious=2, Defensive=3 and these numbers correspond to what the HERO is doing.

< > Move Event: Hero-Move ?- And how many downs then rights it takes for the hero to get where the enemy started before the charge
< > Move Event: Enemy-Move ?- And how many ups then lefts it takes the for the enemy to get where the hero started before the charge
Now for the repeat of the start (copying events is faster when in Rm2k)

< > Wait: 3.0sec
< > Message:What style do you wish to adopt for the second attempt?
< > Show Choice:Offensive/Cautious/Defensive
:[Offensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 1
< >
:[Cautious] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 2
< >
:[Defensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 3
< >
:End Case
< > Message:Tournament Lord:
: :Okay, now go!
< > Move Event: Hero-Move ?- And how many ups to the middle like the enemy did before
< > Move Event: Enemy-Move ?- And how many downs to the middle like the hero did before
< > Wait: 1.0sec
Now lets say the enemy goes offensive!
< > If Var(????:Player 1s Jousting Method) 1
< > Play SE: Sword1
< > Message:Tournament Lord:
: :Draw! No-one wins this one!!
< >
:End Case
< > If Var(????:Player 1s Jousting Method) 2
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the Hero.
< > Message:Tournament Lord:
: :Hero is hit with the enemies lance!
< > Change Var: Var[???2:For Hero] (-)- 1
< >
:End Case
< > If Var(????:Player 1s Jousting Method) 3
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the enemy.
< > Message:Tournament Lord:
: :Hero hits enemy with his/her lance!
< > Change Var: Var[???2:For Hero] (+)- 1
< >
:End Case
Getting the hang of it? I’ll I did was swap which things happened on the variables.
< > Move Event: Hero-Move ?- And how many ups then lefts it takes the for the hero to reach where he/she began on the first charge
< > Move Event: Enemy-Move ?- And how many downs then rights it takes the for the enemy to reach where he/she began on the first charge

< > Wait: 3.0sec
< > Message:What style do you wish to adopt for the final attempt?
< > Show Choice:Offensive/Cautious/Defensive
:[Offensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 1
< >
:[Cautious] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 2
< >
:[Defensive] Case
< > Change Var: Var[???1:Player 1s Joust Method] (Set)- 3
< >
:End Case
< > Message:Tournament Lord:
: :Okay, now go!
< > Move Event: Hero-Move ?- Insert how many downs that make the hero ride to the middle of the jousting path
< > Move Event: Enemy-Move?- Insert how many ups that make the enemy ride to the middle of the jousting path
< > Wait: 1.0sec
Now inevitably lets do the final as a defensive for the enemy.
< > If Var(????:Player 1s Jousting Method) 1
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the Hero.
< > Change Switch: Var[????:Hero Knocked Off] Switch ON
< > Change Hero Walk Graphic:(Hero’s Name) Hero must be changed to a fallen off version (like a beatenup, upside down hero)
< > Move Event: Hero’s Horse-Move?- enough downs to reach the bottom.
< > Move Event: Enemy-Move?- Enough ups to reach the top
< > Wait: 1.0sec
< > Message:Tournament Lord:
: :Enemy bravely smashes hero off of his/her horse!
< > Change Var: Var[???2:For Hero] (-)- 2
< >
:End Case
The events I told you to place at the beginning come into effect here as the Hero Knocked Off switch turns the event on the hero’s side into his/her horse which runs down and the hero is changed into a knocked off version.

< > If Var(????:Player 1s Jousting Method) 2
< > Show Battle Animation: Whatever you want, sword/spear, etc. On the enemy.
< > Change Switch: Var[????:Enemy Knocked Off] Switch ON
< > Move Event: Hero-Move?- Enough downs to reach the bottom
< > Move Event: Enemy-Move?- Change to enemies horse and move up until it reaches the top
< > Wait: 1.0sec
< > Message:Tournament Lord:
: :Hero takes enemy down with style!
< > Change Var: Var[???2:For Hero] (+)- 2
< >
:End Case
The events I told you to place at the beginning are once again important as the Enemy Knocked Off switch turns the event on the enemy’s side into the enemy (knocked off version) and the enemy is turned into the enemies horse which runs up until it can go no further.

< > If Var(????:Player 1s Jousting Method) 3
< > Play SE: Sword1
< > Move Event: Enemy-Move?- Enough ups to reach the top
< > Move Event: Hero-Move?- Enough downs to reach the bottom
< > Wait: 1.0sec
< > Message:Tournament Lord:
: :Draw!
< >
:End Case

Now, that’s the hardEST stuff out the way…Phew! Now for the final bits.
< > Wait: 1.0sec
< > Message:Tournament Lord:
: :And there you have it ladies and gentlemen.
< > If Var(???2:For Hero) is greater than 0
< > Message:Tournament Lord:
: :Hero wins and receives 2 points.
: :Enemy loses and receives 0 points.
< > Change Var: Var[????:Heros tournament points] (+)- 2
< >
:End Case
< > If Var(???2:For Hero) is less than 0
< > Message:Tournament Lord:
: :Enemy wins and receives 2 points.
: :Hero loses and receives 0 points.
< > Change Var: Var[????:Enemy’s tournament points] (+)- 2
< >
:End Case
< > If Var(???2:For Hero) is equal to 0
< > Message:Tournament Lord:
: :This joust is a draw, both contestants
: :receive 1 point.
< > Change Var: Var[????:Enemy’s tournament points] (+)- 1
< > Change Var: Var[????:Heros tournament points] (+)- 1
< >
:End Case

And there you have it. With this last bit you can include other tournament events and accumulate points and try to beat all of your foes. This jousting system can easily be edited and converted and I had 3 fights in my game with it.
If you have any queries feel free to post or email me at realangroth@hotmail.com.
I devised this all by myself and would like to see my name in your credits if you use this in your game!