view orpg/templates/nodes/u_idiots_guide_to_openrpg.xml @ 139:8e07c1a2c69b alpha

Traipse Alpha 'OpenRPG' {091123-00} Traipse is a distribution of OpenRPG that is designed to be easy to setup and go. Traipse also makes it easy for developers to work on code without fear of sacrifice. 'Ornery-Orc' continues the trend of 'Grumpy' and adds fixes to the code. 'Ornery-Orc's main goal is to offer more advanced features and enhance the productivity of the user. Update Summary (Cleaning up for Beta) Added Bookmarks Fix to Remote Admin Commands Minor fix to text based Server Fix to Pretty Print, from Core Fix to Splitter Nodes not being created Fix to massive amounts of images loading, from Core Added 'boot' command to remote admin Added confirmation window for sent nodes Minor changes to allow for portability to an OpenSUSE linux OS Miniatures Layer pop up box allows users to turn off Mini labels, from FlexiRPG Zoom Mouse plugin added Images added to Plugin UI Switching to Element Tree Map efficiency, from FlexiRPG Added Status Bar to Update Manager default_manifest.xml renamed to default_upmana.xml Cleaner clode for saved repositories New TrueDebug Class in orpg_log (See documentation for usage) Mercurial's hgweb folder is ported to upmana Pretty important update that can help remove thousands of dead children from your gametree. Children, <forms />, <group_atts />, <horizontal />, <cols />, <rows />, <height />, etc... are all tags now. Check your gametree and look for dead children!! New Gametree Recursion method, mapping, and context sensitivity. !Infinite Loops return error instead of freezing the software! New Syntax added for custom PC sheets Tip of the Day added, from Core and community Fixed Whiteboard ID to prevent random line or text deleting. Modified ID's to prevent non updated clients from ruining the fix.
author sirebral
date Mon, 23 Nov 2009 03:22:50 -0600
parents 4385a7d0efd1
children
line wrap: on
line source


<nodehandler class="tabber_handler" icon="tabber" module="containers" name="The Ultimate Idiot's Guide to OpenRPG" version="1.0">
  <nodehandler class="form_handler" icon="form" module="forms" name="About" version="1.0">
    <form height="240" width="400"/>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="OpenRPG" version="1.0">
      <text multiline="1" send_button="0">OpenRPG is an online chat program designed to let people all around the globe roleplay together.  It supports the use of maps, character sheets, dice, specialized tools, and much more.  We welcome you to the OpenRPG family.</text>
    </nodehandler>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="This Tutorial" version="1.0">
      <text multiline="1" send_button="0">This Tutorial was created by Woody for use with OpenRPG. It was thrown together and updated for use with 1.0 and beyond by Raburn. A special thanks goes to HInc for the material that they made for use in this tutorial.</text>
    </nodehandler>
  </nodehandler>
  <nodehandler class="textctrl_handler" icon="note" module="forms" name="Introduction" version="1.0">
    <text multiline="1" send_button="0">Welcome, Mateys, to the online gaming universe of the OpenRPG!  By now you have successfully downloaded and installed the program or you would not be able to read this document.  But we are not here to discuss what you already know, we are here to get around to telling you how to do those things you don't know.</text>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="Chatting" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="Art Of The Chat" version="1.0">
      <text multiline="1" send_button="0">The basics:

Alright.  Let us start at the beginning.  Many many years ago the dinosaurs roamed the planet.  But then an asteroid, now most commonly known as &quot;Bill Gates 1,&quot; crashed into the earth and wiped them all out, turning them into oil.  The basic upshot of all that is with this oil we have created electricity which is now running the program.

Before we start it is necessary to make a name for yourself.  Why?  Well, you wouldn't like to be going around with everybody knowing only as 'blankman' would you?  To type in your name, go up to the top left window, and dragging down the &quot;OpenRPG&quot; menu bar press &quot;Settings&quot;.  in there you can alter your name and colours.

You can also rename yourself in a much more simple way by typing in the command &quot;/name &quot; and your name behind it in the chat window.  I just made you go into the settings so that you know where they are later.

--------------------------------------------------------------------------------

Now that you have yourself labled, you are probably wondering &quot;where's all the chat?&quot;  Well, my friend, we are here to answer that.  As your program booted up, it should have brought up a four-window layout.  The Gametree Window is in the top-left, the Player Window is the bottom-left, The Chat Window is the bottom-right, and the Map Window is the top-right.  We will first concern outselves with getting that lower right window to do the work and play with the others later.

To get the chat window to work, first we actually need a place to chat.  To do this, we need to browse the list of rooms on what is known as the Tracker.  To open the tracker window go to the menubar on the top and under the menu &quot;Game Server&quot; click on &quot;Browse Tracker&quot;

As you can see, a new window popped up.   This is the Tracker Window.  On the left you will see a list of various servers running OpenRPG online.  Click on the one at the top of the list and press &quot;Connect&quot;.

