I just ported Quake III to the web with multiplayer and mobile support: https://thelongestyard.link/. I was hoping I could use this project to do Unreal Tournament as well, but it seems like it's not that playable yet.
I wish Epic had GPL'd their old releases the way id Software did. I'd especially like to have UT2k4. I played a lot of ONS-Torlan in college.
Ut2k4 is so fantastic, I still have a scar on my forehead from the first time I played the demo on a CRT sitting on a chair and my friend tackled me into it to "save me from a sniper". I would get up at 4am because I had a bedtime but no wakeup time and play 4 hours of CTF-Face instagib before school. Q3DM17 also holds a special place in my heart, I'm getting a tattoo of the "Impressive" emblem in a few weeks!
Not a day goes by that I don't pine for turn of the century FPS gameplay. (and maybe my turn of the century reflexes)
UT's bots really helped at smaller LAN parties and get togethers. They weren't as competitive as professional players, yet could actually play the different modes and fill out the teams.
Before that point bots seemed only capable of team death match.
Haha this is incredible! I had a gap in my gaming years—I only enjoyed UT GOTY (a 2000 release?)—and sounds like the series carried the same kill streak sound bites over. Impressive is prob a safer tatt than HEAD SHOT!
UT2k4 deserves to live, but if we're being honest, there weren't a lot of people playing it during the last decade and a half. I wonder if being able to play it in a browser would actually improve that.
I'm not really a gamer. When I discovered original UT I'd play it at work because my home computers never had good enough graphics. I loved the atmosphere of many user-created maps.
Is there no similar experience that's popular today?
Arena FPS of the Quake/UT era have been supplanted by CoD-style tactical shooters, slower team-based FPS like Halo, hero shooters like Overwatch, and battle royale shooters like Apex Legends. I don’t think a popular pure arena shooter exists today. (Though Splitgate and, to a lesser extent, Halo Infinite scratch the same itch for me.)
I’m optimistic, though. Adventure games were dead for a while but eventually came back with a vengeance. I doubt the desire for quick, pure shooty fun will ever go away.
I had played UT2k4 almost exclusively for months before ever trying halo, since I didn't own a console. I eventually played at a get together at a friend's house and genuinely couldn't understand why Halo was so popular- the speed was so slow.
I eventually appreciated it a bit more, but UT will always have a special place in my heart.
Unfortunately a fad that's been around since 2016/2017 or so. The largest one is probably Fortnite BR, they tend to have a few million monthly active users.. although whenever there's an event there's a lot more who just log in for the event. Typically a BR is one person (or one duo or one squad, etc) vs everyone else. No one respawns, except for specific exceptions, and the last person/squad/whatever standing wins. There's an official team deathmatch type mode as well but the children tend to scoff at it as if it's just training wheels for "the real mode" instead of realizing that it's more fun to have respawn than to not have it.
I did a new port of base ioquake3, and actually contributed changes back, so upstream ioquake3 now has decent Emscripten support. The multiplayer is using WebRTC DataChannel, based on HumbleNet but I had to make quite a few changes, as it was abandoned a long time ago.
If they have a different username here, it feels wrong to out them. If they wanted, they could have said it themselves. You could have thanked them without tying the username together in a way that is Google-able.
I managed to play some ONS-Torlan this past weekend with my friend on a pure LAN (no Internet), it was fantastic and just as much fun as I remember. I enjoy turning on lots of fun modifiers like low gravity, big head mode, berserk, etc.
I'm half-way porting another turn of the century game engine to emscripten but I'm a little stuck on the networking so it's pretty cool being able to have practical examples to reference.
Multiplayer on the web is tricky. For non-action games you can get away with WebSockets but for arena shooters or other action games I think UDP is important, and you can only get that with WebRTC and all the baggage that comes with it. I'm using a library called HumbleNet to handle WebRTC, but I had to make a lot of changes for it to be usable. https://github.com/jdarpinian/HumbleNet
Wow, this is awesome! Is your fork public? I'd love to try adding some stuff like touch controls and save file syncing like I've done for Cave Story https://thelongestyard.link/cave-story/
Nice! I thought about trying to port Tribes 2 but I never played it myself so it wasn't high on my list. My HumbleNet repo would be a good starting point but some changes may be required for it to work. It's not at the point where it can drop in and work on any game, although I think it would be possible to get there.
There is WebTransport which is based on HTTP/3 (formerly QUIC), however it is not available in Safari (no surprise there) and also it does not support peer-to-peer connections.
WebRTC is available today in all browsers and supports peer-to-peer unreliable UDP.
Is there a reasonable networking library for just throwing data packets somewhere using WebRTC in browser, specifically with a client-server rather than P2P? I've probably started work on such a thing like 4 times now but I've never gotten very far because I always found that whole stack incredibly convoluted and onerous to work with if you're not using it for it's intended usecase, but I really would like to have a go-to library to make little multiplayer webgames that use UDP under the hood.
Yeah WebRTC is not a well-factored API. It's basically almost an entire end-to-end implementation of a video calling app Google acquired and bolted on the side of Chrome. If what you're making is not a straight video calling app then it's a very strange API to use. But it does work!
The problem with WebRTC for this kind of application is the need for a whole separate "signaling server" just for connection establishment, plus STUN/TURN, plus your actual application server makes three required servers. It puts a really high minimum on the complexity of any WebRTC app. For a client-server only application you might be able to combine all three servers into the same binary. I haven't seen a library that does that, but maybe it exists, I haven't looked extensively.
The HumbleNet library that I use provides an implementation of the signaling server for connection establishment, and for the client app it hides all the WebRTC complexity behind the BSD sockets API. So all you need to do is host the server.
I don't think his Linux bit is backwards. I think he is just saying switching to FOSS software because a company is taking a freedom isn't a real solution, and we should fight to make it so companies can't do certain things, regardless of if Linux or anything else is an option.
Admittedly I lack context. It seems on the surface this is a very loaded topic. I didn't get the gist it was 'switching' -- things existed/were being taken away.
Absent anything else, I feel supporting the status quo does just that. Must break some eggs to make an omelet; quantities/plate count/portions matter.
When I say 'loaded', I truly mean it. One could argue this in a positive self-fulfilling direction or the other: fallacy, 'sunk cost'.
I feel as if this is capitulation, personally, but am clearly biased. Very idealistic, would prefer they be the change we want to see
I think it was someone other than Carmack that was pushing for source releases and linux ports inside of Id. They stopped doing it a while before Carmack left even.
Do you develop professionally on current idtech code? Or are you comparing present-day, easily available Unreal Engine code to what id most recently made available under the GPL, which is essentially twenty year old code?
This makes me so happy and brings back a lot of memories. I really appreciate all the effort that video game archivists put into keeping these old games playable.
Every year or so I have my fun with Quake 3 and UT99 with bots. They might not be as smart as a human opponent but playing on Nightmare and Godlike difficulty brings back that twitchy adrenaline infused moments I enjoy so much from those games :)
A potential side project I keep coming back is reimplementing the dedicated server for an old game like this. Even years ago when the games were popular, I often found the DS challenging to run.
I used to play so much Bunny Tracks. It was like digital parkour, using physics glitches for acrobatics through crazy obstacle courses. Such a neat game format, but I never saw anything like it (besides Portal, kinda.)
My immediate thought was "this is like that project which hosts UE1 games inside UE5" and it turns out it's the same project, they've just rebranded from DXU24 to Surreal, and they now seem to have their own open-source frontend in addition to the license-encumbered UE5 frontend.
Seems I jumped to conclusions, both UE1 reimplementation projects are using the name "Surreal" but indeed there doesn't seem to be a direct connection between them. The more the merrier in that case. To set the record straight then:
Surreal98 (formerly DXU24) hosts UE1 games inside UE5. Plans to release as a commercial product?
SurrealEngine (this post) is a standalone UE1 reimplementation. This one is open source.
Yup. SurrealEnegine should run fine at least on 64/128MB video card suppporting SDL2 and Open GL 2.1 (or GL 1.4 by hacking up the engine renderer like crazy).
There's no point on reimplementing a game needing either a propietary engine (cough, cough, OpenMafia's switch into Unity) and/or a modern one with crazy requeriments defying the original purpose of replaying a game when a low end machine can't run a 20-24 years old game.
SDL2 it's multiplatform. With Unity, you are doomed with Risc-V, PowerPC or any non-released platform. Thus, the project it's already kaputt since the beginning.
These might be available soon. Is not like the community didn't mess with UT and Deus Ex renderers since forever. That's how GMDX works today on DX9/GL video cards (and even DX10 and 11).
Also, Deus Ex it's one of the most played games ever due to its cult status (and, well, people loves conspiracy theories on the 9/11 and the Covid and in-game terror attacks). Having a GL 2.1 renderer (even a software one) will be one of the first succesful tasks being done.
I'm pretty sure even PPC Amigans would love playing it on their machines.
DX might be like the old Nethack 3.4.3 which have been ported everywhere, even to more platforms than Doom.
Unreal Tournament 99 and Deus Ex are two of my happiest game memories. This is a really ambitious project and it’s lovely to see those old games getting some love! Still hoping for a Deus Ex remake…
I would love so much for the eventual state of this project to allow us to modernize the original DX. I don't need a remake, just modern quality of life. I know there's extensive mods.
Definitely don't do this for your first playthrough thoug, play the original instead with only simple fixpacks like Kentie's Deus Exe launcher [0]. Opinionated mods should not be recommended as the default experience.
>We definitely can’t open source Unreal Engine 2 or 3, because of dependencies on a large number of external closed-source middleware packages with complex licensing requirements.
>Open sourcing Unreal Engine 1 might be possible, but getting the source and dependencies into a releasable state would take a lot of cleanup effort that we just haven’t been able to find time for. I hope we can do it someday. [0]
This is proprietary closed source mindset. Nobody is asking for bug free cleanly compiling and running codebase. Releasing with dependencies removed is enough, community would patch around it in no time.
Yup. UT holds a special place in my heart, and the abandonment of UT4 cut deeper than it should have. It's not like they couldn't have afforded a small team to continue working on UT4. Not getting more Unreal Tournament, and not getting the original continuation of Prey[1] are my biggest frustrations when it comes to gaming.
On a quick screengrab in response to yours and the above comments. It looks like Fortnite also killed Tim Sweeney's personal involvement with his own forums. They never seem to have the time to do anything on the engine. Too much money to be extracted.
Honestly in an era when so many companies are re-releasing and re-mastering and re-making their back-catalog, I'm shocked that Epic seems to have forgotten their roots.
Where's an Epic Arcade bundle of their 2D masterpieces like OMF2097 and Epic Pinball and Solar Winds? Why isn't Jazz Jackrabbit appearing in half a dozen mascot-themed Super Smash Bros ripoff?
Compare vs Capcom's remakes of all their classic Resident Evil games (Unreal 1 and 2 could get this treatment) and rebundles of all their arcade fighters and beat-em-ups. Or Id's annual rebundling of Quake 1-3 for new generations.
And it's not just big companies like Capcom doing that. How many times has little Croteam re-released Serious Sam 1st and 2nd encounters?
Meanwhile can you even buy UT2004 anywhere anymore?
That would be absolutely great if it were to happen, especially if they'd choose more liberal license such as BSD.
I'm a sucker for software rendering and unreal engine 1 has even more advanced features in that department compared to the original Quake (1 and 2) engines.
Would love to port that to wasm if this ever happens.
It'd be nice if they released the code to their old DOS game catalog. Probably piles of 16 bit assembly but it'd still be nice (assuming they still have it)
It took a very long time for the source code for e.g. ZZT to be published, precisely because they apparently lost the code. https://github.com/asiekierka/almost-of-zzt Even then that had some third party comments removed from it.
Unironically Splatoon 3. It's so fun once you master the motion-controlled aiming and Squid Rolls and all that. Clam Blitz especially is the most fun I've had in any multiplayer game in years and really scratches that old UT2004 Bombing Run / Tribes / TF2 itch: https://old.reddit.com/r/splatoon/comments/13eslyb/at_the_bu...
Urban Terror in Fedora cannot be ran, unless symlink from /usr/share/ to user /home/ is made. When I ran it anyway, I saw zero users at all servers and maps, including Eagle.
To make a game as complex as Unreal Tournament 3 you're looking at millions in dev salaries alone. Meanwhile UT3 is still available to play, if anyone wanted to.
Not being as complex as UT3 would be a good thing. I wanted to love UT3 but it's so graphically busy that it distracts from the game play. Even UT2004 — as great as it is — misses the *SOVL* of UT99's simple geometry and colored lighting.
All games in the series before UT3 are co-developed by Digital Extremes so they aren't exactly theirs, also that's probably one of the reasons they were removed from everywhere.
Another developer is making surreal 98 that allows UE1 games like deus ex and UT playable under UE5 with vr + mods and other modern features https://www.youtube.com/watch?v=p2M0hrLoA5M
I would love to also see some sort of diverged reimplementation of the Unreal Engine that worked on a fixed tilmestep instead of a variable one, but it seems like maybe this implementation is faithful to the original engine behavior as well.
This is incredible! I wonder how they reverse engineered it. Couldn't have been easy.
So many engines are getting the open source reimplementation treatment. I wish them all the success in the world and hope their numbers continue to grow.
There've been a couple mentions of Unreal recently, and they keep making me semi wistful over the time I had playing U2:XMP (eXtended Multi-Player).
A nice capture-the-flag game with deplorables & vehicles. Amazing set of 3rd party maps. It'd be amazing to see this brought to a modern engine, especially if the maps could be imported.
Does anyone have a good sense of how many dev hours it would take to write something like Quake/Unreal from scratch today? Not a port, but a full rewrite with a custom engine
In this time period, Tim Sweeney was talking in public about garbage collection, Java, etc. and it seems like the Unreal engine scripting and object architecture drew a lot of inspiration from bleeding-edge (at the time) tools and programming languages. The interview I remember reading at the time is no longer on the internet, but this touches on some of the same subjects: https://www.gamedeveloper.com/design/classic-tools-retrospec...
Look, I get it: they named their library "dumb" so they felt they just have to be cutesy with the license file, but please don't. If you hate licenses that much, https://spdx.org/licenses/WTFPL.html is probably for you
I know posting a top-level comment seems indistinguishable from wagging my finger at the project, but it was just a license rant. I hoped that by including the third-party link it would make it more obvious what was being commented upon but I guess not
Presuming that there are actually jurisdictions in which those typical clauses about disclaiming any implied warranty and so on are important (and I wouldn't want to do otherwise), that minimal license seems like a terrible idea. Not restricting use is all well and good, but you don't want to somehow end up legally on the hook for someone using your code to shoot themselves in the foot, however much it seems like the fundamental problem there would be with the jurisprudence.
Use the jslint license. It has all the legal force of the 3-clause BSD license, but it also offends an awful lot of humorless people in a way that is funny to watch.
I wish Epic had GPL'd their old releases the way id Software did. I'd especially like to have UT2k4. I played a lot of ONS-Torlan in college.
Instead of UT I may do Serious Sam next. Serious Engine was open sourced and there's already a web port (without multiplayer): https://www.wasm.builders/martinmullins/serious-sam-in-the-b...