RIST: Roger's Interactive Scripting Tutorial Alpha 5

Started by monkey0506, Wed 16/07/2008 00:19:27

Previous topic - Next topic

monkey0506

This doesn't really qualify for the GIP thread because I don't have any screenshots or the like, and it's not really a "game" per se.

Completely on a whim I decided to start scripting an interactive scripting tutorial. I recently lost all my recent documents, so anything I've done with AGS is now gone (I actually had a USB backup of some of it, but lost the drive >:(). As such I've been a bit discouraged to start any new projects, but this seemed reasonable enough.

My idea was basically that if I used a ListBox to represent a script, I could then allow the user to select a line of the script, and have Roger explain it, in depth. Just for a bit of R&D I uploaded a snapshot EXE for Sylvr to look at, and decided I may as well post here for more feed back.

This is still very preliminary, but I have a pretty clear direction where I'm going with this. I'm basing the scripts loosely around the scripting tutorial in the manual. That is I'm not sticking strictly to the tutorial in the manual, but using it as a general guideline.

What I'd like is feedback on how I can improve this tutorial. As I said it's very preliminary so content is pretty much a given "to-do". Also I'd like to make the tutorial more interactively topic-based, allowing the user to select a topic to explore instead of the linear approach currently displayed. (Implemented: Alpha 2)

I'm trying to approach this with the mindset of a complete "scripting n00b", but without being condescending or patronizing. So, without further ado:

Download Alpha 5 Binary (619 kb)
Download Alpha 5 Source (63 kb)

Any feedback on this would be appreciated. ;)

Also, another concept I would like to explore, but haven't yet is quizzes over each topic. This would help to reinforce the content covered.

Changes in Alpha 5:

- Shortened some of the longer lines. Still considering shortening some text.
- Revised some of the commentation, including adding a note to RIST Script.asc that the script used in writing the tutorial is in the room script and a note in the room script that some functions (GUIControl event handlers) are in the global script.
- Completely removed the Statusline and Iconbar GUIs since they are not needed by this tutorial. The Panel GUI provides any necessary save/load/quit functionality.
- Exported the Inventory GUI and removed it from the game. I may use it later so I haven't removed it entirely from the source.
- Corrected display errors with the Panel GUI appearing behind the Script GUI (ZOrder issues).
- Began scripting "Test"s, which will quiz the user over the selected topic. Currently only implemented for the first line of the "Functions" topic. I'm still working out how best to implement this fully.
- Changed Roger's speech color to white to avoid retinal damage. :=

Changes in Alpha 4:

- Split conditionals into separate topic.
- Topic list now shows all items deselected by default.
- Replaced "Explain" button with "Topics" button. Selecting an item now performs previous "Explain" functionality.
- Added comments to select line/topic for further information.
- Added RIST Script.asc containing source examples of the code, and uploaded full game source.

Changes in Alpha 3:

- Added topic: Operators and conditionals. Considering the length this may be split into separate topics with a note added that the conditional operators are listed in that topic. (Implemented: Alpha 4)
- Added topic: Data structures. Only contains a simple structure example. I'll probably include member functions in a different topic.

Changes in Alpha 2:

- The typo, "withe", regarding finishing variable definition lines "with a semi-colon", and the ability to scroll through the different mouse cursors (which we don't need; we just need the pointer cursor) have both been corrected.
- Moved to topic-based selection instead of linear approach. Still requires a "Topics" button. This will likely replace the "Explain" button in a future version. (Implemented: Alpha 4)
- Added function parameters and return example.

skuttleman

It might be better to lose the "explain" button and just have the explanation go when you select the list item.

monkey0506

I was doing that, but I was annoying myself while testing things out. If it would make it simpler I could remove the button later on.

bicilotti

Nice, very nice idea. I'd have loved to have that when first learning to script.

InCreator

#4
Nice idea, though Roger's font (yeh, the overused default font) kind of blends into long unreadable mess for me. Keep sentences shorter! I can't help it and maybe it's just me, but red text over black background makes my eyes hurt really bad.

Also, how to exit this besides alt-x? I think I saw some kind of options/quit? gui but other gui was totally covering it, or atleast presumed quit button...

EDIT: Ah, upper gui is visible too. But the things that opens with ESC key should really be INFRONT of the learning gui.

monkey0506

I wasn't aware any GUI was being turned on by the ESC key. := If you press Ctrl+Q the default, i.e., built-in Quit GUI is displayed in front of the other GUIs.

As for the font/speech color that can always be changed.

If you've seen the source you might understand my concern with making the lines much shorter. Granted some of them are long and unwieldy, but I have several hundred lines:

Code: ags
player.Say(...);


Thanks for the positive feedback. It's nice to see that people think this may be useful and not just absurd.

I'm still working on adding more topics, but at the same time trying to maintain the existing ones. I'll try to keep these suggestions in mind for new topics, as well as updating the ones we've already got.

SMF spam blocked by CleanTalk