After pressing the &quot;Connect&quot; button you will join that server and be instantly dropped into it's lobby.  Welcome to your first chatroom.  Feel free to stay in this room as long as you like or move off to another room listed on the Tracker.  When you first turned on OpenRPG the chat window filled up with all the different chat commands available.  If you are like me and have forgotten them by now you can either click on the text display box and press PageUp   or click on the little text entry box and type in &quot;/help&quot;.

Should you wish a way to scroll up instead of 'PageUp'ing you can increase the amount of lines the Chat Window stores by making the Buffer Size larger.  You can do this by changing the &quot;buffersize&quot; setting in the Settings menu or by using /lines [number] replacing [number] with the number of lines..  A good setting is 100-200 lines though you can have it as large as you want (though it is warned against having it larger than 1000 as large numbers tend to increase lag.)

------------------------------------------------------------------------------

By now I'm sure you are also wondering what that status thingy in the bottom left window is.  If you notice, every time you type a message in the chat window your status changes.  And when you finish your msg (or sit for 5 seconds waiting) it changes back to Idle.  What a clever invention.  Of course, if you wish to set your own status to override &quot;Idle&quot; temporarily, just type in the chat window &quot;/status My_Status&quot;; replacing &quot;My_Status&quot; for whatever msg you wish (no more than 18 letters can be seen though).

As for now, spend some time and enjoy yourself in the lobby... we can come back to the tutorial when you are ready to learn about Rolling dice, whispering, and creating and using character sheets.</text>
    </nodehandler>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="Dice Rolling" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="Rolling Dice" version="1.0">
      <text multiline="1" send_button="0">Dice:

I'm astonished.  82% of all people who use this program never bother to read the tutorial, let alone come back to it.  Then again 67% of all statistics are made up on the spot so we'll leave that for now and get on with what we are doing

Now, to get back to business.  By now you've hopefully held a conversation with someone (or at least yourself) in our chatroom and now I'm sure you're wondering &quot;How can I roll some dice so I can smite those foolish mortals.&quot;  Well, don't be discouraged, because that is what I'm here for.

To roll dice you have two options.  you can simply press the button on the dice toolbar  or you can type in how many times you wish to roll.  As pressing buttons is mostly self explanitory, this part will only cover typing in dicerolls.

The second way is a little more advanced, and powerful.  You can also roll dice by typing them into your text intry box under the dice toolbar (where you type your normal chat messages).  to do so, first choose how many dice you want to roll.  example:

1

now, put the letter &quot;d&quot; after that.

1d

then put the dice type (number of sides):

1d20

And to finish it off, put the square [ ] brackets around the dice and hit enter

[1d20]

you'll see it rolls a dice into the chat window.  Magic. we can even do things like having multiple types of dice inside it in various mathmatical combinations:

[1d20+4d6-12]
[3d8+2]
[1d1-1]


------------------------------------------------------------------------

 now we let the fun begin.  Inside the square brackets we can also add special modifiers.  it'll come in the following format:

[ 1d20.mod(#) ]

you can even have multiple modifiers if you wish.  the list of all of them are below:

.ascending()
lists your dicerolls from lowest to highest

.descending()
lists your dicerolls from highest to lowest

.takeHighest(#)
takes the highest # amount of rolls

.takeLowest(#)
takes the lowest # amount of rolls

.extra(#)
rolls 1 extra dice for every Original roll that gets above the #

.open(#)
rolls an extra dice for Every roll that gets above the #

.minroll(#)
no dice will roll below #

.each(#)
adds # to each diceroll
</text>
    </nodehandler>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="Whispering and Ignoring" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="Whispering and Ignoring" version="1.0">
      <text multiline="1" send_button="0">Of course, not everything should be heard.  This is true twice over in this chapter, as we will be discussing how to whisper and how to ignore.

Whispering is a very simple task in OpenRPG.  First type in &quot;/w &quot; in the text entry box.  next, type in the ID number of the person you wish to whisper to and add an equals sign, so it looks like this:  &quot;/w 4=&quot;.  Add your message to the end of that and hit enter.

/w 4=Hello ID number 4.

You can even have multiple ID numbers in there.   Just seperate them up with a comma between each one, like so:

/w 3, 4, 12=Hey, I dare you to poke that Woody

Of course, if you don't want to type out the weird ID numbers you can always just right click on those little Easter Island Heads next to the person's name in the bottom left player window.  You can then select &quot;whisper&quot; and it will put the whisper command into your text entry box automatically.

-------------------------------------------------------------------------------

Sometimes there is someone that will just really get on your nerves.  Be it that they keep sending the same line of text to the chat, or maybe that they are spouting out Britney Spears lyrics nonstop.  Either way, you'll probably want to hear less of them.

Well fear not!  for by just typing in &quot;/i their_ID_#&quot; (changing &quot;their_ID_#&quot; for their ID number) and hitting Enter, then they will be added to your ignore list and no further messages will be heard by them.  Should you wish to take them off again (in case you go the wrong guy) just type the same thing and it'll toggle it off.  You can also get a list of who's on your ignore list just by typing in &quot;/i&quot;

Simple as that.</text>
    </nodehandler>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="Nodes and Character Sheets" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="tabber_handler" icon="tabber" module="containers" name="Nodes" version="1.0">
      <nodehandler class="textctrl_handler" icon="note" module="forms" name="&lt;b&gt;The Basics&lt;/b&gt;" version="1.0">
        <text multiline="1" send_button="0">&lt;a name=&quot;c3&quot;&gt;&lt;/a&gt;
alright.. by now you have grasped the basics on how to chat, so we will move on to the next phase: character sheets.  This part of the tutorial will cover how to make a full usable document from the nodes.

Let us first start by describing what the different nodes are and where we can find them</text>
      </nodehandler>
      <nodehandler class="tabber_handler" icon="tabber" module="containers" name="Nodes" version="1.0">
        <nodehandler class="textctrl_handler" icon="note" module="forms" name="Nodes and Sheets" version="1.0">
          <text multiline="1" send_button="0">------------------------------------------------------------------------
--Character Sheets And Nodes
------------------------------------------------------------------------

Character sheets are the wonderful inventions that allow us to hold all the information we want about our characters and gaming worlds.  In OpenRPG they are made up of what we call &quot;Nodes.&quot;  These nodes are the building blocks for creating all manner of character sheets and can be rearranged into whatever form you wish.

but to understand the nodes, we must first know how they work.  This chapter is dedicated to explaining the function of each node.  To get a new node, just find the one you want in the &quot;Templates&quot; tree and doubleclick on it.  That will put a fresh blank one in the gametree at the top.</text>
        </nodehandler>
        <nodehandler class="form_handler" icon="form" module="forms" name="Nodes" version="1.0">
          <form height="700" width="400"/>
          <nodehandler class="textctrl_handler" icon="note" module="forms" name="The Text Node" version="1.0">
            <text multiline="1" send_button="1">The Text Node is the very basic and most fundamental part of the character sheet.  It is where we store most of our important information.  To use a text node, first you must right click on it and press &quot;design.&quot;  This will bring up the text node's option's window.  In there you can choose whether the Text node only has one line or if it is a small text window, what it's title is, and whether it has a send button or not.  The Send button will send whatever is in the text node directly to the chat.</text>
          </nodehandler>
          <nodehandler class="listbox_handler" icon="gear" module="forms" name="List Box" version="1.0">
            <list send_button="0" type="0">
              <option selected="1" value="0">The List Box is a marvelous tool that allows you to have ...</option>
              <option selected="0" value="0">dropdown menus and a variety of checklists and radio boxes.</option>
              <option selected="0" value="0">To use a List box, right click on one that you created in your</option>
              <option selected="0" value="0">gametree and press &quot;design&quot;.  this will bring up a window </option>
              <option selected="0" value="0">where you can choose what type of list box it is and what </option>
              <option selected="0" value="0">options are inside of it.  Simple as that!</option>
            </list>
          </nodehandler>
          <nodehandler class="rpg_grid_handler" icon="grid" module="rpg_grid" name="Grid" version="1.0">
            <grid autosize="1" border="1">
              <row version="1.0">
                <cell size="144">The Grid lets you keep tables</cell>
                <cell size="138"></cell>
              </row>
              <row version="1.0">
                <cell></cell>
                <cell>like stats, or saving throws.</cell>
              </row>
              <row version="1.0">
                <cell>You can arrange numbers</cell>
                <cell></cell>
              </row>
              <row version="1.0">
                <cell></cell>
                <cell>more easily in a grid than</cell>
              </row>
              <row version="1.0">
                <cell>you can with a text node.</cell>
                <cell></cell>
              </row>
            </grid>
            <macros>
              <macro name=""/>
            </macros>
          </nodehandler>
          <nodehandler class="webimg_handler" icon="image" module="forms" name="Image" version="1.0">
            <link href="http://my.openrpg.com/images/logo200x60.jpg"/>
          </nodehandler>
          <nodehandler class="textctrl_handler" icon="note" module="forms" name="Images allow for images. Just right click to provide the webpage addy they're at" version="1.0">
            <text multiline="0" send_button="0"></text>
          </nodehandler>
          <nodehandler class="link_handler" icon="html" module="forms" name="OpenRPG.com link" version="1.0">
            <link href="http://www.OpenRPG.com"/>
          </nodehandler>
          <nodehandler class="textctrl_handler" icon="note" module="forms" name=" " version="1.0">
            <text multiline="0" send_button="0">you can change the link node's url by right clicking on it in the gametree</text>
          </nodehandler>
          <nodehandler class="textctrl_handler" icon="note" module="forms" name=" " version="1.0">
            <text multiline="1" send_button="0">Now that we know what the individual nodes do, we need ways to group them together.  continue to the next page to learn about the different forms of groups.</text>
          </nodehandler>
        </nodehandler>
        <nodehandler class="form_handler" icon="form" module="forms" name="containers" version="1.0">
          <form height="700" width="700"/>
          <nodehandler class="form_handler" icon="form" module="forms" name="Form" version="1.0">
            <form height="400" width="400"/>
            <nodehandler class="textctrl_handler" icon="note" module="forms" name="Text" version="1.0">
              <text multiline="1" send_button="0">The Form is the basic and most used container of the lot.  It is what is able to hold all the other types of containers AND nodes.  Forms can also be placed within other containers as well, allowing for you to 'group up' a bunch of nodes in a form, then put that form as one page on a tabber. You can adjust the size by right clicking on a form in the game tree, pressing design, and adjusting the height and width</text>
            </nodehandler>
          </nodehandler>
          <nodehandler class="splitter_handler" icon="divider" module="containers" name="Splitter" version="1.0">
            <nodehandler class="splitter_handler" icon="divider" module="containers" name="Splitter" version="1.0">
              <nodehandler class="textctrl_handler" icon="note" module="forms" name="Text" version="1.0">
                <text multiline="0" send_button="0">text</text>
              </nodehandler>
              <nodehandler class="textctrl_handler" icon="note" module="forms" name="Text" version="1.0">
                <text multiline="1" send_button="0">text</text>
              </nodehandler>
            </nodehandler>
            <nodehandler class="textctrl_handler" icon="note" module="forms" name=" " version="1.0">
              <text multiline="1" send_button="0">The splitter allows you to break a character sheet into segments, and have different datas side by side.  you can't have more than two single things inside a splitter, however you can put forms (or even other splitters!) inside a splitter.</text>
            </nodehandler>
          </nodehandler>
          <nodehandler class="textctrl_handler" icon="note" module="forms" name="Folders" version="1.0">
            <text multiline="1" send_button="0">Another node that is useful for keeping everything together is the folder. You can only view the stuff in it by using pretty print, but if you want to save a lot of work in one area, it is the thing you want to use.</text>
          </nodehandler>
        </nodehandler>
      </nodehandler>
    </nodehandler>
    <nodehandler class="tabber_handler" icon="tabber" module="containers" name="Character Sheets" version="1.0">
      <nodehandler class="textctrl_handler" icon="note" module="forms" name="Moving Characters from almost ANY Character Generator to here." version="1.0">
        <text multiline="1" send_button="0">The following are stpes on how to move your character sheets from your favorite Character Generation program into OpenRPG.  It's very quick and clean cut.

1) first, using your character generator, you convert your character to either txt format, or, preferably (if you have the ability) HTML format.

2) Then, you go to wizards.put a text block into the gametree

3) if you are using txt, select all, and copy.  if you are using HTML format, edit it using notepad, but don't change any of the HTML Program. then select all and copy

4) now, going back into OpenRPG, right click on the text block you created and push 'edit'

5) clear the text block of the few words of text that appear there then paste the copied info into by either rightclicking-paste or pressing 'ctrl v'

6) then name your character in the Title then close the text block.  Finished

no more need to create character sheets!  That simple and any time you want to see it, just doubleclick on the text node.</text>
      </nodehandler>
      <nodehandler class="textctrl_handler" icon="note" module="forms" name="Create Your Own Character" version="1.0">
        <text multiline="1" send_button="0">((before we begin, see the character sheet repository:
   http://openrpg.wrathof.com
for pre-made character sheets.))


Character Sheet creation (By Melanthos):

So you wanna make a character sheet, huh? Well, follow these few short steps and you'll be on your way to Sheet Creation Godhood...or not. But don't blame me if you don't read this and can't make yourself a sheet. I'm going to guess you have a basic understanding of how the nodes work. I'll be using Harvester Incorporated(TM)'s Faction Wars(TM) as an example.

First, you'll need a tabber. You can find it under containers in the templates node.  Click the + to the left of templates then click the plus next to containers.  Next double click the Create New Tabber.  Got it? Good. Now, you'll need a form. Forms are what we use to create each page of the tabber. They hold the rest of the nodes neatly, and open up - unlike groups, which cannot be opened in a sheet. To create a form double click on Create New Form.  You will notice two new nodes at the top of the game tree.


        Tabbers, Forms, and Text-boxes, OH MY!

Alright. Here is where I store the basics of the character. Since I don't like to scroll too much, I've broken down the information even more, so that I can fit into smaller tabbers and forms. First I'll create a second tabber. This will hold all the basic info - Level, Class, Player &amp; Character name, and a few other things. Since I've got 8 things I want to list, I've broken them up into 2 seperate groups, which have been put into different forms: General Info, and Specific Info. For simple things like name and level, I suggest using single-line text boxes. I've gone ahead and made 8 of these, naming each of them one of my 8 items and stuck them into their forms. Now that I've finished that, I'll put the two forms under my second tabber, and put that into my big form, &quot;General.&quot; I've done the same thing with the Attributes. Most of the sheet uses this principal, so I won't go into each form. Kinda redundant.


                   List Boxes &amp; Die Creation

Alright, for my second form, Vitals, I need some die-rollers. Since I don't need to change the rolls often, I've decided to use List Boxes to hold all my rolls. It's not too hard, and it's a really easy way to store rolls(It can be used for other things, but this is the best use I've found.): Now you don't have to type out those dice every time you wanna attack. First, I've created myself a List Box. Next, I'll decide how I want my list box to be shown: There are four choices. Drop Down, List Box, Radio Box, and Check List. Since I only need to roll one at a time, I've chosen Drop Down. But to show you how the Drop Down and Check List options work, I'll change things a bit and make a List Box and a Check List as well. When editing, make sure to click the &quot;Send Button&quot; box.


        Drop Down

The Drop Down is the least space- consuming of the List Box options. It's just like a single-line Text Box, except it holds more than one line. Click the arrow on the right to make it drop down, and click the die you want to roll. Then hit the Send button, and POOF! Your die has been rolled to the chat window.


        Check List

The Check List is a neat option. It lets you roll more than one die at a time. All you have to do is check the box next to the die (or dice) you want to roll, and POOF! Your dice have been rolled. Neat, eh?

           Splitter

Now what could these be used for, you wonder? Not much, but there are a few things. I've used it to hold my different abilities. It's easier for me to just see my choices than to flip between tabbers or scroll down and back up every few seconds.


The rest is pretty easy. Just keep on with the things you've done so far, and in no time you'll be on your way to creating great sheets! Most of sheet creation is your personal preference. If you ask Woody, he might say something completely different than I might. Of course, you should make the sheets the way you want them. This is just to get you started. After you've got the basics of sheet making down, you can play around with sheets and nodes and things until you've got the sheet perfect for you. GOOD LUCK!!


--Melanthos, Founder &amp; Game Designer - Harvester Incorporated</text>
      </nodehandler>
    </nodehandler>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="Server Control" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="tabber_handler" icon="tabber" module="containers" name="Server Control" version="1.0">
      <nodehandler class="textctrl_handler" icon="note" module="forms" name="Running Your Own Server" version="1.0">
        <text multiline="1" send_button="0">Creating a server:

OpenRPG has come a long way since the dark ages of gaming.  With this new version we can now create servers on-the-fly!  No more black boxes or strange voodoo magic.  Just click on your &quot;Game Server&quot; menu, and select &quot;Start new server.&quot;  Fill in the options and away you go!  the server will appear instantly on the list.

Of course, this won't provide you with all the same powers that the full server does.  While you can create a server on the short term, if you want to have a longterm dedicated server running which you can control, you'll want to run the OpenRPG Server in your start menu-programs-openrpg (or mplay_server.py in your openrpg folder).
</text>
      </nodehandler>
      <nodehandler class="textctrl_handler" icon="note" module="forms" name="Running a Dedicated Server" version="1.0">
        <text multiline="1" send_button="0">Well, maybe not any money in creating a server on this program, but there are definately perks to running one.  But to run one we must first understand what they do.

A server is the mother for all of us on OpenRPG.  It runs all of our major commmands, keeps us all talking together, and hosts all the games on OpenRPG.  When you first connected to OpenRPG you had to choose a server from a list in the tracker, on the left.  Now let us put your name (or at least your computer's) out there so others can flock to you.

For this we must return to your OS.  Go into your computer, into the OpenRPG folder.  In there, you will see a file marked:

mplay_server.py

You can also find it in your start menu, right next to the OpenRPG program itself.  Once you find it, (double)click on it.  The first thing that will come up is a python MSDOS window... It will first prompt on if you wish for your server to bee seen by the OpenRPG tracker list.  Press &quot;Y&quot; and hit enter (won't get anyone if we don't know it exists).  Next, it will prompt you for a name for your Server.  Write in &quot;Temporary Server&quot; and press enter.

Now the window will start running the various server-y looking bits of code.  as soon as it is up and going, you will told the various commands that are available to the server.  The first one will be &quot;kill&quot;.  this is what you type into the MSDOS window to shut the server down.  &lt;b&gt;**IMPORTANT**&lt;/b&gt; if you shut down the server all rooms on it will close.  You don't want to shut it down if others are using it.

The second command is the &quot;dump&quot; command.  This will list all the people on your server, as well as their ID number.  It really isn't important at this time but it will come in handy later.

Broadcast is self explanitory.  The 'Announce' and 'Remove' features allow you to choose later on if your server can be seen on the tracker, or not.  Dump Groups gets the same info as Dump but does Groups instead of people.  And finally you can bring up this little list of commands at any time by typing 'help' or '?'.

You can type these commands in any time in the python server window.  Go ahead and try 'help' or 'dump' and see what comes up.

Alright!  That's it.  to access your server, run you OpenRPG program as normal (with the server MSDOS window in the background) and log onto your server as we had shown you in chapter 1.  This will come in handy if there are no Servers running and you wish to use OpenRPG with, perhaps your gaming buddies or maybe some underworld kingpins you need to 'have a talk' with.

And From All of us at OpenRPG HQ, we wish you good gaming!</text>
      </nodehandler>
    </nodehandler>
  </nodehandler>
  <nodehandler class="form_handler" icon="form" module="forms" name="The Map" version="1.0">
    <form height="400" width="400"/>
    <nodehandler class="textctrl_handler" icon="note" module="forms" name="Of Maps and Miniatures" version="1.0">
      <text multiline="1" send_button="0">The Map:

Now comes the hardest part of the tutorial.. describing how to use miniatures (minis)  and background images.  Well, the first step is to bring up the map.  Fortunately the new OpenRPG now loads maps differently than previous versions.  Likewise, it no longer seems to cause crashes for Windows users.  No longer will your client lag, lock up, or crash when loading images, large or small.  The entire map will now load in the background while you continue with your normal activity with the program.  Additionally, images, once loaded, will also be cached (stored) in RAM (up to 64; overflow is handled by randomly purging images within the cache to make room for new images).  That means switching back and forth between maps, in the same session, will result in instantaneous access to your map; no more waiting.  Furthermore, not only are your images loaded in the background, but they are loaded concurrently.  That means your map will be available faster than ever!  Hopefully these new innovations will lead to a renewed usage of the map.  Even modem users have indicated that using maps are now fun again!  Anyway, on with the tutorial.

The Map Window is where most of your image viewing will reside.  In it you can manipulate miniatures and maps to give your players a well good idea of what your gaming world looks like.  In case you haven't guessed, it's the top-right window.  Looking at the Map Window, you'll see all of the basic operations needed to load an image and edit the map.  Let us attempt to load our first picture.  At the bottom of the map window you'll see a large box where you can type in text.  This is where you put  the Web-page Address for the image you wish.  Let's type in this URL/URI:  http://www.openrpg.com/images/mins/amazon.gif.  Notice that there are many great miniatures ready for you to use at OpenRPG's home-page.

After you have typed it in press the &quot;add miniature&quot; button, sit back, and watch as it loads the beautiful amazonian woman (well, almost) into the map window.  Please note, however, all images need to be on web-pages and served up by a web server... you cannot load directly from your hard drive.  Well, you can, but no one else will be able to see it.  The reason being is because OpenRPG's client actually one giant web browser.

Feel free to move it about, get a feel for how it works.  You'll see at the moment that the amazon seems to hop from grid square to grid square.  Well... if you're like me, you don't like being confined to grids or rules.  So let's get rid of that grid, shall we?  Again, looking at the map window, you will see a little red diamond thing.  They say it is a compass but it just looks like a flying fish to me.  Anyway.. click on that and it will bring up all the map settings.  In there you can change the size of the map, what color it is, or even load up a background on which all the mini's sit ((say, a dungeon map you drew or perhaps that picture of Britney Spears I know you have lying around)).  The thing we are interested in the most, though, will be the grid settings at the bottom.  As you can see, you can change the size of the grid and switch the grid from square(4 sided) to hex (6 sided).  You'll also be able to let mini's either abide by the grid, or become free from the black lined prison.  Let us turn off the &quot;snap to grid&quot; and press &quot;apply&quot;.  Also note that you can also make the grids disappear by making them match the background color, however, this is not the ideal way to do it as it still requires processing to draw and redraw the grid lines, even if they blend in without being visible.

Now, go back into the map window and try moving your mini again.  You'll see that it now moves freely, and ignores those lines.  But ignoring them is not enough, did I hear you say?  You want them gone?  Ok.  Let's go back into the settings (the red star button) and this time change the grid size to zero.  Pressing 'apply' you will see that the grid has disappeared entirely from map.  Course, if you want it back, just go put in the size again (50 is default).  Feel free to make the grid size match your miniature and map scale.  Also, if you prefer to have the snap to grid, however, do not feel that it provides enough resolution in miniature movement, feel free to set the grid size to half or one forth of what your actual scale is.  This way, you miniatures will still fit nicely as well as be able to use the &quot;snap to grid&quot;, however, you'll better be able to stagger your miniatures or slightly offset tiled map sets.


Tiled Map Sets:

Often, DM's and GM's have the need to present a map to their players, however, they do not which to reveal the whole map and/or map section to their players.  After all, it does remove a lot of surprise if everything is right before the player's eyes.  Enter three new miniature options: &quot;Lock to back&quot;, &quot;Lock to front&quot;, &quot;Unlock Front/Back&quot;.  Previous to these options being available, either the whole map had to be loaded by changing the background image or players and DM's where forced to struggle when map sections were loaded as if they were miniatures.  Even though there was z-ordering options available, it was still tedious as miniatures would often disappear behind a map image.  Now, entire maps can be built before as game and loaded all at once, without giving away any surprises.

By loading all of your map sections together as miniatures and marking each one visible or not visible, you can have great fun again with your maps!  Wait a minute, isn't this the same boat we were on before.  Well, enter the three new options.  Using the &quot;Lock to back&quot; option on each of your map sections, it will force them to always stay on the bottom of the z-order (stacking) of your miniatures.  That means, you'll now be able to change the z-order of your miniatures while all of them stay on top of your map image.  In other words, while the image is locked to the back of the z-order, it acts just like a background image should.  To restore a miniature to normal z-ordering, simply using the &quot;Unlock Front/Back&quot; option and it will once again be ordered just as any other miniature is.

Wait a minute!  That's only two of the three options that you mentioned.  Well, the third option allows for even more flexibility in what DM's and GM's can present to their players, even on a visible map section.  Enter, the poor-man's fog-of-war.  By creating a &quot;mask&quot; in just about any shape you like (feel free to use transparent colors on gifs as needed), you can effectively lock the &quot;masking&quot; image to the top of the z-order which will hide a section of your visible map.  While this is still somewhat tedious, it will allow for much finer grain of control of what is and is not visible on your maps!


Looking here, moving there:

Directional markers have been a part of OpenRPG for some time now, however, there use is going to be better explained here.  If you notice, each miniature has a &quot;facing&quot; and &quot;heading&quot; available to it.  These serves not only to indicate a miniature's facing, but it's current direction of travel.  After all, you're quite able to turn your head and talk to your buddy while walking in a direction different than the one your head is pointed.  While this feature mostly serves board game players, RPGer's may find use in this too, especially when making canned maps.  Imagine, the 'ol evil cleric behind the podium with his back to you.  Now, you can make it clear on the map.  Oh wait, the cleric's minions do not have their back to you, rather, they are standing to his side and looking directly at him.  Closer look, and you see that the cleric too had his head turned to his minions in conversation.  Again, this can be expressed on your map.  Information like this makes it easier for the players to understand that the back-stab that they obviously want to do, won't be so easy to pull off.  All this, without having to verbally describe every little detail.  After all, isn't this what the maps is for?  Enjoy!


Saving and Loading Your Map:

Don't forget that you can save your hard work.  Once you have built your map, be sure to right click on the map and hit &quot;Save Map&quot;.  When you need it again, just do &quot;Load Map&quot;.  You don't even need to delete the contents of the previous map.  The client does all that for you!  Don't forget, if you load a previously viewed image, the caching will considerable speed the rate at which it's visible to you and your players.  Using a common set of miniatures helps to take advantage of this fact.

The Other Modes:

Now, you can also use something called map modes. This feature lets you draw, and use rulers and other fun stuff. To turn it on you right click in the map, go under switch modes and choose either whiteboard (drawing) or ruler (ruler with distance gauge). This can be useful if you ever needed to point out something to someone. To remove a line just right click on it and click remove, its as easy as that!
</text>
    </nodehandler>
  </nodehandler>
  <nodehandler class="textctrl_handler" icon="note" module="forms" name="Setting Up Rooms, Games, and Ignoring" version="1.0">
    <text multiline="1" send_button="0">So now that you have your server, your custom character sheet, and have talked enough players into starting a game, you'll want to set up a private room so that you aren't disturbed by every wandering weirdo or Woody that happens upon your server (and be forwarned, you will find that various people will wander from server to server.  Do not be frightened, most of them are harmless).

So, lets pull up your tracker window.  If you haven't done so already, be sure to connect to your server.  Once in there look onto the right side of the tracker window.  You will see some boxes marked &quot;Room name&quot;, &quot;Boot password&quot;, and if you check a little box, &quot;password&quot;.  the first two are rather self explanatory, and the last one is to lock your room in case you don't want to be bothered.  Be sure to tell your players what it is though.

If you don't password protect a room you may get people wandering in looking for a game or just lurking watching your game.  If you don't want them in there you should first let them know and ask them to leave.  If they refuse your request then boot them.  It is very rude to boot someone from a non passworded room with out warning.

Now that you have your custom built char sheet and you have talked enough players into starting a game, it's time to set up your own room.  Let's bring up that Tracker window again ((under the Game Server menu)).  Looking to the bottom left of it, you'll see a little box that allows you to type in your own room name and add a password if you like.  Let's start a room called &quot;Working on that darned fun tutorial&quot; and not put a password up.

as you see the room you create will be exactly the same as the lobby, so there is nothing to worry about.  Lets load up our character sheet by right clicking on the &quot;Game Tree&quot; and pressing Insert file&quot;

Now that we have our little char sheet we might as well show the world.  This can be done in one of three ways.  The first way is to right click on it and send it to other players (provided there are any).  This is how other players can get your sheet as they can't see it until you send it to them.

The second way is to send it directly to the chat and let everyone see it there.  go ahead and do that by right clicking on the char sheet and pressing &quot;Send to Chat&quot;.  Now everyone gets to see it as it appears on their text chat window.

the third option, Whisper to Player, is much the same as &quot;Send to chat&quot; only it sends it to a specific person or persons to see in their chat instead.

Of course, there sometimes comes a day when there is a little spammonkey running about.  You know the type.  Just keeps askin pointless questions, hitting you with the same text, and generally making himself a nuesance.  Well fear not!  We have added in a brand new feature that allows you to ignore those unscrupulous people.  In the chat entry box just enter the command &quot;/i player_ID#&quot; and that will put a person on ignore (or toggle them back to un-ignore [you can also right click on the name and press toggle ignore]).  To get a list of ID's who are on your ignore list, just type &quot;/i&quot; alone, with nothing else.  You can even ignore/un-ignore multiple people at once, just put commas (( , )) between the names.  And that's it.  Ignore at your leasure.</text>
  </nodehandler>
  <nodehandler class="textctrl_handler" icon="note" module="forms" name="Other Features; Logs, Initiative, Upgrades" version="1.0">
    <text multiline="1" send_button="0">Other features:

It may seem a little odd that this seventh window is tucked behind some arrows, but I always thought this chapter was a little on the sinful side so over here it now lay.


By getting here, you must have had quite a bit of time to read through the rest of the chapters.  Well, let's finish off with what few interesting toys we have left.

To start with, lets talk about logging  To create a logfile, you can just press the disk button in the bottom right corner of the OpenRPG program, and choosing a name and place to save the file.  Badaboom!  a chatlog of everything you have seen is saved.

Of course, most of you will want a way to have it automatically save a log each time it see's text.  To do that, type in &quot;/log to my_log&quot; (replacing &quot;my_log&quot; for what you want to call the file). It should automatically start logging to that filename (and will include the date in the filename you gave it).  if you want to turn it on or off later on, just type &quot;/log on&quot; or &quot;/log off&quot;

Note: The chat logging system no longer appends a datestamp to the logfile
specified.  This means that for the system to generate the logfile

/foo/bar/gamelog-02-10-01.html for linux or \foo\bar\gamelog-02-10-01.html for windows

Previously the user only had to have &quot;/foo/bar/gamelog&quot; entered as GameLogChatPrefix.
To get the same logging pattern now, they'll have to set GameLogChatPrefix to
the following:

/foo/bar/gamelog-%d-%m-%y.html


--------------------------------------------------------------------------------

The Initiative Tool.  A marvelous invention allowing DMs to organise and handle an otherwise chaotic scene that we know as combat.  Compatable with all versions of OpenRPG, it works incredibly simply.

All that is needed is for the DM to press &quot;New Initiative&quot; in the tool, have all of the players and the DM to type in &quot;init [diceroll]&quot; (replacing 'diceroll' for your dice) and hit enter.  An example:

init [1d10+6]

once everyone has done that, the DM pulls up his tool again, hits refresh, and then sorts the list however he wants.  once it is sorted, he just hits &quot;send to chat&quot; and the person at the top of the list is then sent to the chat.

Once all the people have been cycled through, it will say &quot;End of Init&quot; in the chat.  The DM just presses the &quot;Start new Initiative&quot; button one more time and away you go on another round of hacking!

Now, if you are the player and not using the tool, you can even put your init command into a macro node (not a text node) and do it that way.  At the time of this publication there was a bug in the initiative code and the DM running the tool cannot use macro nodes for this.

You can also set up your character sheets to be able to be rolled from.  To do it, you will just need a special node that you can find here:

www.geocities.com/woody_j_dick/initiative.xml

You can put it directly into OpenRPG by right clicking on your gametree, pressing &quot;Insert URL&quot; and putting that URL above into the box that appears.  Even the DM can use that node for rolling his initiatives.

CAUTION!  Do not rename the node.  It will not work unless it has that name.


The last button, &quot;Keep list&quot; is for Whitewolf players who need to use the list twice.  If you edit the list, and want to keep the edited copy, then just press that and it will save the list so all you need to do is hit refresh to get it back.

--------------------------------------------------------------------------------

OpenRPG is a great program, no doubt about it.  And it's best quality is that it is opensourced, meaning anyone can look at the code and alter it to make it work better.  One such person, the one that compiled this tutorial no less, is going to capitalise on this free advertising to say a few quiet words about his webpage.

www.geocities.com/woody_j_dick/OpenRPG.html

The 8.3 Convention webpage, it offers many 'additional extras' That are not yet included in the main program.  Not only are the upgrades good for the current versions of OpenRPG, but it also retains a list of upgrades for previous versions, in case you want to go back and use that 'good ole' 9.4 or 9.6 client with the modern day servers.

</text>
  </nodehandler>
</nodehandler>