by Spike » Sun Jan 03, 2010 6:09 am
Each time I read this topic, I think 'well what has this got to do with engine standards regarding mod compatibility'.
If you want to argue about QuakeC IDEs for instance, create a new thread instead.
Any engine standard shouldn't state that there must be dedicated servers, dedicated clients, or that there cannot be either.
It should not dictate the network protocol other than that a given extended protocol must be supported for demo compatibility only. A non-networked (flash?) engine needn't have a network protocol at all.
It would be nice if all engines could network together. In fact, any standard should specify builtins and fields, not SVCs and TEs.
csqc standardisation? would be nice, but it needs to mature still. don't specify that it need be supported yet. There's a doc that specifies the behaviour of each field and builtin on fte's svn. As far as I'm aware, FTE matches it exactly.
But more interestingly, would you prefer q2-esque hud-script support?
a mouse controlled menu has nothing to do with mod compatibility unless the mod has direct control over the menu - in which case you're asking for something else or far more.
Stating that an engine must have ARB multitexture instead of legacy multitexture is ironic - ARB multitexture is legacy since it is core. If you really want to get rid of legacy features, you should be using OpenGL multitexture... But that's me being pedantic.
Any standard should not say the method used to achieve a goal, only how the method is used to achieve a desired effect. That is, it should state that you need a .lit file for coloured lighting. Not that the lighting must be done with multitexture. I don't see the standard mentioning requiring Combiners to do fullbrights and detail textures.
changing resolution on the fly is a personal preference thing, and has nothing to do with mods. If a QC mod ever changes my video resolution/vsync/etc, I will not be happy (unless its a menu and the new values are completely under the user's control).
'stupid QW crap' can be done in NQ engines too. Just change your player model's texture to a single colour in the last 32 pixel values in the palette, probably a yellow. Easy, at least if you have an editor. 'cheaty client cvars' just make the process easy for all, not just the people who will use any and all cheats. White walls? really depends upon your choice of retexturing set. Those cvars provide nothing new, they only simplify their use for people who are not accustomed to hacking their entire quake install just to win a couple more games.
Frankly, if you removed those easy settings from the engines that support them, you would find the users switch to a different client that does support them (or just stay with an older version).
Any standard with any chance of adoption should not specify features which may not be supported. Sorry, but if the engine was your engine, why would you need an actual standard for your mod in the first place.
Any standard for mod compatibility should not fully mandate what is supported, nor how it is supported. Only how it is activated or used if it is supported.
Knowing that the engine will use your fog if it is supported is far more useful than knowing it supports fog without knowing how its switched on. Different engines activate fog in different ways. But they must all support activating fog using the same mechanism. Either a worldspawn key or qc+stuffcmd. If so, what's it called, does it scale from 0-1 or 0-255, the ordering, count, and the defaults of the fog's settings.
If the standard says 'must support tga replacement textures' then the standard is useless. If the standard says 'must support version X and mode XYZ tgas with correct interpretation of the bottom-up flag as replacement textures stored with name blah/blah.tga' then the standard becomes a hell of a lot more useful.
It is actually quite hard to put in all the words to fully specify a standard. In all honesty, without an example mod/map that tests each requirement, such a standard will not be widely supported and thus not widely usable. With regards to mapping, Don't forget QW clients in the example mod/map. They've a slightly greater following, in europe, anyway, and you don't really want two standards.
Mneh, you get the idea, and I apologize if anyone takes personal offence, none is intended. But please stay on topic.
.