[Game Programming/Off-topic/Theorycrafting] Counter-Strike on Quake 3 Engine to reduce/solve player complaints!

Talk to software developers and aspiring geeks. Programming tips. Improve motion fluidity. Reduce input lag. Come Present() yourself!
Post Reply
Futuretech
Posts: 35
Joined: 11 Oct 2020, 23:52

[Game Programming/Off-topic/Theorycrafting] Counter-Strike on Quake 3 Engine to reduce/solve player complaints!

Post by Futuretech » 10 Apr 2022, 13:34

NOTE: Albeit though I've quit gaming. I still check out various sites including this one and the plague of CS-series issues keep popping up over and over and over since pretty much as early as possible. I'm merely wondering this phenomena of playing a broken or improperly programmed game.

*I don't know much about the Quake 2 engine but for those who've done research was the engine friendly if at all manageable it seems like Quake 2 existed and as quickly as it appeared it gave way to the greater Quake 3 engine. I'm just curious if Q2 engine had issues or people noticed stuff maybe the engine was programmed too old-school in such an early-90-esque Doom-ish way that yeah it was good and all but maybe built without much foresight. Maybe too involved with Quake 2 scene not enough future usage Quake 3 really blew up once it went live and game companies ordered the engine one of the most popular ever.*

*Ignoring that this process would take a long time as a theorycrafting I'm merely wondering if this is something needed not by me but the community*

*I'd also like to point out if my hatred of Counter-Strike bothers people do keep in mind I heavily played CS1.6/Source back earlier in the decade sometimes spending multiple hours playing various servers and my hatred is not out of ignornace but wanting to know WHY this game pisses me off! sheer fact is one thankful note about CS is I lowered my sensitivty till after playing CS/CoD/WolfET even a few MMORPGs I came to set my sensitivity level to 35cm-45cm about 50-60% the size of a puretrak talent(2012ish mousepad) if I had an artisan Japanese harder cloth mousepad I'd wager to state most of the mousepad would be a 360 for me so about 35-45cm/360*

*FYI my original sensitivty was a fairly high 800dpi 2-4ish Sens so using a mouse I would be considered a 5-10cm/360 player with wrist action most of my movement would be wrist movement, fingertip movement, and some arm usage. So low enough to use the wrist most of the time but sensitive enough that is considered high.*

Right now as of the time of this posting the Quake 3 engine in it's most advanced form is the IW-Engine(Infinity Ward) type for Call of Duty. As the history of it, it wasn't till 2009 the engine name and it's obvious modifications was revealed to be a part block standard-part customized version of quake 3(ex: adding headshots(not unlike Wolf:ET/ or counter Quake a.l.a Unreal Tournament) or mantling CoD4 and further versions of CoD). In fact as of around 2015 or 2016 or so the IW engine was re-engineered from ground up over 5 years for Warzone/Vanguard. Right now as it stands Quake 3 engine despite being wholly outdated for example it's underlying internet packet system is based on dial-up/early cable modem Americana-internet ignoring advanced internet of South Korea a.l.a Starcraft X-factor.

In simplest terms the Quake 3 engine is still parsing internet data based on 1990s-early 2000s internet speeds. For example it might be outdated but overall most people agree except a few tweaks to the console section for internet purposes(such as cl_maxpackets 125 or cl_maxpackets magic packet calculation) the limits where very fairly chosen unlike the previous Quake 2 and older Quake 1. For example cl_rate 25000, the baud rate of the data transmissions operates within the realms of a 28.8K modem. Like the typical saying goes IF you have dial up you can still play so long as the internet latency is low. For example a 56K modem gamer with 30 ping would have a greater chance of defeating an always-on cable modem 70 ping player due to have 40 more ping therefor having 40 more miliseconds of latency.

Anyways right now Counter-Strike is just an awful game *everyone gasps blasphemy*. But funny enough it's true I was a counter-strike player earlier in the previous decade before quitting gaming. I deep searched games I don't know if it's because I had a bad computer whereby even for 2007 it was considered outdated even for 2007 games such as CoD4 albeit playing CoD even at bad framerates I'd still dominate in the game.

Back in CoD4s release many Counter-Strike players moved to it viewing it as Infinity Ward giving Counter-Strike a go. Funny enough there came to be two sides to it. One a group of CS players that liked the game and were good at it who were bad or fairly okay at CS. And a group of CS players who hated COD4 and hated being dominated by what they would describe as noobish players.

I don't know how skill-based or luck-based or maybe console modification based CS is but if your complaining about being killed so easily in another game maybe the game your playing has issues.

In all the years of looking at various counter-strike websites such as Esreality, various professional pro gaming websites, various characters talking about counter-strike hell even here on blurbusters the same almost word for word description pops up.

