Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD Beta Forum Goto page 1, 2  Next
Larkin Posted: Mon Apr 03, 2006 6:06 pm
"Sticky" prompt?
Rainchild
Wizard


Joined: 10 Oct 2000
Posts: 1551
Location: Australia

PostPosted: Wed Apr 05, 2006 10:52 pm   
 
I think one of the bigges problems with mudding is it's comparitively hard to get into - not just the game, but the whole interface thing scares people away. Making something as simple as "You feel hungry." -> "eat food" is a fairly complicated thing to do for a first time user. Having options like being able to highlight a line of text, right click it and go 'Add Trigger' I think is something user-friendly that should be done.

Depending on the game, the prompt text could be pretty long - for example mine is: "<p|859/859hp 1243/1243e 245/245mv 245wm 411636242xp NeSw>" .... having that to the left of the command bar would not be a good idea. I think it IS definately a feature that some people would use, so should be among the options as listed abote (eg sticky, auto-status bar, left of prompt). Personally my status bar is empty, so it would be a perfect place to put my prompt (although, I would like my status bar to be a black background and support MXP if it doesn't already).

Also, as part of the whole right-click menu, it would be nice to highlight my prompt, right click, go 'set as prompt' that pops up a wizard which goes 'highlight the important bits' and pulls them off into variables etc. You may also want to support multiple types of prompt, for example when I'm reading a note my prompt looks like: "-- MORE -- "<p|859/859hp 1243/1243e 245/245mv 245wm 411636242xp NeSw>". When I'm in combat the room directions (eg NeSw) change to the condition of the mob and the condition of the tank. So having the ability to define a number of prompt patterns with wizard handlers is probably fairly important.

Again, I don't expect you to do all this for the first beta version, but I think you should give some thought to it.
Reply with quote
adamwalker
Apprentice


Joined: 12 Mar 2005
Posts: 195

PostPosted: Fri Apr 07, 2006 11:30 pm   sticky prompt
 
this is something i'd equally be interested in. right now in a standard fight i think 30% of my screenspace is taken up by the prompt repeating. yet i only use the latest prompt at the bottom of the screen.

gagging them all then shuving it at the bottom of the output window is a feature i would be very excited to see. im sure i could currently manage this no problem by putting it into the status bar but i'd prefair it on the output window.
Reply with quote
edb6377
Magician


Joined: 29 Nov 2005
Posts: 482

PostPosted: Wed Apr 12, 2006 12:01 am   
 
I agree my prompt depending on thats going on can be extremely long as well.

[safe][away][mail]<358hp 290sp 367st>

With my scripts to track changes in my prompt and other various features this would be great.

I have made use of the %mud.hpmax for example to make a few scripts for this purpose.

#GAG has some issues. I will give you an example

We have a channel called PKTALK where we talk. I capture all this to a PKTALK window and gag it from the output main window.
In doing so heres what i get
Code:

<358hp 290sp 367st>

<358hp 290sp 367st>

<358hp 290sp 367st>

<358hp 290sp 367st>


IF i #GAG 2 it to get the empty line i get
Code:

<358hp 290sp 367st>
<358hp 290sp 367st>
<358hp 290sp 367st>
<358hp 290sp 367st>


Which results in a mass amount of screen clutter. I have tried adding an extra line to remove it so it would appear to disappear altogether without any screen mess but it results in gagging the wrong things at times.

So an option to move the prompt to my command bar makes it better. I wouldnt add it to the left of the command bar though. If you hae a long prompt you will have minimal input space in your command bar. I would dock it above it personally. between the status bar and the command bar. I like many others only use the latest version of my prompt anyways. There are rare situations like PK fights where i like to analyze what hp losses etc i am taking per round. Thats the only reason i use the previous prompt.

Personally i would like to see a way to move the whole thing into 4 defined gauges that are there permanently. Basically 3 defined hp sp st bars and one miscellaneous bar. I would use it for enemy health but many uses could be made of it. Its one of the few things i liked about portal. GUI is always important in marketing. The prettier it looks the better.

I also would suggest if its not already going to be there is hidaway windows. Like i can track my current worldgate in a #WIN Worldgate that sits on the right side of my screen but is expandable. So i can click a left arrow and it will pop out. Click the right arrow it pops back off my screen. I hope that type of feature will be there as well. This would also help expand the main window viewability and reduce screen clutter.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Apr 12, 2006 1:00 am   
 
Can you post the exact trigger you are using to capture the text and gag it? Also, have you played with the EOR/GA option in the Emulation page? It seems like maybe your MUD is using EOR for the prompt and maybe you don't have that feature enabled in zMUD. That can cause a lot of extra blank lines.

Regarding "hideaway" windows, yes, the new docking system has this feature. It's called "AutoHide". When a window is docked to the side of a window (so, not tabbed, but docked to the left, right, top, or bottom), then next to the X close button for the window is another button called "AutoHide". When this button is enabled and you then move the focus away from the window (like clicking on the command line or any other control outside of the docked window) the window slides into the edge and "hides" becoming a tab along that edge of the screen. When you move the mouse over this tab, the window "slides out" and becomes visible again. Works a lot like the autohide windows in Visual Studio for anyone who has experience with that.
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Wed Apr 12, 2006 1:24 am   
 
I think edb6377 is just showing what would normally happen due to gagging/redirecting some chatter.

Original
Code:
<358hp 290sp 367st>

Taz says 'How's the CMUD development coming along?'

<358hp 290sp 367st>

Zugg says 'Oooh, sometimes it makes my head hurt :('

<358hp 290sp 367st>

Taz says 'Yes I can imagine.'

<358hp 290sp 367st>

after the redirect and gag
Code:
<358hp 290sp 367st>

<358hp 290sp 367st>

<358hp 290sp 367st>

<358hp 290sp 367st>

I'm sure that sort of process has always behaved this way, at least it has for me.
_________________
Taz :)
Reply with quote
MattLofton
GURU


