Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Hell Theatre

Reasons for success or failure of source ports?

Recommended Posts

I've been trying out some other ports recently, aside from the better known ones.
Some were good, some were bad, obviously but there's one question I was asking myself repeatedly:

How did it come that among the feature-centric ports there is so little actual competition? That part of the market seems to be under total control by ZDoom and its children. It can't really just be the quality of the code - testing some older ZDoom versions showed an engine that was just having as many compatibility issues as the others.

Share this post


Link to post

Simply, ZDoom supports a lot of features that are particularly fancy (mainly in terms of popularity among mappers and players, less importantly in terms of a technical achievement) and that other ports don't support, and this holds true since a long-enough time ago that it's a well known fact, which further increases success of the port.

Share this post


Link to post

I think that view is a bit simplistic. In the early days there were also other ports like EDGE and Doom Legacy which were focussing on new features, but they never gained that kind of popularity than ZDoom.

Share this post


Link to post

I can't speak for why it originally took off, but the recent continued popularity is probably because the scene is already so strong for zdoom. if you want to try out a doom mod, which is usually the first step before trying it yourself, you will more often than not play a zdoom mod.

Share this post


Link to post

It's a very complex matter.

You are right about Legacy and EDGE being early feature centric ports.
And you know what? They were quite popular back then. In fact for many years EDGE was the port to use for making weapon mods.

But as things happened, Legacy never managed to get its problems ironed out, the port had been a bug-ridden mess from the start until today and once ZDoom stabilized it stood no chance any longer.

EDIT: I just want to add, that for Vavoom the same applies. The engine had good features that always were overshadows by its bugginess. This also was a port that could have been popular, had it been more stable. The lighting feature it had was great, but not enough to sustain it.

EDGE had other problems. It went an entirely different route than other ports, rewriting its internals completely and supporting Doom only through emulation with its native features. Needless to say, that often didn't work so great. Another problem was that the engine never gained full Boom compatibility and finally its significance shrunk because the developers were losing interest - and this pretty much coincided with ZDoom gaining the main features that made EDGE attractive to begin with. So the weapon modders jumped ship, relegating it to a niche port.

As for other engines, here's my takes:

- Doomsday has always been a strange beast - it always had high download numbers but this wasn't because the port was actually popular in the community. It was mostly because it was the default port to go to for casual players that just wanted to relive old Doom memories on a better looking engine - it got there because for many years it was the only stable GL port with a decent reproduction of the actual game. Yes, GLBoom existed but it probably was too basic with no visual eye candy.

- Risen3D could have been the port to compete, but with a developer who does everything in private, no real promotion, no forum and early on no source release it was doomed to obscurity.

- Eternity's main undoing was simply that the Windows port came far too late - the DOS version it had was basically unusable with Windows XP - and when it was finally there it had to compete with a whole bunch of ports that had already established themselves among Windows users.

So to summarize: ZDoom won because all genuine competition subtracted itself from the picture by bad management in the crucial build-up phase that lasted from roughly 1999 to 2004. After that it was merely the already gained momentum that drove it forward.

Share this post


Link to post

That seems to make a lot of sense.

Thinking about it, it appears that after 2004 or 2005 no port that's exclusively software rendering has made any impact at all at large.

Can it be that this is the reason why Eternity is somehow stuck with 10 or so users? It's really the only explanation I can find.

Make a map for vanilla and all hardware accelerated ports can play it if it doesn't contain too crude hacks. Even for Boom you still have the choice of multiple hardware accelerated engines. 3DGE is exclusively hardware rendering, even Legacy got OpenGL support, even if it's not the best out there. And GZDoom, which was released in 2005 and got to the top of the pile since then, by now even surpassing Doomsday as the most popular port, was apparently the only new engine released after 2000 that gained any real traction.

So that essentially leaves anybody wishing to map for Eternity in an awkward place: No hardware rendering inevitably means that a large part of the audience will never see the maps.

Share this post


Link to post

People have standardized around ZDoom because it has a good set of features that make it flexible for developing mods. To some extent I think there's a network effect - people use ZDoom because it supports all the popular mods, and people develop mods for it because it's what everyone uses. But to be honest it's just a really solid, well-made piece of software and I think that's what sells it. Randi, Graf etc. have done a really good job developing it.

As a former developer of a "feature port" one thing I'll say is that I think too many source port developers don't have a clear philosophy for their projects or vision for what they're trying to make. Source port development is so open-ended and there are a hundred different directions you can go in, in terms of changing stuff. That was my problem with SMMU - the feature set was a random collection of things that I personally found fun to implement. Projects like that tend to run out of steam because there's no clear purpose for why they exist in the first place. The source ports that have endured are the ones that have clear philosophies for what they want to do and (more importantly) what they don't want to do.

