2022-02-04 07:03:03

Hello guys
So as half of the community know I've been making soundpacks with no coding knowledge. Simply put, there's one major trouble bugging me for as long as I can remember and I can't come up with any solution to fix it.
So, unlike alter aeon which has command stacking built in, most muds don't have it. When you use stacking from the client and someone says something to you with a semicolon in it, say it's your stacking symbol, it fires the command when it's not supposed to. Even when you read history buffer or something, it fires the command. I don't know why it does that and have no way to fix it. Anyone got an idea to help with this, please?

Why do ghost hunters have to hunt ghosts? Well, there's a fear of being ghosted out there. They may need therapy as well as their ghost hunting kit.

Thumbs up

2022-02-04 17:45:37

Change your command stacking character? It's in the configure menu under commands.

thanks,
Michael

Thumbs up

2022-02-04 17:46:53

OK, you're slightly misunderstanding the concept. The MUD doesn't have to support command stacking, in fact, a lot of them don't like you doing it. This is a clientside only thing, and in MUSHclient, you enable or disable it from game > configuration > commands. You uncheck the box. I couldn't tell from your post whether you want it on or off, but if you want it on, check the box and then put semicolon as your command stack prefix.

I don't even have time for my own BS, what makes you think I have time for yours?

Thumbs up

2022-02-05 02:35:27

I don't want it off. All I want is for anything after the semicolon people or the mud output to you to stop firing like a command back to the mud. Say, if the output says, "Someone confirms, "My cookie is awesome; it's the matter of fact." The it's the matter of fact will fire to the mud as if it was a command against your typing. Changing symbols doesn't fix the problem given it'll fire anyway regardless of what I change it to. Let's say I change it to # and the ascii characters that can't be removed from certain screens have a billion #. It's gonna fire a single one of them.

Why do ghost hunters have to hunt ghosts? Well, there's a fear of being ghosted out there. They may need therapy as well as their ghost hunting kit.

Thumbs up

2022-02-05 03:25:25

If that's actually happening, you've probably done something weird like configure your trigger to send the trigger input to the output or something.  By default, Mushclient triggers cannot break in this way.

My Blog
Twitter: @ajhicks1992

2022-02-05 04:44:35

No, it won't, unless you've broken it in some weird way. If command stacking is off, and you're still getting this behavior, then you have a bad trigger somewhere. I mean, it's easy to create this behavior, but most of the time it's not what you want. I use it with aliases from time to time to pass the actual typed line to the MUD while I go onto do more things like flip a flag or start some task.

If it is a trigger, you have some fun times ahead because your packs usually have upwards of 500 triggers. One way to help catch it is to temporarily enable the trace and make it reproduce the undesirable behavior, then turn it off and look through what it out put to see if you can find the trigger.

One more thing, if the # character is causing issues, you could have speed walking turned on. It's found in the same place, game > configuration > commands.

I don't even have time for my own BS, what makes you think I have time for yours?

Thumbs up

2022-02-05 05:03:37

I think what's happening is that other people in the mud saying things trigger his bot to send a command containing what they said, not that him typing is going wrong.

I'm going to guess that it's something like "I can speak text with a text speaking alias" rather than calling a lua function, which you shouldn't do, and stuff like that is why AA blocks semicolon.  I am far from the only person who uses  semicolon in my sentences and I cannot tell you how freaking annoying it is that everyone gets this wrong and we have to do that.

My Blog
Twitter: @ajhicks1992

2022-02-05 05:34:57

It's not off. My command stacking is on and it does that. It doesn't matter what symbol I change it to. It still does the same. Doesn't matter if triggers are on or off. As long as the message is behind the symbol that's supposed to be for command stack, it'll be sent to the mud. This isn't me typing anything. This is when people send me something containing that.

Why do ghost hunters have to hunt ghosts? Well, there's a fear of being ghosted out there. They may need therapy as well as their ghost hunting kit.

Thumbs up

2022-02-05 05:40:00

If triggers are off, then that's physically impossible unless you've created a plugin, and then it doesn't matter what that UI setting says, it's gonna execute what it fines in that plugin.

I don't even have time for my own BS, what makes you think I have time for yours?

Thumbs up

2022-02-05 06:41:19

That is extremely odd. It shouldn't have anything to do with any text coming in, it should only work on text going out. So either there's a weird issue in a script or trigger somewhere, or something is seriously weird with your mushclient.
Have you tried turning command stacking off? Does it happen then? As was said, most muds who don't have it for themselves, don't generally allow it, and nothing is stopping you from having aliases that do multiple commands.

thanks,
Michael

Thumbs up

2022-02-05 06:54:34

Yeah I am about 99% sure I know what's going on here.

MUSHclient Documentation wrote:

The Execute function lets you execute arbitrary commands as if they were typed into the command window.

The command will be parsed exactly the same as the command window parser, depending on currently-set options (eg. speedwalking, command stacking, scripting etc.).

This is all fine and dandy when you're using execute to store chats in buffers on a mud that knows how execute can be abused to make players do things. This is why alteraeon blocks semicolons. On the mud I work for we only became aware of this when some player was exploiting people they knew that were running a soundpack into giving them their hard won text and in some cases tricking them into emoting sex acts on people.
You'll want to paste this into the script area of whatever you're using to catch and store messages from the mud:

function ExecuteNStack(cmd)
-- temporarily disable command stacking to prevent potential exploitation
-- get the status of enable_command_stack option
 local original_stack_setting = GetOption("enable_command_stack")
--now switch it off
 SetOption("enable_command_stack", 0)
-- call execute to do the thing you want it to do
 Execute(cmd)
-- restore enable_command_stack to the setting we got earlier
 SetOption("enable_command_stack", original_stack_setting)
end

Instead of calling Execute from your triggers you will now call ExecuteNStack() and I seriously recommend  calling it for every channel, say, tell or whatever.

Every record has been destroyed or falsified, every book rewritten, every picture has been repainted, every statue and street building has been renamed, every date has been altered. And the process is continuing day by day and minute by minute. History has stopped. Nothing exists except an endless present in which the Party is always right.

Thumbs up

2022-02-05 07:25:04

Yeah, but so I'm curious.  Why aren't you just using Lua to store your history buffers? Why in the world do you need to send commands to your games for this?

My Blog
Twitter: @ajhicks1992

2022-02-05 07:42:18

Hold on, how many of these scripts do I need exactly? And I can't have triggers off because my packs need them.

Why do ghost hunters have to hunt ghosts? Well, there's a fear of being ghosted out there. They may need therapy as well as their ghost hunting kit.

Thumbs up

2022-02-05 08:01:24

But do you need command stacking? Just turn it off. You can still make aliases and triggers that do multiple commands if the mud allows them, and most muds that do have their own command stacking character.

thanks,
Michael

Thumbs up

2022-02-05 08:03:31

Your triggers can send to script and you can write lua code in them.  You're supposed to do that and things like it.  If you know absolutely zero programming here, you're going to have a bad time.

My Blog
Twitter: @ajhicks1992

2022-02-05 08:39:13

So the issue is with the output functions plugin that's packaged with Mush-Z.
It's always had this issue but nobody noticed it because as you said, alter Aeon doesn't allow you to send the semicolon character when communicating.
if you grab the output functions plugin from the Chatmud distrobution of mushclient (chatpack.org) the problem should be resolved.
I think there are other Mushclient soundpacks that have fixed that bug, but not sure which.

I'm probably gonna get banned for this, but...

Thumbs up