I've make a follow up video where I change the ending to make it more obvious Ranger is hacking his way out of Shub from the inside using the axe - ruclips.net/video/S0OMBL5HamE/видео.html
Ok so you did the animation wrong which is why it looked ungood. You did the reset to zero first and then the inc/next frame next. Frame 0 is never shown because of it. Also. And this is worse. The last frame is from the next animation type. 12-15 inclusive are an animation. 16 is the next one. If the incoming frame is 15, the if condition isn't true because it checks for 16. Then it's increased the next line. To 16. So it's one too many. So that's jerky. Because you did it wrong.
Maybe he lost his leg in the process, but he doesn't care because he's such a badass guy, one leg is enough for him, you can see him standing perfectly up afterwards.
Was about to say the same. I think that particular run frame was also chosen because it actually looks like an axe from the given camera angle. With the standing axe frame, the axe is parallel to the players view direction, so it just looks like they're holding some weird rod.
I appreciate how these old games and game engines look like code made by real humans. Some code today is so abstracted and optimized that it is almost unreadable.
Don't forget that we have more powerful IDEs nowadays that automate and/or speed up a lot of programming tasks that would have taken a lot longer before those tools were available, eg. refactoring, formatting, generating template code, multiline editing
i've worked on a lot of games now and had the privilege of doing maintenance work on some older titles, and I can say firmly and with conviction that the best code base I ever touched was age of empires 1, everything was simple, straightforward and easy to understand. Some complexity is necessary for modern games to exist, but I think we are in an era of massive overengineering. I hope in the future we return to the simpler solutions because imo they are just easier to work with.
I watched many speed runs of different games. All games except Quake have many exploited bugs, going through walls etc. But Quake still holds up, I think that's amazing!
It's really interesting to see Quake code in what is likely it's "intended" viewing, The older UI/UX of that IDE was very fascinating, it's a marvel they have completed so much with such barebones tools. It's also very interesting that the techno-wizards of old wrote surprisingly reasonable and maintainable code .
Neat work! for whatever it's worth, my opinion is that the music was ultimately the only improvement here. The way I see it is like this: when you teleport inside Shub Niggurath, Ranger begins hacking it apart from the inside with his axe. The final pose is supposed to depict him frozen in the moment he broke free. That's why he always has his axe out and is in an active pose. You're just meant to forgive the fact that the game world doesn't freeze around Ranger so we can still have an explosion of gibs for the finale.
@@bigbeigebox Yeah that might be cool. Definitely would've run less risk of being misread, at least. Maybe with some tinkering, one could get it to play Ranger's jump sound (as a stand-in 'exertion' sound) at slowly increasing volumes in the lead-up to the explosion? That sounds fun to me, anyway.
@@bigbeigebox 100% It felt like you were doing a coding interview challenge. And really interesting video, surprises me what QuakeC can do, I never got into it. Now kinda wish I had.
I do remember my adventures in qc 25 years ago. Most memorable self lessons. It teaches to read code, to write code and have fun with it. Homing missiles, advanced AI... Now when I asked a question how to become programmer I do recommend to start from qc.
I can definitely see that, it may not be the most elegant or feature rich language, but it’s something you can dive into and quickly see the results of your changes 😄
@@bigbeigebox Yeah. Most required feature is memory allocation for some complex AI algorithmes. What about results, yes, much more than b/w bouncing balls on a line)))
Saw an interview with Carmack recently where he said he probably shouldn't have made his own language for Quake, which is why he went back to regular C for the next game.
@@bigbeigebox Isn't Quake C interpreted?That's quite easy to write, done it myself. These days, even fully compiled languages are easy to write, these days at least. You can compile to C and use open source tools from there. Or use something like Roslyn.
@@the_kovic What a great topic. The correct answer is that QuakeC is compiled, generating .dat files. Those .dat files then are interpreted during Quake execution. Cite below from Wikipedia. "...QuakeC source code is compiled using a tool called qcc into a bytecode kept in a file called progs.dat. The programmers of Quake modifications could then publish their progs.dat bytecode without revealing their source code. Most Quake mods were published this way. QuakeC is known as interpreted because as Quake runs, it is continually interpreting the progs.dat file."
@@Christobanistan The Quake I source code wasn't written in Quake C. It was mostly written in the C language in addition to some parts of it being written in x86 assembly language in order to get as much performance as possible out of the limited hardware of the day. "Quake C" is essentially a scripting language created by John Carmack that can be used to modify the game logic without needing to have access to the source code for the game(it is also compiled into byte-code in order to improve performance, however, so it doesn't operate like a traditional scripting language). It wasn't until over four years after Quake I was released that the full source code was made freely available to the public by John Carmack(search for his ".plan updates" (dot plan updates) from around that period of time for some interesting reading(the ones related to Quake II, III, Doom 3 and RAGE and worth reading as well)
I am SO GLAD I'm not the only one who found the ending anticlimactic. The music change completely fixes this, and the animation changes are a total bonus. BRAVO! 😎
The beauty of Quake being open source is, no matter the original intention(s), people can have fun and modify the game/engine as they wish. Great video - loved to see these little tweaks!
Cool fix! Not sure if it was Romero who programmed the boss, as apparently some of the QuakeC was written by McGee, perhaps others as well. Willits also said that in those days even if you were a level designer, you still did a little bit of everything. One main thing to remember is that after they decided to just slap together another shooter in December of 1995, they were working in constant crunch mode for 7 months with almost no day offs, according to Romero. So a lot of the stuff was implemented quickly and sometimes not in the best way, of course. As for the frames, the player model already had these animations I think around February 1996 when QTest1 was released. The earliest Shareware version 0.91 already had .bsp files with worldspawn having values for the "sounds" key which was refering to the CD track to play. There is a leaked "Beta 3" pre-release of the full game floating around the internet, which is a build from approximately the same time as the shareware version. It has a different end level which looks more in the style of E4/Sandy Petersen, but in general was most likely a draft for testing. The Shub model is there but apparently no code to kill it yet was implemented, after some damage it just stops the model animation and that's it. Point is, Romero probably meant they didn't have Quake music during the major time frame of the development, but they most likely did have it by the time of Shareware version was released. In another interview he said that also a friend (presumably Chris Vrenna) was supplying them other dark ambient tracks while the work on soundtrack was still being done and sometimes id Software apparently listened to that "alternate" ambient stuff while developing the game. Chaotic and fast development process of Quake sure left many weird quirks and "mysteries" that are still being wondered about today.
I think you must be my long lost twin! When I saw the Quad Damage HUD icon next to this comment I was like "WTF? I don't remember seeing this video before, much less leaving a comment on it!"
This is incredible information. I had no idea Chris Vrenna did an alternate soundtrack for Quake. I wonder if those tracks were re-used on Alice or Tweaker tracks.
Those writebyte(msg_all, svc_cdtrack) calls don’t make too much sense. I wouldn’t want to teach a class on quake c development like you’d teach a class on lua or other scripting languages. Looks like it was strictly an internal tool so they squashed the code through to get it done, that’s it.
What I missed was an victory animation of the player. It didn't felt right that the boss had an death animation, but the player model didn't move at all. Using the axe to kill the boss from the inside made sense to me, but it would have been cool if he had raised his axe into the air and maybe some blood particles sprinkling from it.
A batshit shellshocked marine using nothing but an emergency tool to tear apart from the inside out an ancient god whose appearance most people's brains can't even comprehend. That's way more badass than Doom. Doom Slayer needed heavy ordinance just to deal with really really tall goat bois.
Yeah! The space marine should have had an animation like him walking to where the creature was, dropping his pants, and squat down and take a shit while reading a news paper.... oh wait...
I was so excited by "accidently" beating the boss because I had no idea what telefragging was when I beat this the 1rst time, that I didn't even notice the odd nature of the ending. Glad to see someone care enough to change the ending.
Thanks! The first time I played through quake as a kid I didn’t figure out the ending at all, and spent ages trying to kill shub with conventional weapons. A friend had to tell me to telefrag it in the end 😂
Your fix looks great and fits. I have to agree with the "Rushed out ending" theory as it's commonly known that during development they said something along the lines of, "Let's just put Doom weapons in it and be done with it". I think a better ending would have the music fix, and Quakeguy raising his arms up in celebration before returning to the idle animation.
I know it doesn’t necessarily match your experience, but I like that he has the ax. It’s as if he used all his ammo to take Shub down and then needed to go in with the ax, leading to a telefrag. I also like the music. It’s calming and let’s you know you have won. I like the pose. You see him charging in for the kill, same way he beat all of the other missions. It just so happens that he got the kill by having the courage to go in.
That is a cool way of fixing the ending, something I would also like to see being fixed is the unused sight sound effect when she spots the player, it is a really cool sound and I think it would make Shub more menacingly.
Amazing work, congratulations 👏. It's obvious that if you try again, with little effort all the changes could be done in less than five minutes, because of the know how. Thanks for, let's say, the honest approach of the video.
Ask Sandy Peterson why. Sandy seems to have more of an online presence, so he may be easier to reach. He will most likely give you the wrong answer, however from what I’ve seen John Romero loves to publicly correct him.
i, for one, think that the original track is perfect for that ending. fits the presented scenario of "you just killed an elder god in its realm, good luck finding your way back".
I love to play Quake game since I got the game's CD disc around 11 years old. That FPS game is amazing in every way. 🙂 When I played through Quake around 5 years ago, I noticed the incorrect music and the strange pose of the Ranger after destroying Shub-Niggurath. I will check out this fix with the Steam version of Quake.
I watched through a few play throughs of different versions of Quake, and the only one I found that had a different final scene was the Sega Saturn port, which shows the ranger standing more normally, holding the gun. Of course the Saturn version doesn't run on the id tech engine, so it's not surprising they'd change it
From what I have read, development was rushed as the game approached its end date, and this is just one of those many things that happen when things are rushed. They clearly prioritised testing the main bulk of the game, because the game released in a pretty solid state. Good on them for having their priorities straight.
You're definitely not wrong! Quake's final map always felt like someone threw it together in 20 minutes to me... I think it could have been so much more, the telefrag was cool but it definitely felt like a rushed effort to just get the game finished, mistakes included.
From what I've heard the development was rushed, particularly at the end. I've always found it odd that the final scene/music wasn't addressed in any of Quake's updated or re-releases, which is why I thought maybe it became a bit of an in-joke at id
@@bigbeigebox quake's development was more troubled than rushed. There's an interview where, I think John Romero said that doom's engine took some number of months to make, while quake was taking at least three times as much, and that was just the engine. It's almost a miracle that Quake came out at all, despite all of its flaws.
I hope I wasn't the only one screaming internally when the frame indexes for axe and non-axe were being unintentionally switched in the conditional due to cut-paste shenanigans.
I did try that after making this video but it still looked jerky. I have actually made an error in this code that means the first frame is being skipped, which is probably making it look even more jerky
files instantly load and instantly open in the IDE 3D model mesh previews load and draw four angles fast code compiles and runs in like 4 seconds all on ancient hardware that's significantly faster than how most game projects and IDEs run, load, and compile now, on modern hardware
I’d not thought about that but it’s a great point. It’s probably partly due to the simplicity of the models and rendering engine, but there’s definitely a lack of bloat that you see in most modern software 😄
Very interesting, thank you for the thorough explanations throughout. Although aesthetically, I agree with GlowingOrangeOoze's interpretation of the way things ended originally. I also feel that Aftermath was the right track selection, not only in terms of mood and as a closing bracket (rather than as a "bridging theme") but also because that was the track that played at the end of all multiplayer deathmatch sessions. It seems like a fitting end. In that way I think "fix" is a bit of a misnomer, but that doesn't change my level of interest in the content and appreciation for the work involved in both examining the code and producing this video. Thank you. All that being said, loved your conjectural epilogue. Interesting to consider. Hope he responds.
Thanks for the detailed comment 😊 glad you enjoyed the video. I can definitely understand preferring the original ending, it certainly has its own charm. And maybe calling what I did a “fix” was a bit cheeky, it got people talking though 😂
A lot of people have said that, and it does make a lot of sense. One of my next videos will be making a version of the ending that makes it more obvious he’s hacking it up from inside 😊
Oh yeah, you're right, good catch! I also miscounted how many axe animation frames there are and missed the last few, although that's already fixed in code I've put on GitHub. I'll have a go at fixing the instant frame jump and see how that looks. Thanks 😄
So cool that you finally fixed this! I Enjoyed watching your video. Played quake (mostly online and in Lanparties) almost every day from 1996 to around 1999. Really important game to lay the foundations for modern e-sport.
i just stumbled on this channel via my recommendations and i watched all three of your vids and i like what im seeing, subbed, hope to see you put out more content like this
Thank you! I've got a lot of videos planned, both in terms of game mods and more hardware stuff. Time is always the problem, especially as this isn't my only RUclips channel. If you happen to be into cars check out Engines and Unfinished Business - www.youtube.com/@EnginesandUnfinishedBusiness
Him having the axe was intentional. He's not big enough to completely telefrag Shub, which is why Shub doesn't immediately explode. Instead the player appears in his stomach and hacks his way out with the axe. And the pose is probably just because it looks sufficiently actiony enough to be a freeze frame ending.
Quite possibly, it just always seemed odd to me. I’m going to do a follow up where I try to make it more obvious that he’s hacking shub up from the inside with the axe
Probably what I would do to spice up the ending is make shub's innards out of brushwork, requiring the player to manually hack a few flesh walls open in first person to then trigger the ending cutscene
I noticed the 12/17 mix up and was smiling when you fired it up. I like your comment about coders copying other code. Makes me feel better about doing it. LOL Would slowing down the animation make it look better? Less jerky?
@@bigbeigebox At least you didn't make the mistake, spent hours compiling, hours running it to get to the point only to find the mistake. As someone who has done it many times, it can be disheartening. LOL
I dont think it would look less jerky unless it was running in a source port. Standard base quake looks exactly like what you see. Model interpolation didnt exist. All animations were super jerky because they didnt have in between keyframes? Something like that. Sourceports fix that.
I think at least you studied the code base of the game before recording this video. It's mind-blowing for me to think in someone able to fix a bug in a software he never has seen before.
Cool. The relaxed music never bothered me before, but I did change the axe to the gun in my mod. Quark looks much easier than Deacc/Reacc + Edit, but even decompiled QuakeC was much easier to understand than Unreal Tournament script.
@@bigbeigebox This video showcases clearly how you aren't a good coder because of the mistakes you made and didn't fix it recognize. Very informative. See my other comments for details.
@xbzq you again? How desperate are you for attention that you’ve commented this four separate times 😂 I’m very happy with my coding skills, as is the company that employs me as a senior software engineer I made two other mistakes in this code, and as you’re clearly someone who never makes mistakes, see if you can find them 🔎
@@bigbeigebox I'm super ultra mega desperate. The reason for multiple comments is because comments get lost all the time. More is more. I am also a senior software developer and this error right there is a noob mistake. These days that title gets applied if you have just a few years of corporate coding under your belt. It's clear that it's not always deserved. I'm sure you're aware of budget overruns in software. I think I know why.
Near the crash I was actually expecting a compiling error due to the function definition "standin_idle" missing an underscore (causing at least a discrepancy between the defined name and the calls). After watching the video I went back to inspect this, and it turned out the editor simply started hiding the underscore character on writing the comment line at 9:31. :-)
The mid-run animation makes more sense because you can see an actual axe, the frame you'd chosen in the example (due to perspective) looks like a bloody stick. Still cool but you can imagine in a scanned critique that something showing the contour the axe would've been preferred.
Great work learning Quake C. You're probably overthinking their design decision here. I'm guessing they just did the minimum needed to get the ending done and didn't put to much thought into it.
@@bigbeigebox You didn't overnight that animation code you wrote. It's broken because the inc follows the comparison. That's incorrect and orifices incorrect results. A choppy animation in this case which it turns out is entirely due to your coding mistake.
Very interesting mod. I beat quake once the whole way through but I didn't have the music playing when I did because you needed the CD in order for the music to play. Yeah unlike doom Quake had a more rocking sound track. So I can see why the quake theme is a better choice than the song aftermath. Also unlike Quake the ending song that plays at the end of Doom1 is perfect for that game.
I don’t think the axe frame was a mistake. The player used the axe to wreak havoc on the insides of Shub Niggurath… so it did not need fixing. However maybe it should still be a standing frame, not running.
A lot of people have said that, and it does make a lot of sense. One of my next videos will be making a version of the ending that makes it more obvious he’s hacking it up from inside 😊
Given the ID guys claimed to build quake with multi in mind from early on (due to dooms success), and it shipped with both multi as well as DM specific maps (which q2 did not) I think the take on the animation frame is a bit wide of the mark. The assets would have been there. qtest, the dm test they release quite a while before the full game, had player animation etc. They were very keen on it. I'd like to think the axe + running was an artistic choice made in haste
I had a look at as many different flavours of Quake as I could find when researching for this video, and I couldn’t find any that played Quake theme at the end. There may well be something I’ve missed though, I’d love to know if there is a version that plays quake theme
The new version on Steam automatically switches to the credits and that theme. The old version might also return to the menu and demo, but i've replaced mine with FTE.
Considering this game was rushed out the door so fast they didn't even have time to create proper bosses for it, I'm pretty confident all of this was simply due to deadlines.
I’ve not tried as I do this have a copy of remastered, but I suspect it will work, as it’s just a couple of small changes, and remastered does support some original mods
I can sort of imagine the scene of him standing on one leg with the axe in hand as an attempt to show him as running or pushing out. If the intention was to create one of those "cliffhanger" shots from the ending of certain movies (the shot freezes mid-action), it can make more sense. Kinda similar in style to motion blur photography I suppose. Only issue here being the Quake engine is too limited and fails to properly capture the idea.
@@bigbeigebox That and such a shot would really need the scene to be moving initially for the viewers to understand feel the cliffhanger, ideally done as a quick slowdown to full freeze as opposed to instant freeze. Probably another thing that can't be done.
@@bigbeigebox good to hear, to help support this opinion, the boss dose not get insta gibbed upon teleport, he roars in pain and struggles a few times before he explodes, this is the hero hacking his way out from the inside. Otherwise a Tele-frag would be instant.
This is awesome content! I just recently got into modding Quake 3 and am actually starting to put an old computer together for running the actual files. VirtualBox just isn't cutting it these days! Also, which editor are you using for this!?
Nice! There’s something special about using era appropriate hardware 😊 I used QuArK, mostly because I used to play around with it back in the late 90s, there may well be better options
Subscribed. fteqcc + quakespasm source + mingw/msys + blender w/ mdl plugin + gimp, will rekindle your love for Quake. I’ve personally added ray mesh collision to quake for hitscan weapons and dual wield. (I have some clips). I want to do more, but too many side projects in flight.
Thanks 😊 quakespasm looks really cool, I’m currently trying to find a quake c compiler that will work on Mac OS, as it’s either that or break out my Pentium II machine every time I want to do any modding 😕
The reason your animation seems to skip the first frame is.. because it skips the first frame when looping. When the standin_idle() routine is entered, it first checks if it's been at the last frame of the sequence. If it's at the last frame, it resets to the first frame... and then *immediately after* advances to the next one. The first frame of the sequence is never seen again. The animation also seems to be running at double speed, so maybe increase the time to next think..
Simple fix for the animation loop: in the two checks seen at 11:41, reset to frames 11 and 16, instead of 12 and 17, respectively. Your subsequent increment beneath will correct the error.
Yeah, a few people have pointed that out, that’s what I get for rushing 😂 even with that fixed the animation still looks jerky, I tried changing the animation speed but it looked worse, the animations are designed to run at 10 fps. I’ve tried it in QuakeSpasm which does frame interpolation, and it looks way better 😊
I got Quake at release when i was 10. Around 3 months later me and my dad beat it... i didn't understand yet about telefrag so when i see Quake guy with an axe i though that we teleport inside and axe our way out.
I few people have said they thought the player was hacking shub up with the axe from the inside, which definitely makes sense as there's a few seconds of delay between the teleport and the shub exploding. I'm gonna try to a make another version of the ending that emphasises that theory, maybe by showing the player halfway through an axe swing when shub explodes
A few hours ago I noticed that channel was gone. Something like a "the channel does not exist" message was on the page I got from the channel link above. I couldn't comment then because of that. Please check why the issue occurred. Might be somebody who reported the channel, or just a bug from the RUclips side. Great video by the way 😀 UPD: I've noticed that Copper Quake mod had almost fixed that issue a year ago :)
Yeah, I noticed that too. Not sure what happened, might be because I changed from a personal channel to a brand channel (which is also why all my old comments have disappeared). I managed to get it back by adding a channel description, seems to be a weird RUclips bug. Hopefully there weren't too many people to tried to subscribe/comment but couldn't during that time Glad you enjoyed the video, someone on Reddit also mentioned the Copper mod doing this fix, so I'm definitely going to check out their solution 😄
I really don't care much for the time boxing. But the fact that guys are going around diving into this kind of thing makes me really hopeful that humanity will survive our current troubled era.
I definitely wouldn’t try the time limit again, it just lead to rushing and mistakes 😖 I still really enjoyed digging into the code though, gonna try some more Quake mods in the future
Usually with things like this I expect it to be because: 1) they were in a rush 2) nobody really cared about the ending because of the ‘like the plot of a porn film’ mentality.
I used to put the quake disk in my cd player to listen to the soundtrack when I wasn’t even playing, it’s how I discovered nine inch nails, now one of my favourite musicians
This is sweet, but as someone who has played Quakeworld for decades, that animation cycle was jarring to see. It's definitely not the same as the normal Quake/Quakeworld animation cycle, which is more subtle. I'm not a great programmer but I definitely think you made some kind of error there with the frame timing.
Good eye! I did indeed make an error in the animation code, so the first frame is being skipped. Even with that fixed the animation is still a bit jerky - 10 fps is a little too slow for persistence of vision. I’ve also tried it in quakespasm which has frame interpolation and it looks much better there 😊
Shub is an entity like any other enemy, and not a brush. It’s a real telefrag as shub has 40,000 hit points and telefragging does 50,000 points of damage
Walkframe is to keep track of where you are in the current animation cycle, it doesn’t actually do anything itself. Eg: if a walk cycle had 5 frames, but starts on frame 11, you know to go back to frame 11 when walkframe reaches 5
I used QuArK, mostly because it’s what I used to use to do level editing many years ago, and because it will run on an old windows 98 machine. I’m sure there are much better options these days 😊
That is true, however the final scene isn’t an intermission, the intermission is the screen that displays your time, kills, and secrets. The final scene is much more like the end of each episode, which plays Quake theme
I’m sorry this is off topic... but is there a way to NOT have that generic recoil effect when firing a weapon? I don’t want to have any jerking recoil effect at all when I shot...... PLEASE
I’m sure it could be removed with a Quake C mod, although if you have a source port like QuakeSpasm the console command ‘v_gunkick 0’ should sort this for you
Oh thanks for the reply... I will see about that. I use an open GL exe called “telejano” and it just looks so good I had it saved like that for over 20 years. Oh and a mod called “Pain”. I’ll experiment. Thanks for the info
The source code was released by id software, I started with a slightly modified version from here github.com/Jason2Brownlee/CleanFixedQuakeC The tool I used is QuArK
From what I remember of the masters of doom book, John had decided he wanted to leave id during quake’s development, but he didn’t actually leave until after quake was finished
While this is better, i think it is strange for him to hold the gun. Like many others here in the comments, i also think he was holding the axe because he was chopping him down from the inside to leave. Altho the fact that he explodes is, well strange for the axe but, alright...
I've make a follow up video where I change the ending to make it more obvious Ranger is hacking his way out of Shub from the inside using the axe - ruclips.net/video/S0OMBL5HamE/видео.html
the final patch.
You can't "fix" something you didn't make to begin with.
@@orangehatmusic225 ??? what? then a car mechanic can't fix your car?
@@sarkwalvein He doesn't "fix" it. He Repairs it. Big difference. Maybe you should look up the definition of those words lol
Ok so you did the animation wrong which is why it looked ungood. You did the reset to zero first and then the inc/next frame next. Frame 0 is never shown because of it. Also. And this is worse. The last frame is from the next animation type. 12-15 inclusive are an animation. 16 is the next one. If the incoming frame is 15, the if condition isn't true because it checks for 16. Then it's increased the next line. To 16. So it's one too many. So that's jerky. Because you did it wrong.
I think he's supposed to have the axe equipped because it looks like he's fighting his way out of the monster and tearing it up from the inside out.
That does make sense, I'm now going to try to make a different version of the ending that shows that more 😊
Maybe he lost his leg in the process, but he doesn't care because he's such a badass guy, one leg is enough for him, you can see him standing perfectly up afterwards.
@@jag0937ebIt's meant to be a running pose but iD forgot to put a limb on Ranger. 😅
He is the tree of unlife now.
i like the idea of that
Was about to say the same. I think that particular run frame was also chosen because it actually looks like an axe from the given camera angle. With the standing axe frame, the axe is parallel to the players view direction, so it just looks like they're holding some weird rod.
I appreciate how these old games and game engines look like code made by real humans. Some code today is so abstracted and optimized that it is almost unreadable.
It was definitely easier than I expected to get to grips with the Quake C code
Is it not the other way around?
Don't forget that we have more powerful IDEs nowadays that automate and/or speed up a lot of programming tasks that would have taken a lot longer before those tools were available, eg. refactoring, formatting, generating template code, multiline editing
i've worked on a lot of games now and had the privilege of doing maintenance work on some older titles, and I can say firmly and with conviction that the best code base I ever touched was age of empires 1, everything was simple, straightforward and easy to understand. Some complexity is necessary for modern games to exist, but I think we are in an era of massive overengineering. I hope in the future we return to the simpler solutions because imo they are just easier to work with.
I watched many speed runs of different games. All games except Quake have many exploited bugs, going through walls etc. But Quake still holds up, I think that's amazing!
It's really interesting to see Quake code in what is likely it's "intended" viewing, The older UI/UX of that IDE was very fascinating, it's a marvel they have completed so much with such barebones tools. It's also very interesting that the techno-wizards of old wrote surprisingly reasonable and maintainable code .
Neat work! for whatever it's worth, my opinion is that the music was ultimately the only improvement here. The way I see it is like this: when you teleport inside Shub Niggurath, Ranger begins hacking it apart from the inside with his axe. The final pose is supposed to depict him frozen in the moment he broke free. That's why he always has his axe out and is in an active pose. You're just meant to forgive the fact that the game world doesn't freeze around Ranger so we can still have an explosion of gibs for the finale.
@@bigbeigebox Yeah that might be cool. Definitely would've run less risk of being misread, at least. Maybe with some tinkering, one could get it to play Ranger's jump sound (as a stand-in 'exertion' sound) at slowly increasing volumes in the lead-up to the explosion? That sounds fun to me, anyway.
huh huh HUH *BOOM!*
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
You got me, I was screaming (office level scream) that you needed to flip the conditionals.
It’s weird how easy it is to miss things when it’s your own code (and also rushing to beat a timer) good thing we have code reviews 😅
@@bigbeigebox 100% It felt like you were doing a coding interview challenge.
And really interesting video, surprises me what QuakeC can do, I never got into it. Now kinda wish I had.
I do remember my adventures in qc 25 years ago. Most memorable self lessons. It teaches to read code, to write code and have fun with it. Homing missiles, advanced AI... Now when I asked a question how to become programmer I do recommend to start from qc.
I can definitely see that, it may not be the most elegant or feature rich language, but it’s something you can dive into and quickly see the results of your changes 😄
@@bigbeigebox Yeah. Most required feature is memory allocation for some complex AI algorithmes. What about results, yes, much more than b/w bouncing balls on a line)))
Saw an interview with Carmack recently where he said he probably shouldn't have made his own language for Quake, which is why he went back to regular C for the next game.
@@bigbeigebox Isn't Quake C interpreted?That's quite easy to write, done it myself.
These days, even fully compiled languages are easy to write, these days at least. You can compile to C and use open source tools from there. Or use something like Roslyn.
@@bigbeigebox if it was compiled, how come its compiler didn't throw an error when you called n.nextthink in a function where n was not defined?
@@the_kovic
What a great topic.
The correct answer is that QuakeC is compiled, generating .dat files. Those
.dat files then are interpreted during Quake execution. Cite below from Wikipedia.
"...QuakeC source code is compiled using a tool called qcc into a bytecode kept in a file called progs.dat. The programmers of Quake modifications could then publish their progs.dat bytecode without revealing their source code. Most Quake mods were published this way.
QuakeC is known as interpreted because as Quake runs, it is continually interpreting the progs.dat file."
@@jose.inestroza Neat! _Really_ have to appreciate the attempt to obfuscate other people's property. Thumbs up for John!
@@Christobanistan The Quake I source code wasn't written in Quake C. It was mostly written in the C language in addition to some parts of it being written in x86 assembly language in order to get as much performance as possible out of the limited hardware of the day. "Quake C" is essentially a scripting language created by John Carmack that can be used to modify the game logic without needing to have access to the source code for the game(it is also compiled into byte-code in order to improve performance, however, so it doesn't operate like a traditional scripting language). It wasn't until over four years after Quake I was released that the full source code was made freely available to the public by John Carmack(search for his ".plan updates" (dot plan updates) from around that period of time for some interesting reading(the ones related to Quake II, III, Doom 3 and RAGE and worth reading as well)
I am SO GLAD I'm not the only one who found the ending anticlimactic. The music change completely fixes this, and the animation changes are a total bonus. BRAVO! 😎
Thanks, I'm glad you enjoyed it 😊
5:42 - and I yelled "Opposite condition!" at the screen...
The beauty of Quake being open source is, no matter the original intention(s), people can have fun and modify the game/engine as they wish. Great video - loved to see these little tweaks!
Thanks, I totally agree about the awesomeness of quake being open source 😄
Cool fix! Not sure if it was Romero who programmed the boss, as apparently some of the QuakeC was written by McGee, perhaps others as well. Willits also said that in those days even if you were a level designer, you still did a little bit of everything. One main thing to remember is that after they decided to just slap together another shooter in December of 1995, they were working in constant crunch mode for 7 months with almost no day offs, according to Romero. So a lot of the stuff was implemented quickly and sometimes not in the best way, of course. As for the frames, the player model already had these animations I think around February 1996 when QTest1 was released. The earliest Shareware version 0.91 already had .bsp files with worldspawn having values for the "sounds" key which was refering to the CD track to play. There is a leaked "Beta 3" pre-release of the full game floating around the internet, which is a build from approximately the same time as the shareware version. It has a different end level which looks more in the style of E4/Sandy Petersen, but in general was most likely a draft for testing. The Shub model is there but apparently no code to kill it yet was implemented, after some damage it just stops the model animation and that's it. Point is, Romero probably meant they didn't have Quake music during the major time frame of the development, but they most likely did have it by the time of Shareware version was released. In another interview he said that also a friend (presumably Chris Vrenna) was supplying them other dark ambient tracks while the work on soundtrack was still being done and sometimes id Software apparently listened to that "alternate" ambient stuff while developing the game. Chaotic and fast development process of Quake sure left many weird quirks and "mysteries" that are still being wondered about today.
I think you must be my long lost twin! When I saw the Quad Damage HUD icon next to this comment I was like "WTF? I don't remember seeing this video before, much less leaving a comment on it!"
This is incredible information. I had no idea Chris Vrenna did an alternate soundtrack for Quake. I wonder if those tracks were re-used on Alice or Tweaker tracks.
Those writebyte(msg_all, svc_cdtrack) calls don’t make too much sense. I wouldn’t want to teach a class on quake c development like you’d teach a class on lua or other scripting languages. Looks like it was strictly an internal tool so they squashed the code through to get it done, that’s it.
To this day, the music and sound design by Reznor are still hair-raisingly creepy.
Definitely, it’s easily my favourite game soundtrack. I’m a big fan of the film scores he and Atticus Ross have done recently as well
What I missed was an victory animation of the player. It didn't felt right that the boss had an death animation, but the player model didn't move at all. Using the axe to kill the boss from the inside made sense to me, but it would have been cool if he had raised his axe into the air and maybe some blood particles sprinkling from it.
A batshit shellshocked marine using nothing but an emergency tool to tear apart from the inside out an ancient god whose appearance most people's brains can't even comprehend. That's way more badass than Doom. Doom Slayer needed heavy ordinance just to deal with really really tall goat bois.
Yeah, anything other than the standing perfectly still on one leg would have been a huge improvement
Yeah! The space marine should have had an animation like him walking to where the creature was, dropping his pants, and squat down and take a shit while reading a news paper.... oh wait...
@@clint9040I hear whistling.
*Duke grins. 😎*
@@clint9040 And whistling the quake theme :D
I was so excited by "accidently" beating the boss because I had no idea what telefragging was when I beat this the 1rst time, that I didn't even notice the odd nature of the ending. Glad to see someone care enough to change the ending.
Thanks! The first time I played through quake as a kid I didn’t figure out the ending at all, and spent ages trying to kill shub with conventional weapons. A friend had to tell me to telefrag it in the end 😂
6:00 Me screaming "IT'S FLIPPED! THE CONDITIONAL IS FLIPPED!" at my screen
Your fix looks great and fits. I have to agree with the "Rushed out ending" theory as it's commonly known that during development they said something along the lines of, "Let's just put Doom weapons in it and be done with it". I think a better ending would have the music fix, and Quakeguy raising his arms up in celebration before returning to the idle animation.
Thanks, that would definitely be a good ending, not sure I could create the required animations in 5 minutes 😅
That was why Romero quit Id, I believe I read that somewhere. He wanted to do better than just another shooter. That's why he made us all his bitches.
That struck me so hard as a gamer who primarily played Quake 1 as a first game of any genre back in 1997 - 2000s.
I know it doesn’t necessarily match your experience, but I like that he has the ax. It’s as if he used all his ammo to take Shub down and then needed to go in with the ax, leading to a telefrag.
I also like the music. It’s calming and let’s you know you have won.
I like the pose. You see him charging in for the kill, same way he beat all of the other missions. It just so happens that he got the kill by having the courage to go in.
All fair points, and I do like the theory that ranger had to hack up shub from the inside with the axe, a few people have mentioned that 😊
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
That is a cool way of fixing the ending, something I would also like to see being fixed is the unused sight sound effect when she spots the player, it is a really cool sound and I think it would make Shub more menacingly.
Good idea, I’ll try to work that into my next quake modding video 😊
@@bigbeigebox bro, how can she see the player? she literally just a blob of flesh with tentacles.
I've sent John an email back in a day and he responded in a timely manner, he's truly a great guy.
I did also email him and didn’t get a response, but he’s probably busier and gets more unsolicited emails these days 😅
Amazing work, congratulations 👏. It's obvious that if you try again, with little effort all the changes could be done in less than five minutes, because of the know how. Thanks for, let's say, the honest approach of the video.
Ask Sandy Peterson why. Sandy seems to have more of an online presence, so he may be easier to reach. He will most likely give you the wrong answer, however from what I’ve seen John Romero loves to publicly correct him.
Great idea, I’ll give that a go. I was just watching the Quake video on Ahoy’s channel and saw Sandy commented there 😊
i, for one, think that the original track is perfect for that ending. fits the presented scenario of "you just killed an elder god in its realm, good luck finding your way back".
I can definitely see that, the “Aftermath” track definitely has a “so now what” kind of vibe to it
@@bigbeigebox Quake Champions shows that he made the orb his own and is still trying to get home.
I love to play Quake game since I got the game's CD disc around 11 years old. That FPS game is amazing in every way. 🙂
When I played through Quake around 5 years ago, I noticed the incorrect music and the strange pose of the Ranger after destroying Shub-Niggurath.
I will check out this fix with the Steam version of Quake.
I watched through a few play throughs of different versions of Quake, and the only one I found that had a different final scene was the Sega Saturn port, which shows the ranger standing more normally, holding the gun. Of course the Saturn version doesn't run on the id tech engine, so it's not surprising they'd change it
From what I have read, development was rushed as the game approached its end date, and this is just one of those many things that happen when things are rushed. They clearly prioritised testing the main bulk of the game, because the game released in a pretty solid state. Good on them for having their priorities straight.
You're definitely not wrong! Quake's final map always felt like someone threw it together in 20 minutes to me... I think it could have been so much more, the telefrag was cool but it definitely felt like a rushed effort to just get the game finished, mistakes included.
From what I've heard the development was rushed, particularly at the end. I've always found it odd that the final scene/music wasn't addressed in any of Quake's updated or re-releases, which is why I thought maybe it became a bit of an in-joke at id
@@bigbeigebox quake's development was more troubled than rushed. There's an interview where, I think John Romero said that doom's engine took some number of months to make, while quake was taking at least three times as much, and that was just the engine. It's almost a miracle that Quake came out at all, despite all of its flaws.
I hope I wasn't the only one screaming internally when the frame indexes for axe and non-axe were being unintentionally switched in the conditional due to cut-paste shenanigans.
According to the comments there were at least two of you 😂
Make it update every 0.2 seconds instead to slow the idle animation down. It'll look more like deliberate breathing.
I did try that after making this video but it still looked jerky. I have actually made an error in this code that means the first frame is being skipped, which is probably making it look even more jerky
files instantly load and instantly open in the IDE
3D model mesh previews load and draw four angles fast
code compiles and runs in like 4 seconds
all on ancient hardware
that's significantly faster than how most game projects and IDEs run, load, and compile now, on modern hardware
I’d not thought about that but it’s a great point. It’s probably partly due to the simplicity of the models and rendering engine, but there’s definitely a lack of bloat that you see in most modern software 😄
@@bigbeigebox *Absence of. The Quake remake on Steam starts with a version selector and a bunch of logos in the new one.
Very interesting, thank you for the thorough explanations throughout.
Although aesthetically, I agree with GlowingOrangeOoze's interpretation of the way things ended originally.
I also feel that Aftermath was the right track selection, not only in terms of mood and as a closing bracket (rather than as a "bridging theme") but also because that was the track that played at the end of all multiplayer deathmatch sessions. It seems like a fitting end.
In that way I think "fix" is a bit of a misnomer, but that doesn't change my level of interest in the content and appreciation for the work involved in both examining the code and producing this video. Thank you.
All that being said, loved your conjectural epilogue. Interesting to consider. Hope he responds.
Thanks for the detailed comment 😊 glad you enjoyed the video. I can definitely understand preferring the original ending, it certainly has its own charm. And maybe calling what I did a “fix” was a bit cheeky, it got people talking though 😂
Axe ending never felt wrong to me. I have assumed that the player killed the boss from the inside using the axe.
A lot of people have said that, and it does make a lot of sense. One of my next videos will be making a version of the ending that makes it more obvious he’s hacking it up from inside 😊
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
The animations might look a bit janky in the idle animation as you reset to frame 12 or 17, but them immediately increment to the next frame.
Oh yeah, you're right, good catch! I also miscounted how many axe animation frames there are and missed the last few, although that's already fixed in code I've put on GitHub.
I'll have a go at fixing the instant frame jump and see how that looks. Thanks 😄
So cool that you finally fixed this! I Enjoyed watching your video. Played quake (mostly online and in Lanparties) almost every day from 1996 to around 1999. Really important game to lay the foundations for modern e-sport.
Thanks! I too have fond memories of quake lan parties in the last 90s, I do miss local multiplayer gaming like that
QuakeC allowed me to develop a freakin' rocket machinegun. I rest my case.
That sounds amazing 😄
i just stumbled on this channel via my recommendations and i watched all three of your vids and i like what im seeing, subbed, hope to see you put out more content like this
Thank you! I've got a lot of videos planned, both in terms of game mods and more hardware stuff. Time is always the problem, especially as this isn't my only RUclips channel. If you happen to be into cars check out Engines and Unfinished Business - www.youtube.com/@EnginesandUnfinishedBusiness
Him having the axe was intentional. He's not big enough to completely telefrag Shub, which is why Shub doesn't immediately explode. Instead the player appears in his stomach and hacks his way out with the axe. And the pose is probably just because it looks sufficiently actiony enough to be a freeze frame ending.
Quite possibly, it just always seemed odd to me. I’m going to do a follow up where I try to make it more obvious that he’s hacking shub up from the inside with the axe
Probably what I would do to spice up the ending is make shub's innards out of brushwork, requiring the player to manually hack a few flesh walls open in first person to then trigger the ending cutscene
That would be awesome, probably a bit beyond my abilities and free time though 😅
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
I noticed the 12/17 mix up and was smiling when you fired it up. I like your comment about coders copying other code. Makes me feel better about doing it. LOL
Would slowing down the animation make it look better? Less jerky?
@@bigbeigebox At least you didn't make the mistake, spent hours compiling, hours running it to get to the point only to find the mistake. As someone who has done it many times, it can be disheartening. LOL
I dont think it would look less jerky unless it was running in a source port. Standard base quake looks exactly like what you see. Model interpolation didnt exist. All animations were super jerky because they didnt have in between keyframes? Something like that. Sourceports fix that.
I think at least you studied the code base of the game before recording this video. It's mind-blowing for me to think in someone able to fix a bug in a software he never has seen before.
Great video! Had no idea this bug even existed.
Thanks! It seems to divide opinions on whether it's actually a bug or not, but either way I'm happy to have finally done something about it 😊
Only fix needed was the leg. Great stuff.
I agree, the one legged pose was definitely the worst part of the original ending
That one-legged congratulations screen is the wallpaper on my retro pc's desktop.^^
Nice! 😄
I'd love to see Mr. Carmack react to this.
Quake is GOAT of games that's for sure
Cool. The relaxed music never bothered me before, but I did change the axe to the gun in my mod. Quark looks much easier than Deacc/Reacc + Edit, but even decompiled QuakeC was much easier to understand than Unreal Tournament script.
Fantastic stuff, thank you! I love Quake and this sort of content hits right ...
Glad you enjoyed it 😊 Quake is still one of my favourite games, it’s great to see it still has an active community after all these years
@@bigbeigebox This video showcases clearly how you aren't a good coder because of the mistakes you made and didn't fix it recognize. Very informative. See my other comments for details.
@xbzq you again? How desperate are you for attention that you’ve commented this four separate times 😂
I’m very happy with my coding skills, as is the company that employs me as a senior software engineer
I made two other mistakes in this code, and as you’re clearly someone who never makes mistakes, see if you can find them 🔎
@@xbzq "See my other comments for details."
Make me.
@@bigbeigebox I'm super ultra mega desperate. The reason for multiple comments is because comments get lost all the time. More is more. I am also a senior software developer and this error right there is a noob mistake. These days that title gets applied if you have just a few years of corporate coding under your belt. It's clear that it's not always deserved. I'm sure you're aware of budget overruns in software. I think I know why.
Near the crash I was actually expecting a compiling error due to the function definition "standin_idle" missing an underscore (causing at least a discrepancy between the defined name and the calls). After watching the video I went back to inspect this, and it turned out the editor simply started hiding the underscore character on writing the comment line at 9:31. :-)
Yeah that editor isn’t great, the missing underscores confused me as well
Retro PC channels are always welcome, subbed 😊
The mid-run animation makes more sense because you can see an actual axe, the frame you'd chosen in the example (due to perspective) looks like a bloody stick. Still cool but you can imagine in a scanned critique that something showing the contour the axe would've been preferred.
That’s a really good point, I hadn’t thought about that
but can't they just have moved the camera and have a better pose?
I love this so much, It's such a fun idea!
Great vid! Although I'm firmly "he cut his way out with the axe" camp.
Thanks! I do like the "cut his way out with an axe" theory, so I'm going to make a version of the ending that better shows that 😊
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
Great work learning Quake C. You're probably overthinking their design decision here. I'm guessing they just did the minimum needed to get the ending done and didn't put to much thought into it.
That seems likely, I overthink most things 😅
@@bigbeigebox You didn't overnight that animation code you wrote. It's broken because the inc follows the comparison. That's incorrect and orifices incorrect results. A choppy animation in this case which it turns out is entirely due to your coding mistake.
Very interesting mod. I beat quake once the whole way through but I didn't have the music playing when I did because you needed the CD in order for the music to play.
Yeah unlike doom Quake had a more rocking sound track. So I can see why the quake theme is a better choice than the song aftermath. Also unlike Quake the ending song that plays at the end of Doom1 is perfect for that game.
I don’t think the axe frame was a mistake. The player used the axe to wreak havoc on the insides of Shub Niggurath… so it did not need fixing. However maybe it should still be a standing frame, not running.
A lot of people have said that, and it does make a lot of sense. One of my next videos will be making a version of the ending that makes it more obvious he’s hacking it up from inside 😊
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
QuArK! Hell yea, those were the days.
Given the ID guys claimed to build quake with multi in mind from early on (due to dooms success), and it shipped with both multi as well as DM specific maps (which q2 did not) I think the take on the animation frame is a bit wide of the mark. The assets would have been there. qtest, the dm test they release quite a while before the full game, had player animation etc. They were very keen on it.
I'd like to think the axe + running was an artistic choice made in haste
That’s a good point, I probably am wrong about the frame choice 🤔
I don't know if it'ts a false memory but I do remember hearing the Quake theme after beating the game in the 90s.
I had a look at as many different flavours of Quake as I could find when researching for this video, and I couldn’t find any that played Quake theme at the end. There may well be something I’ve missed though, I’d love to know if there is a version that plays quake theme
The new version on Steam automatically switches to the credits and that theme. The old version might also return to the menu and demo, but i've replaced mine with FTE.
Considering this game was rushed out the door so fast they didn't even have time to create proper bosses for it, I'm pretty confident all of this was simply due to deadlines.
11:40 my mans fixed the final standing pose at the end of Quake in teh time it takes to run an episode of SpongeBob.
Yeah, I probably should have just watched SpongeBob instead 😂
No way dude! You're doing Elder Gods' work!
This feels like home
5 minutes? close enough! subbed
cool idea to fix the ending
Thank you 😊
I hope this becomes a mod, or is at least doable, in the current Bethesda port of the game.
I’ve not tried as I do this have a copy of remastered, but I suspect it will work, as it’s just a couple of small changes, and remastered does support some original mods
@@bigbeigebox Here's hoping it works. I don't think I can live with myself hopping through the monster now. XD
I can sort of imagine the scene of him standing on one leg with the axe in hand as an attempt to show him as running or pushing out. If the intention was to create one of those "cliffhanger" shots from the ending of certain movies (the shot freezes mid-action), it can make more sense. Kinda similar in style to motion blur photography I suppose. Only issue here being the Quake engine is too limited and fails to properly capture the idea.
Yeah, the original ending definitely would have worked well if they'd been able to freeze all the gibs as well
@@bigbeigebox That and such a shot would really need the scene to be moving initially for the viewers to understand feel the cliffhanger, ideally done as a quick slowdown to full freeze as opposed to instant freeze. Probably another thing that can't be done.
How I love old development software, so vibe environment
It definitely has a certain charm, although I do miss modern features like auto indenting 😂
Great fixes, the Axe is intentional though as he hacks his way out from inside.
A few people have said that, and I’m starting to agree. I’m gonna do a follow up video soon that explores this further 😊
@@bigbeigebox good to hear, to help support this opinion, the boss dose not get insta gibbed upon teleport, he roars in pain and struggles a few times before he explodes, this is the hero hacking his way out from the inside. Otherwise a Tele-frag would be instant.
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
Every time I see someone use older programs like Unreal Engine 2, I want to work on them
There is definitely a certain charm to old game engines, although that could just be nostalgia 😄
@@bigbeigebox yeah.
You just get a new subscriber for yourself, Sir! 😊
Thanks! Happy to have you on board
This is awesome content! I just recently got into modding Quake 3 and am actually starting to put an old computer together for running the actual files.
VirtualBox just isn't cutting it these days!
Also, which editor are you using for this!?
Nice! There’s something special about using era appropriate hardware 😊 I used QuArK, mostly because I used to play around with it back in the late 90s, there may well be better options
This was fun to watch
Thanks!
Subscribed.
fteqcc + quakespasm source + mingw/msys + blender w/ mdl plugin + gimp, will rekindle your love for Quake.
I’ve personally added ray mesh collision to quake for hitscan weapons and dual wield. (I have some clips).
I want to do more, but too many side projects in flight.
Thanks 😊 quakespasm looks really cool, I’m currently trying to find a quake c compiler that will work on Mac OS, as it’s either that or break out my Pentium II machine every time I want to do any modding 😕
Back in my Quake modding days, I absolutely hated working with QuakeC.
I can imagine it would be a pain to do anything complicated with quake c, it seems quite limited
@@bigbeigebox Well, considering it's a version of C that Carmack put together specifically for Quake ... yeah. It's quite limited.
Check out Underdark Overbright mod which also has end completely remade. It is included in Quake Remaster.
Ah cool, I’ll check it out
The reason your animation seems to skip the first frame is.. because it skips the first frame when looping.
When the standin_idle() routine is entered, it first checks if it's been at the last frame of the sequence. If it's at the last frame, it resets to the first frame... and then *immediately after* advances to the next one.
The first frame of the sequence is never seen again.
The animation also seems to be running at double speed, so maybe increase the time to next think..
Simple fix for the animation loop: in the two checks seen at 11:41, reset to frames 11 and 16, instead of 12 and 17, respectively. Your subsequent increment beneath will correct the error.
Yeah, a few people have pointed that out, that’s what I get for rushing 😂 even with that fixed the animation still looks jerky, I tried changing the animation speed but it looked worse, the animations are designed to run at 10 fps. I’ve tried it in QuakeSpasm which does frame interpolation, and it looks way better 😊
I got Quake at release when i was 10.
Around 3 months later me and my dad beat it... i didn't understand yet about telefrag so when i see Quake guy with an axe i though that we teleport inside and axe our way out.
I few people have said they thought the player was hacking shub up with the axe from the inside, which definitely makes sense as there's a few seconds of delay between the teleport and the shub exploding.
I'm gonna try to a make another version of the ending that emphasises that theory, maybe by showing the player halfway through an axe swing when shub explodes
@@bigbeigebox Cool, i wonder how it will turn out
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside
A few hours ago I noticed that channel was gone. Something like a "the channel does not exist" message was on the page I got from the channel link above. I couldn't comment then because of that. Please check why the issue occurred. Might be somebody who reported the channel, or just a bug from the RUclips side.
Great video by the way 😀
UPD: I've noticed that Copper Quake mod had almost fixed that issue a year ago :)
I tried to change it there too, since in Copper Quake it's based on skill, if you see player with Axe or other weapon. So far no luck.
Yeah, I noticed that too. Not sure what happened, might be because I changed from a personal channel to a brand channel (which is also why all my old comments have disappeared). I managed to get it back by adding a channel description, seems to be a weird RUclips bug. Hopefully there weren't too many people to tried to subscribe/comment but couldn't during that time
Glad you enjoyed the video, someone on Reddit also mentioned the Copper mod doing this fix, so I'm definitely going to check out their solution 😄
I really don't care much for the time boxing. But the fact that guys are going around diving into this kind of thing makes me really hopeful that humanity will survive our current troubled era.
I definitely wouldn’t try the time limit again, it just lead to rushing and mistakes 😖 I still really enjoyed digging into the code though, gonna try some more Quake mods in the future
Underrated content.
Usually with things like this I expect it to be because:
1) they were in a rush
2) nobody really cared about the ending because of the ‘like the plot of a porn film’ mentality.
Never heard the music as a kid :)
I used to put the quake disk in my cd player to listen to the soundtrack when I wasn’t even playing, it’s how I discovered nine inch nails, now one of my favourite musicians
This is sweet, but as someone who has played Quakeworld for decades, that animation cycle was jarring to see. It's definitely not the same as the normal Quake/Quakeworld animation cycle, which is more subtle. I'm not a great programmer but I definitely think you made some kind of error there with the frame timing.
Good eye! I did indeed make an error in the animation code, so the first frame is being skipped. Even with that fixed the animation is still a bit jerky - 10 fps is a little too slow for persistence of vision. I’ve also tried it in quakespasm which has frame interpolation and it looks much better there 😊
Ive just been playing GLQuake after the Pub. Fakn hard work but enjoyable. :D
Great! Do u have any other details for QuakeC
Thanks! There’s some good guides on quakewiki - quakewiki.org/wiki/QuakeC_tutorials
How come Ranger didn't get the .BSP error when inside Shub-Niggurath?
Shub is an entity like any other enemy, and not a brush. It’s a real telefrag as shub has 40,000 hit points and telefragging does 50,000 points of damage
@@bigbeigebox I guess it rules out Pentagram Of Protection, as it locks health to only 666 points. That and CPU entities can't pick them up anyways.
What was the difference between self.walkframe and self.frame in the standin_idle function?
Was walkframe set to 0 necessary to not have broken animations before the think execution?
Walkframe is to keep track of where you are in the current animation cycle, it doesn’t actually do anything itself. Eg: if a walk cycle had 5 frames, but starts on frame 11, you know to go back to frame 11 when walkframe reaches 5
@@bigbeigebox Ok, thank you for your explanation. Great video by the way.
Thanks! 😄
I would be interested to see you fix the slip ups of the original Doom games (Doom 1 and Doom 2)
I’m not as familiar with the doom games as I an quake, but I’ll try to give it a go sometime
This looks very interesting. Where can we find the source code and the software development tool?
I used QuArK to change and compile the Quake C files, which is open source - sourceforge.net/p/quark/code/HEAD/tree/
Question, what program you used for coding this Quake ending fix?
I used QuArK, mostly because it’s what I used to use to do level editing many years ago, and because it will run on an old windows 98 machine. I’m sure there are much better options these days 😊
@@bigbeigebox ahh, thanks.
Amazing
haha i never really thought about it but yeah these fixes are great
*edit:* oh whoops i see there's an update video
What did the recent remaster do with the ending? Anything?
From the play through I’ve watched it’s still the same
The Axe is perfectly fine, it fits the basic Quake idea
The Aftermath theme plays because it always plays with _intermission_camera
That is true, however the final scene isn’t an intermission, the intermission is the screen that displays your time, kills, and secrets. The final scene is much more like the end of each episode, which plays Quake theme
Very nice.
I’m sorry this is off topic... but is there a way to NOT have that generic recoil effect when firing a weapon? I don’t want to have any jerking recoil effect at all when I shot...... PLEASE
I’m sure it could be removed with a Quake C mod, although if you have a source port like QuakeSpasm the console command ‘v_gunkick 0’ should sort this for you
Oh thanks for the reply... I will see about that. I use an open GL exe called “telejano” and it just looks so good I had it saved like that for over 20 years. Oh and a mod called “Pain”. I’ll experiment. Thanks for the info
Where do you get the full source code for games and tools to work with?
The source code was released by id software, I started with a slightly modified version from here github.com/Jason2Brownlee/CleanFixedQuakeC
The tool I used is QuArK
Great job, but to be honest, original pose is better at showing the axe. Probably you can turn the player a little bit to the left.
That’s true, I’ll give that a go in my next attempt 😊
This is cool!
this is the way
When did John Romero quit Id? Maybe he couldn't finish this cause he was no longer working at Id?
From what I remember of the masters of doom book, John had decided he wanted to leave id during quake’s development, but he didn’t actually leave until after quake was finished
While this is better, i think it is strange for him to hold the gun. Like many others here in the comments, i also think he was holding the axe because he was chopping him down from the inside to leave. Altho the fact that he explodes is, well strange for the axe but, alright...
Check out my latest video (if you haven't already) I've re-made the ending so it's more obvious he's hacking his way out from the inside