New Release - R7
#92 posted by Spike on 2017/01/29 19:59:24
Impressive Changelog
#93 posted by Baker on 2017/01/29 20:12:07
Quite the changelog there Spike!
#94 posted by Baker on 2017/01/31 21:08:28
Some light testing ... Very awesome stuff!
It connects to DarkPlaces using DPP7 and appears to work just fine in a vanilla situation.
/Very incredible work in R7, Spike! I will no doubt be making acquisitions some time this year.
Bug
#95 posted by ericw on 2017/03/31 01:30:42
entering "r_wateralpha 0.5" at the console with no map loaded crashes.
This bit in R_SetWateralpha_f seems to need an additional check for cl.worldmodel != NULL:
if (cls.state && !(cl.worldmodel->contentstransparent&SURF_DRAWWATER)
(same for tele/slime/lava)
Also A Limit Bump Request
#96 posted by ericw on 2017/03/31 02:28:44
static ents 2048 -> 4096
efrags 4096 -> 8192
IIRC there is a tutorial from MH on making these dynamically allocated, looks like Baker has applied it to MarkV and I should try doing it for QS as well..
@ericw
#97 posted by Spike on 2017/03/31 06:29:16
thanks, although I'd already found the r_wateralpha issue.
if I make another release, I'm sure I'll pull whatever QS updates first, so consider those limit bumps a done deal with any future updates.
@ericw
#98 posted by Spike on 2017/03/31 17:04:08
its probably worth noting that sv.signon limits the max static entities to (65536-baselinedata-staticsounds)/sizeof(svc_spawnstatic).
With protocol 999 that's about 23/25 bytes, so about 2730, assuming no baselines (17 or 19 bytes with 666).
or in other words, bumping beyond 2048 is probably pointless in regular quakespasm. qss can benefit due to how I bypassed sv.signon, but regular qs probably just won't be able to use those extra static ents very often.
(note that my qss improvement can break engines that borrowed proquake's mid-map demo recording logic, which depends on assumptions not made in vanilla - that assumption is also in qs, but gone in qss-r6 iirc... pick your poison.).
Thanks For The Heads Up
#99 posted by ericw on 2017/03/31 20:46:25
Ah yeah that makes sense regarding >2048 statics.
I was going to at least attempt the unlimited signon buffer patch in QS. So that specifically has a conflict with the proquake mid-map demo recording I should look out for?
#100 posted by Spike on 2017/03/31 23:07:42
yeah, iirc proquake saves a copy of the message containing the svc_signonnum, which works well enough when its just a serverinfo and a prespawn message, but when you have 50 different messages containing that prespawn data, all that extra stuff won't be saved and naturally won't be written into the demo.
I solved it by regenerating the prespawn data from what was parsed, though you could alternatively make a linked list of all prespawn messages (instead of just copying one).
#101 posted by ericw on 2017/05/11 19:54:55
Two oneliner fixes for demo playback:
fix for a crash
static ents not appearing in demos
That should be all that's interesting in my git branch.. the other changes are tweaks to get it to compile on my jenkins box, and merging in QS svn.
QS svn has a rewritten Host_Loadgame_f where I eliminated that fixed size buffer, which was overflowing on the DP/QSS extended savegame comments in big maps.
Quoth / Map Jam 9 Bug
#102 posted by ericw on 2017/08/01 20:54:23
Barnak reported this in the map jam 9 thread and I was able to reproduce:
- install map jam 9 and quoth
- launch QSS r7 with -game func_mapjam9 -quoth
- launch start.bsp and walk straight ahead through 2 teleporters.
- the loading plaque comes up, (it's loading jam9_kell) then you're kicked to the console with "Host_Error: Illegible server message 110, previous was svc_serverinfo"
QuakeSpasm-admod Don't Have The Issue
#103 posted by Barnak on 2017/08/01 21:22:26
I'm very curious to know what is happening, since about half the maps are looading without troubles from the start map, while others don't. You can still load them all from the console.
While We're On The Subject Of Bugs...
#104 posted by Mugwump on 2017/08/01 21:27:39
in qss-admod, on some maps when I try to save, the game crashes instantly. I've noticed this in the forthcoming episode jam's start map and some of Qmaster's old maps, and it happens both with quick and hard saves. It doesn’t seem to happen with regular QS.
Pr_edict.c
#105 posted by Spike on 2017/08/02 03:37:25
901c901
< /*ent->v.modelindex = */SV_Precache_Model(com_token);
---
> /*ent->v.modelindex = */SV_Precache_Model(PR_GetString(ED_NewString(com_token)));
The above fix has been in the 'prer8.diff' file on triptohell for a while now.
QS isn't as mallocey as FTE, which results in precaches being empty strings, which the client interprets as terminating the precache list when the server thought it was just another string. The idea behind the change from QS being so that eg vanilla's func_illusionary could use any model it wants, but I fucked up, and then kinda gave up.
There's also new bugs in 'pre-r8' which I'd need to fix before another actual release, but I can't find the motivation to actually spend time on it.
I've been poking around with weather effects in QSS for the past couple days, and it's going pretty well so far. I've got a nice little map-specific, texture-emitted effect worked up for what I hope to be an entry to the Xmas Jam, but I'm having a little trouble with something: is there any way to get what I can only call "preroll" on a particle effect with the FTE/QSS system? Currently the particles start spawning when the map starts, and the player can see the effect getting up to speed. I'd love some way to have it already warmed up when the player first spawns, but as far as I can tell from this thread and what documentation I've found, there's no such option.
Does anyone know how I might accomplish something like what I'm after, or am I stuck trying to trap people for a few seconds on map start so the illusion isn't broken?
#107 posted by Spike on 2017/09/07 05:32:58
Unfortunately there's no way to do that right now. The best I can suggest is to write some QC that spawns those particles for you, however this may run foul of any future 'preroll' feature.
I guess the easiest thing to do is to start the player in a room with a closed door, with any windows being high up, thus giving your snow particles time to drop.
As well as low skies...
Black Box It
#108 posted by Qmaster on 2017/09/07 06:39:45
You could atart the player in a small box func_togglewall textured with BLACK and then target it...er wait, killtarget a func_wall box I mean, after a short delay. This would give the impression of loading.
#109 posted by Baker on 2017/09/07 07:59:38
If you wanted to experiment with horrific evil, you might set host_frame 9999 on map load and then set it back to 0.
Depending on what mod you are using, there may be a way to execute commands.
Something like cl_forwardspeed 0; host_framerate 9999; wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait; host_framerate 0; cl_forwardspeed 400
Thanks!
Ha, Spike knows immediately it's a snow effect, well yes, the jam is Christmas themed, I couldn't resist. The existing AD snow effect (or FTE? Not sure of its origins) was a little too jittery for my taste, and didn't have the lifetime I wanted, so I made my own.
I'll have my sky as low as possible, and maybe give people a simple button pushing task to complete while everything gets going. I'd also considered some sort of centerprint backstory about arriving just as the weather was getting worse, but then in engines that don't support these particles it'd sound weird. But maybe that's a writing challenge more than anything.
I appreciate the info and ideas (especially Baker, that's exactly my type of clever, sadistic cvar abuse); thanks for the help!
FTE Software-like Rendering
#111 posted by Kinn on 2017/12/31 14:45:20
Is there any chance of including the "software" style rendering that FTE has?
I just had a look at this in FTE and it's exactly what I'm after :D
#112 posted by Spike on 2018/01/01 00:59:38
if you want to use fte's features then use fte.
if you don't do so then you're showing that it doesn't mean much to you. and if you do switch then rewriting it would have been pointless.
so no, no chance.
if someone implements it into QS then it'll get merged eventually (and I won't have to deal with extra merge conflicts). otherwise its not something that I'm going to waste my time with.
the point of QSS is to make something that the 'community' might accept that doesn't leave the people creating stuff with their hands tied behind their backs.
that's why it has qc extensions, md3s, removed limits, and better network compatibility.
note that even the particle system is aimed at mods like ad rather than the end-user.
and its actually kinda rude for people to keep asking for only a fraction of my stuff.
Its also a joke that people keep on insisting on using quakespasm because its somehow 'faithful' while being less faithful than the engines that they apparently shun.
Its not just software banding either, and I'm actually getting pissed off about it.
The entire thing is a massive counter-productive joke.
The point of QSS is to try to reduce the stagnation, its there so that people can create without being held back, rather than for the end-user themselves, that's why it does nothing as little as possible to change the feel of the engine, and yet so much for potential creators.
Adding user-centric features like ugly banding is simply not part of that goal.
So no, I won't port the code. I've no problems with merging it from Quakespasm if someone else wants to port it, but I'm not going to spend my time writing all that stuff myself.
#113 posted by Kinn on 2018/01/01 17:48:40
Ok, point taken.
The reason I'm requesting a "software rendered" look in QS isn't because I'm trying to add extra spangles and shininess and bloat to QS; it's quite the opposite.
I think of QS as the ultimate "faithful" quake engine, and I think adding an emulation of the glorious (not "ugly", it's beautiful and glorious) software look is something that fits the "faithful" quake spirit perfectly.
Hell, I'd play everything in an actual software engine in a heartbeat, if one of them could run a modern ad-style megamap at a decent framerate, but alas that's not possible, so emulating the software look in hardware is the way to go.
Anyway, I'm not gonna push it any more, I'l just keep quietly wearing ericw down I guess until he submits :)
#114 posted by Joel B on 2018/01/01 18:24:26
Why not use FTE, really?
Spike is going to burst a vessel one of these days, maybe we can head that off by bullet-listing a few things that are blocking FTE adoption.
It might be a case of momentum. I mean, AD comes with a recommendation (and link) to use Quakespasm and since AD is basically default Quake now ...
#116 posted by Kinn on 2018/01/01 19:02:28
Why not use FTE, really?
FTE is close, and r_softwarebanding is sublime, but there's a few things that bother me and make QS still my go-to engine:
- In FTE, even in "classic" particle mode, particles are too bright (so are sprites)
- Models are shaded differently and are generally too dark - this looks especially problematic with things like the AD health pickup items.
- I don't know how to turn off coloured rocket, explosion etc. coloured lighting (can I?)
- Underwater sound is all different (is there an option to control this?)
- No controller support (yeah, yeah, I know)
There's lots of other little niggles and nitpicks that I don't really want to bang on about, like the exact details of how the menus and fonts look etc. etc, but you get the idea - point is I'm a purist and I will always tend towards the engine that looks the most accurate in my opinion.
|