Operation: Overkill World HQ
Welcome, Guest. Please login or register.
March 29, 2024, 08:38:37 am

Login with username, password and session length
Search:     Advanced search
Be sure and visit Operation Overkill World HQ!
1079 Posts in 253 Topics by 97 Members
Latest Member: Lord Blackfair
* Home Help Search Login Register
+  Operation: Overkill World HQ
|-+  Operation: Overkill BBS Door Game
| |-+  Bugs and Annoyances
| | |-+  Ansiterm 1.20
« previous next »
Pages: [1] 2 Print
Author Topic: Ansiterm 1.20  (Read 21974 times)
Dustin
Leader of the Lizards
Global Moderator
Newbie
*****
Offline Offline

Posts: 130


View Profile WWW
« on: June 22, 2007, 03:13:11 am »

The Complex HQ menus are not drawing instantly.  Perhaps the code identifier isn't being parsed right?  The ANSI menu screen draws instead of instantly appearing.

The sounds really need to be re-done in this day and age of technology. Wink
Logged
Tarix
Admin
Newbie
*****
Offline Offline

Posts: 275


View Profile WWW
« Reply #1 on: June 22, 2007, 01:26:37 pm »

The complex HQ menu has changed and there hasn't been a new ANSI term released.  The game actually knows its talking to an old term and sends the whole menu instead of the code.   Cheesy

Feel free to redo the sound.  You're the sound freak!  Give me some nice 96/24 sounds and I'll implement them.
Logged

dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #2 on: June 24, 2007, 08:10:26 am »

I was testing the differences between the ansiterm and a telenet session last night and it seemed like the telnet session had less lag.  It seemed like when I was in the AFB there was a considerable amount of lag when I walked over poison gas, rubble, fence, pit, or anything other than the bare floor.  I tried disabling ansiterm in the ansiterm and that didn't help.  What helped the most, but still didn't really solve the terrible lag was when I turned off the ansicolor.  This made an improvement in both the telnet and ansiterm sessions.   I verified that no one else logged into the BBS during my play times.  If there is a way to make the ansiterm as smooth as the old one that would be awesome.  What takes 10 minutes to do in the game now would take 2 minutes if it were improved.
Logged

IGN:BIGD
Dustin
Leader of the Lizards
Global Moderator
Newbie
*****
Offline Offline

Posts: 130


View Profile WWW
« Reply #3 on: June 24, 2007, 09:02:10 am »

Quote from: "dgbehrends"
I was testing the differences between the ansiterm and a telenet session last night and it seemed like the telnet session had less lag.  It seemed like when I was in the AFB there was a considerable amount of lag when I walked over poison gas, rubble, fence, pit, or anything other than the bare floor.  I tried disabling ansiterm in the ansiterm and that didn't help.  What helped the most, but still didn't really solve the terrible lag was when I turned off the ansicolor.  This made an improvement in both the telnet and ansiterm sessions.   I verified that no one else logged into the BBS during my play times.  If there is a way to make the ansiterm as smooth as the old one that would be awesome.  What takes 10 minutes to do in the game now would take 2 minutes if it were improved.


What telnet program are you currently using (aside from the Overkill ansiterm)?
Logged
dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #4 on: June 24, 2007, 12:33:15 pm »

The one located at
c:/WINDOWS/SYSTEM32/telnet.exe
I queried the properties on it and it said it was version
5.1.2600.2674 (xpsp_sp2_gdr.050510-1528)

I am running Microsoft Windows XP Home Edition Version 2002 Service Pack2 on an AMD Athlon(TM) XP 2100+ 1.73 GHz, with 768 MB of RAM.
Logged

IGN:BIGD
Tarix
Admin
Newbie
*****
Offline Offline

Posts: 275


View Profile WWW
« Reply #5 on: June 24, 2007, 01:38:55 pm »

Are there any huge CPU spikes when using the ANSI term?  Is it doing anything weird like running at 100% a lot?
Logged

dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #6 on: June 24, 2007, 02:36:53 pm »

Next time I play I will monitor my processes and the percent cpu they are taking.  12+ years ago I remember playing with the ANSI term on a 14400 modem and I could move around as fast as my keypad would go.  The text redraw was almost instant.  Because things were so fast/smooth we started out with just 3 letters for combat.  I understand why you chose 5.
Logged

IGN:BIGD
dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #7 on: June 25, 2007, 05:02:43 am »

In some further experimentation, while watching my cpu performance and all the jobs using my cpu, ooiiterm never used more than ~14%.  And I could buzz around the map like the good old days.  It seemed like today things moved much faster in the past.  However, when I disconnected and reconnect by doing an alt-C my ooiiterm suddenly used 95% of my cpu.  This may have been what was happening when I was in the AFB the other day.  I should be in the AFB tomorrow so I can find out for sure.
Logged

IGN:BIGD
Dustin
Leader of the Lizards
Global Moderator
Newbie
*****
Offline Offline

Posts: 130


