Create a missions system with just events.

Difficulty: Expert

Hey guys! It's been awhile since I've written a tutorial, so I thought I'd write one on an event system that I pretty proud of!

It's a Job/Mission System inspired by Final Fantasy Tactics!


Special Requirements: HERMES script by derula

Here's what's needed to pull this off:

Three Switches(one for the job chosen, one for when it's completed and another for hero who's working)

Example: "Job1","Job1 done" and "hero1away"(Optional).

Nine Variables(As follows)

job1goal = An arbitrary number you can set as the goal to be reached, 8576.
Job1ID = Actor ID of hero who is chosen for the job. (Optional)
job1lvl = Level of the chosen hero.
job1exp = Chosen hero's experience.
job1time = amount of time it takes for the hero to be away doing the job. (Conditional)
Job1Result = job1exp x job1lvl.
money = party's gold. (Optional)
price = the price for the job.(Optional)
Par-tay = number of member in your party.

Pictures with the job/mission description.

=======THE SYSTEM=======

The system can be a bit complicated, but not impossible, once you've gotten all the right parts and know how. To make things easy, I'll use one job as an example.

Okay, here's the rundown:
You set up an event(let's call it "Employment"). Have the event run when the player presses the action key. After the obligatory greetings, explanations and/or banter, you can show a cool picture showing off what the job is. It can look like this:

or what have you.

Give the player an option to either accept or reject the job. Once they do, you turn setup 4 condition branches each set to the value of Par-tay. Par-tay keeps track of the number of members in your party. Why is this important, you ask? There's a good reason--you create a choice depending on the number of party members you have. It's also there to make sure you more than one actor in your party--if there's only one, it won't work. Say for example,if you have a party of four, set up a show choice option menu with four choices. Each choice will be the name of whatever actor occupies whichever spot in the party.

This is where HERMES comes in. Now derula created a very beautiful messaging/text script that, in many ways, helps creative non scriptors like me. There's alot features that allow you to interesting things, one of which I'll do now. In your choice selections your can use this script to display the name, face and level(collected by job1lvl) of the hero in whatever party position.

After you've made your choice, the hero's level and experience recorded(job1exp) respectively. After that the chosen party member is removed from the party and off to make you a living!

Now, you'll notice that I put an Optional to three of the variables listed. That's because these depends on how you would want your system to work. Job1ID can be used to stored the chosen party member's hero id and can be used in conjunction will a system that removes/stores excess party members. In my game, I have a system like that and have switches that turn on/off depending on whether or not a party member is there or not(hero1away).

Money and price can be used if you want to charge a fee for the job or not. Price is used in a condition branch to see if the party has enough Money to pay the job's fee and can be changed(by a set amount or a random number) on a per job basis.

Job1time is conditional in that it can be used in one of two ways, depending on the systems you have in place. If you have a day/night system that counts days, then you can set this variable in a condition branch that checks if job1time is greater than or equal to a certain number(7 or 13). If you have a system keeps a track of battles the party wins, you can use the same condition branch I mentioned earlier.

So you've waited around and now you want your pay off, right? Well you setup an event that checks firstly, if the amount of time for the job is right. When it is, the event check if job1result is equal to or greater than job1goal you get receive the prizes or rewards for clearing the job and turn on the Job1 done switch to turn off the event, if not try next time.



Here's how the event code should look:

Job Choice

Job Result

Pat yourself on the back! You've just made your own job system without needing a script!(although some light scripting is done.)

You can find my variation of this system in my game, Monstructs!

Any questions, feel free to ask...