Command Delay Mechanics

Started by Stalkerr, August 21, 2012, 06:40:38 PM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Although I'm not sure exactly how the code Vitoc has made for delay works, apparently there is already code for both pre/post command delay.  I don't expect our initial trials with these value to be spot on, or ever good...they might not even be tolerable.  There are 3 aspects we hope to address as we make these changes: 1, These changes must be megamud compliant 2,  The changes must keep the game feeling responsive 3, These changes should minimize the reward of macro play ie, a player should be able to achievements playing by hand as they can playing by macro.

We hope to meet these aspects in an effort to remove some key issues with macro play, such as instant lock picking, cheesy door guarding, instant stealthing(there are at least 2 different ways in which macro play run counter to game mechanics, such as a hide^Mhide^Mhide^Mhide^Mhide^Mhide^M macro to guarantee successful hiding, or macros designed to pull off a long string of commands while remaining hidden.

In this effort we will start with commands that have obvious abuse potential, such as stealth, search, close and get.  Once we have those working in a fashion that we are happy with will be decide if we want to move on and include delays in other less mechanically abusable commands.

If players have any input feel free to add to this conversation here.  I'd like for this thread to be constructive and informational so that it can be more of a tool for Vitoc, Gardner, and myself rather than so kind of smack talk battle ground. 

Normal gameplay should still be as responsive. There shouldn't be any delay on sneaking and then moving rooms, for example. So the delay needs to be smart enough to recognise the next command and either delay it or allow it.

sea^Mwcur luci^Msn^Mhide^Mbs^M     - good candidate for delay

e^Mhide^Mbs^M     - can't see any reason to delay anything here?

sea^Mwcur luci^Ma^M      - ?????

and why delay get?





Quote from: Vile on August 22, 2012, 04:32:44 AM
Normal gameplay should still be as responsive. There shouldn't be any delay on sneaking and then moving rooms, for example. So the delay needs to be smart enough to recognise the next command and either delay it or allow it.

sea^Mwcur luci^Msn^Mhide^Mbs^M     - good candidate for delay

e^Mhide^Mbs^M     - can't see any reason to delay anything here?

sea^Mwcur luci^Ma^M      - ?????

and why delay get?






I'm having a little trouble following you, but delay would be defined for each command, and can be define pre command, post command, or both.  These delays are in MS and in most cases will have values equivalent to a fraction of a second. One example, currently you can have a level 1 hog mystic spam a hide^Mhide^Mhide^Mhide^Mhide^Mhide^Mhide^Mhide^Mhide^Mhide^Mhide^Metcetcetc macro and even if you only have a 1% chance you can pretty much guarantee an instant hide.    With the delay change, even though you can still hidehidehidehidehidehidehidehidehide it will take maybe 1 second for every 5 hide commands due to a 200MS post command delay.  Meaning that you will enter 1 hide..then roll, if successful you will be immediately hidden  with a 200ms delay before the next command will be processed.

Why not just enforce the spam filter thing with spamming as opposed to forcing delays through commands on people...Sounds easier to implement imo as yall have already done such a thing but only through chat channels...Or however that currently works.

Quote from: Mersinary on August 24, 2012, 09:05:16 PM
Why not just enforce the spam filter thing with spamming as opposed to forcing delays through commands on people...Sounds easier to implement imo as yall have already done such a thing but only through chat channels...Or however that currently works.

If we go this route then ALL sysop commands would need to be exempted from this.

Quote from: Mersinary on August 24, 2012, 09:05:16 PM
Why not just enforce the spam filter thing with spamming as opposed to forcing delays through commands on people...Sounds easier to implement imo as yall have already done such a thing but only through chat channels...Or however that currently works.

+1

And with the hide^Mhide^Mhide^M thing. It would be much better to change it so a failed hide breaks hide.

I want to take a step in a different direction here.

Spamming search makes mud 10 times more enjoyable. I propose making the roll to search for players only valid every second, so a one second delay. You can still search to your heart's content for anything in the room -- except people.

sea^Msea^Msea^Msea^M  (instantaneous results below)
Your search revealed nothing.
You notice Lucifer hiding in the shadows.
Your search revealed nothing.
You notice wooden stake.

When in reality, Lucifer, Young, his two dupes, Hate, and Old Man Crapper were all hidden in the shadows, along with wooden stake, black cauldron, and Feyr.

Quote from: Torque on August 27, 2012, 10:32:10 AM
I want to take a step in a different direction here.

Spamming search makes mud 10 times more enjoyable. I propose making the roll to search for players only valid every second, so a one second delay. You can still search to your heart's content for anything in the room -- except people.

sea^Msea^Msea^Msea^M  (instantaneous results below)
Your search revealed nothing.
You notice Lucifer hiding in the shadows.
Your search revealed nothing.
You notice wooden stake.

When in reality, Lucifer, Young, his two dupes, Hate, and Old Man Crapper were all hidden in the shadows, along with wooden stake, black cauldron, and Feyr.

Search as many times as you want.  You won't be seeing Lucifer or Young anywhere.

Quote from: addycorp on August 27, 2012, 04:13:11 PM
Search as many times as you want.  You won't be seeing Lucifer or Young anywhere.

the luci is omnipresent.....

I use macros to get back equip in a boss room as well. I hope this wouldnt be limited:

n^Mg feyr^Ms^M

or something of the sort

Quote from: Savik on August 31, 2012, 01:45:21 PM
I use macros to get back equip in a boss room as well. I hope this wouldnt be limited:

n^Mg feyr^Ms^M

or something of the sort

The Get command does not have a substantial delay associated with it.  Movement commands on the otherhand will not work the way you want them to in a macro.

Quote from: Savik on August 31, 2012, 01:45:21 PM
I use macros to get back equip in a boss room as well. I hope this wouldnt be limited:

n^Mg feyr^Ms^M

or something of the sort


Whether or not a delay is added should depend on the following command. For example:

n^Mget feyr^Ms^M  =  perhaps no delay when "get" is followed by a direction/movement command.

But, if: (and I think original MajorMUD does this)

n^Mget feyr^Mget boots^Mget helm^Ms^M  =  add a delay after "get" when it's followed by another "get"

This will prevent players from picking up an entire deathpile with one macro. If there is a delay after each "get" command, it will allow for multiple player to all scramble to pick up items from the floor.



~{RoBDaWG - Jigga - Rza}~   ||  ~{Sysop of UtopiaBBS.com}~

We have a mechanism to add pre-delays to every different possible command, so that the delay must finish before the command actually executes.

What I need is a list of delays for the various commands.  It would be very easy to implement.


TGS v1.0 (coming soon)

bash door definitely needs the delay, instant cast (between round) spells maybe should have .2-3 of a second, hide should have .2-3 of a second, sneak maybe not. Attacking should be fine. These changes shouldnt affect hand play that much but macro based play really shouldnt be encouraged when it comes to pvp.

the delay on sea sw ie for traps is too much
and same with the disarm trap it take too long actions now just sit there stalking pretty much