| Wrecking Crew Article: #0002- Posted by Jazzman-X |
Q2 Lag solutions...
Courtesy of Xmission
Introduction
With the upgrade to USR Total Control Solution for many ISP's (including Interline where our server is at) earlier this year came Quake lag for some users. The problem stems from Quake's UDP traffic and how the Total Controls dealt with it. All ISPs with the Total Controls noticed this problem. With recent patches, USR has vastly improved their Total Control software. After installing the necessary patches, though, some users still noticed the same problems. After putting in hours of testing, receiving helpful input from users, and playing many a grueling Quake match (for problem solving purposes only), we have been able to finally help everyone that implements the following adjustments on their end.
Quake Configuration Tweaks
Quake2
These setting can help improve your Quake2 game but won't work for everyone so make sure to back up your current settings. You can just copy these settings and paste them into notepad and save the file off as player.cfg in your Base1 dir. Then, create an autoexec.cfg file in the same directory and just type exec player.cfg in the new autoexec.cfg file. This will launch the new player.cfg file.
set rate "3700" set cl_predict "1" set cl_nodelta "1" set cl_particles "1" set cl_maxfps "25"NOTE: rate settings vary depending upon your connection to XMission. For 28.8 modems, try rate 2500; 56k modems, rate 3500; ISDN, rate 4500.
Retrains
A retrain is defined as "a re-negotiation of the connection speed due to changing line conditions." While the two modems are connected, they continually monitor the line conditions. If line conditions worsen, then your modem will request a retrain with the host modem to lower the connection speed. If the line conditions improve, then the modems will re-negotiate to a faster speed.
Although retrains are helpful under most circumstances, it can cause problems with real-time games like Quake. During a retrain, all data transfer is halted. Have you ever seen the "lost network connection" icon in Quake? Or have you experienced a random "999 ping" response? Well your modem is probably retraining. Depending on the modems and current line conditions, a retrain can take from just a few milliseconds to many full seconds. Once the retrain is complete, the modems will continue transferring data. That doesn't matter, though, since you'll already be dead.
Limit the Upper Connect Rate:
Limiting the maximum connect speed approximately 2400 to 4800bps slower than your normal connection speed will usually prevent your modem from retraining during game play.
For example, let's say that your modem usually connects at 31200. So, according to these instructions, you force the modem to connect at 26400. Now, let's say that the line conditions worsen to the point where they will only support a 28800 connection. That's fine, since your modem is connected at 26400. Now, let's say the line conditions get even worse, to the point where it will only support 26400. You're still okay, because that's what your modem connected at. Now, even if the line conditions improve to a point where it can support a full 33600, your modem will continue to get 26400, and you shouldn't see any ping spikes. Had you not limited your upper connect rate, your modem would have retrained a at least 5 different times, most of them resulting in 999 ping spikes easy prey for LPBs.
This advice is even more applicable to the new 56k protocols, x2 and k56flex. These protocols are even more sensitive to line conditions than regular v.34 modems, and experience the above problem even more. If you normally attain a 48000 connect rate, try 42000.
How Do I Limit the Connect Rate?
Connect rates (and other modem configuration commands) are usually handled through the use of initialization strings. The best way to determine which init string to use is to check your modem's documentation, contact the modem's manufacturer, or see what you can find on the web. Here are a few suggestions for some of the more popular modems:
US Robotics Courier, Sportster, and other "TI Chipset" Modems, (28.8k, 33.6k, and x2)
The TI Chipset uses &Nx to limit the maximum connect rate where "x" is one of the following:
x=11 21600 bps x=12 24000 bps x=13 26400 bps x=14 28800 bps x=15 31200 bps x=16 33600 bps x=17 33333 bps x=18 37333 bps x=19 41333 bps x=20 42666 bps x=21 44000 bps x=22 45333 bps x=23 46666 bps x=24 48000 bpsRockwell-Based 28.8k & 33.6k Modems: Generally the "+MS" command is used to control modulation and connection rates in most Rockwell-based 28.8k and 33.6k products. For example, adding a "+ms=11,1,2400,26400" will limit the upper connect rate to 26400.
AT&T-Based 28.8k and 33.6k Modems It seems as though the AT&T chipset is not as flexible as the Rockwell & TI chipsets. You can use S37=x to force a certain connect rate. That does not set a maximum or minimum connect rate, but forces a connect rate. "x" is one of the following:
14 = 21600 bps 15 = 24000 bps 16 = 26400 bps 17 = 28800 bps 18 = 31200 bps(Warning: Do not force a connect rate that is higher than your normal connect rate. When your modem makes an initial connection, it will determine that the lines cannot handle that speed, and immediately hang up.)
For other details about modems and the various values attributed to &N rates, refer to this modem FAQ:
http://www.xmission.com/help/setup/modem_faq.html
This has vastly improved performance for x2 and modem users alike because every time the modem makes a speed-shift (retrains), it stops sending/receiving data. This could take from just a few milliseconds, to many full seconds--it depends on the modem, the server, and the current line conditions. When this happens, quake pings will go through the roof. As well, quake doesn't always do a very good job at recovering once this happens. Limiting the upper connect rate, or forcing a steady, slower connect rate SHOULD eliminate these "lag spikes".
More tweaks for fanatics
This section details how you can create a DUN (Dial-Up Networking) connection to optimize your ping for online games like Quake. If you follow these instructions, you can make a new "lagsux" icon with specific properties to help optimize Quake traffic between you and your ISP. With these instructions, you can keep your normal Internet settings and then have another icon for other online activities since the "lagsux" connection turns off compression and makes other adjustments you don't necessarily want for other online pursuits.
Part One: Making a new modem entry.
- go to the control panel.
- double click on modems.
- click add.
- check the box that says "Don't detect my modem; I will select it from a list", then hit next.
- choose the same make and model as your current modem, then hit next.
- choose the same com port that your current modem is on, then hit next.
- click finish.
- click one time on the modem you just installed.
- click on properties.
- set the max speed to 38400.
- click on the connection tab up at the top.
- click on port settings
- make sure the "use FIFO buffers..." box has a check in it
- move both sliders all the way to the right.
- click ok.
- click advanced.
- uncheck "use error control" and "use flow control".
* Now this is the hard part. In the extra settings box you need to enter in an init. string specific to your modem. If that link did not help you find an init. string you may need to consult your owners manual, the manufacturer's web site, or if the manufacturer has a tech support number call them. If you already have an init. string for your other modem entry you can cut and paste it. A good string for USR modems is:
&f1&c1&d2&k3s10=30
You can try the same string, but without the &f1 at the beginning if you do not have a USR modem. Again, I do not know how this will work with a non usr modem. A string specific to the make and model of your modem is best.
- Now click ok, ok, and close.
Part Two: Making a new dialup networking entry.
- double click on my computer.
- double click on dial-up networking.
- double click on make new connection.
- name the connection lagsux (or whatever you want to call it).
- make sure that the connect using field has the modem entry that you just created. (for example, USR 33.6 #2) click next.
- insert the current dialup number for you isp (ionet), then click next.
- click finish
- right click on lagsux (or whatever you named it).
- choose properties from the menu that pops up.
- click the server types button.
- uncheck EVERY box BUT TCP/IP
- click ok, then ok again.
Part Three: Fixing the system properties for the com port.
- right click on my computer.
- click on properties.
- click on the device manager tab.
- click the "+" next to the com ports entry.
- highlight the com port that your modem is on.
- click on properties.
- click the port settings tab.
- set the bits per second to 57600.
- set the flow control to hardware.
- click the advanced button.
- move both slide bars all the way to the right.
- click the ok buttons until you are back to the desktop.
Finally, MAKE SURE you have the kernel32.dll update installed, unless you have OSR2.
old link removed(if you do not have OSR2 or Win98, get the Win95 Service Pack that fixes a bunch of stuff.)
Now just double click on lagsux and connect just like you normally would.This section originally written by p1mps-r-us