A friend of mine would like to run Quake on 144hz monitor, but with 72fps physics. Using QSS by default the game run @ 144fps, and that does changes physics a lot. How to set original Quake physics while having 144fps ?
@spike @Qmaster Re: Code Parsing Fuckups
Hm,so the code works when written in Notepad but not in the actual editor? I had the exact opposite thing happen to me recently when trying to add entity information to a config file in a Doom mapping program I use, so I wonder, was this program originally written for Unix compliant OSes (Linux Mac etc) or Windows? The text parser might be expecting DOS-format end of line characters and not getting them, either that or there's a bug in the code that is searching for the end of comment delimiter, I haven't looked at the code yet so I'm not sure which is the case but that is probably where I would check first. Then again I am a pretty inexperienced coder so maybe you shouldn't take my advice 😂😂
The specific patch is quite small, and if you're doing something that's sensitive to framerates that that would exist regardless of the rate at which the server runs at. So no, just the usual potential-but-trivial merge conflicts.
QSS ALWAYS limits its physics to 72fps or less, regardless of video framerates, so its nothing to worry about with the latest QSS.
Just set host_maxfps to 0 and enable vsync and you're fine (usually - nvidia drivers seem to have issues with vsync and otherwise-high framerates).
If physics feels different then it'll be purely down to the interpolation (or if you're more familiar with higher rates - which are generally considered buggy).
I didn't add any settings to limit physics to eg 20fps as is the default on many dedicated servers. my aim was purely to smooth out the single player experience, and I personally hate 20fps anyway.
fteqcc accepts windows, unix, and supposedly also mac line endings, which is meant to match scintilla's behaviour also.
note that support for mac endings means that rogue's sourcecode does not compile as-is due to a mac line ending appearing in the middle of a single-line comment, and these being line endings means the next line contains uncompilable gibberish.
this is why I've configured fteqcc's text editor parts (a third party widget called scintilla) to display explicit line ending chars if they appear to be mixed.
While fteqcc attempts to support various types of unicode encoding, it only considers the ascii chars as whitespace, so chars like non-breaking spaces that you might have pasted in will confuse the compiler but might be invisible in the editor.
Any non-ascii codepoints are pretty much ignored - they're accepted in names, and any non-ascii chars inside strings will be treated the same way as they always have - needing eg com_parseutf8 1 in order to display them properly in-game (instead of as multiple random red glyphs). As an english speaker that's also quite lazy, this hasn't got much real-world testing, just specific cases that required annoying copy+pasted glyphs that I can't even read, so it wouldn't surprise me if the unicode crap is completely unworkable as-is.
It'd be nice to have an actual copy of a bugged file so that I can figure out which chars are actually in there, otherwise I have absolutely no idea how to progress (and I'm too lazy/paranoid to try fiddling with my system locale etc to try to reproduce it).
Because I can't use the CSQC without using the new compiler version and I really like being able to edit within FTEQCCGUI for quick simple fixes so testing to help us fix this....
If I compile code that has a warning for a variable that isn't used anywhere, then // it out inside FTEQCCGUI, then compile, I get the warning about EOF in a comment on that line:
•If I then A close FTEQCCGUI, reopen and recompile, the file change is not saved (add popup warning to save edits?).
•Or If I then B manually save the file with // added within FTEQCCGUI from FTEQCCGUI's File->Save, close FTEQCCGUI, reopen, recompile, I no longer have the EOF warning.
If I open the same file within FTEQCCGUI and delete the // for that variable, then recompile, I get the EOF error again. I could have sworn the older version auto-saved any in-FTEQCCGUI edits before compiling, but it seems like something is screwy with that......
AHH!! THAT'S IT!
If I change the file within FTEQCCGUI, SAVE IT!!, then compile, then I get no errors. That's the bug, auto-save-all before compile is disabled. Can you please add that back or at least add a warning or prompt to "Save files before compiling?"
Still wierd how if I don't save before compiling, then compile, get error, then save, then compile, the error is still there.
World Size Limit
What is the proper way to compile big maps for quakespasm-spiked ? The default world size limit in Quake 1996 is 4096 units. Quakespasm/jackhammer is 8192 units (beyond that limit some bugs occurs in the game, even in QSS). If I go with higher limits (16384, 32768, 65536, 131072, 262144) ericw tools don't want to compile the map. Thanks
ter-shibboleth world is 65536 units,
not sure, but prolly you have to add -bsp2(or something) switch to your command line
@ericw Tools Says
Create the output BSP file in BSP2 format. Allows the creation of much larger and more complex maps than the original BSP 29 format).
Escaping The +- 4096 Bounds
gl_farclip 100000 (or whatever you need)
does bsp2 have anything to do with this, other than indirectly? (i.e. bigger maps - more leafs, clipnodes etc.)
BSP2 has nothing to do with the bounds.
Yeah Thought So.
There Is A Bound Limit On Bsp29
Node bounds in bsp29 are int16_t so all of the coordinates have to be within -32768 to 32767; bsp2 changes these to float.
Not all engines use this value (fitzquake family doesn't) but winquake/glquake do use it for culling, and it would totally break rendering in those engines if you overflowed the coordinates, so it should probably be a hard qbsp error.
(talked to nemo on discord and I think he solved the issue, was too many verts on a sky polygon)
thanks for the replies, i got it all !
huge maps are so cool...
Just installed QSS and im getting errors in the console about ammo crate bps misaligned lumps. No idea what that means, and I didn't get those errors in original QS...
With A Mod?
Which level? I don't see any with id1 / e1m1, for example.
I get some for breakables in ad 1.70 patch 1 (maps/ad_brk/wood01-4.bsp)
It indicates a bug with the qbsp or other tool that wrote the .bsp file.
Yeah, it's custom bsp's I had installed for the ammoboxes, regular Quakespasm seems fine with them, as does QSS, except QSS pastes the error in the console
the warning is new to QSS and won't get displayed in QS.
if its your map/bmodel then update your tools, otherwise just ignore it. it won't affect the vast majority of people so w/e.
(any maps/bmodels that get warned about will give crashes if you try running them on android/ios/rpi, or really ANY non-x86 cpu. which means that its really easy to fail to notice when tools write out buggy files - I was guilty of it too with fteqcc a while back).
I'm a beginner at QuakeC, and I want to make a weapon that works like the airblast from Pyro's flamethrower from Team Fortress 2.
The airblast can reflect projectiles and launch players away depending on where the player's aiming it, here's how the hit detection is done in TF2:
I suppose it would be easy to replicate this in QuakeC, I'd just need to spawn an entity with its center offset to the player and in the direction he's aiming. But this has its problems (and they're present in TF2 and shown in the video), from what I've read Quake doesn't rotate hitboxes, and this will produce some really strange situations if the player is reflecting at an angle.
Is it possible to check collisions in a cone in QuakeC? If it is, I suppose I'll have to implement the math by myself.
Are there any other alternatives?
findradius will get things within a sphere, that might be less bad than an AABB
you could also math it up yourself to get a cone, by testing angle between the airblast's forward vector and the vector from the airblast's origin to the incoming projectile.
However, a sphere might be better and i would size it big enough to be more forgiving to the player -- false positives are better than false negatives in this case i think.
Not sure if the source is out there but there was a weapon called the AirFist in the Painkeep mod. It was also a stand alone mod released as a promotion for Painkeep IIRC. It's been over 20 years. But it was very cool back in the day.
+1 for making new stuff for Quake
Yah AirFist was the first thing I thought of too. :-) We ran that for a while on one of the kitty1.stanford.edu servers back in the day.
Looks like it can still be got here: https://www.quaddicted.com/files/idgames2/quakec/weapons/airfist1.zip
...and that does include the QuakeC source code.
(not sure if there was ever another release after version 1)
BTW Torgo, that's just nostalgia coming through... we're not trying to dissuade you from making something new along those lines.
It's always cool to be able to look through a relevant codebase though, especially if you're just starting out with something as idiosyncratic as QuakeC.
I agree with Johnny. I am new to QuakeC too so any existing code to look at is a godsend!
Thanks for the help guys, I'm really against discovering the wheel again, so existing code helps a lot.
Also, I really appreciate your videos dumptruck_ds, it's actually the reason I started messing with Quake.
You Might Need...
Extras_r4 has some fancy particle effects, in particular it turns nails and rockets into 'particle' objects that react to forces. That mod has a cool gravity well thing that pulls nails and rockets away. Could be used to do the reverse.
Thanks for saying that, makes my day!
There's a newer version of extras now that Khreathor fixed up. I'd suggest that. The source is included in uwjam. See here:
just curious why on the first post it is raining inside?
2. Video of rain: https://youtu.be/NRud8T88tDc
maybe baker was curious as to whether the floor entity thing would cause the splash effect too (not my video, and I don't remember what state I left my examples in).
Traceline And Texture Questions
I'm trying to check what texture is below the player when he walks, then I'll change the sound of his steps depending on the texture.
I found this function in fteextensions:
string(entity e, float s) getsurfacetexture
So I thought that I should use traceline to get an entity below the player to get its texture:
traceline (self.origin, self.origin + '0 0 -40', 0, self);
But trace_ent always returns world.
I'm almost positive I'm doing everything wrong here, that traceline only interacts with entities and not the map itself.
Yeah, I was completely wrong.
Just do this:
local float surfnum = getsurfacenearpoint(world, self.origin + '0 0 -40');
local string s = getsurfacetexture(world, surfnum);
Missing Textures On Models
Textures for models used with DP do not affected in QSS. Models still grey.
How to solve an issue?
Spiked Particle Effects
i was playing through lost sepulcher months back, and i was using the ad spiked mod, and i had the particle effects working.
i downloaded the most recent version of spiked, extracted the contents to the root quake folder, ran the exe, tried out vanilaa quake, but i cannot see the partical effects.
i must admit, i'm out of the loop here, so any advice would be appreciated!
the particle stuff in qss were added for use by mods or maps, rather than forcing it on all users (retaining the quakespasm feel by default).
ad uses them, vanilla does not.
if you want to use custom effects, either use the r_particledesc cvar to tell the engine where to load the particle effects from, or do the equivalent via the particleeffectnum/pointparticles/trailparticles qc builtins, or use worldspawn keys of the form "_texpart_TEXTURENAME" "CONFIG.EFFECT" in your own map creations.
Without one of those, you'll get the same results as you would with unmodified quakespasm.
Are you saying that the version of spiked released for AD has particles forced ON in the engine, and all other versions of spiked don't?
Kinn (you Forgot To Log Out)
No, they are opt-in only, and AD has opted in basically, it calls the various particles effects in the qc etc.
As far as I know there is no version of QSS specific for AD anyways? But AD is probably one of the only mods that uses these features?
ah, i'm not really at the level where i can grasp a lot of this.
i was talking to rob martens, and he mentioned what i think you mentioned first (i quote):
1.) From a copy of Arcane Dimensions, copy the particles directory and the effectinfo.txt file over to your ID1 directory.
2.) In the QSS console, enter r_particledesc "effectinfo" to enable the use of the effectinfo file instead of the classic particles.
i'll give that a go.
Ah I'm confused because i thought the question sounded like "AD run with the spiked exe released for AD has particles, but if you replace with newer version of spiked exe no particles appear".
That's how I took the original situation, but if I'm totally wrong then disregard. Probably my crap reading comprehension.
oh LMAO, sorry just read the original post #196 and he's talking about them not appearing in vanilla.
So yeah ignore me.
I'm playing the Xmas Jam 2018 with Quakespasm-Spiked-ADMod.exe and i'm getting this error with both Scampie's and Strideh's maps:
Host_Error: Illegible Server Message 119, previous was svc_serverinfo
Anyone knows what's happening? :/
Spile will know better what that is but try updating to the latest build:
The qss-admod was a one-off build I made with a few patches to Spike's engine when AD came out but it hasn't been bug fixed since.
Thank you very much, sir!! Now it's working =D
I didn't knew that you guys have been updating Quakespasm-Spiked =D
It's me again. Sorry for the double post...
One thing that i noticed when i was testing xmas jam with another source-ports is that the start map have snow falling from the sky in quakespasm and markV, but not in quakespasm-spiked...
i opened the start.map file in trenchbroom, and it seems the snow is made by something called "misc_particletemplate"... quakespasm-spiked doesn't understand this feature?
set pr_checkextension 0 if you want mods (like AD) to treat qss like they would quakespasm.
But when i do this i don't have those cools effects (smoke, sparks, somke, etc) from quakespasm-spiked anymore :P
i was also trying to make a *.ent file for QMaster's map "Gift of the Boxlord" (to make snow in the map) but i noticed that the *.bsp already had a line where it says:
but there is no snow falling, even when i write r_particledesc fte_weather or r_particledesc weather on the console :(
How to disable the custom particle effects? I've tried all cvars I could think of, and nothing. Specifically, I'd like to disable the custom TE_GUNSHOT particles, because lots of 8-bit alpha overdraw makes the engine too slow when up close.
Also, I wonder if Spike could fix the crash when FSAA is enabled on Intel HD Graphics 3000 IGPs.
Ok, I've just re-read the thread and will try a couple ways to disable the custom particles.
I cannot fix your intel drivers for you.
that said, I do wonder if its caused by the use of glCopyTexSubImage. Either way its not something I can test/debug/fix for you.
particle configs can get loaded a few ways:
non-default r_particledesc cvar setting
worldspawn _texpart_* keys
qc particleeffectnum() calls that include a full-stop separator.
chances are the mod is doing it explicitly, which implies you need to mod your mod to disable it.
(assuming this is AD you're using, you'd need to open effectinfo.txt and strip out the TE_ effects that are generally at the start of the file - sock used a different prefix for extended effects, and if you strip his new effects then there's no fallback and you'll see less particles there. Or you can just set pr_checkextension 0 to prevent the mod from realising that it can use those particle effects thus preventing it from forcing them to load.).
When I set r_particledesc to "haze.cfg" on a map with torches it hardlocks on r10. I've booted up into start and e1m1 with this active and it has froze every time.
Many maps have different textures with same names. To load correct HD texture for current map it placed into textures\map_name subfolder. QSS even in this case loads both textures: from each textures\map_name\ and textures\ folders. And if texture in textures\ folder has _luma. file it looks especially bright.
It looks like this (on Forgotten Sepulcher):
I found elegant decision - just put in textures\map_name\ subfolder entirely black _luma. file for current texture. It solve problem.
It is a bug or its a feature?
That's definitely a bug. If loading from textures/mapname/texturename, the engine should ignore textures/texturename_luma.
Now I don't remember if that bug also happens in my own engine...
RMQ Winter 2011
If anyone remembers the old RMQ project,the e2m1rq map in the Winter 2011 release is a bit crazy wit hthat opening cutscene.
In Mark V that cutscene plays at normal speed,showing the grunts and marine fight and enforcers teleoprting at normal (and intended) speed.
QSS plays the cutscene at hyper-speed.
The second cutscene plays after maybe 5 seconds in Mark V
(the one with they shall not contain thee)
and QSS plays the cutscene a little later (8 secs?) but at the right speed.
RMQ Winter 2011
will not fix - its a bug in the rmq qc, not qss (or fte for that matter).
you can work around it by setting pr_checkextensions to 0, giving you the same result as (unmodified)qs or markv.
specifically, the qc has different behaviour between:
a) no extensions (read: qs expected)
b) extensions+DP_SV_CLIENTCAMERA (read: dp expected)
c) extensions without DP_SV_CLIENTCAMERA (read: they didn't bother to test that pathway properly, and its bugged).
The DP_SV_CLIENTCAMERA extension is designed as a simple wrapper around svc_setview (except that it also switches the pvs too). rmq doesn't even use it, so I don't know why its bothering to check for it.
How to use external replacement conback, gfx.wad and menu images?
The source seems to support it, at least for menus, but I'm having no luck.
I don't know where else to report this but there's a bug with one of the xmasjam2018 maps. In spipper's map "A Christmas Romp," entering the map and saving causes QSS to crash immediately. I don't have the same problem in regular QS.
This a patched in one of the last commits in QS (it's a buffer overflow with keyvalue length)
Does QSS have particle limits or any sort of limits when it comes to fancy effects? For mods that take advantage of it like AD, it's my preferred port of choice but there are moments when it slows down to under 1 FPS. Granted my computer has some pretty old parts in it but I feel like the Quake engine shouldn't be that difficult to run even with some fancy effects.
I had performance problems in Leptis Magna and also in ad_azad during the final boss fight. During the final boss's death animation, I was worried that the game might crash. Usual when I get to this point in a map, I have to save and reload in regular QS.
you mean like the r_part_maxparticles or r_particle_tracelimit cvars?
if its the rain/snow/etc effects, you can just set r_part_rain_quantity 0 (or really any value lower than its default).
I don't know what's actually causing the slowdown and why it's so drastic but I'll try changing those cvars. None of the maps in which I'm having performance problems have any weather effects so it's something else causing issues.
Try hiding the world with r_drawworld 0 and see what is rendering and what the fps is. IIRC all torches in the map render in AD+QSS