The following instructions should help you be able to put your own message scripts into a Palace room, manipulate the text of that script, vary its location and its length. I have a Mac, so the instructions are written from the Mac point of view, but the instructions should still be helpful for you PC users as well.

A script is simply text with specialized commands that the server reads. A script is not magic: it will do what it's supposed to do unless it has a typo or flaw. But the script must be EXACTLY right in several areas, or it will crash your client application or worse, it may crash the server. Ouch. Before putting a script into an active public palace, test it on your own private palace server.

OK, here we go. Sip some coffee and read on.

A script is placed in the Script dialogue box of a Door dialogue box. Begin by going to authoring mode and creating a new "door." 

I use the term "door" and "spot" interchangeably, but technically a "door" serves as a passage to another room while a spot is simply being used to house a script and is usually sized small. You can resize that door by clicking in the middle of it to highlight the tabs, then pulling the tabs where you want them to be. You can also "open" the Dialogue box for that new spot in one of two ways. First, you can double click on it (this works for Mac users I know) or you can highlight it so that the tabs show, then go to the menu under Wizard:Door Info. Please open that dialogue box now, then read on.

The door dialogue box has lots of fun things, but focus for now on the box called "Script." Clicking that will open yet another dialogue box. Do that now. You will see that the Script dialogue box is blank, as it should be. That's where you place your script.

With that Script dialogue box open, put in the following script:

ON SELECT { "This message script is very basic, but it's a start!" LOCALMSG }

The punctuation and spacing of the script is very important and should not be varied, so be careful. Once that script is in, close the Script dialogue box and close the door dialogue box. Go out of authoring mode and click on your new spot. (You might want to reopen the Door Info dialogue box first and click on Don't Move Here.) Presto! You should see that message appear on the upper left of your palace room.

Let's now examine the parts of the script to see how they work. Later, we'll begin making variations and refinements.

The first two words (in the script above) ON SELECT is called the Event Handler and it means that the script will activate when the spot is "selected" or when someone clicks with the mouse on that spot. By clicking, you are activating the script. But you can cause the script to activate at other times as well. Open up the script dialogue box and change ON SELECT to ON ENTER and close the script box again. Exit the room and return. You will see your message once again, this time activated by your entering the room. This variation is particularly handy to alert users to important items in a room.

For now, please change ON ENTER back to ON SELECT, so that you can activate your other variations without having to exit and return to the room.

The next part of the script is sandwiched between brackets { } This information between the brackets is the actual data of the script, sometimes referred to as the atomlist. Those brackets are crucial and cause the script to run. Be especially careful with your brackets, making sure you always have an opening bracket { and a closing bracket }.

Mac users take special note: Due to a programming flaw in Mac software, you can have an extra closing bracket appear in your script when you close it. That's a nasty occurrence and can crash you or the server. If you open a script and see an extra closing bracket at the end, delete it. If it just keeps reappearing, enlist the help of a wiz with a PC.

In the above script, after the opening bracket there is a space, followed by the first quotation mark. Everything between the quotations marks will appear in the message script. You can vary that message to your heart's content. Try that now. Open the script and change the message. Don't mess with the brackets or quotation marks though, and make sure your spacing is correct. Also, you cannot have additional quotation marks in your script. For example the following script WOULDN'T work:

ON SELECT { "Hi, my name is "Ori." Welcome to CyberQuest." LOCALMSG }

The quotation marks around the name Ori would confuse the script and death will be the result--well, not actually, but don't try it to find out. So, vary the message and test it out now.

::sipping coffee while you do that:: Good, I hope that worked. As you can see, it's really easy to edit a message script. Let's start working on some refinements now. Insert the following script into that Script box:

ON SELECT { "!This message script will appear on the screen with the spiky balloon!" LOCALMSG }

The only difference between this script and the first one is the insertion of the exclamation mark directly after the first quotation mark. The exclamation mark causes the message to appear in a spiky balloon. You could further vary it by causing the message to appear in the "thought" balloon format by replacing the exclamation mark with a colon. Try it. Your script should look something like this:

ON SELECT { ":This message script will appear in a thought balloon." LOCALMSG }

So far so good and if you haven't crashed yet, you should congratulate yourself. But you have noticed that the balloon always comes from the upper left corner, and sometimes you will want to vary the location of where the balloon appears. You can do that by putting coordinates into the script. Let's do that with the following script:

ON SELECT { "@100 100This message will make the message balloon appear at coordinates 100 across, 100 down!" LOCALMSG }

Note that directly AFTER the first quotation mark I've put an @ symbol followed by two coordinates. The coordinates are separated only by a space. You can vary the coordinates of the message, then. Try changing the 100 100 to 200 200. Then to 300 300. Your message balloon will appear in different spots each time, which is really handy. To see one possible use of such coordinate messages, go to CyberQuest, then to the Quest for Romance section, then to the Ballroom. If you click on the chandelier there you'll see some pop up avs of Fred Astair and Ginger Rogers. Accompanying them, you'll see message scripts activating, messages that describe the room and the various things in it. The message scripts, however, seem to come from Fred and Ginger rather than from the upper left corner of the room. It's a cool effect.

Mac users, you can determine the exact coordinates of your mouse by turning on the Coordinates in the menu under Wizard.

PC users, you have to manually determine your coordinates by positioning the mouse and typing "msay Hi" without the quotes. In your log you'll see the coordinates for the mouse position.

The next part of the script follows the second quotation mark. In your original script it is LOCALMSG. This part of the script is called the Command. That LOCALMSG stands for "local message" which means that the message script appears only on the screen of the person who activated the script. Not everyone in the room sees that message, then. But you can vary that if you want everyone in the room to see a message each time it's activated. You can change LOCALMSG to GLOBALMSG. Try it. That will cause the script to act "globally" or be active to everyone in the room. (It will also slow the script down and cause a bit of lag.) You'll have to have a friend online with you to actually test this, of course, so they can say, "Hey, yeah, I see it too!" You probably will never use this global message. You don't want everyone to see a message script each time it's activated. So, the LOCALMSG is a better way to go.

Following the LOCALMSG part of the script there is a space, followed by the closed bracket }. That's the script. It's basic stuff, but it's probably the most used script on Palace.