View Profile WWW
« Reply #8 on: June 25, 2007, 09:14:30 am »

Quote from: "Tarix"
Are there any huge CPU spikes when using the ANSI term?  Is it doing anything weird like running at 100% a lot?


I notice, during combat, that if I press 'A'ttack before the text has finished outputting the menu, the text will crawl across the screen as if delaying for the next line of action combat.  I blindly guess when to hit the spacebar again, because the combat is happening while it's still trying to spit out the menu text.

Pressing a character to interrupt a menu seems to bog down for a few seconds, and then the text is spit out all at once.  Curious....
Logged
dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #9 on: June 25, 2007, 12:37:58 pm »

Most of the the lag seems to be related to the display of text descriptions on terrain or during combat.  I'm wondering if the code that figures out what text to display and then displays could be improved.  When fighting monsters, I get in to the habit of hitting A (attack) just as the expert menu text begins to print, and sometimes I will hit a lag spike (program had a cache miss and needs to fetch something from mainstore memory possibly) and it will display 1 character at a time about 1 second apart.  When this happens the next thing I hear is the *zing* from a miss because it spits out the targeting text (....AAA....BBB...CCC...AAA.....) so fast I don't even see it until after I have heard the *zing*.  It was a hard habit to break but I have learned to wait for the expert menu text to fully display before I hit  A (attack).  Waiting like this always seems to fix the lag during the A..B..C... letter sequence.
Logged

IGN:BIGD
Tarix
Admin
Newbie
*****
Offline Offline

Posts: 275


View Profile WWW
« Reply #10 on: June 25, 2007, 01:03:49 pm »

That code is impossible to optimize.  All it does is index into an array.

Any slow-down would have to be with the way the program uses Windows.  For example how it plays sounds or how it draws to the screen.  The actually term code itself is copied from the DOS version and runs fast on an original X86.
Logged

dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #11 on: June 25, 2007, 01:19:08 pm »

Quote from: "Tarix"
 The actually term code itself is copied from the DOS version and runs fast on an original X86.


Good point.  I knew being a packrat of computer parts would come in handy some day.  I bet I could piece together an old X86 with all the junk I have Smiley  

Now if only I could convince my wife that these parts are worth keeping................. Smiley
Logged

IGN:BIGD
Dustin
Leader of the Lizards
Global Moderator
Newbie
*****
Offline Offline

Posts: 130


View Profile WWW
« Reply #12 on: June 26, 2007, 02:03:00 am »

Quote from: "dgbehrends"
When fighting monsters, I get in to the habit of hitting A (attack) just as the expert menu text begins to print, and sometimes I will hit a lag spike (program had a cache miss and needs to fetch something from mainstore memory possibly) and it will display 1 character at a time about 1 second apart.  When this happens the next thing I hear is the *zing* from a miss because it spits out the targeting text (....AAA....BBB...CCC...AAA.....) so fast I don't even see it until after I have heard the *zing*.  It was a hard habit to break but I have learned to wait for the expert menu text to fully display before I hit  A (attack).  Waiting like this always seems to fix the lag during the A..B..C... letter sequence.


This is the exact same thing I am experiencing, and I'm using telnet instead of the Overkill Ansiterm.  This is odd.  

Is there some amount of output buffer that needs to fill up before being sent down the pipe?

Can the user input buffer be flushed before actually prompting for input?
Logged
dgbehrends
Recruit
Newbie
*
Offline Offline

Posts: 140



View Profile
« Reply #13 on: June 26, 2007, 01:58:37 pm »

I spent some time in the AFB last night and the text draw is definitely a little slower.  I think it has to do with the size of the terrain description window.  I noticed that in the wastelands it is limited to 2 lines of text but in the AFB it is 3 or 4.  It seems that the cursers takes much longer to spit out all the spaces for the terrain window display.
Not sure if this is worth fixing.
Logged

IGN:BIGD
Tarix
Admin
Newbie
*****
Offline Offline

Posts: 275


View Profile WWW
« Reply #14 on: June 26, 2007, 03:50:25 pm »

This conversation makes me wonder if Overkill should be switched to require a client.  Security problems aside, action combat could be "fixed" perfectly.  In any case that requires work and we all know how good I am at that ...

The current version of the game has a few buffers to go through, but honestly not that many.  It grabs the socket handle directly from the BBS so it is pretty much writing straight to it.  If there is any buffering is should be in the doorlib being used, which I have the source code to.  Any other buffering would be in a router somewhere.  (I specifically disable the buffering Windows does since it would mess with action combat.)

The actual version is usually smooth as ice.*

*Unless there is actually a timer bug in the underlying pascal library.  I've been meaning to rewrite the timing code to use OS level functions to guard against that.  It's been a problem in the past.
Logged

Pages: [1] 2 Print 
« previous next »
Jump to:  

Powered by MySQL Powered by PHP Designed By: BurkeKnight Templates and Web Design
Powered by SMF 1.1.21 | SMF © 2015, Simple Machines
Valid XHTML 1.0! Valid CSS!