I play Counter-Strike but my hitreg sucks or my computer is awesome and CS plays bad hitreg or I shoot my gun I do zero damage and they jump around with a Deagle and headshot me like nothing.

Or as one Geocities blog from 1999/2000 put it. I once used a shotgun in the game I fired an entire magazine of it into a person only for the person to jump around turn and hit me with his Deagle one shotting me in the head. As a joke the guy said if I were to put the shotgun behind me and fire it would still hit him. This Geocities blogger was a player of more realistic games such as Infiltration 2.9 mod(UT99 mod), Operation Flashpoint, some other realistic or realism FPS games.

After extensive downloading so to speak of all this counter-strike information. I have come to the conclusion that Counter-Strike is the worst most popular game ever in the FPS genre. The most consistent, inconsistent talk of hitreg shadow or hidden updates hitreg issues. People complaining that when Sierra WON servers were around the 1.3-1.5 region hitreg was the best. People stating 64-bit compatibility broke CS1.6 or Steam itself damaged the game or the icing on the cake which isn't out of the question Valve purposefully hacks the game up in such a way people quit playing these older games and move unto newer and better games. It's not out of the question it would be a form of planned obsolescence and I don't know if software entities fall into it but I can see various legal issues if such a thing happens.

My favorite was a person that hunted down old equipment and built the highest end single-core processor with highest end Nvidia card for Image Sharpening hell I even recall another who hunted down an old Aureal A3D card to enjoy A3D audio in 1.6. Like literally there is a group of people who pay tens if not hundreds of dollars for retro-computers just to play 1.6 perfectly as 1:1 oldschool as possible running at 100FPS locked and 100Hz CRT.

Perhaps the most obvious thing in the room the elephant in the room IS!. That maybe the customized Quake 2 engine for Counter-Strike is just badly coded and badly mangled up. For example I had an issue with setting up some hotkeys as I'm not a pro gamer and the only way to modify it was to go into the .ini files, modify the notepad file switch it to read-only and then load up the game. Even other things like Steam commands like for example locking the game at 100Hz to play 1:1 refresh rate which is like what is the point of that if you have a console and have a selectable resolution. With Call of Duty even COD1/UO I can just pop in the console and update any command without any issues hell even Wolf:ET funny enough similar commands to CoD I just modify them before playing the game and max out the internet/server processing settings. For example Cl_maxpackets 125 or cl_Snaps 30(20 up to 30 snapshots to send/request from server).

I don't know about any other games of Valve I did play due to CSSource the Half-Life side-games for HL2 and I'm aware Valve is a Quake 2 engine company using HIGHLY modified modifications. But out of their entire game even Team Fortress 2 which I never played along with Day of Defeat series I've never heard more people complain about hit registration and hit detection and hitbox issues than any other game but Counter-Strike it seems like 30-40-50% of Counter-Strike posts are "How do I make the gun hit the person?".

Does it not occur to people that perhaps the issues your having is related to using a mangled up version of Quake 2. I've seen my fair share of Quake 2 pro game videos and I've never heard any quaker past any extreme issue state they got hitreg issues. For example the IW-Engine has the 3rd most advanced hit detection system in the gaming community. It uses a collision mesh hit detection system while maintaining hitboxes for damage allocation separation it may even be possible they removed the hitboxes and added separate zones for further improved hit avoidance/detection. For example the game with the most advanced hit detection is pre-patch Doom 3 with per pixel hit detection. One of the high end hit detection is Sub-Pixel hit detection further granulating the hit detection of the games. I believe in the future as point-cloud replaces voxel since atoms are spherical compared to squarish voxels maybe even point-cloud hit detection hell even modelling of organs and ligaments and other realistic properties whether a realism game or to add some realism with arcade properties such as Red Orchestra(mix realism/arcade).

My question to the Counter-Strike community is at what point are you gonna keep stating the game has issues and not look at the subject in detail and realize it's the engine?

I don't know but except playing Battlefield 2 which felt awful hopefully Dice improved the feel of the game. Counter-Strike is just this awful game. Funny even the guns are awful they make no sense for example the Geocities blogger was like even SMGs are overkill for the games distances. I tell you I've never played a game where my skills degrade or become degraded so much. For example I recall Evil Geniuses player talking about controlling the gun by doing the upside down T trick to control the spray. I just want to shoot the gun why does an assault rifle need to be controlled in such way. IF anything the recoil is a positive thing that isn't merely a visual feedback but an actual mechanism of delivering bullet dispersion to the target such as for example aiming near the stomach and firing a short controlled burst that hits the stomach and chest area. I've noticed the impracticality of guns in Counter-Strike such as for example aiming for the head in real life you aim at center of mass. The game has so much potential but it fails to acknowledge legitimate concerns with the actual state of the game.

