Wises wrote:yep thats what it does , however there is only one flag base so one control point.. therefore .. idk .. what can we do with it?
It should play just like any normal Domination map that has 2 or more control points.
(It should also work on a CTF map with only 1 flagbase...)
Game shouldn't end until the GoalTeamScore has been reached.
Works fine in testing with 2, 3 or 4 teams.
Most maps the bots seem to deal with it very well, although a few I have tested they
didn't go searching for the 2nd control point. The problem there is probably a combo
of no or poor bot pathing on that CTF map, and I just should have had a few extra bots in the game.
Also, this will tend to work better in conjunction with the Random Spawn Locations mutator.
At the moment this is restricted to just 4 control points, as the most flags I was expecting to
find on any CTF map was 4. I would just have to change that 1 value to make it support maps
with up to 16 flagbases on them. The domination gametype supports up to 16 control points.
You can make DOM maps with more than that in them, like the DOM-(Chaos_Snake)-SpinningAround map, but
array out of bounds errors will show up in the log file for points over 16.
Scoring will still work right however as dom checks the navigation point list instead of its ControlPoints
array when it adds to the team scores. (No idea why they would do it like that...)
Although, if you are writing the map, you could write a DOM map instead....
GEx pointed me at this map which I have been using for testing this and a few other things:
http://www.unrealplayground.com/forums/ ... le&id=8008
CTF3-300K-7rings.unr
Very interesting little map. (Not sure why it was given an F grade...)
This map has this feature sort of built into it. If you rename it from CTF to DOM, it adds its own controlpoints automatically.
It must be doing an internal check on the current gametype for setting that up, as it switches the flags to controlpoints
even if the map is still named CTF3.
This mutator isn't even needed when playing on that map. You will actually end up with 2 control points sorta stacked up
at each base if you do run it. You can toggle them independently if you move in real slow. (They are very close to each other.)
Only one of the points at each base will actually accumulate team score, but it will get checked twice....
It doesn't break anything, although the map will end twice as fast as it normally would.
The parent Domination gametype will score based on the 3 bases the map adds to the navigationpointlist, and my
little gametype scores the same 3 bases since the ones it adds when it initializes the ControlPoints array in
PreBeginPlay get clobbered by the parent Domination gametype's PostBeginPlay, but since the points are so close, it makes
no real difference. (You have to try hard to only trigger 1 of them...)
I wasn't planning on changing anything to fix that issue, unless somebody told me there are more maps
out there that have both flagbases and controlpoints in them, and do this sort of thing.
But, while I have been slowly typing this reply, I have been staring at the code for this and for the default Domination.
There is a bit of redundant processing going on with the way I have done this. Not a whole lot, but it is in the Timer() function.
(Is Timer() in a gametype an important function?)
This can be optimized quite a bit more I think.
I think the next version will deal with that issue, eliminate the redundant code and support CTF maps that
have anything from 1 to 16 flagbases on them. (And no. CTF16 is not on my list of things to write atm.
)
---------------------------
*Edit: (Wow, I typed a lot last night. Was thinking out loud while updating this I guess. Hooray beer!
)
Got several interesting things done with this today however.
It will now support a CTF map with up to 64 flagbases on it, replacing each with a controlpoint. (I think...)
Also, on maps with only 2 bases, (most of them...), it will add a 3rd controlpoint somewhere near the
middle of the map.
I am thinking this will include a new config variable that will allow users to specify how many extra
control points it should add to the map in addition to the ones it adds on the flagbases.
It will attempt to place those near pathnodes and roughly equidistant from each other.
There will be some randomness, so the extra controlpoints will vary in exact location each time
you play a map.
This is gonna be nifty.....