Whenever you are to click on a something it will be bold.
Any text that you have to type will be set out like
Code: Select all
this
I prefer to use the numpad to move around the world, to do this have num lock on. Then Ctrl+Shift+C, NumPad activate Enable and Echo. Echo is where the command bypasses the input, which basically means you don't have to confirm the command (press enter).
I would also change the (.) fullstop (click on it) to who unidle or something else, this is the same for the (*), also check that 0 is look.
Next click on Miscellaneous I have changed the spam lines to 500, this means you can enter a repeated command 500 times till you get an error.I would probably suggest around 50 for a player. I would also change the CmdSplit char which is also known as the delim character, I have it set as (`), I find I use (*) too much.
There are many options to peruse in RoAClient (General) the only thing I have adjusted here is the Buffer sizes.
Under AutoConnection you can set reconnect time sequence, and in the text box pop your
Code: Select all
username`password
mud after every boot, even if I'm not there!
Thats about it, there are other stuff you can do, but I find it just adds to the time the client responds.
Lesson 2: Function Keys
This is the first thing I learnt to use as a player, and the most useful. To edit you function keys Ctrl+F, or click on Fn on you toolbar. If you don't have a toolbar, View click either Toolbar (RoA) or Toolbar (norm). You can set F1-F12 except F10 and you can set it for shift and ctrl. Make sure you check Echo. What do you use this for? example.
Code: Select all
battle -m kick
Lesson 3: Using Pipe
To use pipe in RoAClient just type 'pipe <overall cmd>' eg 'pipe tell misrobo' then hit Alt+M or click ml-send which is found at the lower right hand corner of the client. Paste the text into this box, check Echo and then click Done the text will be pasted strangely on the screen, don't worry though it will appear fine to everyone else. Then press enter in case there is something in the buffer, and then '** enter' (This is another reason to change the CmdSplit).
Lesson 4: Aliases, Nicknames, Hi-Lites & Gags
Aliases is quite easy to setup in the client, Crtl+R to start recording what you want it to do, Shift+Crtl+R to finish your recording. Personally I haven't used this much at all, I find the function keys combined with ingame nicknames are sufficient for my needs.
Nicknames are quite self-explainitory, what every you enter it translates to the what nickname, eg. I often misspell update->updaste, so I have put updaste as a nickname of update.
Hi-Lites are a simple form of triggers which allow you to make certain text "stand out." You can choose which foreground and background colours that specific text will be displayed in. Note the entire line the word is on will be hi-lited, for this reason I find it not that useful as it overides any output the mud sends you.
Gags simply filters the output of the mud and prevents certain text from being displayed, again I don't like this as it could gag something that is being discussed on a channel, unless your really careful.
Lesson 5: Variables & User Variables
Aliases
This is when the fun starts. First golden rule to remember is that whatever you do you must always press the apply button, unlike in windows the ok button does NOT save your work. The variables are very similar to the ingame variables, $1 == %1 and $* == %* for those who don't know about this read 'help alias' ingame.
Triggers
A trigger is a filter that reads the output of the mud and then react to it the variable system is the same for aliases, %1 represents one word, eg.
Code: Select all
%1 tells you
Code: Select all
^%1 tells you '%2'
Code: Select all
tell %1 I'm sorry but I'm not here at the moment, send me a mudmail if urgent.
User Variables (global variables) are variables which are usable anywhere where the previous variables were only 'local' (for that trigger/alias only). These are defined by @. SO summary local are % and globals are @. There is a bit more flexiblility with globals, you can define them as anything eg.
Code: Select all
'hp' then select Type as Numeric and type '0' in Value box.
Lesson 6: Triggers
In Icesus triggers has a bad stigma attached to them as they can be easily manipulated to 'bot' your character, read 'help robots' to see the rules regarding this. We are not going to use triggers to actively respond to situation in the mud, but just a passive observer.
Its time to get back to the the nice pic on the website. You notice that in the main window there is
Code: Select all
-- hp(100) sp(100) ep(76) exp(1266) lvl(0%) adv(2%) cash(12388) df(1187) time-Sunrise-
To set the prompt read 'help prompt' for this particular one its this.
Code: Select all
set prompt -- hp([hp]) sp([sp]) ep([ep]) exp([exp]) lvl([protolvl]) adv([protoadv]) cash([cash]) df([df]) time-[hour]-[nl]
Code: Select all
-- hp(%1) sp(%2) ep(%3) exp(%4) lvl(%5) adv(%6) cash(%7) df(%8) time-%9-
to click Apply Changes! Anyway once done we need to convert the local variables to global variables, to do this we need to use one of the clients commands, $var. The $ symbol denotes a command in RoAClient. We want global variables for hp, sp, ep, exp, lvl, adv, cash, df and time. So you need to Ctrl+U and then click New and set each one as 1, make sure you denote the type as 'numeric' AND Apply Variable Changes except for hour where its a string, set it as sunrise.
Once done go back to the trigger window and to the trigger we were working on, in the reaction box we want to store the local variables to those globals we just setup. If you have not done so make the trigger belong to the status group. Now we use $var like so
Code: Select all
$var hp %1
$var sp %2
$var ep %3
$var exp %4
$var lvl %5
$var adv %6
$var cash %7
%var df %8
$var hour "%9"
What have we done? We now have a set of global variables (user variables) that are constantly updated with every command we input into the mud via the ingame mud prompt.
Now it's very easy to make a mistake and cause the client to have a fit, to escape from this simply press the Trg with a cross in it, then click Triggers and disable group and then figure out where you've gone wrong. Also negative numbers are not accepted very nicely at all. If you have a continuous problem with negative numbers you'll have to disable that segment of the trig, ie. leave it out in the reaction part. (If anyone finds a better solution I would really like to know).
Lesson 7: Statlets
Now everything we have been doing has been leading up to the visual effect which is the statlet. Press Crtl+S then enter each name representing your global variables that we have. Click New...
Code: Select all
HP
Code: Select all
@hp / 100
In the Cur: field under Bar values: put the global variable @hp. Next adjust the position of your statlet to where you want it in your window, to do this you can either input the values or use the Move: buttons. The pixels is how many pixels to move each button input.
Sp and ep is the same as hp, for Exp:, Cash, df, next lvl etc. keep it as HorizText For the next lvl, do this as name
Code: Select all
(next lvl
How do you get that nice picture in there? Well first of you need the pic, then create a Button statlink (Type: Button) check Button bmp browse for pic then adjust W: & H: This is the same for those groovy lines you see on the website.
Looking pretty good so far, BUT my numbers don't update! This is where the custom command $statrefresh comes into play. Open the trigger window and go to your trigger and pop the command down the bottom. DONE.
Want the status to update more often? Like whilst your regening you don't want to keep inputing in right? Well you can hook into the ingame monitor. Make a trig called
Code: Select all
HP:[%1] %2% SP:[%3] %4% EP:[%5] %6%
Lesson 8: Routing
How do you get rid of the annoying prompt? Well the easiest solution is to HiLite it black. The other more elegant option is to get rid of it completely to do this just route it! How to do this? In the trigger window there is a Route to: this can select where the triggered (output) text can be put select the first one RouteWin1 only This will send it to the route win1 and not to your main display, to see your routewin go into View and select RouteWin -> RouteWinA. So now we have a status update without it interrupting your gameplay.
Result