[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - Protocol FitzQuake

Protocol FitzQuake

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

Protocol FitzQuake

Postby r00k » Thu Dec 20, 2012 6:23 pm

ARRRGGHH! my eyes are bleeding!

I've got 99% of this working but, my client craps out during signon #2
the last message received depends on the map. dm1 craps out around svc_time, dm3 craps out at svc_spawnbaseline, others seem to die at svc_spawnstaticsound2...

any suggestions?
r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby Spike » Thu Dec 20, 2012 7:00 pm

client should send 16 bit angles to the server.

'fast updates' have additional byte values, which may conflict with any other protocols you might have tried to add support for in the past.
#define FITZU_EXTEND1 (1<<15) (byte after other bits bytes)
#define FITZU_ALPHA (1<<16) (byte after angle 3)
#define FITZU_FRAME2 (1<<17) (after scale byte, if present.)
#define FITZU_MODEL2 (1<<18) (after frame2 byte)
#define FITZU_LERPFINISH (1<<19) (after model2 byte, says when the entity next thinks, supposedly useful for step interpolation)
#define RMQU_SCALE (1<<20) (1 byte, comes after alpha byte, and yeah, perhaps I shouldn't include this here)

svc_clientdata has a load of extra bytes for 16bit stats.
and of course there's these:
#define svcfitz_skybox 37
string skyname. coulda used a stuffcmd instead...

#define svcfitz_bf 40
no payload. coulda used a stuffcmd instead...

#define svcfitz_fog 41
byte density, byte r, byte g, byte b, short time
coulda used a stuffcmd instead...

#define svcfitz_spawnbaseline2 42
byte bits, short|byte modelindex, short|byte frame, byte colormap, byte skinnum, (coord+angle)*3, byte trans
#define FITZB_LARGEMODEL (1<<0)
#define FITZB_LARGEFRAME (1<<1)
#define FITZB_ALPHA (1<<2)

#define svcfitz_spawnstatic2 43
fte doesn't support this, not found a map that actually required it so can't test it.

#define svcfitz_spawnstaticsound2 44
fte doesn't support this, not found a map that actually required it so can't test it.

dunno what 38 and 39 are... I've not found them to be important...

and of course the protocol version = 666, but that goes without saying.

make sure your client is also able to correctly receive 65k network messages.
I'm not aware of any other changes that are not actually RMQe extensions instead.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: Protocol FitzQuake

Postby r00k » Thu Dec 20, 2012 7:22 pm

r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby Spike » Thu Dec 20, 2012 7:34 pm

signon 2 comes from having received all prespawn buffers.
check that you're actually sending the prespawn commands (should be via a stuffcmded cmd command, hopefully you have a DPrintf for printing stuffcmds...).
Make sure that your netcode isn't dropping weird-sized/large reliable messages resulting in the server constantly resending the exact same data and never getting anywhere with it.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: Protocol FitzQuake

Postby metlslime » Thu Dec 20, 2012 9:40 pm

This is documented on quakedev.com's wiki, which of course is dead now. I should post the documentation on my own site i guess, that wiki was pretty much doomed from the start.
metlslime
 
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Re: Protocol FitzQuake

Postby Baker » Thu Dec 20, 2012 10:57 pm

I made some detailed notes on files/what changed when I was implementing 666 protocol:

viewtopic.php?t=2450

Just a list of files, what is different in each. Kinda as a check list ... Also here is an online diff file dreadlorde had made: http://ompldr.org/vNXRjNw
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: Protocol FitzQuake

Postby r00k » Sat Dec 22, 2012 12:09 am

im slowly (when i have time) going thru diff between .80 and .85 comparing if i missed anything though not even protocol 15 is working. might be something with the proquake handshaking or something else
r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby r00k » Wed Jan 09, 2013 7:03 am

got this 99% implemented and InTheShadows runs fine. The alpha brush textures fade at a different interval making it look not as smooth as Fitz. Also the "grate" over the QUAD on the start map isnt showing up at all :|
guess the texture name doesnt start with a "{" :|
r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby Baker » Thu Jan 10, 2013 5:21 pm

The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: Protocol FitzQuake

Postby r00k » Fri Jan 18, 2013 7:48 am

r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby mh » Sun Jan 20, 2013 7:47 pm

Personally I found the byte encode/decode very messy too, and am still not certain that I've got it 100% compatible - Nehahra support really didn't coexist clean with it either; I would have stuck with a 0-255 range and used 255 for non-translucent myself. I understand that using 0 for non-translucent means that you can memset-0 an edict and have a default state, but it seems quite a small gain for the expense of having to do the encode/decode everywhere as a consequence.
User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Protocol FitzQuake

Postby r00k » Tue Feb 19, 2013 11:22 pm

Ive gotten everything added. ITSdemo loads fine. I went back thru and removed the cl_static_entities array and added a dynamic alloc etc...
but after all said and done, flame0 and flame2 do not show on the id start map, though it does, on the ITS start map :( plus i think i have a race condition error in the release build :(
i spent 4 hours diffing from a stable (pre protocol 666) build for that flame bug, nothing :#
r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby Spike » Wed Feb 20, 2013 12:45 am

you're gonna have to debug it the hard way then.
firstly figure out if the bug is in the client or the server (yay standardized protocols!).
then check to ensure the makestatic calls are generated/sent/received.
And make sure they're valid.
then make sure you've got static ents enabled...
and make sure they're being included in the visedicts list.
etc
good luck...
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: Protocol FitzQuake

Postby r00k » Wed Feb 20, 2013 12:58 am

r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Protocol FitzQuake

Postby taniwha » Wed Feb 20, 2013 1:44 am

Leave others their otherness.
http://quakeforge.net/
taniwha
 
Posts: 399
Joined: Thu Jan 14, 2010 7:11 am

Next

Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 2 guests