Source code for Quake 2 rerelease
191–200 of 232 posts
Re: Source code for Quake 2 rerelease
#192Earlier quoted context omitted.
That garbage code brought about the speed run culture, highlighted by charity events like Awesome Games Done Quick. The speed runner and their crew on stage will explain the latest level skips, wall clipping to avoid tedious areas, enemy weaknesses and exploits, and frame perfect input strings needed to accomplish those. And some will perform speed runs blindfolded with only the audio cues to work with.
That hardly has to do with code quality, but instead that some edge-case "features" were not anticipated by the game designers, programmers and QA team, but "discovered" later by speedrunners.
It's not just subtle floating-point errors either, but also outright wrong maths that appears to work (see [1] for an example), memory leaks [2], buffer overflows [3] etc.
[1] https://www.youtube.com/watch?v=4gNYTqn3qRc
[2] https://news.ycombinator.com/item?id=20410166
[3] https://arstechnica.com/gaming/2021/03/how-to-beat-paper-mar...
Re: Source code for Quake 2 rerelease
#193I saw grumbling elsewhere about how the re-release doesn't include a Linux version, but here they are with the source and it claims to be tested with clang. Big props to iD for sticking to their principles.
Re: Source code for Quake 2 rerelease
#194Earlier quoted context omitted.
I wish I could find a use for that, it is a funny idea. Unfortunately in a world where all of you stuff is in terminals, having one special drop down one is less useful.
I use Yakuake (KDE's equivalent) for my password manager at work. I find most DE's painful without that ability. The main exceptions are i3/sway or cwm, where I just launvh a terminal and then kill it.
Re: Source code for Quake 2 rerelease
#195Earlier quoted context omitted.
It did it all first . They did a lot to open the idea that game mods could be more than cheats and cracks, too. I still remember the grenade launchers and wild modded grenades fondly. the bouncing ones were so much fun in hallways.
One of my favorite modes for Quake II: Weapons of Destruction.
Re: Source code for Quake 2 rerelease
#196Re: Source code for Quake 2 rerelease
#197I saw grumbling elsewhere about how the re-release doesn't include a Linux version, but here they are with the source and it claims to be tested with clang. Big props to iD for sticking to their principles.
This is only the game code and not the engine source code, or am I missing something ?
Re: Source code for Quake 2 rerelease
#198Earlier quoted context omitted.
Talking about clear and coherent, does anyone know if there is a deeper reason for using `break' and `continue' instead of pure structured programming? The snippet i = ent->client->chase_target - g_edicts; do { i++; if (i > maxclients->value) i = 1; e = g_edicts + i; if (!e->inuse) continue; if (!e->client->resp.spectator) break; } while (e != ent->client->chase_target); for instance, from the function ChaseNext in t…
I think it's debateable which is clearer. Your while condition requires some mental parsing of the booleans whereas the original can be analysed one at a time. I'd say I prefer the original.
Re: Source code for Quake 2 rerelease
#199Incredible and just sent me way back to the nineties. To be fair, I'm talking about the first Quake game here. I had a PC rig on my bedroom floor which as I recall was a Pentium 166MMX, and my friend came over with a similar machine which was a bit faster (a 233) perhaps. No LAN cards insight. Using one of my dad's ancient parallel cables and fooling Windows into thinking it was a LAN connection, which worked well en…
my dad's ancient parallel cables With a null modem? I had same setup with my college roommate in our apartment. This was mid 90s, so it was Doom 2 and other FPS from that time. Great memories.
Re: Source code for Quake 2 rerelease
#200Earlier quoted context omitted.
That hardly has to do with code quality, but instead that some edge-case "features" were not anticipated by the game designers, programmers and QA team, but "discovered" later by speedrunners.
Sometimes it is about code quality. Defensively written, well-documented and well-tested code would not be as likely to suffer from such bugs. It's not just subtle floating-point errors either, but also outright wrong maths that appears to work (see [1] for an example), memory leaks [2], buffer overflows [3] etc. [1] https://www.youtube.com/watch?v=4gNYTqn3qRc [2] https://news.ycombinator.com/item?id=20410166 [3] htt…
They weren't coding for some NASA space probe and they knew it.