 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Mon Nov 05, 2007 8:54 pm
[2.10] A problem with screen buffer? Screen not painted properly. |
I'm sorry for quite a long procedure for this and it is still not 100% reproducible. I've already shortened it several times, but further reduction causing this bug stop to appear.
Do not search any meaning in the script - it was a scratch and after reduction it became even worse.
1) Open CMUD, hit Esc.
2) Enter
| Code: |
| #VAR btnFightingCaption {Not fighting};#VAR CombatState 0;#VAR valFighting 0; |
3) Next 2 settings are quite large, so open the editor.
4) Choose New->Button, switch to XML view, delete all what you'll see there and paste the following text:
| Code: |
<button name="btnFighting" type="Toggle" variable="valFighting" transparent="false" priority="6080" id="4">
<caption>@btnFightingCaption</caption>
<value>//Pressing this button sets "Fighting mode" for current character
#IF (@CombatState < 2) {CombatState = 12}</value>
<tooltip>Character state (Fighting, not fighting)</tooltip>
<state caption="@btnFightingCaption" color="red">//Depressing this button sets the "Not fighting" mode
#IF (@CombatState > 1) {CombatState = 10}</state>
</button> |
5) Choose New->Trigger, switch to XML view, delete all what you'll see there and paste the following text:
| Code: |
<trigger type="Expression" priority="6120" id="6">
<pattern>(@CombatState+1)</pattern>
<value><![CDATA[#SAY Trigger action;
#SWITCH (@CombatState)
(0)
{
#IF (@valFighting <> 0)
{
valFighting = 0;
btnFightingCaption = "Not fighting";
#SAY "CombatState=0, Set val=0 and caption=Not fighting";
}
}
(1)
{
#IF (@valFighting <> 1)
{
valFighting = 1;
}
btnFightingCaption = "Cooling down";
#SAY "CombatState=1, Set val=1 and caption=Cooling down";
}
(2)
{
#IF (@valFighting <> 1)
{
valFighting = 1;
}
btnFightingCaption = "FIGHTING";
#SAY "CombatState=2, Set val=1 and caption=FIGHTING";
}
(10)
{
btnFightingCaption = "Not fighting";
#SAY "CombatState=10, Set caption=Not fighting";
}
(12)
{
btnFightingCaption = "FIGHTING";
#SAY "CombatState=12, Set caption=FIGHTING";
}]]></value>
</trigger> |
6) Enter anything in your command line until main window scrolling begins.
7) Now begin enter the following commands:
You should see:
1<new line>
2<new line>
...some script output...
You should see:
1<new line>
2<new line>
...some script output...
May be you will notice the bug at this stage already
The main idea - you should enter 1;2; as the placeholders just to note lines gagging and CombatState=... to run the script.
8)Repeat step 7 as necessary
9) If you notice that "1" or "2" missing - here is it! Now, open the Editor window (or any window you like) and use it as brush over text in main screen - you will see that area where you've move that window gets properly repainted and "missed lines" appears where they should be. |
|
|
|
 |
Tech GURU

Joined: 18 Oct 2000 Posts: 2733 Location: Atlanta, USA
|
Posted: Tue Nov 06, 2007 2:37 am |
Confirmed.
|
|
_________________ Asati di tempari! |
|
|
 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Tue Nov 06, 2007 8:57 pm |
Step 4 may be shortened to
| Code: |
<button name="btnFighting" type="Toggle" variable="valFighting" transparent="false" priority="6080" id="4">
<caption>@btnFightingCaption</caption>
<state caption="@btnFightingCaption" color="red"></state>
</button> |
I wonder if this button can be excluded from the procedure at all. Btw, the bug behavior has change with new step 4: instead of hiding it now shows extra lines
P.S. I have noticed strange xml colors for original step 4, although I do not see any syntax error in the xml. |
|
|
|
 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Sun Nov 11, 2007 10:24 am |
I'd gonna bump this for 2.11, but was unable to perform step 4! Can anyone check, please, if button creation in xml tab works? It will take just a couple of seconds for you...
|
|
_________________ My personal bug|wish list:
-Wrong Priority when copy-paste setting
-1 prompt trigger for Mapper, Session and General Options, not 3 different!
-#SECTION can terminate threads
-Buttons can't start threads |
|
|
 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Thu Nov 22, 2007 9:51 pm [2.13] - Text tearing |
