SRL Archive - General

User defined MSI_AutoResponding


NCDS

2010-09-21 17:31:56

Just a thought I've had, but seems like it could be a nice feature.

It seems to me like a lot of people tend to watch their characters auto.

How does everyone feel about an AutoResponder that stores all the QuickChat responses and also has an option for "other".

The idea comes from RM's guild miner. We would designate a "hot key" that, if pressed, would pop up a little form with a drop down menu of all the QuickChat replies, and also have a box to type in for any other response you may want to say.

Then select or type, the message you want your RS char to say, and it will happen.

Personally I don't like autoResponders as they can fairly easily give away the fact that your autoing, but I really like this method.

What's everyone's views on this?

Sir R. M8gic1an

2010-09-21 23:35:31

Id like an autoresponder :)

~RM

Coh3n

2010-09-22 13:30:53

Well I don't think a hotkey would work well. That's what we originally tried to do with the player remote and it proved to, well, suck. I think an extension would be the best way to go (again).

This is just me, but I find it completely pointless to watch your character while it's autoing. I mean, why not just play legit (unless you're testing something of course).

NCDS

2010-09-22 13:50:51

From: Coh3n
Well I don't think a hotkey would work well. That's what we originally tried to do with the player remote and it proved to, well, suck. I think an extension would be the best way to go (again).

Whatever work's, but I would like to have a form with all the QuickChat responses and a box to type your own response in.

Why wouldn't/didn't a F** key work?

From: Coh3n

This is just me, but I find it completely pointless to watch your character while it's autoing. I mean, why not just play legit (unless you're testing something of course).

That's something I'm sure people could argue forever. Just some people watch movies etc. while they auto, especially with main accounts.

Coh3n

2010-09-23 17:29:30

From: NCDS
Whatever work's, but I would like to have a form with all the QuickChat responses and a box to type your own response in.

Why wouldn't/didn't a F** key work?

I think it was because the procedure that called IsFKeyDown wasn't being called often enough. I like the idea of an extension better anyway so we aren't constantly calling this procedure for a feature that the user may not even use.

NCDS

2010-09-23 18:21:06

From: Coh3n
I think it was because the procedure that called IsFKeyDown wasn't being called often enough. I like the idea of an extension better anyway so we aren't constantly calling this procedure for a feature that the user may not even use.


Ok, so care to give me a quick over view of how you would like to go about it? Then I can get started :)

Coh3n

2010-09-23 18:26:46

From: NCDS
Ok, so care to give me a quick over view of how you would like to go about it? Then I can get started :)

I haven't written an extension myself, but I would take a look at msi_player_remote.sex as it'll work the same way (using the INI functions and a text file). You may also want to generalize MSI_WriteINI/DeleteINI to take parameters so they will work for any file an any amount of elements. Shouldn't be too hard.

procedure MSI_WriteINI(Path: string; Headers: TStringArray; Subs: T2DStringArray);
There may be an easier way to do that though to make it work for both extensions. That's just the first thing that came to mind.

Other than that, use your imagination for the form. :) Oh, and move thread to public. ;)

NCDS

2010-09-23 18:30:56

Moved.

I should be able to get started on this tonight sometime.

I'm sure I'll be in touch with you on MSN…if your on.. *hint* ;)

NCDS

2010-09-26 22:18:29

Now that I think about it more and look into it a bit, I think an Extension might be a tad extreme for such a simple task.

The is no way I have time to gather all the QuickChat info as there is a sh*t load more than I had expected.

This is all RM does in his GuildMiner:

if IsFKeyDown(12) then
begin
s := Readln('What would you like to type ingame?');

if s = '' then
exit;

TypeSend(s);
end;
Then he calls it in his AntiRandoms procedure, which would work just as well for us I would think.

AntiRandoms are called in pretty much every loop that your in a location someone would talk to you.

We could always over time collect the QuickChat data and then make that into an Extension, but I think this would suffice nicely for now to be honest.

Thoughts on this?

Coh3n

2010-09-28 14:04:11

Try it out. Shuttleu said it wouldn't detect when an F key was down, but I never tried myself.

Blumblebee

2010-09-28 15:50:31

From: NCDS
Now that I think about it more and look into it a bit, I think an Extension might be a tad extreme for such a simple task.

The is no way I have time to gather all the QuickChat info as there is a sh*t load more than I had expected.

This is all RM does in his GuildMiner:

if IsFKeyDown(12) then
begin
s := Readln('What would you like to type ingame?');

if s = '' then
exit;

TypeSend(s);
end;
Then he calls it in his AntiRandoms procedure, which would work just as well for us I would think.

AntiRandoms are called in pretty much every loop that your in a location someone would talk to you.

We could always over time collect the QuickChat data and then make that into an Extension, but I think this would suffice nicely for now to be honest.

Thoughts on this?


That won't work unless you multi-thread won't it? Or if it's in a loop

Coh3n

2010-09-28 19:50:16

From: Blumblebee
That won't work unless you multi-thread won't it? Or if it's in a loop

It would get called every time MSI_FindRandoms is, which is in a lot of loops.

We could just tell the user to hold the F key until the window pops up or whatever we use.

NCDS

2010-09-28 19:57:07

I will be testing this tonight so I should be able to answer everyone's questions.

Sir R. M8gic1an

2010-10-06 00:05:51

So…?

~RM

NCDS

2010-10-06 12:35:32

From: Sir R. Magician
So…?

~RM


Sorry, I've gotten a bit side tracked from this with other thing's.

I've got to work with GetMMLevels later anyways so I can probably do this then.