Help?
Posted: Wed Nov 29, 2006 10:17 pm
I am requesting help from anyone that has knowledge of bzfs plugin source coding and the time to create a small, specific plugin for a server running one of my maps (Roundabout). I have made a valiant attempt to create my own, but I have failed miserably; my C++ is extremely rusty.
I would like the server to take away a player's Guided Missile flag if the player is outside of a defined geometric volume (e.g. inside the GM Towers). I would assume that this would be some sort of timed event check (bz_eTickEvent?) against all players' locations and flag types.
In any case, the volumes in which GM's must remain is as follows:
(Tower 1)
X Minimum: -20
X Maximum: +20
Y Minimum: -296
Y Maximum: -256
Z Minimum: 44
Z Maximum: 64
and/or
(Tower 2)
X Minimum: -20
X Maximum: +20
Y Minimum: 256
Y Maximum: 296
Z Minimum: 44
Z Maximum: 64
If a player has a GM flag outside of these volumes, then the flag must be taken away from that player, ideally with a player message "Guided Missiles Stay In Towers!" (or something similar).
I have tried many conventional (and some unconventional) methods of mapping to try and restrict players from using intentionally induced jitter/lag to escape the towers with GM's, but all of my attempts have not been 100% reliable.
Please PM me if you think that this is something you might be able to do for me. I'm not sure what I could offer in exchange, other than my extreme gratitude.
-----------------------------------------------------------------
PS:
If this could be someday generalized into a bzFlag map/server function, I could see many applications. Regionalized flag types on maps... hmmm... yes, I could see many applications of this. Perhaps some sort of zone function similar to zoneflag, e.g.:
zone
name keep_GMs_Tower1
position 0.0 -276.0 44.0
size 10.0 10.0 20.0
rotation 0.0
flagstay GM Guided Missiles Stay In Towers! # type, message if not in volume
end
zone
name keep_GMs_Tower2
position 0.0 276.0 44.0
size 10.0 10.0 20.0
rotation 0.0
flagstay GM Guided Missiles Stay In Towers! # type, message if not in volume
end
Of course this would require that error checking was in place to be sure that the required flags are available in these zones in the first place and that they will respawn there if a player's flag is taken away. It would also require that all of the specified flag's possible volumes (e.g. Keep_GMs_Tower1 and Keep_GMs_Tower2) are checked before taking flag and issuing message to player.
I would like the server to take away a player's Guided Missile flag if the player is outside of a defined geometric volume (e.g. inside the GM Towers). I would assume that this would be some sort of timed event check (bz_eTickEvent?) against all players' locations and flag types.
In any case, the volumes in which GM's must remain is as follows:
(Tower 1)
X Minimum: -20
X Maximum: +20
Y Minimum: -296
Y Maximum: -256
Z Minimum: 44
Z Maximum: 64
and/or
(Tower 2)
X Minimum: -20
X Maximum: +20
Y Minimum: 256
Y Maximum: 296
Z Minimum: 44
Z Maximum: 64
If a player has a GM flag outside of these volumes, then the flag must be taken away from that player, ideally with a player message "Guided Missiles Stay In Towers!" (or something similar).
I have tried many conventional (and some unconventional) methods of mapping to try and restrict players from using intentionally induced jitter/lag to escape the towers with GM's, but all of my attempts have not been 100% reliable.
Please PM me if you think that this is something you might be able to do for me. I'm not sure what I could offer in exchange, other than my extreme gratitude.
-----------------------------------------------------------------
PS:
If this could be someday generalized into a bzFlag map/server function, I could see many applications. Regionalized flag types on maps... hmmm... yes, I could see many applications of this. Perhaps some sort of zone function similar to zoneflag, e.g.:
zone
name keep_GMs_Tower1
position 0.0 -276.0 44.0
size 10.0 10.0 20.0
rotation 0.0
flagstay GM Guided Missiles Stay In Towers! # type, message if not in volume
end
zone
name keep_GMs_Tower2
position 0.0 276.0 44.0
size 10.0 10.0 20.0
rotation 0.0
flagstay GM Guided Missiles Stay In Towers! # type, message if not in volume
end
Of course this would require that error checking was in place to be sure that the required flags are available in these zones in the first place and that they will respawn there if a player's flag is taken away. It would also require that all of the specified flag's possible volumes (e.g. Keep_GMs_Tower1 and Keep_GMs_Tower2) are checked before taking flag and issuing message to player.