Joined: 23 Dec 2000
Posts: 4834
Location: USA

PostPosted: Wed Apr 12, 2006 1:47 am   
 
#GAG doesn't produce extra output, but since MUDs tend to display things double spaced it just looks like #GAG isn't doing its job completely. You will have to play around with multi-state triggers to get rid of the extra blank lines and prompts.

One thing you could do is create a screen-wide button. It wouldn't have to be very tall, so it'd remain out of the way even for the longest of prompts. The caption would be either a variable or variable expression representing the prompt line. The prompt trigger would then be free to #gag at will. Additionally, and this works very well with the shorter prompts, if you have a command buffer script you can include the variable holding all your commands in the queue and see them at all times.
_________________
EDIT: I didn't like my old signature
Reply with quote
SilentDawn
Beginner


Joined: 19 Jan 2006
Posts: 11
Location: Sydney, Australia

PostPosted: Wed Apr 12, 2006 4:00 am   
 
The only reason I moved from the MUD's java client to zMUD was because of automapping. I am slowly learning the power of zMUD's scripting abilities, but 95% of my scripts are simple triggers that the java client can do just as easily.

The big advantage for the java client is that it has a graphical display of room exits, room type and health stats.

I have the impression that it is possible to recreate that already in zMUD but it does not like easy. If it was available within cMUD, I believe it will be a selling point. People like GUIs and it is easier to quickly absorb information represented graphically.

If it isn't included in cMUD, I think there is an opportunity there for someone to sell it as a packaged add-on ... anybody?
Reply with quote
Rainchild
Wizard


Joined: 10 Oct 2000
Posts: 1551
Location: Australia

PostPosted: Wed Apr 12, 2006 5:11 am   
 
What Taz said. That's precisely the problem I have with capturing stuff to new windows too. You get the prompt showing up multiple times with blank lines between, but you can't arbitarily gag before/after because it might also show something like:

Code:
<358hp 290sp 367st>

Taz says 'How's the CMUD development coming along?'

<358hp 290sp 367st>

Zugg says 'Oooh, sometimes it makes my head hurt :('
You feel hungry.

<358hp 290sp 367st>

Rainchild arrives from the north.
Taz says 'Yes I can imagine.'

<358hp 290sp 367st>


So some way of automatically handling all those instances would be much nicer than writing weird triggers etc.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Apr 12, 2006 5:22 am   
 
Of course, the trick is to figure out an algorithm where CMUD could remove the extra lines you don't want without messing things up even worse. That's also the danger in trying to remove the prompt. There are lots of MUDs out there, and coming up with something that works on most of them will be tricky. Feel free to start a discussion about how you might go about doing this. The easier it is, the quicker it will get added.

