
THE PRIMA SCRIPTING LANGUAGE

[0] Scripting (Hello, runtime errors! <-joke, BTW)

Prima's scripting language is very simple.  The commands you may use
are listed below, along with an explanation...any lines that start with a
^, /, or ; will be ignored as comments.  See example.qst in the DATA 
directory for an example quest.  Blank lines in a quest file are ignored.

A script file should be a plain old ASCII text file.  You can use ANSI for
the TEXT commands tho.

Commands you may use in a Prima script file:
^		- Comment
/		- Comment
;		- Comment
KEY		- Prompts the user for a keypress
CONTINUE	- Asks user whether he wants to continue..'N' stops script
		  Note that it does not add a carriage return after
 		  accpeting the input.
END		- End the quest immediately
TEXT		- Ex: TEXT "Hello" prints text between " to screen (ANSI too)
		  To do a carriage return, just enter TEXT ""
		  Please note that Prima adds a carriage return after each 
		  line automatically.
NEWS		- Ex: NEWS "Hello" prints text between " to the news
		  file. (ANSI too)  To enter a carriage return, just
		  use NEWS ""  Again, Prima will enter a carriage return
		  after every line.
MFIGHT		- Fight monster..followed by monster file, then #
		  Ex: MFIGHT .\DATA\FMONSTER.DAT 2
		  If player loses, or runs from the fight, he will be kicked
		  out of the quest.
  		  Players *do* gain the normal XP and gold from fighting
 		  monsters.
ADDXP		- Add experience..followed by the amount of experience you
		  want to add..Ex: ADDXP 1000

[1] Adding Your Quests To Prima (so you think your crap is good, eh?)

To add your quests to Prima, simply open up .\DATA\QUESTS.LST and
add them in the following format:
NAME OF QUEST (Usually with a difficulty warning, too)
QUEST FILENAME (full path & name)
That is it!  You can look at the file to see what to do.
Prima will now list your quest(s) when a player wants to try questing.

[2] Future expansion

I hope to add ADDGOLD, ADDHP, etc. commands if I have time.  I would also
like to implement a GOTO system with labels, etc.  I can do this, the
only question is time.  If at least 3 people ask me to do it, I will.

I may also just rewrite my entire script engine, but only if a lot of people
demand it.  (Not likely)  This way, it would be faster, and I would take
the trouble to make it actually load the file into memory instead of just
going through it one line at a time.  I could also add a lot
more commands.

Contact me with ideas, bug reports, etc. for the language 
at frag16@yahoo.com

Thanks,
Mike Counts



