MooglyGuy
05-01-2005, 12:21 AM
As you may or may not have been aware, this semester I had to write a thesis so that I could graduate with honors when receiving my Bachelor's Degree in computer science this May. What I decided to do was to create a scripting language for use in RPG environments, which I've dubbed Role Playing Script. By and large, I've created a robust - and moreover, extensible - language which one can use to script the events, interactions, and so on in an RPG environment. I've also created the assembler for the language to generate binaries, which can in turn be used in the test environment that I've created. Along with the test environment, I've created a rudimentary level editor that you may use.
The thesis itself is http://einstein.etsu.edu/~zrah2/thesis.dochere</a>.
The assembler for the language is http://einstein.etsu.edu/~zrah2/rps.ziphere</a> Please note that you'll have to download a win32 version of GNU Flex if you wish to edit the assembler. Make your changes to lexinput.c, then run "flex lexinput.c", then compile lex.yy.c in a C++ compiler of your choice, preferrably G++.
The test environment that demonstrates the various things that the language can do is http://einstein.etsu.edu/~zrah2/testenviron.ziphere</a>. There isn't any battle subsystem, nor is there any sort of experience/inventory/party system as of yet, as the thesis was about creating a language for scripting the events in an RPG, not a full-fledged RPG engine. However, it's completely open (along with everything else I've posted here), so you're welcome to add such features. There's currently no documentation on the format in which the levels are stored, as the source code is currently sufficient documentation until I get around to writing better docs. Look in ReallyPoorGame.c at the various loading functions.
The rudimentary level editor is http://einstein.etsu.edu/~zrah2/leveledit.ziphere</a>. The level and path to the level which it edits are currently hard coded, but as I've provided an on-screen keyboard implementation and a workable textbox implementation that you can use, it shouldn't be altogether difficult to be able to let the user enter in a filename.
If you have any questions or comments, feel free to post them, and I'll try to respond to the best of my ability.
<P ID="signature"></P>
The thesis itself is http://einstein.etsu.edu/~zrah2/thesis.dochere</a>.
The assembler for the language is http://einstein.etsu.edu/~zrah2/rps.ziphere</a> Please note that you'll have to download a win32 version of GNU Flex if you wish to edit the assembler. Make your changes to lexinput.c, then run "flex lexinput.c", then compile lex.yy.c in a C++ compiler of your choice, preferrably G++.
The test environment that demonstrates the various things that the language can do is http://einstein.etsu.edu/~zrah2/testenviron.ziphere</a>. There isn't any battle subsystem, nor is there any sort of experience/inventory/party system as of yet, as the thesis was about creating a language for scripting the events in an RPG, not a full-fledged RPG engine. However, it's completely open (along with everything else I've posted here), so you're welcome to add such features. There's currently no documentation on the format in which the levels are stored, as the source code is currently sufficient documentation until I get around to writing better docs. Look in ReallyPoorGame.c at the various loading functions.
The rudimentary level editor is http://einstein.etsu.edu/~zrah2/leveledit.ziphere</a>. The level and path to the level which it edits are currently hard coded, but as I've provided an on-screen keyboard implementation and a workable textbox implementation that you can use, it shouldn't be altogether difficult to be able to let the user enter in a filename.
If you have any questions or comments, feel free to post them, and I'll try to respond to the best of my ability.
<P ID="signature"></P>