Btw, your examples crack me up. Gee, I think I'll go get a snack now :)
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Wed Apr 12, 2006 9:24 am   
 
Personally I wouldn't be adverse to removing any blank lines before and after the prompt leaving:
Code:
Taz says 'How's the CMUD development coming along?'
Zugg says 'Oooh, sometimes it makes my head hurt :('
You feel hungry.
Rainchild arrives from the north.
Taz says 'Yes I can imagine.'
------------------------------------------- Bottom of Mud Output Window
<358hp 290sp 367st>
------------------------------------------- Or New Area for Static Prompt
That would be pretty cool. I'd still probably redirect chat. It would certainly make the main mud output window lean.

Of course like you say this is a huge scope to tackle even within the same mud there actually may be times I don't want to remove the blank lines before or after the prompt.

The thing is I think this really could be the KILLER feature of CMUD even though there is already the package library and all the other great stuff you are putting in. This is likely to be the one thing that will draw everybody to it from newbie to pro alike.

Time to get mudding and pasting output like crazy to see if we can come up with some generic way to achieve this goal.
_________________
Taz :)
Reply with quote
Rainchild
Wizard


Joined: 10 Oct 2000
Posts: 1551
Location: Australia

PostPosted: Wed Apr 12, 2006 10:32 pm   
 
I think this should just be a tick-box along with the rest suggested:

* automatically put prompt in status bar
* sticky latest prompt to bottom of output window
* strip prompts from output window
* strip prompts from log
* replace prompt with <script>
* 'n' blank lines before prompt
* 'n' blank lines after prompt

The last two - 'n' blank lines - will ensure that you have 'n' blank lines between any output and the prompt (either by stripping or inserting them as necessary). The reason for allowing insertion is for MUDs which don't send blank lines before or after their prompt but a player wishes to have the spacing.

If you set this to '0' you will get the output as Taz suggested:
Code:
Taz says 'How's the CMUD development coming along?'
Zugg says 'Oooh, sometimes it makes my head hurt :('
You feel hungry.
Rainchild arrives from the north.
Taz says 'Yes I can imagine.'
------------------------------------------- Bottom of Mud Output Window
<358hp 290sp 367st>
------------------------------------------- Or New Area for Static Prompt


If you set 'before' to '1' and 'after' to '0' get the output that I would prefer:
Code:
Taz says 'How's the CMUD development coming along?'

Zugg says 'Oooh, sometimes it makes my head hurt :('
You feel hungry.

Rainchild arrives from the north.
Taz says 'Yes I can imagine.'
------------------------------------------- Bottom of Mud Output Window
<358hp 290sp 367st>
------------------------------------------- Or New Area for Static Prompt


Also, prompt detection will have to support output which may be like:

Code:
<358hp 290sp 367st> Taz says 'How's the CMUD development coming along?'

<358hp 290sp 367st> Zugg says 'Oooh, sometimes it makes my head hurt :('
You feel hungry.

<358hp 290sp 367st> Rainchild arrives from the north.
Taz says 'Yes I can imagine.'

<358hp 290sp 367st>


So you cannot rely on there being a CRLF after the prompt to keep things simple.

Also I do not know how GA/EOR works, so you will need to keep that in mind as well.

Further to these options, some people may opt to keep the prompt in their output, for example they may just want to make CMUD display
Code:
<358hp 290sp 367st> Rainchild arrives from the north.
Taz says 'Yes I can imagine.'

as
Code:
<358hp 290sp 367st>
Rainchild arrives from the north.
Taz says 'Yes I can imagine.'


So I think it's going to need to be fairly customizable.
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Sat Apr 29, 2006 9:56 pm   
 
I was messing about with my prompt following the #gag post and somehow managed to make my prompt sticky at the bottom of the mud output window, take a look at the video (it's a non compressed avi of 28Mb so download may take a while).

How freaky is that?
_________________
Taz :)
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4692
Location: Pensacola, FL, USA

PostPosted: Sat Apr 29, 2006 11:47 pm   
 
Ive found that my prompt often still exists at the bottom of the screen until i get more mud output.
In your example i see the prompt, yet in the scrollback buffer its gone.
A bit annoying, but it is getting gagged once it gets past the cursor point.
_________________
Discord: Shalimarwildcat
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Sun Apr 30, 2006 12:00 am   
 
