Page 1 of 1

gravity changing flags

Posted: Fri Mar 22, 2013 4:29 pm
by Trogdor BurNinat0R
I think bzflag is great - thanks to all the devs. :D

Has anyone considered changing gravity with flags?

The easiest idea would be changing the amount of world gravity via a flag.

From there the idea probably gets very difficult to implement.

Next most complicated would be a flag that lets tanks change their own personal gravity. Perhaps like a wallwalker flag - the tank can now go up walls and possibly hang from overhangs?

Finally (the most complicated) would be a flag that changes the direction of "down" for everyone. The maps that would result would be amazing. I can imagine the "borg cube" map with such a feature enabled. CTF would be crazy too.

Just a pipe dream I'm sure. :roll: Keep up the good work!

btw I also have a real question: where is the best source of updates on 3.0 status and changes / features? :book:

Re: gravity changing flags

Posted: Sat Mar 23, 2013 11:03 am
by alezakos
Changing gravity with flags has been not only considered, but also implemented in the 3.0 version of BZFlag, as a flag with the name LG (Low Gravity). However, a protocol break would be required to add this to the playable BZFlag version.

If you wanted to implement such a flag right now, your best bet would be to use the Wings flag and set the _wingsGravity variable to whatever you like, or use sigonasr2's PlayerVar plugin, and change each player's _gravity variable each time they grab a specific (custom) flag.

As for 3.0, its development has stalled, and that's why the developers decided to bring back a few bugless features from 3.0 into a new release 2.4 a couple of years ago. So, every change happens on 2.4.3, whereas 3.0 hasn't been changed for a year.

Re: gravity changing flags

Posted: Sat Mar 23, 2013 1:15 pm
by blast
alezakos wrote:... or use SkillDude's PlayerVar plugin...
It actually wasn't SkillDude's plugin. It was made by sigonasr2, but then sigonasr2 gave his account to someone else who changed the name to SkillDude.

Re: gravity changing flags

Posted: Sun Mar 24, 2013 11:41 am
by Agent West
Someone has tried positive gravity with and Wings flag pushing players down, reverse of the usual. That did not work.

Re: gravity changing flags

Posted: Sun Mar 24, 2013 12:35 pm
by mr64bit
Some friends and I once played on a quick map I made where the normal gravity is inverted, and the wings flag pushes you down. Everyone spawns with a wings flag, and you have practically unlimited jumps. (also really fun with _shotsKeepVerticalVelocity 1) There was a physics object at around 2000 high that killed you if you touched it.

Re: gravity changing flags

Posted: Tue Mar 26, 2013 3:20 pm
by Trogdor BurNinat0R
That sounds fun, especially with vertical shot velocity. I wonder if there is a server running like that somewhere and if that required any plugin or just setting options.

What I really want though is actual down/up reversal -- world is redrawn upside down, tanks flip and fall to what was the ceiling... obviously this would be somewhat map dependent. I don't know if it makes sense as a flag at all though... maybe something else could trigger it, like a timer, or other in game event (like a win in CTF, or a shot hitting a particular surface). The reversal wouldn't need to be animated (which would probably be very hard to track all those moving map elements?) - it could just invert instantly and the tank fall to the new "floor"...

I haven't looked at the code, but generalizing "what down is" would probably be a lot of work. But if it were to be undertaken, perhaps "N, E, S, W" could also become "the new down"... though that would *really* make for some weird maps. Imagine the game inside the "borg cube" (modified for this a bit perhaps) where every... 30 seconds the gravity changes...

Re: gravity changing flags

Posted: Tue Mar 26, 2013 4:29 pm
by JeffM
Z+ is up, Z- is down.

What you are describing would best be implemented by not rotating the tanks and gravity, but rotating the world.

Changing the simulation code to apply gravity along an arbitrary vector and rotate all the tanks to be perpendicular would require a lot of changes to the code. Applying an arbitrary transformation to the world objects would not be as bad, and would provide a more general utility feature.