News | Forum | People | FAQ | Links | Search | Register | Log in
General Abuse
Talk about anything in here. If you've got something newsworthy, please submit it as news. If it seems borderline, submit it anyway and a mod will either approve it or move the post back to this thread.

News submissions: https://celephais.net/board/submit_news.php
First | Previous | Next | Last
Summary Please 
Could someone explain to me the effects of

sv_gameplayfix_setmodelrealbox 0

and

sv_gameplayfix_setmodelrealbox 1

I believe at the time I understood the impact, and that it resolved an issue we had with darkplaces setting larger hitboxes on sprites than other engines - vanilla engines set the hitbox to the dimensions of the actual sprite, while darkplaces set them larger by a factor of √2. We had sprites that were solid, and wanted to support mapper supplied sprites, so we couldn't use a pre-computed size.

Obviously we need to balance the need to get that right (because it could make a map unbeatable if the extra large hitbox blocked a critical path in map) with the negative impact setting the cvar on has. I've read the linked thread and this one, and I've got that it's bad, but not a clear explanation of why.

If it helps, until the next version, you can override the Quoth default settings by adding sv_gameplayfix_setmodelrealbox 1 to quoth.cfg 
@Preach 
When you do setmodel on an mdl in vanilla quake (aka realbox 0), the engine ALWAYS does a setsize of +/- 16 (on account of the loader not bothering to calculate the size - note that sprites use [maxwidth,maxwidth,maxheight]/2 for the size).

In QS (aka realbox 1), it instead does the setsize using the mins/maxs values from the mdl.

Note that if the mod calls setsize afterwards then there's no effective difference (unless it uses mins/maxs to do so...).

Hull collisions are biased by the mins+size values, while bbox collisions are affectet by the mins/maxs of both entities.
This means that droptofloor fails quite often, resulting in items getting removed or dropping through floors making maps impossible to complete.
Or entities with their feet inside/above the ground, or biased sideways.
Or tracelines firing from the wrong place.
Or positions being calculated using different offsets...
So yeah, quite a few ways things can go wrong, but as most mods call setsize you tend to not notice any serious issues.

Regarding Quoth specifically, I had a brief scan through some (probably very old) decompiled(eww) code.
I did spot some potential issues, but mostly where the entity was meant to be non-solid anyway.
One issue is misc_explobox but only with replacement mdls.
There's another potential one when developer is 4, or something, which I'm guessing isn't common.
I also spotted one place where .solid was changed without relinking (ie: before setmodel/setsize/setorigin instead of after), but as it had velocity any issues from that would last at most one frame, so probably noone will ever notice it without reading the code.
So I don't think quoth will have any serious issues with either value.
The cvar is not meant to have any effect on sprites (even in DP, which assumes all sprites are round regardless of cvars).

Replacement models are a huge issue (ESPECIALLY when mdls and bsps are quite so interchangeable). As a result, making the behaviour dependant upon the extension rather than the format makes a lot of sense.

Anyway, that's my perspective. 
Urm, Right, Summary. 
I wouldn't worry about it too much regarding quoth. You might want to go through your code anyway, but I wouldn't loose any sleep over it at all.

If you want your model's feet to properly sit on the ground, you might still want to provide explicit sizes to ensure that mdls can work fine in both vanilla and for QS.
Note that explicit sizes can help for QS too, such that you can have geometry that extends beneath the ground (like in other frames) while ensuring that the frame you want is actually sized properly (and not biased sideways, either). 
Misc_model <-- ? 
What about misc_model?

(i.e. models that might be anything the mapper wants and are unknown to QuakeC. Hence no setsize because it could be anything the mapper is using). 
#30197 
I don't see a misc_model anywhere.
If you mean mapobject_custom then yes, it doesn't call setsize.
However, its also both movetype_noclip and not solid. Thus its size is irrelevant to anything else. Therefore, not buggy.

The same is true of a number of other special-case static/semi-static entities.

Note that QC decompilers are utter shite, so take whatever I say on this subject with a pinch of salt, but what I see looks like quoth survives okay with whichever setting that cvar has (at least until someone replaces maps/b_explo*.bsp with an mdl or even a more detailed bsp). 
 
Maybe this issue shall self-resolve then, given enough time. 
Thanks Spike 
We want to keep vanilla compatibility, so fixing the code to work correctly there and leaving the cvar as it is seems best. I'll add some setsize calls to the exploding boxes as I can see the issue with the replacement models, that shouldn't be allowed to create a difference size hull.

I think from there I can figure out the other possible issues - it would be very annoying if the feature intended to let you visualise the size of the triggers accidentally changed the size of those triggers at the same time... 
On Second Thoughts 
Probably no latent bug in that case, because triggers always initialise the size to self.mins/maxs right after a setmodel.

