Skip to content

Commit

Permalink
Revise: following peer review of a duplicate PR
Browse files Browse the repository at this point in the history
In #5415 which is a (presumably accidental) duplicate of this PR @vadi2
suggested the following as a replacement for the tool-tip for the option:
"Go-Ahead (GA) tells Mudlet when the game server is done sending text. On
games that don't support GA, this option controls how long Mudlet will wait
for more text to arrive. Larger values will help reduce the risk that a
large piece of text has unintended linebreaks in the middle of it, which
would break triggers. Lesser values will increase the risk of text getting
broken up, but will make the game feel more responsive."

in case it is not clear from the commit I have revised the text to partial
include some of that - and also taken on board Leris/Kebap who pointed out
on Discord that GA is not the only means of the Server signalling that it
has finished sending out packets. The text is now along the lines of
(within Markup limitations):
"*Go-Ahead* (`GA`) / *End-of-record* (`EOR`) signalling are Telnet enhancements
that tell Mudlet when the Game Server is done sending a piece of text. On
Game Servers which do not provide `GA` or `EOR` this option controls how
long Mudlet will wait for further network packets (i.e. text or other
'out-of-band' `OOB` data) to arrive. The default is 300 milli-seconds.
Larger values will help to prevent unintended linebreaks in the middle of
big pieces of text which may break triggers; smaller values may make Mudlet
seem more responsive to incoming text but runs a risk of breaking up text
(or more problematically `OOB` data).

*Adjustment of this persistent per-profile control is **NOT** recommended
unless you understand what it is doing and why it might be helpful.
Fine-tuning is likely to depend on particular network conditions and MUD
Game servers and a lower (shorter wait) setting that works for one user may
not be long enough for others.*"

He also suggested replacing the option as it is called
"Network packet timeout:"

on the basis that: "This text is great for an engineer who knows the
context, but not so much for a player who doesn't. How about:
'Wait up to [ ]ms for more text to arrive?'"

however I felt that was too wordy and could get broken in translation to
other locales. Also - given the potential for breakage,
particularly if it is set too small - we do not want the player who does
not get it, to play around with it.

Note that although I now mention something to the effect that the setting
is per profile and is saved between sessions that has not been coded yet.
It will follow in an additional commit that is pending.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
  • Loading branch information
SlySven committed Sep 3, 2021
1 parent 129adfe commit d11e3eb
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 5 deletions.
2 changes: 1 addition & 1 deletion src/ctelnet.h
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ public slots:
QByteArray mEncoding;
QTimer* mpPostingTimer;
// We do not directly adjust the interval for the above because doing so
// while it is active changes the timerId which might have unforseen
// while it is active changes the timerId which might have unforeseen
// effects - so instead we change the following and the revised value is
// then used the next time the timer is stopped and then started:
int mTimeOut = 300;
Expand Down
7 changes: 3 additions & 4 deletions src/ui/profile_preferences.ui
Original file line number Diff line number Diff line change
Expand Up @@ -3493,7 +3493,7 @@ you can use it but there could be issues with aligning columns of text</string>
<item row="6" column="0">
<widget class="QLabel" name="label_networkPackerTimeout">
<property name="text">
<string>Network packet timeout:</string>
<string>Network packet timeout (milli-seconds):</string>
</property>
<property name="buddy">
<cstring>spinBox_networkPacketTimeout</cstring>
Expand All @@ -3503,11 +3503,10 @@ you can use it but there could be issues with aligning columns of text</string>
<item row="6" column="1">
<widget class="QSpinBox" name="spinBox_networkPacketTimeout">
<property name="toolTip">
<string>&lt;p&gt;On Game Servers which do not use GA &lt;i&gt;go-ahead&lt;/i&gt; signalling this sets how long Mudlet will wait for further network packets before assuming that there is not any more to arrive. The default is 300 milli-seconds. Larger values will help to prevent &lt;i&gt;packet fragmentation&lt;/i&gt; but can make Mudlet seem less responsive to incoming Game text; smaller values may make Mudlet seem to handle such text faster but runs the risk of breaking what is supposed to be a single piece of text or out-of-band game data into multiple chunks. This can break triggers or OOB features.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Adjustment of this control is &lt;b&gt;NOT&lt;/b&gt; recommended unless needed and tested for particular network conditions and MUD Game servers.&lt;/i&gt;&lt;/p&gt;</string>
<string>&lt;p&gt;&lt;i&gt;Go-Ahead&lt;/i&gt; (&lt;tt&gt;GA&lt;/tt&gt;) / End-of-record (&lt;tt&gt;EOR&lt;/t&gt;) signalling are Telnet enhancements that tell Mudlet when the Game Server is done sending a piece of text. On Game Servers which do not provide &lt;tt&gt;GA&lt;/tt&gt; or &lt;tt&gt;EOR&lt;/tt&gt; this option controls how long Mudlet will wait for further network packets (i.e. text or other &amp;quot;out-of-band&amp;quot; &lt;tt&gt;OOB&lt;/tt&gt; data) to arrive. The default is 300 milli-seconds. Larger values will help to prevent unintended linebreaks in the middle of big pieces of text which may break triggers; smaller values may make Mudlet seem more responsive to incoming text but runs a risk of breaking up text (or more problematically &lt;tt&gt;OOB&lt;/tt&gt; data).&lt;/p&gt;&lt;p&gt;&lt;i&gt;Adjustment of this persistent per-profile control is &lt;b&gt;NOT&lt;/b&gt; recommended unless you understand what it is doing and why it might be helpful. Fine-tuning is likely to depend on particular network conditions and MUD Game servers and a lower (shorter wait) setting that works for one user may not be long enough for others.&lt;/i&gt;&lt;/p&gt;</string>
</property>
<property name="suffix">
<string> milli-seconds</string>
<string/>
</property>
<property name="minimum">
<number>10</number>
Expand Down

0 comments on commit d11e3eb

Please sign in to comment.