Share this post


Link to post
fraggle said:

As a former developer of a "feature port" one thing I'll say is that I think too many source port developers don't have a clear philosophy for their projects or vision for what they're trying to make. Source port development is so open-ended and there are a hundred different directions you can go in, in terms of changing stuff. That was my problem with SMMU - the feature set was a random collection of things that I personally found fun to implement. Projects like that tend to run out of steam because there's no clear purpose for why they exist in the first place. The source ports that have endured are the ones that have clear philosophies for what they want to do and (more importantly) what they don't want to do.


I completely agree. ReMooD essentially was a feature port, but my most recent decisions were to pretty much drop all of the new probably not needed features and make it much simpler by sticking to the main goal of it: to have Legacy compatibility and be easy to play. This is helped by going back to an older version of ReMooD where I decided to not add every feature possible.

Share this post


Link to post

I think the influence of the ZDoomHexen format and ACS in ZDoom is quite important too. From relatively early on, that caused quite a stir and allowed people to do things with Doom maps that simply hadn't been possible before, even with BOOM extensions.

Once people got to grips with the format and the scripting, it was a one way street for many people, they learned it and didn't go back. Although there was a learning curve, it was not an entirely untrodden path because the format was basically the same as Hexen so there was already some expertise and documentation out there.

Then when ZDoom got DECORATE, as ports such as EDGE started waning (as Graf said), it was pretty clear which one was going to win out in the go to modders port race. And if that's where the modders are, that's where the players will be because the players want mods to play.

Share this post


Link to post

DsDoom and DoomGLES are my most hated for the worst setups for loading pwads. DsDoom did not come precompiled with the argv tools to run any user wads, and it crashed like crazy and also crashed the instant a certain map was loaded.

DoomGLES had a built in pwad loader.. but you needed to convert all the textures in the wad first before you can use them. It was very annoying to write bat file manualy to get the converter to work.

I hate ports that force people to jump through hoops just to get a wad working. I dont know how anyone here view the two ports in my opinion they suck so bad.

Share this post


Link to post

I'd rank ports for such system on a different scale. The texture conversion for example was most likely necessitated by hardware limitations. On such systems it might just have been prohibitive to convert the textures at run time.

Share this post


Link to post

I played DoomGLES on my samsung galaxy avant. I also have doomtouch that had no problem loading pwads or textures on a dime without any others tools needed.

It must be a limitation the port has. Thats the best guess I have.

Share this post


Link to post
blueinferno776 said:

I played DoomGLES on my samsung galaxy avant. I also have doomtouch that had no problem loading pwads or textures on a dime without any others tools needed.

It must be a limitation the port has. Thats the best guess I have.


Ok, I had mixed them up. I have to agree. Doing this for an Android port is beyond stupid.

I have actually put GZDoom's entire texture manager into an Android project I once developed. It did not use Doom textures but it could have, I did it because it already supported all the other formats I needed. Absolutely no problem here.

Share this post


Link to post
GhostlyDeath said:

I completely agree. ReMooD essentially was a feature port, but my most recent decisions were to pretty much drop all of the new probably not needed features and make it much simpler by sticking to the main goal of it: to have Legacy compatibility and be easy to play. This is helped by going back to an older version of ReMooD where I decided to not add every feature possible.


As Ghostly, Graf, and fraggle already stated, 3DGE for the first few years was only really a feature port - adding stuff into what was already there, or adding features that would hardly go used -- real unfocused development which also necessitated learning the engine as I went. So, for the first few releases and years, it was buggy and didn't have much to offer over the original EDGE.

The last 2 years, however, have been increasingly more focused for my team and myself. Adding things which are practically a necessity nowadays (PK3, pixel shading, SDL2, inventory, DDF modernization, etc), while fixing a gigantic amount of bugs and oversights (which were all rewritten the "right way" solely due to the people who started submitting bug reports, and Graf/Enjay/plums being very helpful). The port is definitely, in my eyes, taking steps in the right direction by listening to our users, fixing long-standing and glaring issues, and improving mod-ability. =-)

Share this post


Link to post

Didn't Brutal Doom also play a role a few years ago in GZDoom becoming the most successful feature-rich port?

Older players were using (G)ZDoom to play UDMF/Decorate projects, casuals were using GZDoom for Brutal Doom etc.