Imagine someone added a trigger_multiple entity, and set the model to progs/shambler.mdl. In vanilla it would get a size of 16x16x16. The cvar setting we've chosen makes sure that's consistent in other engines. But all of that happens before developer 4 comes along and performs a setmodel without a setsize. So the developer 4 code is inflicting a 16x16x16 bbox on a trigger which was already that size. Right? 
Preach 
maps with a trigger_multiple using progs/shambler.mdl deserve to break...
(if only because ents that expect inline models tend to not bother to precache said models.)
But if a map uses it, and some other entity already precached it, then you'd get a trigger sized according to the model, yes, which would differ between engines. And there's not really anything you can do about it, other than telling people not to do stupid things.

Side note: mdls pitch differently from spr and bsp too. so if you're using vectoangles or makevectors for the entity then you're again going to need to know if its a mdl or not. There's nothing you can do to avoid that, either (other than fte's r_meshpitch cvar that then breaks the rest of the mod). Replacement models are a real clusterfuck in this regard, but thankfully its normally a pain to configure pitch angles so most maps manage to avoid issues there.

When I mentioned developer 4, I meant blink_on does a setmodel-without-setsize, but its solid_not and movetype_none, so it doesn't really matter (and is fixed in monster_teleport_go once it does start to matter, but will show the wrong size with eg r_showbboxes until then).

Regarding developer 2 (read: quoth's RestoreTriggerModels function) then that function can find items too, not just trigger_multiple etc.
Thanks to droptofloor setting FL_ONGROUND (meaning they won't try to move), you probably won't notice, but those items will indeed end up with the wrong sizes because of that setmodel call, so it might be a good idea to preserve the original mins+maxs. I don't think its important for trigger_* though, they'll just end up with the size they had before. 
Thanks Spike (again) 
maps with a trigger_multiple using progs/shambler.mdl deserve to break...
(if only because ents that expect inline models tend to not bother to precache said models.)


You can get away with that in Quoth, because the ability to automatically precache external BSP models extends to other types of models (another example of QC not knowing the model type there!).

I'll probably just make sure that developer 2 skips over items in that case, but thanks again for the check. 
I Have A Stats For You. 
At 47 maps in 2018 so far, we're better than we were in 2017, with 46 maps released by the end of June. 
Frecache Preachache 
Why do we still care if a model is precached? 
@otp 
Sweet. I was just taking a look at the spreadsheet. Thanks for keeping track. 
 
I recorded a blind playthrough of "The Tenacious Tentacle" by Socks, and since there is no official post of this map in the foruns i will just post it here:

https://www.youtube.com/watch?v=H9nfeLZm7Lc

But, seriously, why isn't a post about this level here? I only found it by accident (i never search for new maps in Quaddicted because I thought all new maps were posted first here in func_) The map was released this year, it uses AD monsters, it was made only with 100 brushes (so mappers can use it as a reference for the 4° competition) and it's awesome =D

You can download it here: https://www.quaddicted.com/reviews/ad_b100_sock.html 
Good Point About The 100 Brush Reference 
Haven't checked that map out yet, but it looks good.

I'm trying to contact Breezeep, does anyone have his email address? 
 
But, seriously, why isn't a post about this level here? I'm not sure why any map author would avoid posting here but I have my suspicions.

Is that QSS-Admod in the video? Looks good. :) 
@dumptruck_ds 
Yep, it is the QSS-Admod engine =D 
Yes, Tronyn? 
Check my profile. 
New Map 
Hello everybody,

since I stopped mapping around 1999 I'm a bit rusty at this and need some pointers. A while ago I finally tried out SleepwalkR's truly excellent TrenchBroom for the first time seriously and made a small DM map with it, which I quite like. Now it's more or less done and I'm looking for a way to share it and maybe get some feedback. Is there currently something like a repository or a place where people look for Q1 DM maps? Or do you just upload it somewhere and post a link here? Are there still review sites? Do people even play custom DM maps anymore?

Anyway, any help with this would be appreciated muchly.

headshot 
Headshot 
http://www.quaketastic.com would be an easy place to upload it.

username: quaketastic
pw: ZigguratVertigoBlewTronynsSocksOff 
 
Just make sure you pick the right directory unlike most people uploading there... :P 
Headshot 
Hello!

People usually use quaketastic.com to upload maps. Login info here: http://celephais.net/board/view_thread.php?id=3&start=15658

Also, here on func is news thread, just submit news with short description of the map, sceen and download link. So after news is approved it'll have its separate thread.

Hope this helps! 
Headshot! 
A new headshot map, omg!
I'd be up for giving it a spin online if that's happening.

Not much multiplayer going on around these parts anymore, the focus has mostly shifted to singleplayer maps. 
 
I think even the dedicated DM players left don't care that much for new maps, though you may want to post it at quakeworld.nu for feedback. No review sites to my knowledge.

Of course, it's always possible to throw in some monsters and we'll be all over it. 
Thanks! 
Thanks for the quick answers and great info! I just need to sort out a few niggles and then I'll upload a beta somewhere and post a link here, maybe we can meet on a server (Bal, anyone else?) and see what's what. The tricky part would probabaly be to meet there at the same time :-)

It'd be nice to get some feedback on balance and maybe sticky parts to clip before release. 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.