NPC Interaction – Fun With Events

Using events, while the Hero is walking around, someone shouts hello, the Hero turns and that person walks (or runs) up to him and they start conversing.

This was a question on Yahoo! Answers a while ago, which I answered and thought I’d share. Although initially tailored for RM2K3, RMXP, RMVX and RMVXA are also included here.

The basic idea is that while the Hero is walking around, someone shouts hello, the Hero turns and that person walks (or runs) up to him and they start conversing.

The simplest method (and easiest to adapt) is with an "autoevent". For this example, the NPC event is 5 squares to the right of the Hero position.

Create a blank event and set the "Trigger Condition" to "Auto-Start". In the "Event Commands", place the following:

RM2K3RMXPRMVX/VXA
<>Move Event: Hero, Move Left, Move Left
<>Wait: 0.8 Sec
<>Message: Hey!|^
<>Wait: 0.8 Sec
<>Move Event: Hero, Face Right
<>Move Event: NPC, Move Towards Hero
<>Wait: 1.8 Sec
<>Message: It’s good to see you, n[1]!
Coming Soon!
@>Set Move Route: Player (Wait)
:               :$>Move Left
:               :$>Move Left
@>Wait: 8 frame(s)
@>Text:-, -, Normal, Middle
:     : Hey!|^
@>Wait: 8 frame(s)
@>Set Move Route: Player (Wait)
:               :$>Turn Right
@>Set Move Route: [NPC] (Wait)
:               :$>Move toward Player
@>Wait: 18 frame(s)
@>Text:-, -, Normal, Middle
:     : It's good to see you, n[1]!

The Hero will move left two squares, the NPC will shout (and will automatically enter – no keypress), the Hero will turn around, the NPC will run up to the Hero, then will say "It’s good to see you…" (with the n[1] switch being the name of the Hero you set up in the Database).