[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/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 - [Tutorial] CSQC Progress Bar

[Tutorial] CSQC Progress Bar

Discuss CSQC related programming.

Moderator: InsideQC Admins

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Fri Jan 24, 2014 6:44 am

Link the csqc source you're using. I havent looked at it, so i havent read the readme.
Maybe they intercepted intermission. I wouldnt be surprised, smc covers quite a bit of ground. especially for a mod with the word "small" in it.
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Sun Jan 26, 2014 7:02 am

Ok, I've read through the csqc in the link you gave me.
I've read the readme.

My best guess is the code they gave is a fix for a standard quake bug. But I dont remember the game well enough to say for sure.
I't looks like perhaps intermission was being stomped on or something.

Either way, I dont see anywhere where they do anything with intermission themselves that would require that change.
And the only thing the change did, was delay the intermission writeByte. That is it. LIterally. it adds a think to delay calling it.

so as for anything else being broken. I have no idea. I dont see any reason anything would be borked that was not borked before.
You might want to ask nahuel and seven why that delay is put in there. And when you get an answer, please post a reply here.
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Mon Jan 27, 2014 5:31 pm

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Tue Jan 28, 2014 3:59 am

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby Spike » Tue Jan 28, 2014 10:59 am

intermission normally blocks client angle changes.
you could always put some if(intermission && (inputevent==IE_MOUSEDELTA||inputevent==IE_MOUSEABS)) return TRUE; inside your CSQC_InputEvent function, which should block the engine from handling the event as a viewangle change.

edit: wait, I think that's one of the bugs. bugger it.
you'll have to just keep spamming calls to setviewprop(VF_CL_VIEWANGLES, 'some fixed angle'); although knowing what value its meant to be will be annoying, so yeah... spamming .fixangle angle changes every single network frame will have to do the job instead... yay...
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Sat Feb 01, 2014 5:48 am

Ok, neat. Starting to get a grasp on this a little.

How about we take this tut one step further, and now make the progress bar reflect our o2 level while submerged in water?

Lets make the bar pop up only when self.waterlevel > 2 && pointcontents (self.origin) == CONTENT_WATER. Dont bring it up if in slime or lava.
We probably will need to make use of self.air_finished float while doing this.

Id be interested to see how we carry over these floats to ssqc for the experiment. Im guessing everything in ssqc "can" be bought over for the most part?

Another interesting problem would be the biosuit....we could double up on this bar to reflect biosuit remaining time, and when thats done , its reflecting your air. I think Nahuel was helping me work on something like this a while back, but I lost track.
User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Sat Feb 01, 2014 8:02 am

viewtopic.php?f=16&t=5194

READ THAT.

It should clear up 99% of everyones csqc questions.

also this.
http://quakeone.com/forums/quake-mod-re ... ars-3.html
I'ts what you were looking for.

edited for: unwarranted hostility,
Last edited by gnounc on Sat Feb 01, 2014 8:11 am, edited 1 time in total.
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Sat Feb 01, 2014 8:03 am

That said, an 02 sensor bar would be a good expansion on the tutorial. I look forward to your additions.
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Sun Feb 02, 2014 5:50 am

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Sun Feb 02, 2014 8:05 am

you need to look in dpextensions.qc which you may or may not have.
It contains engine builtin extensions, and if I'm not mistaken, is included with every darkplaces download on lh's icculus site.
If its not there, it's probably in dpmod.

ALSO Iirc dpextensions.qc calls it addstat...so theres that.

Otherwise ask around, theres no telling how many people here have a copy of dpextensions.qc

FTE users are looking for csplat, and/or fteextensions.qc
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Sun Feb 02, 2014 4:09 pm

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby gnounc » Sun Feb 02, 2014 11:11 pm

my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: [Tutorial] CSQC Progress Bar

Postby Spike » Sun Feb 02, 2014 11:47 pm

if you register a string, make certain that you use only getstats to read that string, and never any of the other getstatX functions.
In DP, string stats are horribly limited, and while getstatf can be used to test against an empty string (in DP), doing so will break things if DP does ever support more versatile string stats.

To explain:
DP still packs strings within 4 consecutive stats, giving a limited string length to 15 chars and consuming multiple stat slots for each string.
FTE does remove the length limits on string stats by using a seperate namespace for strings. using getstatf on such a stat will always return 0 (unless, of course, if you depend on the separate namespaces feature by using the same stat number for both a string and a numeric stat. more stats, woo).

as gnounc says, stat 32 will always read as 0, unless the ssqc actually registers something to use that slot.

you can't define random new variables and expect the engine to understand what you mean by that. it doesn't have a clue. if you want it to be available then its either a legacy feature (like intermission, which is set via a special-case svc_intermission packet), or you'll need to modify the ssqc to make that information available somehow.

any stats that you store in some global must be refreshed each frame in order to prevent them from becoming stale. qc doesn't constantly reevaluate every variable based upon how it got its value like prologue might, because that's basically insanely inefficient. thus you'll need to re-read the stats at least once a frame.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Mon Feb 03, 2014 1:40 am

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: [Tutorial] CSQC Progress Bar

Postby Cobalt » Mon Feb 03, 2014 2:35 am

User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

PreviousNext

Return to CSQC Programming

Who is online

Users browsing this forum: No registered users and 2 guests