Funny story, yesterday I updated to the latest stable of GZDoom to try out Doom Delta, the HUD was fucked, maybe because of the aspect ratio, not sure. Then I tried that super popular D4D mod and it seems it is not compatible with such a new version of GZDoom. Right?

Share this post


Link to post

All very good, thoughtful answers here. I'd like to add some other important points:

1. You can throw an IWAD and a map at ZDoom, and you can be pretty confident that it will provide a playable experience. ZDoom strives to support features from all other source ports, and all idTech1 games.

2. Quick feedback loop: Users present a bug on the forum, and the developers typically jump right on it and get it fixed. Same goes with feature requests, when feasible. This keeps everyone "in the loop" which is important. Good job Randy, Graf, and the other contributors!

3. Powerful scripting and Decorate.
4. Support for many resource formats (for images, sound effects, music).

5. Massive up-to-date Wiki explaining all the port features.

All of these points feed each other to provide a very attractive choice for TC or PC authors.

Share this post


Link to post
VGA said:

Didn't Brutal Doom also play a role a few years ago in GZDoom becoming the most successful feature-rich port?

Older players were using (G)ZDoom to play UDMF/Decorate projects, casuals were using GZDoom for Brutal Doom etc.

Funny story, yesterday I updated to the latest stable of GZDoom to try out Doom Delta, the HUD was fucked, maybe because of the aspect ratio, not sure. Then I tried that super popular D4D mod and it seems it is not compatible with such a new version of GZDoom. Right?


The mod contains a bug that fell through the error checker in 2.2.0 (only 2.2.0, btw - this bug was introduced by the scripting branch merge in early 2016), but that missing check now prevents that version from starting up. If that buggy code gets executed in 2.2.0 there can actually be undefined behavior because it accesses uninitialized memory.

I have told the makers in very clear terms that I do not intend to undo this necessary consistency check. They could have provided a timely update but didn't. Instead they just put up a warning "Do not use with devbuilds." What would you expect me to do in such a situation?
For released and complete mods I'd be willing to add workarounds, but not for stuff whose makers are still around and fully capable of fixing their stuff.

Share this post


Link to post
VGA said:

Didn't Brutal Doom also play a role a few years ago in GZDoom becoming the most successful feature-rich port?

Not really, GZDoom was already massively successful even years before that.

Share this post


Link to post

I'm not even sure they do right now. I think the last build I installed was still 32 bit only.

But to be honest, with a renderer this slow there is little point in 64 bit, they have far bigger problems to solve first.

Share this post


Link to post

tbh, the main reason why i use gzdoom / zdoom for years is its versatility and robustness. it plays pretty much every map i throw at it, is simple to use, has accurate controls and tons of mods. i'd use it for demos too instead of prboom if it only had better demo compatibility.

Share this post


Link to post

Doomsday 1.8.6 was the first hardware rendered port I used,Zdoom being my first ever.

Seeing dynamic lighting along with many other goodies blew me away. Doomsday is what got me using hardware ports as my primary since then.

But doomsday had a lot of game breaking bugs like when a door or switch just wont work at all stopping me from finishing any wad I started. I just got to a point where I could not trust this port.

Doomsdays current release has insane cpu overhead, even if its boom support is complete there is no way it can handle any boom map with a lot of detail. I hope this changes when doomsday 2.0 is released.

Share this post


Link to post
Enjay said:

I think the influence of the ZDoomHexen format and ACS in ZDoom is quite important too. From relatively early on, that caused quite a stir and allowed people to do things with Doom maps that simply hadn't been possible before, even with BOOM extensions.

That was definitely an important thing for me (funnily I never actually released any significant stuff for ZDoom), it just opened whole new possibilities. Other ports didn't have those features or just crude ways to achieve similar things, without direct support in map editors.

Share this post


Link to post

Since it fits into the topic:

I wanted to check something in DelphiDoom's source today so I went to its download page, but the first thing I noticed was the incredibly low download numbers - 22 last week and roughly 12000 overall.

I honestly thought it would be more popular, based on its feature set, so does anyone have an explanation for this? 12000 downloads in 7 years means the port appears to be a total obscurity.

Share this post


Link to post
Graf Zahl said:

Since it fits into the topic:

I wanted to check something in DelphiDoom's source today so I went to its download page, but the first thing I noticed was the incredibly low download numbers - 22 last week and roughly 12000 overall.

I honestly thought it would be more popular.



These numbers are indeed somewhat surprising. And it doesn't look any better for the other 'second tier' ports:

Remood hovers around 30 downloads per week, 3DGE has 100 - what's baffling here is that the long obsolete EDGE still has 50 downloads, half of what its modern successor manages to do.

It's funny somehow. When reading the discussions about some of these ports here at the forum, one gets the impression that they are well known engines that find at least some occasional use, but from the looks of it, it all doesn't really matter.
All the users who are not part of the actual community seem to squarely focus on the more popular choices, which appear to be GZDoom and Doomsday exclusively, with a smaller percentage going to PrBoom - plus or not.

The mystery here is why the downloads for Doom Legacy are still relatively decent, despite all the problems the engine had (and has.) It's surely not near what it was when the port was at the top of its popularity but with 400 downloads per week it's still one of the more frequently downloaded.

I wonder how Eternity's download numbers look - overall I would have estimated its popularity around that of 3DGE, but with that one a virtual no-show and no pressing reason whatsoever to download Eternity, other than for playing through the Vaporware demo once, I'd say its numbers are on the dark side of 'dismal'.

Share this post


Link to post

Checking out the DoomWiki page, it mentions it has true-color renderering, which surprised me. Did Delphi do it first before QZDoom?

Maybe people just view it as another port with fancy features. That would explain it a lot.
PrBoom/PrBoom+ is commonly used for speedrunning/demos/efficient speed.
GZDoom contains so many features and so versatile, who wouldn't use it?
QZDoom seems to be popular for the true-color renderering in software mode.
Chocolate Doom, for bringing doom.exe/doom2.exe/vanilla exe on modern platforms.

But then what about ports like 3DGE, with it's DDF feature? Why haven't they become some amazing trend? Simply, people are too busy with the "mainstream" ports to bother taking on the task of embarking the features of a new port. IMO

Edit: so it seems DelphiDoom did do true-color rendering before QZDoom? So why wasn't it well known/used for that? Maybe people just see it as a programming achievement: Doom's C code written in Delphi, impressive. Possibly people might see DelphiDoom as an esoteric port.

Share this post


Link to post
Voros said:

But then what about ports like 3DGE, with it's DDF feature? Why haven't they become some amazing trend? Simply, people are too busy with the "mainstream" ports to bother taking on the task of embarking the features of a new port. IMO


Agreed. I was just as surprised seeing these low numbers.

Voros said:

Edit: so it seems DelphiDoom did do true-color rendering before QZDoom? So why wasn't it well known/used for that? Maybe people just see it as a programming achievement: Doom's C code written in Delphi, impressive. Possibly people might see DelphiDoom as an esoteric port.


That may actually be a good guess. And maybe it's just the name that doesn't convey something of genuine value beyond "Hey, I ported the code to Pascal."

Or is it just the fact that all these ports have to show to the public is some generic sourceforge page? That not really the best form of advertisement.

Share this post


Link to post
Graf Zahl said:

Or is it just the fact that all these ports have to show to the public is some generic sourceforge page? That not really the best form of advertisement.

This would help any product a lot. By providing a nice, clean page dedicated to the port, users will be more interested in learning about the port, consider the option of downloading it or not and carry on. Either way, it'll give a good first impression on users, rather than a generic SourceForge page. And that matters.

Even if they don't download it, they will be interested in a good way.

On topic, why don't we analysis a very good example: ZDoom, and it's forks. How did it become so popular?

Share this post


Link to post
Voros said:

On topic, why don't we analysis a very good example: ZDoom, and it's forks. How did it become so popular?



The more I think about it, the more I believe that the reason is very simple:

ZDoom was a port that dared to break barriers. While the rest of the community was focussed on demo compatibility like a hypnotized rabbit - thereby bringing actual progress in other areas to a virtual standstill - or even in non-demo-compatible ports an unhealthy focus of "we must preserve every vanilla glitch as closely as possible - other things are secondary", ZDoom was basically the only port that went ahead and fixed many of these glitches - some small and some with such a big impact on how the game feels that it's hard to switch back, once you take the increased robustness for granted. One particular issue that's important to me is the sliding against blocking two-sided walls, which was overlooked in Doom.exe, but to my knowledge, ZDoom is the only engine which ever fixed this. For all others it was like "demo compatibility and 100% reproduction of vanilla behavior is more important".

So from an outsider's standpoint, ZDoom just handles a lot better than all these 'compatible' engines combined, and once you add its editing capabilities to the picture you get a winner, all it needed to take off into space was that one mod that would draw in even non-Doomers, and it got that with Brutal Doom and its offspring.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×