I'd like to show you one more variation on the message script. Any given message balloon can only be so big. It can only contain so many words. A very long message will get chopped off arbitrarily and look very unattractive. So, with long messages you have to break the message up into smaller units, each with its own command. It's easier than it sounds. Look at the following script:

ON SELECT { "@100 100This message contains a lot of words. Therefore, it will not fit into one balloon message. If you try to fit this message into only one balloon the message will be chopped off and will look horrible. This can be avoided, though, by simply dividing the message part of the script into smaller units. To see how that would work, please see below." LOCALMSG }

Put that message in as is now, then activate it and see the result. The script works, but not all the message is displayed. Avoid that by doing the following:

ON SELECT { "@100 100This message contains a lot of words. Therefore, it will not fit into one balloon message." LOCALMSG

"@100 100If you try to fit this message into only one balloon the message will be chopped off and will look horrible." LOCALMSG

"@100 100This can be avoided, though, by simply dividing the message part of the script into smaller units." LOCALMSG }

Note that I now have three separate LOCALMSG commands, but I still have only ONE set of brackets. Input that message script, then click to see the result. The balloons will appear one at a time, in sequence--neat, attractive, and all there.
 
 

You've probably been to a Palace where, upon entering, you'll see a message saying "The wizards have been paged." That means that your entrance was noted in a special message script that only wizards could see. That particular script can be handy because wizards and gods might want to know who is entering the Palace without always having to look in the Find User dialogue box. The script for the message follows:

ON SIGNON { "Just Checking in!" SUSRMSG }

The first part of the script, ON SIGNON, functions just like an ON ENTER or ON SELECT script, except that the script is activated when a user signs on to the Palace. Therefore, you'll want to place this script at your Palace gate. It will not reactivate when someone already on your Palace returns to the gate from another room.

The second part of the script contains the message itself. Vary it as much as you wish, keeping in mind that it shouldn't be too long and should not contain quotation marks except at the very beginning and again at the end.

Finally, the SUSRMSG stands for "super-user message." A "super-user" is someone in wizard or god mode. So, only those users will receive the message. It appears no matter what room they may be in.

As you can see, you can vary parts of the script with ease to change how the balloon appears, the location of the balloon, and who sees the balloon when the script is activated.

Back to the Home PageOn to How to Do Sound Scripts