For example many use the AWP with 1.6 and it's stun-lock mechanism but that gun would be obsolete and used mostly in professional matches or in large team matches whereby some people want to snipe other guns would just outpower the rifle due to volume of fire. Fact of the matter is I've had situations in CoD whereby I just gun down snipers from afar with a machine gun or even the pistol basically any weapon that fires up at the maximum of 1,500 units if I can hit you ADS and use the mechanism of straight shot I can get you. IF the recent CoD games have upgraded the range past 1,500 units I can even see some crack shots taking out snipers with a spray of fire.

Sheer fact is I never felt confident in Counter-Strike taking out even a lone person much less a group of people. I've had my fairly group combat in CoD and in Wolf:ET albeit in Wolf:ET days I tended to snipe more than rambo medic but sheer fact is when I used in certain maps MG support gunner and took out groups of people I was always going "Why can I do this in this game and in Counter-Strike my gun is about as useless as a stick".

So in conclusion. Does anyone believe that Counter-Strike especially the older 1.6 as I have some nostalgia to it. Does anyone believe the game needs to be recreated from the ground up using Quake 3 hell might as well go further and try out for the IW engine.

I'm aware many will state I'm just some CS hater or something I can assure you this is not the case. Rather I WANT to like the game I just don't feel confident even point-blank that my weapon is usable. In my case it was never hitreg issues unlike others my issue was "How does an assault rifle miss?" or stupid things like how does an AK47 hit harder than an M4 when it's the opposite in real-life. Hell I've even read the Chinese military and various Chinese police use Counter-Strike as a training tool.

I was never one to get into Tom Clancy's games but I do recall my friend telling me about the British clan hosting Rogue Spear games. I tried playing it but the sensitivity was too high(no amount of lowering made it better probably a deprecated old Direct command) albeit if I could have played at my usual low-sense I'd dominate the game. Tom Clancy games might not be the most realistic and some state only picked up steam with the late-90s FPS golden age but overall if I COULD have played the game funny enough with the weapon selection and the quick kills sorta like pre-CoD2 CoD with COD1/UO I'd be a lot better at it.

Sheer fact is when playing Counter-Strike it was like Wolf:ET or Quake 1/2/3 I'm playing against tanky people who you hit and hit and hit. And does nothing the whole aim for the head is pointless and just gets into pointless situations.

Does anyone agree Counter-Strike needs a major investigation into Why it is so awful?

It has such issues with so many people that it's one of the most consistently popular games in existence. Strange! Either people are masochists or no one saw an iota of "Why does this game truly deliver so much issues?"

Reminds me of Darkfall the MMORPG. For like 10 years people played Forumfall. Sometimes I wonder if people are playing Counter-Forums 1.6/Source/Go searching to fix their issues. They play the forums as much as they play the game. I wouldn't even be surprised if some of these people would play better in another FPS or notice their skills stay at a sharper level in some other game.

Does anyone agree with me? Are people just masochists accepting these issues with little to no resolve?

silikone
Posts: 57
Joined: 02 Aug 2014, 12:27

Re: [Game Programming/Off-topic/Theorycrafting] Counter-Strike on Quake 3 Engine to reduce/solve player complaints!

Post by silikone » 17 Apr 2022, 12:50

It's funny that you mention Quake 2, for it has some of the worst netcode from a Blurbusters perspective. It has a fixed tickrate of 10Hz, which adds very objectionable latency even in LAN settings. Quake 3 defaulted to 20Hz and can be customized IIRC, but it inherits and amplifies a flaw stemming all the way back from Quakeworld, namely detaching player physics from the server, which has the infamous consequence of making some jumps impossible at certain frame rates, et cetera.

I personally believe a lot of these early mitigations of lag by Valve et al only serve as detriments in the modern day. Counter-Strike was one of the first games with a mass appeal for internet play, so they had to make it attractive to play for modem users at the expense of broadband players. In today's world, a poor internet connection is the exception rather than the norm, so trying to accommodate them at the expense of everyone else seems like a mistake. Indeed, the original Quake over a LAN is practically flawless. I can hardly tell that I am playing multiplayer at all.

Low tickrates are still very common in modern games, not because the players cannot handle it, but because of the centralized nature of matchmaking and dedicated servers being a monetary sink for the game studios to maintain. The old paradigm of community servers naturally enabled a meritocracy of tickrates and low latencies.

There really is no one-size-fits-all. The best thing games can do is to give more choice and let players decide what works best for them.

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: [Game Programming/Off-topic/Theorycrafting] Counter-Strike on Quake 3 Engine to reduce/solve player complaints!

Post by Chief Blur Buster » 04 May 2022, 18:35

