GFD wrote:But, how many people use Windows XP computers and have them connected to the internet...? I still have an XP machine for obscure legacy purposes, but I would never ever, under any circumstances, connect it to the internet anymore.
...Y'know, on second thought, I probably don't want to know the answer to that question...
How many of these people are seriously using GZDoom on that computer? In order to get it they need some internet connection to begin with, which by default runs on a more modern computer
Let's be honest here: We cannot consider all weird people out there with strange habits. The weirdos are already a small minority, even though they tend to make a lot of noise if they get here, and the weirdos that act this odd are even less. Regular people tend to play on the computer they download the software on.
In any case, XP being an unsupported system by Microsoft will inevitably mean that sooner or later it will have to be ditched. I don't really expect Microsoft to support it forever with MSVC.
The only thing I'm worried about is accidentally submitting duplicate statistics when doing something like testing engine bugs by running with fresh configs on multiple versions. I'm assuming there's no unique ID saved outside of the .ini (eg. in %APPDATA% or the registry) that's sent with the statistics. And due to some unresolved ISP issue, my IP has been changing frequently—sometimes upwards of four times in one day. As such, there wouldn't be any guaranteed way to distinguish between duplicates from me. I guess the easiest way to work around this without being pestered by the opt-out dialogue every time is to use a command line argument to suppress it. So, will it be possible to eg. set that CVAR to 1 (decline) in the command line arguments to bypass GZStats on initial startup?
That's a very minor issue. How many people are doing this? 100 out of 10000? Or even less? It's some statistical noise that will have to be considered. But it's here where an opt-out may help. The point is not to get 100% accurate data but to get a rough idea what systems GZDoom is being used on to decide if some crusty old backwards compatibility code is still needed.
For the record: The #1 and #2 on my chopping block is software rendered 2D and SM 1.4 support in D3D, because a vast portion of that 100+kb source file is merely for making this fast. The entire texture atlas implementation in here was just done for this old ATI-hardware to overcome the draw call limitations. But on the downside that texture atlas is what makes it extremely hard to move the 2D code to a higher level, i.e. create device independent draw lists and consolidate the backends. That would allow a lot of future possibilities for improvement, like making the OpenGL 2D interface GL 2.x compatible. Due to how the D3D backend got implemented the GL equivalent has far too high system requirements.
(Yes, unlike the 3D renderer this needs to remain at least GL 2.x compatible! I wouldn't even really bother to to a GL 3 version because it'd offer no advantage here.)