Here is it again, now with text tearing in the timestamps column. No procedure this time, just two screenshots, but if you will set time format like mine, maybe you'll see some signs of this tearing while you online and playing. I saw in 2.12 that delta time sometimes writes after the closing parenthesis, not before it. Now in 2.13 it becomes too obvious.
See it: here I just click-click-click on a button that sends cast command to MUD. Note how timestamps get written.
Now, take your Preferences window and move it over the timestamps. Over and over. You will see some interesting changes. It is not a bad picture, that is what I actually see.
I don't know is it related or no, but this time I've got a crash after all of this when I tried to close CMUD with red cross. This was so unexpected that I'd press the wrong button and close the window without sending a report. Sorry. Here is the report from the bugreport.txt:
| Code: |
operating system : Windows XP Service Pack 2 build 2600
system up time : 8 minutes 35 seconds
program up time : 1 minute 16 seconds
processors : 2x Intel(R) Pentium(R) D CPU 3.40GHz
physical memory : 1536/2046 MB (free/total)
free disk space : (*:) 68,24 GB
display mode : 1680x1050, 32 bit
process id : $f94
allocated memory : 27,25 MB
executable : cMUD.exe
exec. date/time : 2007-11-22 02:47
version : 2.13.0.0
madExcept version : 3.0b
callstack crc : $1787ebe2, $86e67f91, $86e67f91
exception number : 1
exception class : EAccessViolation
exception message : Access violation at address 00C6B5EB in module 'cMUD.exe'. Read of address 0000000D.
Main ($e08):
00c6b5eb +5f cMUD.exe PARENT 10863 +7 TParentForm.DockManagerCloseQuery
0071b736 +36 cMUD.exe aqDockingBase 7779 +3 TaqCustomDockingManager.DoControlCloseQuery
00716c21 +91 cMUD.exe aqDockingBase 5015 +12 TaqCustomDockingControl.DoCloseQuery
0071421a +5e cMUD.exe aqDockingBase 3600 +8 TaqCustomDockingControl.InternalRemoveFromDocking
00718527 +1f cMUD.exe aqDockingBase 5995 +4 TaqCustomDockingContainer.InternalRemoveFromDocking
00714335 +45 cMUD.exe aqDockingBase 3636 +5 TaqCustomDockingControl.RemoveFromDocking
0071986f +2b cMUD.exe aqDockingBase 6642 +5 TaqCustomDockingSite.HideMainTreeItem
00718ba2 +76 cMUD.exe aqDockingBase 6210 +14 TaqCustomDockingSite.SetMainTreeItem
00707fbc +7c cMUD.exe aqDocking 5191 +18 TaqDockingManager.ParentFormDestroy
0070a9d6 +46 cMUD.exe aqDocking 6793 +6 TaqDestroyNotifier.ParentDestroy
006d61e8 +10 cMUD.exe aqDockingUtils 1714 +2 TaqWindowEventFilter.DoDestroy
006d635b +b3 cMUD.exe aqDockingUtils 1768 +33 TaqWindowEventFilter.WndProc
0047fecc +14 cMUD.exe Classes 10966 +8 StdWndProc
7c90eae0 +10 ntdll.dll KiUserCallbackDispatcher
77d3e2f2 +44 USER32.dll SendMessageA
006d637d +d5 cMUD.exe aqDockingUtils 1770 +35 TaqWindowEventFilter.WndProc
0047fecc +14 cMUD.exe Classes 10966 +8 StdWndProc
7c90eae0 +10 ntdll.dll KiUserCallbackDispatcher
77d3e670 +0a USER32.dll DestroyWindow
005093b8 +28 cMUD.exe Controls 6095 +3 TWinControl.DestroyWindowHandle
0052878c +3c cMUD.exe Forms 3758 +4 TCustomForm.DestroyWindowHandle
00525b1a +66 cMUD.exe Forms 2633 +5 TCustomForm.Destroy
0055a136 +12 cMUD.exe CustomForm 62 +1 TzCustomForm.Destroy
00779f2d +19 cMUD.exe International 47 +2 TInterForm.Destroy
0077aa76 +12 cMUD.exe zsForm 91 +1 TzForm.Destroy
00a2520e +12 cMUD.exe MultiForm 338 +3 TMultForm.Destroy
0047e38e +5a cMUD.exe Classes 9853 +9 TComponent.DestroyComponents
005231d6 +36 cMUD.exe Forms 1348 +3 DoneApplication
0040e844 +3c cMUD.exe SysUtils 3409 +6 DoExitProc
004059af +1e cMUD.exe System @Halt0
7c91312f +69 ntdll.dll RtlUnicodeStringToAnsiString
7c812907 +b6 kernel32.dll GetVersionExA |
|
|
|
|
 |
Zugg MASTER

Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Mon Nov 26, 2007 4:23 pm |
Does this only happen when you use the timestamp format that you showed? Does it also happen with the default timestamp format?
|
|
|
|
 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Mon Nov 26, 2007 6:38 pm |
It does not happen with the default timestamp format.
Interestingly, if you have your mud screen full of lines and gonna change timestamp format then you can watch "in real-time" that everything will work fine until you type closing parenthesis. I.e. "hh:nn:ss (qqq" works correctly, but "hh:nn:ss (qqq)" is not. |
|
_________________ My personal bug|wish list:
-Wrong Priority when copy-paste setting
-1 prompt trigger for Mapper, Session and General Options, not 3 different!
-#SECTION can terminate threads
-Buttons can't start threads |
|
|
 |
Zugg MASTER

Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Nov 27, 2007 10:47 pm |
Found the bug. Fixed for the next version.
|
|
|
|
 |
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Sun Dec 02, 2007 11:50 am |
Confirmed.
Looks like the first bug from this thread is already fixed in 2.14a too. Nice work, Zugg! |
|
_________________ My personal bug|wish list:
-Wrong Priority when copy-paste setting
-1 prompt trigger for Mapper, Session and General Options, not 3 different!
-#SECTION can terminate threads
-Buttons can't start threads |
|
|
 |
|
|
|