Mod Ideas/ForcedLowGrav
Description
This mutator runs maps in LowGrav according to how the map is named. Some maps are better played in LowGrav and others (like the ones with alot of indoor areas to tight for LowGrav manuevering) are better played without that mutator. This would give the choice of playing the LowGrav mutator or not and it just happens majically when the map is voted on or cycles into play.
Method
Just take the LowGrav Mutator and add a test to parse the map's name. If the right 2 digits == LG then do what the mutator was going to do anyway. If the not, then test fails and the mutator does nothing. Now, the server admin just makes a copy of all the maps he/she wants this available in and renames the copy with LG affixed at the end. If in mapvote the LG version is voted on then its played in LowGrav, else if the originally named map wins then the mutator does nothing and regular gravity stays in effect.
Interested Scripters
If you are interested in developing this mod for any UT Engine Game then add your name to the list. Once you start development you should indicate that below (and hopefully include a link to a journal page). Before you start development you should also check this section to see if anyone else has started.
- CH3Z(UT Version)
Discussion
Ch3z: I will make this myself if someone doesn't come up with an idea so that it works without the labor of adding the copied and renamed maps. If that's the only way it can be done, then at least it can be done.
Foxpaw: The problem that I could see with this is, if it's going to have to be defined per-map anyway, why not just change the gravity settings on all the zoneinfos/physicsvolumes right in the map editor? Since the map will have a different name, the low-grav version is going to have to be downloaded by all the clients anyway.
Ch3z: Well, I did that with BadNeighbors_V2. I set all ZoneInfo's gravity vectors to (0,0,-200) i think it was and got rid of all jump boots. An exact duplication of the effect it would seem. But for some reason when trying to boost ppl across the map you would hit something invisiible just above the covered bridge and bounce down onto the roof really fast. I used find all ZoneInfo actors so i know i got them all. Besides that's so much more work for the server admin. What do you mean by "defined per-map anyway"? Once the map is in server's map folder with LG at the end of the name it will just happen anytime you play that map. Hmmm i wonder about UT's capabillity to copy and rename files. But if i get into all that, I'd just have a combo box for the server admin to pick maps that will use the effect. But then again, the other way there would be a LowGrav version of the map as well as a Regular grav version. My main focus on design here would be to automate it as much as possible to make it more user friendly. Any ideas there?
Ch3z: AhHa! console command to turn it off and on. Any ideas on how to do that without restarting the map? Maybe you would have to choose LowGrav before the next map loads. Either was is kinda clumbsy, but better than copying and renameing maps.
Foxpaw: Well, if you have the map name with LG at the end, that's going to force clients to download the LG version when they try to play, even though it's an identical map just with a different name. I'm not sure how one goes about making a GUI using the built in GUI systen, but the maps cycled/maps not cycled would likely be very close to what you want. You can store the list of which maps should have lowgrav in an ini file, the same way that the map lists store which maps to cycle.
Ch3z: Good stuff because we'd rather not force extra downloads. Still hoping not to force LowGrav on that map everytime it comes up. I'm leaning toward a setting saved in an ini file to enable or disable LowGrav via the console. I can't think of a better way for the end user choose unless its possible to cause a pop-up before each map loads that will time out if no choice is made. hmmmm now i'm wondering if it would be more worthwhile to do something that would be called MutVote ... like MapVote that would be avle add a mutator to the servers string but not remove any that weren't added via MutVote. I think would be over my head. (unless maybe MutVote extends MapVote then most of work is already done)
Daid303: How about doing a trace upwards from every pathnode, to see how high the ceiling is, then you can set the gravatie acording to that.
Ch3z: I dont' know if that applies here or not but it is a very interesting idea. Maybe you could pose that on Map Ideas. It would surely answer the issue of the negative LowGrav effects in confined spaces. And could maybe still be an extension of the LowGrav mutator for that purpose. But it doesn't answer the issue of LowGrav as an option on a per map basis. A very juicy thought though.
I have a feeling this page will be refactored into multiple idea pages. Might be nice to save it as a subpage of one of those new pages as /Origination as a study in "Feedback as an Aid to Idea Development". (or "The Bulldozer Approach to Idea Deveopment" hehe)
Daid303: Well, I just thought it up while reading this page. And it could apply to this idea, then you can throw away the whole maplist idea, I did a botamount mutator once, that just looked at the amount of pathnodes in a map and created PathnodeNum/40 bots, that works surprizingly well. People tend to forget about the usefullness of pathnodes
Ch3z: I recall tarq once half-jokingly describing this wiki as:
"...a massively collaborative document that sometimes breaks down to chatter and talks to itself."
That was in the context of a discussion of the wiki being used as a forum. I'm not sure if that was a remark against a page like this or if that would make this a typical wiki page but it sure fits the bill. I'll need to make a decision on this page soon.
EntropicLqd: I like the idea of checking each of the pathnodes for the available height. It probably wouldn't work on all maps though as not all of them are properly split into zones or volumes. I haven't tested it in UT2003, but in UT you could change a fair few zone properties (gravity included) in UScript while the map was running. Creating a mutator that would allow gravity to be set to "normal" via a console command should'nt be too hard.
nogginBasher: You could achieve this with MapVoteLA. If you have for example CTF-BoostingMap and lgCTF-BoostingMap in your maplist, MapVoteLA can be set to add the LowGrav mutator whenever an lgCTF map is voted on.