Are you talking about my video? I didn't do a scrollback and you can see the prompt updating while new mud output is arriving. Watch it nearer the end during the fight sequence. The smallish window at the top is just my chats being redirected.
_________________
Taz :)
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sun Apr 30, 2006 3:06 am   
 
It is actually very easy to do a sticky prompt with existing triggers.

Step 1 the full gag of the prompt.
#TRIGGER {^prompt text stuff$} {#GAG} "" {notrig|case}

Note the options selected the prompt is only gagged if it is on a completed line.

Step 2 the completion of the prompt line before sending a command.
#ONINPUT {*} {#SHOW {}}

That pretty much does the whole of it. It ensures that there is no text tacked on at the end of the prompt prior to gagging it, and puts command text on a seperate line allowing the prompt to be gagged. Slightly more sophisticated methods could be used to seperate out text from prompts, and to insure that sent commands only happen when not in the midst of receiving bunches of stuff, but there isn't that much more that is needed to sticky down the prompt.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
adamwalker
Apprentice


Joined: 12 Mar 2005
Posts: 195

PostPosted: Tue May 02, 2006 5:35 pm   
 
Code:
Hmm, I'll look into this. It's possible that over the years something happened to cause the screen refresh to happen before the triggers instead of after. And I'll have to check on "prompt" triggers since I know that zMUD tends to refresh the screen at the end of a prompt and that might be happening before the trigger has a chance to perform the gag.


zugg, any news on this refresh issue? i'd be very excited to see the refresh happening AFTER the triggers.

Thanks
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue May 02, 2006 7:25 pm   
 
This is not going to happen in the first beta, sorry. I've got my hands full with too many other more critical issues. I won't even have a chance to look at this until after the first beta release. It involves too much stuff that could cause a chain-reaction of side effects and I *really* need to focus on the most critical stuff to get the first release out.
Reply with quote
adamwalker
Apprentice


Joined: 12 Mar 2005
Posts: 195

PostPosted: Tue May 02, 2006 8:42 pm   
 
chears pal. definately, gettin the first release out comes first! now that i know its for a future consideration im more then happy.
Reply with quote
edb6377
Magician


Joined: 29 Nov 2005
Posts: 482

PostPosted: Thu May 04, 2006 4:20 am   
 
focus zugg focus.....eyes...b.l.u.r.r.y........ <<<<>>>> Must Finish Beta........

:) roflmao. J/K

so much to do so little time.. :P
_________________
Confucious say "Bugs in Programs need Hammer"
Reply with quote
edb6377
Magician


Joined: 29 Nov 2005
Posts: 482

PostPosted: Thu May 04, 2006 4:41 am   
 
#CLASS {StickyPrompt} {enable}
#TRIGGER "eprompt" {~<(%n)hp (%n)sp (%n)st~>} {
#GAG
#ONINPUT {*} {
#SHOW {}
#GAG
}
} "" {case|notrig}
#CLASS 0

Is my sticky prompt btw just so you know
_________________
Confucious say "Bugs in Programs need Hammer"
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Thu May 04, 2006 10:28 am   
 
Don't these require for you to input something before seeing the latest prompt update? In that video you'll see that I didn't have to input anything to see the latest prompt at the bottom of the screen.
_________________
Taz :)
Reply with quote
MattLofton
GURU


Joined: 23 Dec 2000
Posts: 4834
Location: USA

PostPosted: Thu May 04, 2006 10:21 pm   
 
This could just be taking advantage of how Zugg is detecting a simutronics prompt, but all I have to do is this:

#trigger {^prompt pattern(*)} {#sub {%1}}

There seems to be a nastily obscure bug regarding sent commands sometimes generating a "huh?" type of response from the game, but thus far I've no idea where it's located.
_________________
EDIT: I didn't like my old signature
Reply with quote
edb6377
Magician


Joined: 29 Nov 2005
Posts: 482

PostPosted: Fri May 05, 2006 2:38 am   
 
the one i did updates on anything done in game including input recieved from the mud. It updates anytime it sees the prompt. Not sure.. works fine for me
_________________
Confucious say "Bugs in Programs need Hammer"
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD Beta Forum All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net