Pages: [1]
  Print  
Author Topic: little addition: advice?  (Read 9030 times)
chtechitzu
Nub


Cakes 0
Posts: 8


« on: October 02, 2007, 01:43:51 AM »

Hello.
I run three servers and pass some time administrating so that some kind of players are kept out. I am a developper (as a job and as a hobby) in C/C++ and java. I am about to start a project to administrate server sessions in a kind of way that is closer to my needs and wills.
I would like to get some information about a module/extension i would like to add to my servers in order to forbid camping automatically based on a different system than just position. (the default anti camping mode, which imho is pretty inneficient)
Here is one of my idea: in ctf, we can have locations of people in our team, displayed on top left of the screen. How would you do to be able to output this info -to I.E stderr/stdout or a socket-? modify the game itself? addon? would it need to be compiled, or 'scripted'?
Also, if you have other places where to get dev information, please send me some links. At the moment, my googling returned so much noise that i could not find any other place.

Thank you.
Logged
w1zrd
Member


Cakes 2
Posts: 582


Give to life what you expect back


WWW
« Reply #1 on: October 02, 2007, 01:54:03 AM »

No idea about outputting or systematically check camping in other ways since it's usually down to each administrator/game host to decide where the rules for camping are. What some people call camping, others call tactics, what some call tactics others will call camping..you get the point.
However, there is an old mod created for q3, it's firestarters corkscrew. Check it out here: http://fire.planetquake.gamespy.com/
The modification itself is designed for railguns only, but the g_anticamp variable will activate a rather effective camping protection, which is based on the time (T) for how long the player has been in a certain radius of an area (A) where both T and A are configurable values. Download and test it, it's also changeable on/off with a simply variable. The mod is not GPL, but you will understand the concept behind the protection..
Logged

'Toto, I've a feeling we're not in Kansas anymore.'


chtechitzu
Nub


Cakes 0
Posts: 8


« Reply #2 on: October 02, 2007, 08:48:37 AM »

Hello.
I know this method, but as you said, this is not what everyone would call camping. To me it is incomplete and i would like to test some advanced (and more intelligent) technique.
This method you describe is already implemented in OA, by the way.

I would like the mod to be server only, is that possible?
Logged
next_ghost
Half-Nub


Cakes 0
Posts: 76


« Reply #3 on: October 02, 2007, 12:35:49 PM »

Output to stderr is really simple, in game server (not engine) call G_Printf() and in server engine call Com_Printf() like you'd call printf() in C. It's much easier to make this kind of modification server-only than to make some client part as well.
Logged
chtechitzu
Nub


Cakes 0
Posts: 8


« Reply #4 on: October 03, 2007, 12:34:18 AM »

Great !
I would like to know how easy it can be to do such modifications.
Do i need to recompile anything (is it part of the 'scripted' thing?)? the whole game? Only a part?
Do you have any link to a tutorial on this subject?

Thank you.
Logged
next_ghost
Half-Nub


Cakes 0
Posts: 76


« Reply #5 on: October 03, 2007, 09:34:45 AM »

I would like to know how easy it can be to do such modifications.

If you know C well enough, then after reading about 5000 lines of code searching for what to change, it'll be quite easy.

Quote
Do i need to recompile anything (is it part of the 'scripted' thing?)? the whole game? Only a part?

The only part of code which should be interesting for you is in the game directory (code/game/* in SVN). qcommon and server directories might be a little interesting too but only if you can't do something in game alone. Make is smart and won't recompile things which don't depend on anything that hasn't changed since the first compilation. You can also turn game client compilation off manually (make BUILD_CLIENT=0). Server executable might require recompilation to match game.qvm in some cases.

Quote
Do you have any link to a tutorial on this subject?

Code3Arena should be a good place to start.
Logged
chtechitzu
Nub


Cakes 0
Posts: 8


« Reply #6 on: October 06, 2007, 02:52:21 AM »

wow, thanks. That place is great to start.
...reading...
Logged
Pages: [1]
  Print  
 
Jump to: