Tremulous Forum

General => Feedback => Topic started by: sirshiz on March 23, 2011, 03:52:26 pm

Title: RC/repeater ''power rings''
Post by: sirshiz on March 23, 2011, 03:52:26 pm
Would it be feasible to implement anything like the ''power rings'' from StarCraft and use it for Tremulous? A visual indicator of where the power for the RC and/or repeater ends would be helpful. Right now you have to estimate (not that hard, I know) but it can get annoying when the repeaters are close to the RC power as you might not necessarily know if you are about to build from the RC or repeater BP.
Title: Re: RC/repeater ''power rings''
Post by: Meisseli on March 23, 2011, 04:08:11 pm
It has been suggested numerous times IIRC, each time the answer being something close to: "it's not possible with the quake renderer".
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 23, 2011, 04:15:31 pm
Why couldn't the game just make a ghost structure (just a green line or something) along the circumference of the power area only seen to the builder? The game can make greenish repeaters and other buildings appear and they turn red when outside of the power grid so I don't think it's much of a stretch.
I'm no expert or anything for Tremulous programming but I find it hard to believe that there aren't more creative solutions to this.

Title: Re: RC/repeater ''power rings''
Post by: David on March 23, 2011, 04:21:11 pm
The problem isn't that it can't be done.

The problem is that it can't be easily done in a way that won't kill your FPS.
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 23, 2011, 04:27:24 pm
The problem isn't that it can't be done.

The problem is that it can't be easily done in a way that won't kill your FPS.

Oh.  :'(
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 23, 2011, 05:36:07 pm
You can easily draw a semi-transparent sphere that shows the radius of the repeater/rc/whatever, all you need is a sphere model in md3 format (that should be doable in blender) and the engine can compute the position and scale to show the build area.

What you can NOT do with the quake renderer is to color all the surfaces which are within this radius, e.g. you can't draw a circle on the ground like in your starcraft screenshot, but a globe that shows the perimeter of the build radius is technically possible.
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 23, 2011, 05:37:20 pm
You can easily draw a semi-transparent sphere that shows the radius of the repeater/rc/whatever, all you need is a sphere model in md3 format (that should be doable in blender) and the engine can compute the position and scale to show the build area.

What you can NOT do with the quake renderer is to color all the surfaces which are within this radius, e.g. you can't draw a circle on the ground like in your starcraft screenshot, but a globe that shows the perimeter of the build radius is technically possible.


I would think that would suffice.
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 23, 2011, 05:41:40 pm
Really? How exactly would rendering a few more polygons kill your fps?

It doesn't take much effort to just edit the existing models to include a ring or sphere or cone of influence around it. The problem comes when I don't want to see it anymore. It would be nice if the 'area of influence' model could be spawned and unspawned coinciding with that blueprint stage where nobody sees it but you. Maybe you could just add a new frame to the buildings animation that is only played at that time.

EDIT: ok, people have responded since I started writing... DAMNIT
Title: Re: RC/repeater ''power rings''
Post by: David on March 23, 2011, 06:59:41 pm
Except that sphere would be opaque, so would block your vision while being unclear as to where the edge is.  It also would only tell you the edge of the area, if you can't see the edge you don't know if your current area has power.
And for turrets etc it would just show distance, ignoring walls and other stuff that blocks it.

For it to work in a usable sort of way we would need to render where the sphere intersects the map, which isn't something q3 can do.
Title: Re: RC/repeater ''power rings''
Post by: cron on March 23, 2011, 07:58:43 pm
I know it's not what you're looking for, but an easier implementation might be to make the ckit's display color change and/or glow with varying intesity when building using bp provided by a repeater.
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 23, 2011, 08:00:33 pm
The sphere doesn't have to be opaque. Even with opaque textures (blueprints are already semi-transparent) you can make a cage-like object for better viewing. If you can't see the edge then clearly it must be inside the area.

To be clear, I'm talking about displaying the range of the building you have in blueprint form. For already built buildings it'll be harder to do right.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 23, 2011, 10:45:40 pm
Certainly it's on the list of "stuff that I think everyone would like to see but it's hard," much like minimaps.

I think it'd be pretty cool if someone could create a reasonable prototype of this, but to really be useful it should also include things like tubes, hives, turrets, trappers, which adds a bit more complication since at least for trappers you need a cone.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 23, 2011, 10:58:08 pm
Quick proof of concept:

(https://lh4.googleusercontent.com/_hLklTmrBczA/TYpo-O2FRnI/AAAAAAAAAFc/1CfbFHPlQxU/s144/shot0011.jpg)
(https://lh3.googleusercontent.com/_hLklTmrBczA/TYppFvcyKCI/AAAAAAAAAFg/q5Ob6B1AcZg/s144/shot0012.jpg)

Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 23, 2011, 11:06:50 pm
Quick proof of concept:

(https://lh4.googleusercontent.com/_hLklTmrBczA/TYpo-O2FRnI/AAAAAAAAAFc/1CfbFHPlQxU/s144/shot0011.jpg)
(https://lh3.googleusercontent.com/_hLklTmrBczA/TYppFvcyKCI/AAAAAAAAAFg/q5Ob6B1AcZg/s144/shot0012.jpg)



THAT IS AWESOME.
Title: Re: RC/repeater ''power rings''
Post by: ziplocpeople on March 23, 2011, 11:58:08 pm
Quick proof of concept:

(https://lh4.googleusercontent.com/_hLklTmrBczA/TYpo-O2FRnI/AAAAAAAAAFc/1CfbFHPlQxU/s144/shot0011.jpg)
(https://lh3.googleusercontent.com/_hLklTmrBczA/TYppFvcyKCI/AAAAAAAAAFg/q5Ob6B1AcZg/s144/shot0012.jpg)



THAT IS AWESOME.
Gross, I can't believe people play at that resolution.
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on March 24, 2011, 03:03:44 am
That works and would be nice.
Have a red one for the RC range perhaps?
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 24, 2011, 08:49:19 am
Looks like a great start. Looking forward to seeing how it's implemented. If it's clean and the code looks good, we're on a roll here.
Title: Re: RC/repeater ''power rings''
Post by: Menace13 on March 24, 2011, 07:43:05 pm
That works and would be nice.
Have a red one for the RC range perhaps?


Green. Definitely green. Red makes me think of aliens.
Title: Re: RC/repeater ''power rings''
Post by: IPWNU on March 24, 2011, 08:31:13 pm
that would actually be awesome. the game is already polygons, its not too much to add a slightly opaque one. but gj gimhael. i think that would come in mighty handy
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 24, 2011, 09:06:18 pm
Just so we're all on the same page, gimhael hasn't said that he's got anything working in code. I'm guessing he's just showing what it would look like with a model in game. I don't know this though, so if you could say what you did gimhael, that would be great.

Seems to me it would take a very small amount of code and the addition of single frame to the building's animation to get this working in the blueprints. Seems like other stuff will be harder to code but I don't know by how much.
Title: Re: RC/repeater ''power rings''
Post by: Meisseli on March 24, 2011, 09:23:23 pm
Just so we're all on the same page, gimhael hasn't said that he's got anything working in code. I'm guessing he's just showing what it would look like with a model in game. I don't know this though, so if you could say what you did gimhael, that would be great.
Now I'm no native English speaker, but I think the term "proof of concept" means precisely he's got a crude but working prototype coded.
Title: Re: RC/repeater ''power rings''
Post by: SlackerLinux on March 25, 2011, 01:28:28 am
concept looks good but i think it would be better if it is overlayed on the floor instead of a huge bubble(or a combo of both) also you could prob expand it to give the attack range of the turrets and tesla in red
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on March 25, 2011, 06:25:54 am
Just so we're all on the same page, gimhael hasn't said that he's got anything working in code. I'm guessing he's just showing what it would look like with a model in game. I don't know this though, so if you could say what you did gimhael, that would be great.
Now I'm no native English speaker, but I think the term "proof of concept" means precisely he's got a crude but working prototype coded.
That is correct, prototype is a crude yet functional example that is to be improved or not used.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 25, 2011, 10:02:06 am
concept looks good but i think it would be better if it is overlayed on the floor instead of a huge bubble(or a combo of both) also you could prob expand it to give the attack range of the turrets and tesla in red

Painting on the walls/floor means you either have to compute the intersection of all geometry with the sphere (very expensive) or you have to use the stencil buffer to mask out anything outside of the sphere and then render all geometry again (moderately expensive, but the stencil buffer can't be manipulated by user shaders in the current engine anyway).

The code for this power sphere is pretty simple however, I just created a radius 1.0 icosphere model in blender, registered it as usual
Code: [Select]
  cgs.media.sphereModel        = trap_R_RegisterModel( "models/buildables/sphere/sphere.md3" );

and then I defined a generic helper function to render an arbitrary sphere:
Code: [Select]
/*                                                                             
==================                                                             
CG_AddSphere                                                                   
==================                                                             
*/
void CG_AddSphere( vec3_t origin, vec_t radius, qhandle_t shader )
{
  refEntity_t     ent;

  memset( &ent, 0, sizeof( ent ) );
  VectorCopy( origin, ent.origin );
  ent.axis[0][0] = radius;
  ent.axis[1][1] = radius;
  ent.axis[2][2] = radius;
  ent.nonNormalizedAxes = qtrue;

  ent.hModel = cgs.media.sphereModel;
  ent.customShader = shader;

  trap_R_AddRefEntityToScene( &ent );
}

Then for the proof-of concept I made a simple loop to add a sphere to all buildables of your team:
Code: [Select]
void CG_AddBuildRanges( int team )
{
  int             i;
  centity_t       *cent;
  entityState_t   *es;

  for( i = 0; i < cg.snap->numEntities; i++ ) {
    cent  = &cg_entities[ cg.snap->entities[ i ].number ];
    es    = &cent->currentState;

    if( es->eType == ET_BUILDABLE &&
        BG_FindTeamForBuildable( i ) == team ) {
      switch( es->modelindex ) {
      case BA_H_REACTOR:
        CG_AddSphere( cent->lerpOrigin, REACTOR_BASESIZE,
                      cgs.media.humanSpawningShader );
        break;
      case BA_H_REPEATER:
        CG_AddSphere( cent->lerpOrigin, REPEATER_BASESIZE,
                      cgs.media.humanSpawningShader );
        break;
      case BA_A_OVERMIND:
        CG_AddSphere( cent->lerpOrigin, CREEP_BASESIZE,
                      cgs.media.humanSpawningShader );
        break;
      case BA_A_SPAWN:
        CG_AddSphere( cent->lerpOrigin, CREEP_BASESIZE,
                      cgs.media.humanSpawningShader );
        break;
      }
    }
  }
}

As you can see I just reused the telenode shader because it is transparent, but maybe someone with more skill than me could make some nice shaders and a sphere model with proper UV coords.
Title: Re: RC/repeater ''power rings''
Post by: David on March 25, 2011, 11:59:35 am
That looks way better than I was expecting, I thought we would have to do the project-it-on-the-floor thing to make it work.

If people think it's a bit annoying, could bind it to a key or something so it only shows up when you want it.
Title: Re: RC/repeater ''power rings''
Post by: Random ViruS on March 25, 2011, 12:14:20 pm
I thought we would have to do the project-it-on-the-floor thing to make it work.

If people think it's a bit annoying, could bind it to a key or something so it only shows up when you want it.
I would get annoyed too.
bind \ cg_showbuildingarea 0
Title: Re: RC/repeater ''power rings''
Post by: SlackerLinux on March 25, 2011, 12:45:18 pm
concept looks good but i think it would be better if it is overlayed on the floor instead of a huge bubble(or a combo of both) also you could prob expand it to give the attack range of the turrets and tesla in red

Painting on the walls/floor means you either have to compute the intersection of all geometry with the sphere (very expensive) or you have to use the stencil buffer to mask out anything outside of the sphere and then render all geometry again (moderately expensive, but the stencil buffer can't be manipulated by user shaders in the current engine anyway).
....<snip>.....

that's a pity i guess the "bubble" thing is the only obvious way then it just doesn't look anywhere near as good as painting/overlaying it on the floor would

anyway better to have something that works and is fast then something that looks good and lags heaps
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 25, 2011, 03:23:34 pm
Since you're just spawning the model separately with new code, it's best that you make an axis-aligned cylinder which extends all the way up and down, as that's how the powered-range works. The only reason I suggested a sphere is for when it's fixed to the model's orientation, which it doesn't seem to be here.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 25, 2011, 04:24:43 pm
Since you're just spawning the model separately with new code, it's best that you make an axis-aligned cylinder which extends all the way up and down, as that's how the powered-range works. The only reason I suggested a sphere is for when it's fixed to the model's orientation, which it doesn't seem to be here.

No, power works by measuring the 3d distance, so a sphere is correct.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 25, 2011, 06:02:49 pm
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.
Title: Re: RC/repeater ''power rings''
Post by: TANK on March 25, 2011, 06:18:18 pm
Nice idea. It must be in Trem 1.2.
At Unlimited will be easier(in time) to play :) -> and me return back on CZ server :basilisk: .
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 25, 2011, 08:09:47 pm
Since you're just spawning the model separately with new code, it's best that you make an axis-aligned cylinder which extends all the way up and down, as that's how the powered-range works. The only reason I suggested a sphere is for when it's fixed to the model's orientation, which it doesn't seem to be here.

No, power works by measuring the 3d distance, so a sphere is correct.

So it is! My mistake. I guess trem maps are just flatter than I thought.

who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.

Care to elaborate?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 25, 2011, 08:36:28 pm
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.

Care to elaborate?
the power area and buildable range display is implemented on Amsterdam Unlimited (two 1.2 servers). upon connecting to AU, u will download client-side mods, including the icosphere model, the AU cgame&ui with the said functionality, and (due to GPL licensing) the source code for client-side mods. gimhael stole the models and source code from there.
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on March 25, 2011, 08:47:28 pm

the power area and buildable range display is implemented on Amsterdam Unlimited (two 1.2 servers). upon connecting to AU, u will download client-side mods, including the icosphere model, the AU cgame&ui with the said functionality, and (due to GPL licensing) the source code for client-side mods. gimhael stole the models and source code from there.

post the source, lets compare the code.  i'm not saying it wouldent happen, but in an open source community, i'm skeptical someone would be that blatent about ripping something off without giving proper credit.  i mean you even said it was GPLed, simplicity itself to use it and give proper credit.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 25, 2011, 09:55:39 pm
post the source, lets compare the code.
at the time of this writing, the latest, relevant files are au12-data-007.pk3 (http://www.amsterdam-unlimited.net/au12/au12-data-007.pk3) (this actually contains the models) and au12-qvms-012.pk3 (http://www.amsterdam-unlimited.net/au12/au12-qvms-012.pk3); the latter pk3 file contains the patch: diff-r2186gpp.patch (http://www.amsterdam-unlimited.net/diff-r2186gpp.patch).
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 25, 2011, 10:40:26 pm
I don't play on AU, so I didn't know you already had this. If I knew I wouldn't have bothered to code it myself.

The CG_AddSphere/CG_DrawSphere code looks similar, but the function just initializes a refEntity and passes it on to the renderer, I wouldn't expect much variation there.
Title: Re: RC/repeater ''power rings''
Post by: F50 on March 25, 2011, 11:33:29 pm
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.

*sigh*

Dude, first of all I don't see why conceptually gimhael could not have coded this himself, its not particularly complicated, assuming he already knew roughly what he was doing. As for the model, its a freaking sphere, I think it would be prudent to assume that someone could have created a sphere sufficiently similar to someone else's sphere, don't you?

Secondly, why are you so vehement about this? I do my best to adhere to hanlon's razor, "Never attribute to malice that which is adequately explained by incompetence." Even if this is code-stealing, as you put it, it is minimal, and conceivable, and relatively unimportant (we are not talking about monetary damages, I assume), I submit that given no way to prove that the code is in fact stolen, it is wise to assume that it is not.

Finally, gimhael's code conforms to tremulous naming conventions, not the naming conventions of your code.



Also, it seems that your patch has stubs for trapper range visualization, nice.
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on March 25, 2011, 11:49:40 pm

Also, it seems that your patch has stubs for trapper range visualization, nice.
that's something i was going to bring up.  having a rough estimate "cone of fire" for alien structures would be nice.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 26, 2011, 12:43:25 am
I don't
[usually]
play on AU, so I didn't know you already had this.
sure, the plausibility of that is high. i can't say the same about its probability.

I do my best to adhere to hanlon's razor
i do my best to adhere to Occam's razor.
however, i do have to agree that all this is
relatively unimportant
.
Title: Re: RC/repeater ''power rings''
Post by: SirDude on March 26, 2011, 12:51:49 am
make the Bubble Cell-Shaded? i think that would improve edge visibility.
Title: Re: RC/repeater ''power rings''
Post by: Menace13 on March 26, 2011, 01:01:03 am
I don't
[usually]
play on AU, so I didn't know you already had this.
sure, the plausibility of that is high. i can't say the same about its probability.

I do my best to adhere to hanlon's razor
i do my best to adhere to Occam's razor.
however, i do have to agree that all this is
relatively unimportant
.
Firstly, all you're going to do is start a flame war. You have no proof that he stole this from AU, and since the codes are different it kinda gives his case more reliability. If AU has Tremstats (I couldn't find any) you could simply check that for him. If he's not there, he's never connected. End of story. Also, why would you randomly add "[usually]" into there? You don't KNOW that he has EVER gone there, do you? Also, you are taking little pieces of peoples' posts and manipulating them to your advantage. That's always a bad idea. Lastly, if you have nothing positive to say, don't say anything at all. You are making accusations without knowing whether or not they are true. That's never a good idea.



make the Bubble Cell-Shaded? i think that would improve edge visibility.
Probably easier said than done SirDude.
Title: Re: RC/repeater ''power rings''
Post by: SirDude on March 26, 2011, 01:17:42 am
One word.

Warsow.


Its Q3 engine based.

http://www.youtube.com/watch?v=vtJKrIngTIs (http://www.youtube.com/watch?v=vtJKrIngTIs)
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 26, 2011, 01:22:30 am
You have no proof that he stole this from AU
and it is generally true that one can only know and possibly be wrong, or be at most certain.
You don't KNOW that he has EVER gone there, do you?
in fact i do (unless someone named gimhael/Matthias was an impostor).
Title: Re: RC/repeater ''power rings''
Post by: Tremulant on March 26, 2011, 01:29:00 am
(due to GPL licensing)
Even if gimhael did happen to use your code(and i'm not suggesting for a moment that he did), he's stealing nothing.
One word.

Warsow.

Its Q3 engine based.
One word, Qfusion. That ain't no Q3.
I believe cell shading is possible in q3, but quite what you want cell shaded or what that would achieve, i don't know.
Title: Re: RC/repeater ''power rings''
Post by: Menace13 on March 26, 2011, 01:33:20 am
One word.

Warsow.

Its Q3 engine based.
One word, Qfusion. That ain't no Q3.
I believe cell shading is possible in q3, but quite what you want cell shaded or what that would achieve, i don't know.
Celshading is possible, but having just one thing celshaded might be hard. Some clients have celshading in them, but I dunno if you can have only certain things celshaded. Having everything celshaded seems like it would be easier. I dunno.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 26, 2011, 07:32:54 am
You have no proof that he stole this from AU
and it is generally true that one can only know and possibly be wrong, or be at most certain.
You don't KNOW that he has EVER gone there, do you?
in fact i do (unless someone named gimhael/Matthias was an impostor).


You're right, I checked my .tremulous folder and I do have a au/ subfolder with your pk3 dated 2010-08-21, so I have to admit that I did in fact connect to AU.
Title: Re: RC/repeater ''power rings''
Post by: Odin on March 26, 2011, 10:14:56 am
Couldn't you use OpenGL's stencil features to draw lines where the sphere intersects with the walls/floor? I'm pretty sure I've seen this done in a bunch of other games from Q3's era.
Title: Re: RC/repeater ''power rings''
Post by: ziplocpeople on March 26, 2011, 04:44:43 pm
Celshading is possible, but having just one thing celshaded might be hard. Some clients have celshading in them, but I dunno if you can have only certain things celshaded. Having everything celshaded seems like it would be easier. I dunno.
If you want to be literal, there aren't any clients with _celshading_. Your client simply modifies the textures while loading the map to make it look celshaded.
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 26, 2011, 07:54:57 pm
F50, what is the possibility of testing these ideas ("power rings" and defensive structure ranges) on your test server?
These would be excellent additions to Tremulous if they work well.   :human:
Title: Re: RC/repeater ''power rings''
Post by: F50 on March 27, 2011, 02:48:31 am
Very possible. For the very moment, I'd like to keep the number of changes on my server to an reasonably minimal level, but this will be added to the list of upcomming mods. That will also give some time for this to progress, perhaps to trapper cones etc.
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 27, 2011, 05:02:12 am
Thank you F50. I look forward to it.
Title: Re: RC/repeater ''power rings''
Post by: Anonymoose on March 27, 2011, 07:38:34 am
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.
I wrote a 'hello world' program once, my friend must have copied my code because he wrote it after i did mine. i know how you feel man.
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on March 27, 2011, 08:38:12 am
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.
I wrote a 'hello world' program once, my friend must have copied my code because he wrote it after i did mine. i know how you feel man.

any morrowind companions scripted after the late part of last year are obviously stolen from my scripts.
Title: Re: RC/repeater ''power rings''
Post by: Qrntz on March 27, 2011, 06:36:32 pm
who is this cocksucker named gimhael? he is showing features (including models and source code) from the Amsterdam Unlimited server, as if they were his work.
I wrote a 'hello world' program once, my friend must have copied my code because he wrote it after i did mine. i know how you feel man.
any morrowind companions scripted after the late part of last year are obviously stolen from my scripts.
Any sentence beginning in 'any' is stolen from me. No exceptions.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 27, 2011, 06:47:31 pm
Gimhael this looks like it's on its way so please do not let DevHC freaking out discourage you from continuing to work on it. Thanks for the work so far.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 27, 2011, 07:04:01 pm
Let's assume nothing happened, and continue with showing off!
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 27, 2011, 07:21:43 pm
building the 5th repeater on niveus, in a small, non-powered zone
(http://img863.imageshack.us/img863/3328/repeaterintersection.jpg)
a trapper and a hive is covering the window room door
(http://img14.imageshack.us/img14/7860/doorcover.jpg)
a small forward base is built on the edge of a creep zone provided by a distant egg
(http://img33.imageshack.us/img33/3087/remotefwdbase.jpg)
spectators can see buildable spaces of both teams; reactor power is shown coming out of the red base, creep is shown coming out of the tunnel
(http://img851.imageshack.us/img851/3567/spectatorview.jpg)
a dretch is trolling below the turning range of a badly placed turret
(http://img8.imageshack.us/img8/25/retrange.jpg)
welcome to the disco zone, a reactorless, 24-buildpoint base; every buildable is supported by the DC in the back
(http://img17.imageshack.us/img17/9894/discozone.jpg)
a greedy lisk
(http://img96.imageshack.us/img96/139/icanhazb00st3r.jpg)
contrary to popular will, UBP will not cause significant degradation of visibility xD
(http://img849.imageshack.us/img849/567/redinferno.jpg)
(http://img846.imageshack.us/img846/6396/yellowinferno.jpg)
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 27, 2011, 07:26:37 pm
by the way, all this is available at the Amsterdam Unlimited servers.
Title: Re: RC/repeater ''power rings''
Post by: CreatureofHell on March 27, 2011, 08:28:56 pm
a dretch is trolling below the turning range of a badly placed turret

Be careful! If you don't place your turrets correctly Dretches will troll you!
Title: Re: RC/repeater ''power rings''
Post by: Qrntz on March 27, 2011, 10:02:19 pm
a dretch is trolling below the turning range of a badly placed turret
Be careful! If you don't place your turrets correctly Dretches will troll you!
(http://stashbox.org/1089677/troldretch2.png)
Title: Re: RC/repeater ''power rings''
Post by: CreatureofHell on March 27, 2011, 10:03:47 pm
a dretch is trolling below the turning range of a badly placed turret
Be careful! If you don't place your turrets correctly Dretches will troll you!
img
+9001
Title: Re: RC/repeater ''power rings''
Post by: A Spork on March 28, 2011, 02:58:59 am
a dretch is trolling below the turning range of a badly placed turret
Be careful! If you don't place your turrets correctly Dretches will troll you!
(http://stashbox.org/1089677/troldretch2.png)
rofl
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on March 28, 2011, 03:05:52 am
a dretch is trolling below the turning range of a badly placed turret
Be careful! If you don't place your turrets correctly Dretches will troll you!
img
+9001

that's over nine thousand!
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 28, 2011, 03:34:49 am
Anyone else find it weird/amusing that so many people including some devs thought implementing this was impossible or very hard to do... and an Unlimited Server has had it for awhile?  :-X

a dretch is trolling below the turning range of a badly placed turret
(http://img8.imageshack.us/img8/25/retrange.jpg)

Is this turret visual range indicator currently implemented on your server? If so it isn't working for me.

The building visual indicator is working and it doesn't lag at all. It should definitely be used for the Official Servers.
Title: Re: RC/repeater ''power rings''
Post by: SlackerLinux on March 28, 2011, 04:14:06 am
i dont find it weird that people thought it could be hard this suggestion was posted less then a week ago noone even knew about this already being done on another server

as for not lagging well i think it needs to be tested alot before you can claim that performance changes with hardware/drivers/os and just because a small group doesn't lag it doesn't mean that say someone with an Intel Gfx card will be lag free too
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 28, 2011, 05:06:35 am
(http://i.imgur.com/meTh6.png)

I'd like to see the humans get through that!
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 28, 2011, 05:24:01 am
i dont find it weird that people thought it could be hard this suggestion was posted less then a week ago noone even knew about this already being done on another server

Slacker, according to meisseli this has been discussed "numerous times".
See:

It has been suggested numerous times IIRC, each time the answer being something close to: "it's not possible with the quake renderer".

That's why I found it strange that a week after I posted this we find a solution... then we find out it's already been solved.  :o



as for not lagging well i think it needs to be tested alot before you can claim that performance changes with hardware/drivers/os and just because a small group doesn't lag it doesn't mean that say someone with an Intel Gfx card will be lag free too

This is true, although I did test it on high settings on a shit computer. If it could handle unlimited BP bubbles I'm sure other computers could handle Official Servers BP bubbles.
Title: Re: RC/repeater ''power rings''
Post by: Meisseli on March 28, 2011, 08:02:04 am
Oh dear, I don't think we want it to turn up into a horrible disco version of Tremulous, now do we...
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 28, 2011, 09:44:43 am
i dont find it weird that people thought it could be hard this suggestion was posted less then a week ago noone even knew about this already being done on another server

Slacker, according to meisseli this has been discussed "numerous times".
See:

It has been suggested numerous times IIRC, each time the answer being something close to: "it's not possible with the quake renderer".

That's why I found it strange that a week after I posted this we find a solution... then we find out it's already been solved.  :o

It was asked if it was possible to mark the floor/walls where the power ends, and this is in fact not possible with the Q3 engine.


as for not lagging well i think it needs to be tested alot before you can claim that performance changes with hardware/drivers/os and just because a small group doesn't lag it doesn't mean that say someone with an Intel Gfx card will be lag free too

This is true, although I did test it on high settings on a shit computer. If it could handle unlimited BP bubbles I'm sure other computers could handle Official Servers BP bubbles.

If this feature is spammed all over the place it will put high demands on the GPU fill rate while the additional CPU and vertex load is quite low. So if your system was already running close to it's fill rate limit, which is often the case on embedded GPUs, you'll definately see a drop in FPS.

PS: I think /dev/hc did a great job making this possible, and as I already said I wouldn't have started if I knew he was working on the same concept.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 28, 2011, 12:18:49 pm
an Unlimited Server has had it for awhile
Amsterdam Unlimited's name has nothing to do with unlimited buildpoints, though it does have higher than stock buildpoint settings.
a dretch is trolling below the turning range of a badly placed turret
(http://img8.imageshack.us/img8/25/retrange.jpg)

Is this turret visual range indicator currently implemented on your server? If so it isn't working for me.
oh, i forgot to tell everyone how to enable that.

the cg_buildableSpaces cvar setting determines which buildables will have effectivity spaces displayed.
0: don't show buildable spaces;
1: show spaces for only "support" buildables: reactor, repeater, defence computer, overmind, egg;
2: show spaces for only "offensive" buildables: machinegun turret, tesla generator, acid tube, trapper, hive;
3: show spaces for all of the above buildables.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 28, 2011, 06:41:17 pm
The links to the pk3s/patchfiles are down. Do the patchfiles have the code for the game.qvm components or are there no game.qvm components?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 28, 2011, 07:42:24 pm
The links to the pk3s/patchfiles are down.
au12-qvms-013.pk3 (http://tremulous.oternet.com/au12-qvms-013.pk3)
au12-data-011.pk3 (http://tremulous.oternet.com/au12-data-011.pk3)
Do the patchfiles have the code for the game.qvm components or are there no game.qvm components?
the patchfiles do not have the code for the game module, and the code itself is not open, yet.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 28, 2011, 08:00:20 pm
So you stopped Gimhael from continuing to work on his implementation because there exists another implementation that does not even distribute its source code?

How exactly is a usable complete implementation coming into existence then?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 28, 2011, 08:25:48 pm
How exactly is a usable complete implementation coming into existence then?
obviously by someone coding it, and releasing it when it's done (TM) (http://www.dukenukemforever.com/).
Title: Re: RC/repeater ''power rings''
Post by: F50 on March 28, 2011, 08:41:21 pm
So qvms are not considered derivative of the tremulous code? I would find that rather confusing. I apologize for the hostility inherent in saying this, but unfortunately your participation in this thread so far, /dev/humancontroller, has been encouraging in someways, but destructive in most. I'm afraid I don't think DNF is a joke in the tremulous community.
Title: Re: RC/repeater ''power rings''
Post by: David on March 28, 2011, 08:57:04 pm
The QVM is derivative, but you only have to share the code if you share the binary.  The game and server are never distributed, so no code needs to be released.  The cgame is distributed and AFAIK a patch is in the pk3.
Title: Re: RC/repeater ''power rings''
Post by: F50 on March 28, 2011, 09:17:41 pm
So does distribution of a cgame.qvm require the availability of the source code, or is cgame.qvm not considered a binary (although I would find that somewhat absurd)? Perhaps this is something that should go in a FAQ somewhere, being an important but frequently unasked question.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 28, 2011, 09:37:04 pm
How exactly is a usable complete implementation coming into existence then?
obviously by someone coding it, and releasing it when it's done (TM) (http://www.dukenukemforever.com/).
I'm afraid I don't think DNF is a joke in the tremulous community.
and ind33d it's not a joke. i meant to say: give me some time to polish the implementation (and explore new possibilities), and i will release the full source code later.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 28, 2011, 09:50:21 pm
DevHC, you already stopped other people from working on AMP so that you could pretend to do that too. Are you going to actually produce any of these things or just prevent others from doing them?

As for the qvm/OSS thing, I am no lawyer, but the consensus around here has been that things that only run on the server (i.e. game.qvm) can be modified without making the source available if they are not distributed. This is not the thread to discuss that in, however, and people who want to discuss that should take it to another thread.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 28, 2011, 09:51:02 pm
So does distribution of a cgame.qvm require the availability of the source code, or is cgame.qvm not considered a binary (although I would find that somewhat absurd)? Perhaps this is something that should go in a FAQ somewhere, being an important but frequently unasked question.

Yes, you have to distribute the source code of a modified cgame.qvm, but the game.qvm is used only on the server, so you can keep the modifications secret.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 28, 2011, 10:01:41 pm
DevHC, you already stopped other people from working on AMP so that you could pretend to do that too.
u've got to be kidding me (http://tremulous.net/forum/index.php?topic=11110.msg219383#msg219383).
Title: Re: RC/repeater ''power rings''
Post by: sirshiz on March 28, 2011, 10:09:16 pm
The offensive building indicators are interesting but not nearly as useful as I thought they would be. They show the absolute ranges of the turrets without regard to the environment it seems, at least in the cases I tested with on ATCS.

In this case, that turret can obviously not shoot through walls though the indicator seems to ... indicate ... so.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on March 28, 2011, 10:15:40 pm
DevHC, you already stopped other people from working on AMP so that you could pretend to do that too.
u've got to be kidding me (http://tremulous.net/forum/index.php?topic=11110.msg219383#msg219383).

You haven't touched that since the 16th despite knowing well better than to think that's anywhere near usable, but I'll respond more specifically there and leave it out of here.
Title: Re: RC/repeater ''power rings''
Post by: Odin on March 29, 2011, 01:42:42 am
Couldn't you use OpenGL's stencil features to draw lines where the sphere intersects with the walls/floor? I'm pretty sure I've seen this done in a bunch of other games from Q3's era.
I ask again.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on March 29, 2011, 10:34:24 am
well, we're trying to extend a method we call "binary shaders". :]
Title: Re: RC/repeater ''power rings''
Post by: David on March 29, 2011, 11:32:14 am
Couldn't you use OpenGL's stencil features to draw lines where the sphere intersects with the walls/floor? I'm pretty sure I've seen this done in a bunch of other games from Q3's era.
I ask again.

I don't know anything about the stencil stuff, but I'm pretty sure that would require client changes.

Although I guess that doesn't matter for 1.2.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 29, 2011, 08:02:35 pm
well, we're trying to extend a method we call "binary shaders". :]

Do you mean dynamically loading shader functions from a DLL or QVM ? I don't think that's such a great idea for security.
Title: Re: RC/repeater ''power rings''
Post by: UniqPhoeniX on March 30, 2011, 09:05:04 am
"Binary shaders" are 2 shaders, 1 of which is only visible on top of the other. This allows making some very interesting things, including lines on map geometry where spheres intersect them.
(http://img718.imageshack.us/img718/3301/shot0003zp.jpg) (http://img718.imageshack.us/i/shot0003zp.jpg/)
However, this one requires 6 spheres and has some limitations, I'm still working on it.
Title: Re: RC/repeater ''power rings''
Post by: David on March 30, 2011, 09:36:16 am
*that* is what I want to see :).
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 30, 2011, 01:13:22 pm
Does it work correctly when the camera is *inside* the sphere ? That is usually the problem case for stencil volumes.
Title: Re: RC/repeater ''power rings''
Post by: UniqPhoeniX on March 30, 2011, 01:53:35 pm
It works right from the inside but not when you are "inside the edge" or between the surfaces of 2 sizes of spheres. However that area is quite small and will be even smaller if the lines are made thinner. There are a few other problems too, will see if I can get around those.
Tho does any1 by any chance know how *exactly* the alpha layer in the buffer (GL_DST_ALPHA) is modified by shaders with and without textures?
Title: Re: RC/repeater ''power rings''
Post by: gimhael on March 30, 2011, 02:59:10 pm
Well, if you have an alpha channel in the framebuffer (the engine requests only R, G & B channels explicitly, so that is not guaranteed !), then it works just as specified by the blend func, i.e. it works just like the color channels only on the alpha channel you have SRC_COLOR == SRC_ALPHA and DST_COLOR == DST_ALPHA. If you got no alpha channel it will always be 1.0.

You can see the detailed specification here (http://www.opengl.org/sdk/docs/man/xhtml/glBlendFunc.xml), but you better have a MathML enabled browser.

If you have no texture bound, it is practically the same as if you had bound a texture that is constant white (RGBA=1,1,1,1).
Title: Re: RC/repeater ''power rings''
Post by: Nux on March 30, 2011, 04:13:48 pm
However, this one requires 6 spheres and has some limitations, I'm still working on it.

Looks very nice. Keep up the good work!
Title: Re: RC/repeater ''power rings''
Post by: UniqPhoeniX on April 03, 2011, 07:22:00 pm
1. Is there a way to put 2 different shaders on different sides of a model? (currently using 2 models with 2 shaders, 1 of which has cull back)
2. Is there some easy way to draw a shader over the whole screen and
3. I'm guessing that (or simply having a square in front of the screen covered with that shader) would be far more efficient than drawing it on top of several high poly models but only over some parts of the screen?

ATM there are 4 shaders to draw the front part of a sphere and 4 more for back, per color. 2 of the 4 can simply cover the whole screen once instead of being drawn on every sphere. Probably will have to use the 1st of 4 only once for all colors. So if there are 3 red spheres and 1 blue sphere, that would take:
1 shader covering the screen,
12 (2 shaders * 2 sides * 3 spheres) for the red spheres,
1 more covering the screen,
4 for the blue sphere and
1 covering the screen again.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on April 04, 2011, 10:08:27 am
1. Is there a way to put 2 different shaders on different sides of a model? (currently using 2 models with 2 shaders, 1 of which has cull back)
No, this isn't even possible in OpenGL unless you use shader programs. The OpenGL stencil buffer allows these kind of operations so there was no need to add them to the color buffer, but unfortunately the Quake engine does not expose the stencil buffer to user defined shaders.

2. Is there some easy way to draw a shader over the whole screen and
Draw a sprite in front of the camera. Just make sure it is large enough and not too close to the camera or it will be clipped by the near plane.

3. I'm guessing that (or simply having a square in front of the screen covered with that shader) would be far more efficient than drawing it on top of several high poly models but only over some parts of the screen?
That depends. Rerendering the model will definitely use more CPU, but on the GPU you're usually pixel limited, so the big sprite may be an overall loss. (Modern GPU have to launch vertex shader threads for every vertex passed and fragment shader threads for every pixel resp. fragment generated by the rasterizer. Usually there are so many more fragments than vertices that the vertex shaders don't matter much unless they are very complex.)
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on April 19, 2011, 07:48:35 am
Hey y'all, I just wanted to say that this is a neat idea with a lot of potential and I hope you're (collectively) still working on it. :)
Title: Re: RC/repeater ''power rings''
Post by: ULTRA Random ViruS on April 20, 2011, 02:39:21 pm
uhh with the UBP server overload thingy, maybe there should be a function: middle click to enable instead of just cl_whatever... Also cl_domebrightness?!?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 22, 2011, 05:16:36 am
S00N(TM)...
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 22, 2011, 05:17:27 am
S00N(TM)...
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 22, 2011, 05:18:29 am
i hereby crown myself as king of niveus
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 22, 2011, 06:48:02 am
Very nice. This is a fantastic yet simple way to make building that much more straight forward. This will attract new players, for sure.
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on June 22, 2011, 06:57:00 am
i hereby crown myself as king of niveus
Your awesome!
That makes trappers so easy.
Might almost be a cheat in some ways, especially if you went os of ar to do it for turret rnage, hive range and such.
Now we need a couple binds and check boxes and we are set.
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 22, 2011, 03:29:45 pm
Might almost be a cheat in some ways, especially if you went os of ar to do it for turret rnage

He did turret range if you look. I don't see this as cheating, it allows players to be skillful with base layout.

Looking good. How much does all this cost (in processing)?
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 22, 2011, 03:46:58 pm
Might almost be a cheat in some ways, especially if you went os of ar to do it for turret rnage

He did turret range if you look. I don't see this as cheating, it allows players to be skillful with base layout.

Looking good. How much does all this cost (in processing)?
I think jm82792 is under the impression that this is now, or more importantly, will be visible to all players, rather than builders on their respective team. If not, I'm really not quite sure how this could be seen as cheating. It's simply making concrete what many builders learn as intuition.
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on June 23, 2011, 01:44:49 am
Not that but it could make buildings so effective that it could make camping more possible,
cheating is the wrong word to disciple it.
If this is implemented it should greatly enhance the tactical advantage of building and WILL help newbies build bases that won't die instantly.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 23, 2011, 03:46:44 am
Not that but it could make buildings so effective that it could make camping more possible,
cheating is the wrong word to disciple it.
If this is implemented it should greatly enhance the tactical advantage of building and WILL help newbies build bases that won't die instantly.

I think that anything that makes the learning curve for the builder less harsh is good. I don't think that this will effect the quality of bases built by competent builders too much, as they've already got in their head estimates of ranges and such; For the most part, a foot to the left or the right won't make or break the game. I think it'll lessen the difference of effectiveness between bases that were built by new/experienced players (if it's not overwhelming) and that (imo) is a very good thing.
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on June 23, 2011, 06:20:28 am
So is the feature almost bug free and complete?
It really should be implemented into GPP.
Title: Re: RC/repeater ''power rings''
Post by: F50 on June 23, 2011, 06:56:12 pm
Check it out on the Brindus Mod Rotation server (I've been saying that a lot). Its bug free, and I don't see anything that I would change.

EDIT: I guess I should say that the alien power spheres can get a tad annoying under certain situations, but they really do help anyways.
Title: Re: RC/repeater ''power rings''
Post by: CorSair on June 23, 2011, 07:28:46 pm
Win.

Say what you say, I think this should make base (bit) more effective.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 23, 2011, 08:14:19 pm
Is it possible to merge power spheres? Rather than showing the overlap, not drawing it?

(http://img864.imageshack.us/img864/5935/mmmmmadsihd.png)
Title: Re: RC/repeater ''power rings''
Post by: vcxzet on June 23, 2011, 09:06:09 pm
but intersections have more power. right?
so it is important to see them
Title: Re: RC/repeater ''power rings''
Post by: ziplocpeople on June 23, 2011, 09:21:01 pm
but intersections have more power. right?
so it is important to see them
No, they don't. In fact if you build a repeater too close to the RC-power area you won't be able to build turrets and whatnot in the overlap zone assuming that there's not enough BP left in the RC area. (at least, I'm pretty sure this is the case, they may have fixed/changed this.)
Title: Re: RC/repeater ''power rings''
Post by: c4 on June 23, 2011, 10:04:33 pm
I think he's really talking about turrets and the like.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 24, 2011, 03:04:06 am
I think he's really talking about turrets and the like.

No, I'm talking about power spheres. I mentioned this because I can imagine the alien base getting rather cluttered, what with every spawn providing creep.

ziploc, don't worry about vcxzet. He knows as much as you or I, and is just trolling... Always. :)
Title: Re: RC/repeater ''power rings''
Post by: c4 on June 24, 2011, 07:02:00 am
Check it out on the Brindus Mod Rotation server (I've been saying that a lot). Its bug free, and I don't see anything that I would change.

EDIT: I guess I should say that the alien power spheres can get a tad annoying under certain situations, but they really do help anyways.

I went there.  Didn't find the spheres.
Title: Re: RC/repeater ''power rings''
Post by: Qrntz on June 24, 2011, 09:37:44 am
but intersections have more power. right?
so it is important to see them
Sure.

(http://hermiene.net/img/games/starcraft/sc03.png)
Title: Re: RC/repeater ''power rings''
Post by: Meisseli on June 24, 2011, 10:50:51 am
Only visible thing for builders should be creep/power spheres. Perhaps you should be able to view buildable (attack) ranges before building, but were they constantly on, it would really start to get more annoying and confusing than helpful.
Title: Re: RC/repeater ''power rings''
Post by: David on June 24, 2011, 12:33:35 pm
IMO the power range should be up all the time for builders, and attack ranges when they have an attack buildings blueprint up.

EDIT:  Maybe have a cvar controlled?  Then we can have binds to toggle it etc.
Title: Re: RC/repeater ''power rings''
Post by: vcxzet on June 24, 2011, 02:06:04 pm
(http://hermiene.net/img/games/starcraft/sc03.png)
cool
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 24, 2011, 04:23:20 pm
Just tried out the current brindus mod power spheres and wanted to highlight this. The sphere doesn't quite represent the range properly (for turrets at least).
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 24, 2011, 05:27:05 pm
Just tried out the current brindus mod power spheres and wanted to highlight this. The sphere doesn't quite represent the range properly (for turrets at least).
Eh. That's in the sphere. If you were to adjust the sphere to fully engulf the building you'd have to have the size of it be dynamic, since buildings are of different sizes. It's better to have less than more.
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 24, 2011, 05:54:10 pm
If you look again, you'll see that not even the center of the model is within the sphere (as I would have found fully acceptable).
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 24, 2011, 06:20:48 pm
If you look again, you'll see that not even the center of the model is within the sphere (as I would have found fully acceptable).
No, I saw that. It's not a problem with the sphere model, but the way the build range works. As I understand it, if any part of the bbox is in the build range, the building can be built. With larger buildings, the center of the building is further away from the edge of the build range, making it impossible to have a static size sphere that do what you want.
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 24, 2011, 06:47:00 pm
Ah. If it works like that then knowing that is enough to interpret the sphere correctly. Sadly, I can't help but feel others will misunderstand how the range works as I did.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 02:07:21 am
if any part of the bbox is in the build range, the building can be built.
bullshit
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 02:14:54 am
IMO the power range should be up all the time for builders, and attack ranges when they have an attack buildings blueprint up.

EDIT:  Maybe have a cvar controlled?  Then we can have binds to toggle it etc.
u will be able to display any combination of: the surface of the range marker (as a semi-transparent sphere or spherical cone), the intersection between the world and the range marker (as a line on the map geometry), and the so-called outline of the range marker (as a line on the map geometry or in the air). u will be able to filter which buildable types u want to have ranges displayed for.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 02:18:54 am
Looking good. How much does all this cost (in processing)?
all this will physically burn ur video card to a crisp. </sarcasm> i'd say all this has acceptable performance.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 25, 2011, 05:05:53 am
if any part of the bbox is in the build range, the building can be built.
bullshit
As I understand it...
Fuck off.

If that ISN'T the way it works, the Nux is on the ball with saying it should be fixed (tweaked) to better display the build range. Now, would you care to tell us how building works (since we're obviously in the dark and making assumptions), or are you going to just spew crude one word responses. If it's not any part of the bbox, then it must be that either all of the bbox or half of the bbox (all, preferably) that has to be in power range for a structure to be built. If that's the case, then the sphere is too small. Not too much of an issue, but an issue none the less.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 11:34:30 am
Now, would you care to tell us how building works (since we're obviously in the dark and making assumptions)
for each buildable there is an internal point called the origin. the distance between origins of the two buildables must be no more than 500 (in case of repeaters) or 1000 (in case of the reactor). to find where the origin of a buildable is, read the configs/buildables/<buildable>.cfg file (can be found in one of the distributed GPP pk3 files). for example, in configs/buildables/reactor.cfg, we have:
Quote from: configs/buildables/reactor.cfg
mins        -41 -41 -15
maxs        41 41 95
which means that the bounding box for the reactor extends, from the reactor's origin, down by 15 qunits and up by 95 qunits; this means that the origin of the reactor is closer to the bottom of the reactor, being at the 13.6% "height mark" of the reactor. similarly, the origin of a machinegun turret is at the exact center of the turret, and the origin of a repeater is at the 37.5% height mark of the repeater.

to me, the sphere in Nux's screenshot appears to be too small and/or misplaced. or it can be that the Brindus server has different build logic, which i somehow doubt.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 25, 2011, 03:55:29 pm
Alright, thanks /dev/h. I just checked and all origins are centered on X and Z, so it's likely too small a sphere model.

/dev/h: Is it possible to not draw sphere overlap?

(http://img864.imageshack.us/img864/5935/mmmmmadsihd.png)
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 04:04:39 pm
Is it possible to merge power spheres? Rather than showing the overlap, not drawing it?

(http://img864.imageshack.us/img864/5935/mmmmmadsihd.png)
i haven't explored that possibility yet, but u should ask Uniq PhoeniX.
note however that this may not be the most appropriate for offensive buildables, because overlapping areas can be under extensive fire.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on June 25, 2011, 05:36:37 pm
to me, the sphere in Nux's screenshot appears to be too small and/or misplaced. or it can be that the Brindus server has different build logic, which i somehow doubt.

It's probably just a precision problem. The build range is drawn by using a radius 1 sphere MD3 model scaled by the build range (1000 for the RC), but the .md3 format has only a precision of 1/64 units, so the rounding error of the scaled sphere can be up to ~15 game units, which is like 1/3rd of a turret width. I guess it could be fixed by using a radius 1000 sphere model and adapting the scale factor accordingly.
Title: Re: RC/repeater ''power rings''
Post by: F50 on June 25, 2011, 08:11:53 pm
It is possible to use a 10, or even 100 unit sphere and then multiply the scaling factor by 1/10th or 1/100th? That should give you a lot more accuracy.

Quote
u will be able to display any combination of: the surface of the range marker (as a semi-transparent sphere or spherical cone), the intersection between the world and the range marker (as a line on the map geometry), and the so-called outline of the range marker (as a line on the map geometry or in the air). u will be able to filter which buildable types u want to have ranges displayed for.
/dev/humancontroller: unless you have plans to release within the next month, please just lay off and leave this to people who actually have code to share.


As for merging power spheres, I think that's a bad idea. The main use I personally have for power spheres is to know which repeater(s) are likely to be powering a buildable so I know where the BP is going, or if a structure is being supported by only a single egg.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 25, 2011, 08:30:57 pm
Quote
u will be able to display any combination of: the surface of the range marker (as a semi-transparent sphere or spherical cone), the intersection between the world and the range marker (as a line on the map geometry), and the so-called outline of the range marker (as a line on the map geometry or in the air). u will be able to filter which buildable types u want to have ranges displayed for.
/dev/humancontroller: unless you have plans to release within the next month, please just lay off and leave this to people who actually have code to share.
problem?
in fact we do plan to release the range markers feature within the next month. it's time to lay on. nwhahahahaha!
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 26, 2011, 03:13:40 am
As for merging power spheres, I think that's a bad idea. The main use I personally have for power spheres is to know which repeater(s) are likely to be powering a buildable so I know where the BP is going, or if a structure is being supported by only a single egg.

(http://img17.imageshack.us/img17/9894/discozone.jpg)

Just imagine a 4-egg alien base. It'd be hectic and probably obstruct the view (I can't say for sure, though, as I can't get on Brindus). Also, it can become hard to assimilate where power spheres are coming from when the screen is overpopulated with them.
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 26, 2011, 03:20:30 am
I would also like to refer you to my post on page 3.

At least humans have the option of putting the ckit away (which stops them appearing), poor granger is blinded and can do nothing about it.  :'(
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on June 26, 2011, 04:40:22 am
I would also like to refer you to my post on page 3.

At least humans have the option of putting the ckit away (which stops them appearing), poor granger is blinded and can do nothing about it.  :'(
question:  how hard would it be to add in a "toggle build spheres" bind?
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on June 26, 2011, 04:43:05 am
Have a line coming from each power source to the edge of the sphere?
Title: Re: RC/repeater ''power rings''
Post by: F50 on June 26, 2011, 04:45:50 am
(I can't say for sure, though, as I can't get on Brindus).

What? If you're having trouble downloading the sounds (which is IMO most likely) try going to here (http://modrotation.mercenariesguild.net/downloads/base) and looking for the humongous zzz-sounds-alpha2.pk3

Quote
question:  how hard would it be to add in a "toggle build spheres" bind?

Code: [Select]
/bind KEY toggle cg_buildRanges
Quote
At least humans have the option of putting the ckit away (which stops them appearing), poor granger is blinded and can do nothing about it.
What? The spheres only appear when you have the ghost buildable in front of you.
Title: Re: RC/repeater ''power rings''
Post by: RAKninja-Decepticon on June 26, 2011, 05:43:20 am

Quote
question:  how hard would it be to add in a "toggle build spheres" bind?

Code: [Select]
/bind KEY toggle cg_buildRanges

just wondering, as that seems like a fine counter to aliens not being able to "turn it off" like the humans can by pulling out the blaster.  or perhaps toggling them to 50% or more transparency as a seperate, alien specific, bind.  it's no big deal if you have a toggle key, if you ask me.
Title: Re: RC/repeater ''power rings''
Post by: Nux on June 26, 2011, 07:14:29 pm
Quote
At least humans have the option of putting the ckit away (which stops them appearing), poor granger is blinded and can do nothing about it.
What? The spheres only appear when you have the ghost buildable in front of you.

You're right. That's fine then.
Title: Re: RC/repeater ''power rings''
Post by: UniqPhoeniX on June 26, 2011, 07:45:01 pm
Not drawing intersecting areas: not appropriate for anything IMO (even with eggs/om you may want to build something that is in range of more than 1 creep source), except repeaters *if* you additionally draw a plane exactly between the 2 repeaters, so you could see which is closer.
*Technically* it may be possible, tho I don't know yet. If it is, it's probably too inefficient on q3. I'm guessing it would be a piece of cake with full access to stencil and depth buffers.
I've thought about additionally drawing on all map geometry (not just at edges) inside any power area, and it should be easy, but it's not implemented yet. However that would also mean drawing on all players & buildables in power areas and that may look weird...

About precision: we already did get around the .md3 precision problem (tho we noticed the problem with cones) by using models with radius 100 that are scaled by range/100, so yes, that definitely works.
Another possible cause for the mismatch on Brindus is having the sphere centered above the center of the RC range.

The view is not nearly as obstructed when only displaying the lines on walls.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on June 27, 2011, 06:35:12 am
Lines would be my preferred method of rendering power. Perhaps it could be a choice, much like the crosshair. Lines, spheres, or none?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on June 27, 2011, 06:43:39 am
Lines would be my preferred method of rendering power. Perhaps it could be a choice, much like the crosshair. Lines, spheres, or none?
u will be able to display any combination of: the surface of the range marker (as a semi-transparent sphere or spherical cone), the intersection between the world and the range marker (as a line on the map geometry), and the so-called outline of the range marker (as a line on the map geometry or in the air).
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 13, 2011, 05:27:24 pm
we are proud to release the version 1.0 of our (Amsterdam Unlimited's) range marker feature.

i'll take the credit for coding. credits go to Uniq PhoeniX for creating the models, and devising a method (which we call "binary shaders") to draw lines on the map geometry and outlines of shapes. the development is tracked at the bugzilla range marker report (https://bugzilla.icculus.org/show_bug.cgi?id=5076).

provided is a demo package (http://www.2shared.com/file/Mm49JnRy/zzz-range-markers.html), which contains latest-revision modules with the added range marker feature. unfortunately, we do not provide a server with the feature atm, but other servers should install the feature soon.
Title: Re: RC/repeater ''power rings''
Post by: Nux on July 14, 2011, 03:30:04 am
MIGHTY ORBS

(http://i.imgur.com/9s6hf.png)

The command list:

    cg_rangeMarkerBuildableTypes
    cg_rangeMarkerForBlueprint
    cg_rangeMarkerLineThickness
    cg_rangeMarkerLineOpacity
    cg_rangeMarkerSurfaceOpacity
    cg_rangeMarkerDrawFrontline
    cg_rangeMarkerDrawIntersection
    cg_rangeMarkerDrawSurface

Why is it I can't see any intersection lines? (Yes, I have the options set correctly)
Title: Re: RC/repeater ''power rings''
Post by: Meisseli on July 14, 2011, 04:18:49 am
Blaster/spectators shouldn't be able to view the spheres.

Yeah, as I thought, starts to look more confusing than helpful when there are multiple power sources in play. Making a bind to toggle their visibility might just make it useful though.

woo rc hitting turrets, though

(http://dl.dropbox.com/u/18542862/images/shot0003.jpg) (http://dl.dropbox.com/u/18542862/images/shot0003.jpg)
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 14, 2011, 06:07:49 am
The command list:

    cg_rangeMarkerBuildableTypes
    cg_rangeMarkerForBlueprint
    cg_rangeMarkerLineThickness
    cg_rangeMarkerLineOpacity
    cg_rangeMarkerSurfaceOpacity
    cg_rangeMarkerDrawFrontline
    cg_rangeMarkerDrawIntersection
    cg_rangeMarkerDrawSurface
those are not commands.
btw, see Options -> System -> Range Markers
Why is it I can't see any intersection lines? (Yes, I have the options set correctly)
oh, crap. try setting r_showsky to 1, or going to an area isolated from the sky (ie., the Niveus plant room), and then doing a vid_restart. what happens then? this is just for my curiousity, but otherwise you should try setting r_fastsky to 1, and then doing a vid_restart.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 14, 2011, 06:09:57 am
Blaster/spectators shouldn't be able to view the spheres.
no u
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 14, 2011, 06:46:53 am
just for the record, i've posted screenshots on how the range markers SHOULD(TM) show up with the default settings.
Title: Re: RC/repeater ''power rings''
Post by: Nux on July 14, 2011, 06:12:22 pm
those are not commands.

btw, see Options -> System -> Range Markers

Are you being pedantic about my use of the word 'command'? Those are the list of console variables you can edit on the console command-line. I posted them to be helpful for anyone who wants to create a bind for toggling them.

oh, crap. try setting r_showsky to 1, or going to an area isolated from the sky (ie., the Niveus plant room), and then doing a vid_restart. what happens then? this is just for my curiousity, but otherwise you should try setting r_fastsky to 1, and then doing a vid_restart.

I tried it and it had no effect, sadly.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 15, 2011, 04:36:25 am
Are you being pedantic about my use of the word 'command'?
yes.
oh, crap. try setting r_showsky to 1, or going to an area isolated from the sky (ie., the Niveus plant room), and then doing a vid_restart. what happens then? this is just for my curiousity, but otherwise you should try setting r_fastsky to 1, and then doing a vid_restart.

I tried it and it had no effect, sadly.
are you sure? plz test on a map with no sky (for example, thanatos_b3).
Title: Re: RC/repeater ''power rings''
Post by: Nux on July 15, 2011, 10:53:38 am
No success.

It seems anything to do with these 'binary shaders' doesn't work (with me). The sphere and cones and concave sphere-cones work fine: I can toggle drawing them, change their opacity and select which type of building uses them.
Title: Re: RC/repeater ''power rings''
Post by: gimhael on July 15, 2011, 09:51:40 pm
Maybe your graphics driver choses a visual without alpha channel. The quake engine does not request an alpha channel, so the driver can do whatever is optimal for its hardware. On my nVidia 6600 card OpenGL picks a R8G8B8A0 format (i.e. no A channel) by default.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 16, 2011, 08:52:32 pm
Maybe your graphics driver choses a visual without alpha channel. The quake engine does not request an alpha channel, so the driver can do whatever is optimal for its hardware. On my nVidia 6600 card OpenGL picks a R8G8B8A0 format (i.e. no A channel) by default.
how would we go about requesting A8 in the engine, or how do we find the number of alpha bits currently in use?
Title: Re: RC/repeater ''power rings''
Post by: gimhael on July 16, 2011, 09:40:17 pm
Taken from sdl_glimp.c:
Code: [Select]
SDL_GL_SetAttribute( SDL_GL_RED_SIZE, sdlcolorbits );
SDL_GL_SetAttribute( SDL_GL_GREEN_SIZE, sdlcolorbits );
SDL_GL_SetAttribute( SDL_GL_BLUE_SIZE, sdlcolorbits );
SDL_GL_SetAttribute( SDL_GL_DEPTH_SIZE, tdepthbits );
SDL_GL_SetAttribute( SDL_GL_STENCIL_SIZE, tstencilbits );

It doesn't set SDL_GL_ALPHA_SIZE. Unfortunately this is in the client executable - you cannot override it in the qvms :(
Title: Re: RC/repeater ''power rings''
Post by: Nux on July 16, 2011, 09:53:41 pm
If this is the reason- bear in mind I've only half understood what you've said -is there something else this would cause that I can check, to see if that's affected too? If it's something as simple as alpha not occurring I can say right here and now that I definitely get alpha (for example on these spheres).

Also helpful would be some feedback from anyone else but me.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 17, 2011, 11:16:55 am
Nux: could you test this Tremulous executable which requests 1 alpha bit (http://www.2shared.com/file/ITcMQovQ/tremulous-r2225gpp-1alphabit.html) (or patch&compile an executable yourself and test that)?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 17, 2011, 11:18:27 am
It doesn't set SDL_GL_ALPHA_SIZE. Unfortunately this is in the client executable - you cannot override it in the qvms :(
prepare for ioq3 engine changes! nwhahahahaha!
Title: Re: RC/repeater ''power rings''
Post by: Nux on July 17, 2011, 12:15:38 pm
Yes, that works. With that executable I see the binary shaders. Woo!

Sadly, while the pk3 is installed I can't play demos and get an 'ERROR: Bad corpseNum on entity: -1' when I try. This happened with both this .exe and my old one and the problem goes away when the pk3 goes away.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on July 17, 2011, 07:36:37 pm
ok, thx for the tips, gimhael.

Sadly, while the pk3 is installed I can't play demos and get an 'ERROR: Bad corpseNum on entity: -1' when I try. This happened with both this .exe and my old one and the problem goes away when the pk3 goes away.
this is expected. you will not be able to play older demos with these modules, and will not be able to play, with older modules, demos created with these modules.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on July 18, 2011, 12:49:24 am
Brindus was vanilla the other day. Any servers running this?
Title: Re: RC/repeater ''power rings''
Post by: F50 on July 18, 2011, 01:07:59 am
Brindus is not running this, actually, not quite yet. Its currently running gimhael's power rings. Brindus has been GPP a lot recently due to scrims, sometimes I forget to change it back.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 03, 2011, 04:31:36 am
ZOMFG, WE R BEING TROLLED, BIG TIME:
Quote from: Lakitu7
I'm sorry but this binary shaders thing is far too messy for trunk.
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 03, 2011, 04:02:04 pm
What does he mean? Is the code messy?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 03, 2011, 05:02:58 pm
Is the code messy?
no, the code is very clean and modular.
What does he mean?
he doesn't like the approach used to draw lines.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on August 03, 2011, 10:04:45 pm
Is the code messy?
no, the code is very clean and modular.
What does he mean?
he doesn't like the approach used to draw lines.

Your powers of arbitrary deduction are fantastic.
Title: Re: RC/repeater ''power rings''
Post by: jm82792 on August 03, 2011, 11:10:33 pm
It would be really nice if we could get this integrated on an official basis.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 03, 2011, 11:23:31 pm
Is the code messy?
no, the code is very clean and modular.
What does he mean?
he doesn't like the approach used to draw lines.

Your powers of arbitrary deduction are fantastic.
yours likewise.

PS: see the full statement (https://bugzilla.icculus.org/show_bug.cgi?id=5076#c19).
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 03, 2011, 11:46:02 pm
Any idea why it is better to not have the feature at all than have a hacked up version of it? Is it somehow offensive even when it's not active? Does it somehow open doors to trouble?
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 04, 2011, 02:18:55 am
Any idea why it is better to not have the feature at all than have a hacked up version of it?
the feature is done in a creative way, not a hacked-up way.
Is it somehow offensive even when it's not active? Does it somehow open doors to trouble?
no, no.
Title: Re: RC/repeater ''power rings''
Post by: A Spork on August 04, 2011, 03:07:20 am
Any idea why it is better to not have the feature at all than have a hacked up version of it?
the feature is done in a creative way, not a hacked-up way.
Translation: Hacked up.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 04, 2011, 03:28:24 am
Any idea why it is better to not have the feature at all than have a hacked up version of it?
the feature is done in a creative way, not a hacked-up way.
Translation: Hacked up.
DOES U SPEAKS ENGRISH?
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 04, 2011, 03:52:23 am
It would be nice to actually hear from Lakitu7. I've shouted to him over on irc with no response. If anybody's online when he is, could you ask him to post here or something as it would be nice to hear what his take on this is.

EDIT: I've had a brief inexpert look at the binary.shader file and I can't say I understand it very well yet but I can say it looks like you've bruteforced something that could have been coded much more nicely at a lower level. Yet again, I'll admit I'm no leet coder but when I see 256 chunks of text each differing by either increments or by seemingly arbitrary steps, my nearest guess is that you've hard coded something because you don't want to have to access a less limiting level of code.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 04, 2011, 01:53:28 pm
EDIT: I've had a brief inexpert look at the binary.shader file and I can't say I understand it very well yet but I can say it looks like you've bruteforced something that could have been coded much more nicely at a lower level. Yet again, I'll admit I'm no leet coder but when I see 256 chunks of text each differing by either increments or by seemingly arbitrary steps, my nearest guess is that you've hard coded something because you don't want to have to access a less limiting level of code.

one chunk contains 6 shaders, which do the following steps:
these shaders have different, monotonic sort values, which means that they are drawn in respective order (also, one chunk at a time). this is important for correctness. marking is done by altering the alpha value of pixels on the screen.

256 chunks means that you can see lines drawn for at most 256 buildables at a time. 256 is an overkill, because you in practice never see 256 buildables (but note that the engine allows up to 16384 shaders to be defined, out of which only ~2000 are used on some complex maps).

atm there doesn't seem to be a way to procedurally define these shaders. however, the binary.shader file doesn't really need to be looked at, and it doubtfully gets in the way of developers.
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on August 04, 2011, 07:13:56 pm
It would be nice to actually hear from Lakitu7. I've shouted to him over on irc with no response. If anybody's online when he is, could you ask him to post here or something as it would be nice to hear what his take on this is.

EDIT: I've had a brief inexpert look at the binary.shader file and I can't say I understand it very well yet but I can say it looks like you've bruteforced something that could have been coded much more nicely at a lower level. Yet again, I'll admit I'm no leet coder but when I see 256 chunks of text each differing by either increments or by seemingly arbitrary steps, my nearest guess is that you've hard coded something because you don't want to have to access a less limiting level of code.

Your inexpert nailed it perfectly. This needs to be done at the lower level of code.

It was also not a unilateral decision, but a consensus of developers who had a discussion about it. I just delivered the message.

Title: Re: RC/repeater ''power rings''
Post by: Nux on August 04, 2011, 08:15:58 pm
Just to be clear, I didn't get someone else to look at it. I looked at it inexpertly. It's just that I can't help but feel a little proud for understanding it at least that much.

Anyhow, it's fair enough if you've considered it well. I'm just interested to know what the overriding disadvantage was to including it as the flawed but sole implementation of the feature. Or is it because if you accept this, then it will be settled for and never improved upon?
Title: Re: RC/repeater ''power rings''
Post by: Lakitu7 on August 04, 2011, 09:03:27 pm
When we add code to Tremulous we're essentially making a commitment to debug and maintain it indefinitely. This quickly becomes impossible if we include a bunch of ugly hacks. People submit patches that on the surface work at the moment and then they ride off into the sunset, but if those patches are messy, we, not them, would be the ones to deal with that mess indefinitely.

Obviously I used to be on the other end of this, making poorly coded features with hacky workarounds, and including them in unofficial releases that people used and liked, but it did become a buggy impossible to maintain mess, and it was only possible in the first place because trunk is kept to a higher, cleaner standard.
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 04, 2011, 09:45:34 pm
Sounds fair.

In any case, /dev/humancontroller, you've made a very cool and appreciated unofficial addition. Also, if ever you have the time, you're in a great position to implement a tighter version of it now you have this proof of concept.
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 04, 2011, 11:23:46 pm
/dev/humancontroller, you've made a very cool and appreciated unofficial addition.
i have a feeling you're missing someone to mention.
Also, if ever you have the time, you're in a great position to implement a tighter version of it now you have this proof of concept.
this isn't just a proof of concept, this is a full, well-tailored implementation for the current engine. also, the range marker feature without the binary shader subfunctionality is also usable. a completely different, lower-level approach would require additional engine features, which will be included S00N(TM) after DNF2 is released.
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 05, 2011, 12:50:23 am
i have a feeling you're missing someone to mention.

...and the same thanks goes to everyone else involved.

Yes. It's fully functional and more than that, it's available to all who want it. It only serves as a proof of concept so far as anyone who wishes to delve deeper into the code can implement the same thing in a way that suits the development's standards. For everyone else it's a free feature, woo!

Now, correct me if I'm wrong, but doesn't this involve looking at whatever code reads .shader files and adding classes/loops/if statements so you can tidy a wall of text into something smarter?
Title: Re: RC/repeater ''power rings''
Post by: Qrntz on August 05, 2011, 01:29:02 am
S00N(TM) after DNF2 is released.
lol
Title: Re: RC/repeater ''power rings''
Post by: /dev/humancontroller on August 05, 2011, 02:33:31 am
Now, correct me if I'm wrong, but doesn't this involve looking at whatever code reads .shader files and adding classes/loops/if statements so you can tidy a wall of text into something smarter?
adding functionality to define shaders in loops would be sufficient just to decrease the big shader file. however, there is no gain in doing that for just 1 file (no other shader file is in need of "loopy refactoring"), that will just cause more pain and potential bugs. the shader file should be left alone, unlike the game code.
Title: Re: RC/repeater ''power rings''
Post by: Nux on August 05, 2011, 12:03:09 pm
I think the mindset the developers have is that of treating every new addition as one of possibly many, no matter how unlikely it seems at the moment because it probably never seems like the code will be used in ways it later will. Also, the file will become so much more readable if the logic can be condensed into it's basic patterns.

I don't know how you would pass that kind of functionality over to the shader files, and I don't know if it would be considered ill-advised to do so since it might open doors to some particularly nasty shader files. I don't even know if it's just the expanded nature of the file that the developers don't like. All I know is they refuse to take responsibility for it as it is.
Title: Re: RC/repeater ''power rings''
Post by: Plague Bringer on August 05, 2011, 06:40:35 pm
This will likely dissolve into a battle of pride.