Futuretech wrote:
10 Apr 2022, 13:34
NOTE: Albeit though I've quit gaming. I still check out various sites including this one and the plague of CS-series issues keep popping up over and over and over since pretty much as early as possible. I'm merely wondering this phenomena of playing a broken or improperly programmed game.
The problem is the Internet is not consistent between users.

The playing field is never level.

Modern games have compensation code built into it to compensate for the lag differences of all the players. Predictive logic on both the local and remote end. Unfortunately the position of the enemy on the local end is not always the actual position of the enemy at the remote end.

Laws of physics just doesn't make it possible on the open Internet, otherwise, everyone gets controller lag that could be a multiple of the Internet latency of the worst player in the match. e.g. 200ms controller lag if the laggiest player is 100ms round-trip Internet latency to the server. To get everything in perfect sync would require lagging all players by approximately 200ms (simulating 100ms latency to everyone to match worst common denominator player, you have the roundtrip lag between player1 and server, then player2 and server, 100ms+100ms)

So Internet gaming always has predictive logic, trying to guess where the enemy player is located.

It's not bad code, it's just impossible physics that game engines have different guessing formulas and predictive formulas, in order to lower local latency (e.g. low controller lag) in a high/variable latency regime.

And game netcode have to level the playing field dynamically in realtime, as latencies change in realtime at all ISPs, and some players having Internet packet losses, or randomly variable latencies.

Thus, a lot of netcode automatically handicaps the lowest-lag players slightly, as an addicting effect for higher-lag players. So that higher-lag players don't quit (and thus stop paying the game company). So the automatic playing-field-levelling handicaps is sometimes fine-tuned for maximum player satisfaction (maximum number of players staying on server), so that FTTH users don't rage-quit, but neither will the buggy DSL users, they all then play well enough to keep playing.

In some specific games it's easier to frag at 30-40ms Internet latency than at 10ms latency or 100ms latency (e.g. playing on LTE getting better results than FTTH in some cases for some games), because of the game engine's playing-field-levelling-logic so finely tuned by the game company.

It's just an inherent compromise -- to get around a law-of-physics problem -- to tweak the netcode to be as fair as possible -- but there is never a perfect compromise. Tune it to favor FTTH happiness, analytics may show an increased % of DSL-like users rage-quit. Tune it to favour DSL happiness, analytics may show an increased % of FTTH-lag users may rage-quit.

Predictive code in game engines are so notoriously difficult to fine tune to the satisfaction of everyone. Somebody is always going to be unhappy -- but the goal is fewest possible unhappy users.

Many tricks such as siloing (e.g. grouping low lag users on the same server, grouping higher lag users on a different server, and then grouping by skill, etc.) to try to level the playing field. But Internet connections vary a lot, sometimes long after connecting, and you have those perfect 30ms lag 0ms jitter connections, while you have those 20ms lag 10ms jitter connections, which both may falsely look the same during server matching but then wreck hit registration for everybody because of that bad-apple user on the server, because a specific predictive algorithm goes wonky due to unexpected latency telemetry that happens later for that user (e.g. perhaps as simple as that specific user's house having other roommates that suddenly started major downloads or streaming -- changing latency jitter of that specific player on that server after the fact).

If we were all on a LAN that has no other network pollution (no file copying, no streaming), the code can easily go synchronous or almost synchronous. But they don't do it anymore these days, since networks don't necessarily have perfection (e.g. lost packets, WiFi latency variances, etc), and just is simply the same netcode running at a smaller/tighter predictive mode instead of perfect synchronous...

Ah well...
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

User avatar
dervu
Posts: 249
Joined: 17 Apr 2020, 18:09

Re: [Game Programming/Off-topic/Theorycrafting] Counter-Strike on Quake 3 Engine to reduce/solve player complaints!

Post by dervu » 15 May 2022, 12:03

To answer to this question you would have to go step by step and disable one of variables that affects game behavior and test with external software measuring and analyzing things between two clients. For example taking snapshots of data (like position and time of firing) at x time for each client and then comparing it between various client setups and servers.

Variables to disable would be:
- Weapon accuracy
- Server side hit detection to client detection
- Lag compensation

Notice that tests people do, like battlenonsense are usually in very narrow environment, often using specialized hardware.
Simple piece of software like that could enable thousands of people to check for themselves and contribute to the case.
Ryzen 7950X3D / MSI GeForce RTX 4090 Gaming X Trio / ASUS TUF GAMING X670E-PLUS / 2x16GB DDR5@6000 G.Skill Trident Z5 RGB / ASUS ROG SWIFT PG279QM / Logitech G PRO X SUPERLIGHT / SkyPAD Glass 3.0 / Wooting 60HE / DT 700 PRO X || EMI Input lag issue survivor

Post Reply