medToggle Version 3

Started by Helen, Dec 27, 2010, 04:07 PM

Previous topic - Next topic

Helen

Here be the download:

http://www.birdieman.com/downloads/medToggle350.rar

And here is what it does. This mutator allows you to 'toggle' game settings, actors, mutators and weapons/ammo from map to map. You can associate your settings/actors/mutators/weapons/ammo at the map level, at the game class level, or make them overall defaults. Beside including actors, you can also have exclude lists.

This mute also can be told if you are using mapvote. That way it can work in conjunction with mapvote.

Or instead of mapvote or a regular rotation, with this mutator you can set up a map rotation list with mixed game class types. For example the first map in the rotation could be DM, then the next CTF, then the next DOM, and so on.

I'll use the next few posts to paste in what is in the readme, to further help you decide if you want this  :)
This readme is in the download btw.

[edit]Note that I am always updating the link above when a new version becomes available. So the readme below is still good, it just mentions an older version of toggle. Just make sure to use the newer name of toggle when setting up your ini.
One of the Scriveners.

Helen

#1
I will provide examples of all of the above.

A note on the names of your maps. If you want medToggle to work properly, the names of your
maps must have a "dash" in them, which is the position marker for the map prefix.
For example, in the map name DM-ArcaneTemple, how do I know that the prefix is "DM"? Because
there is a "-" (dash) after the "DM"! So I need that dash so I can find the prefix.

I will give examples in this order:
A) the basic settings
B) Mutators and Actors
C) working with MapVote (prerequisite reading, parts A and B!)
D) creating a mixed maplist (prerequisite reading, parts A and B!)


==============================================
== First, a setting to help with debugging ===
==============================================

To help figure things out along the way, set this value in the ini:

bLogInfo=true

This will spit out lots of helpful messages to the log. After, when you have figured things
out and it is running as you expect, then you can set it to false.


=================================================================================
== How to specify the basic settings at the default, game class, and map level ==
=================================================================================

-------------------------------------------
     | basic settings |
-------------------------------------------

Here are the basic settings you are going to be able to set, their default values, and the
accepted value for each:


Setting Name            default            acceptable values
------------            -------            -----------------
Translocator            false            true or false
GameSpeed            1            greater than zero and less than or equal to 2 (decimals allowed)
AirControl            0.35            greater than or equal to zero and less than or equal to 1 (decimals allowed)
BotSkill            2            greater than or equal to zero and less than or equal to 7 (integers only)
MinPlayers            2            greater than or equal to zero and less than or equal to 32 (integers only)
FragLimit            30            greater than zero and less than 1000 (integers only)
MaxTeamScore            100            greater than zero and less than 1000 (integers only)
TimeLimit            20            greater than or equal to zero and less than 1000 (integers only)
WeaponStay            true            true or false
ForceRespawn            false            true or false
ForceTeamBalance      true            true or false
FriendlyFire            0            greater than or equal to zero and less than or equal to 1 (decimals allowed)
Gravity                  -1            greater than or equal to zero and less than or equal to 1900 (integers only)
NoDynamicLighting      false            true or false
NoActorShadows            false            true or false
NoCorona            false            true or false
NoLensFlare            false            true or false
NoSpecialLit            false            true or false
NoLightEffect            false            true or false
NoSpecialLightType      false            true or false


Here are what the values mean for cBotSkill:

0 = novice
1 = average
2 = experienced
3 = skilled
4 = adept
5 = masterful
6 = inhuman
7 = godlike

For Gravity, the value of -1 has a special meaning. It means that medToggle should leave the
gravity alone! A value of zero means just that - zero gravity. Then as you increase the value,
the gravity gets stronger. As a measuring stick of what values to try, the normal gravity value
is 950, and the typical lowgrav in UT is 200.

The last 7 settings are for light. NoDynamicLighting is the 'master' value amongst them.
That is, if you want them all to be true, just set NoDynamicLighting = true. However if you
want finer control, leave NoDynamicLighting = false, and set to true any of the others.

Ok, so there are the defaults and their values. The defaults mentioned above are what medToggle
will use if you don't specify anything. So, let's start customizing your defaults.

In the medToggle.ini provided, you will find this line:

     mDefaults=(Settings="",Actors="",ActorsToExclude="",mutators="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

We need to start filling in the Settings. Let's say you are happy with the medToggle defaults,
and you only want to change the FragLimit to 22. The line would now look like this:

     mDefaults=(Settings="FragLimit=22",Actors="",ActorsToExclude="",mutators="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

To specify more defaults, just separate the items with commas. I'll add 2 more as an example.

     mDefaults=(Settings="FragLimit=22,WeaponStay=false,Gravity=600",Actors="",ActorsToExclude="",mutators="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

So now have your overall defaults set. Now we can start tweaking per game class, and per map.


-------------------------------------------
     | game class settings |
-------------------------------------------

Examples of a game classes are DeathMatch, CTF, Domination, etc. Now that your basic defaults
are in place, you can now specify settings you want applied at the game class level. You should
see these 6 lines in the ini:

     mGame[0]=(GameClass="Botpack.DeathMatchPlus",prefix="DM")
     mGame[1]=(GameClass="Botpack.TeamGamePlus",prefix="TDM")
     mGame[2]=(GameClass="Botpack.CTFGame",prefix="CTF")
     mGame[3]=(GameClass="Botpack.Domination",prefix="DOM")
     mGame[4]=(GameClass="Botpack.LastManStanding",prefix="LMS")
     mGame[5]=(GameClass="Botpack.Assault",prefix="AS")

Above we have the 6 typical game classes (DM, TDM, CTF, Domination, Last Man Standing, and Assault).
For an example, I'll turn on the translocator for the team games, and make sure there are more
min players. As well, realize that the default for MaxTeamScore is currently 100. That may be
good for TDM and DOM, but a bit much for CTF  :-O
So we'll lower that. I'm also going to lower the gravity a bit more just for CTF. So this gives us:

     mGame[0]=(GameClass="Botpack.DeathMatchPlus",prefix="DM")
     mGame[1]=(GameClass="Botpack.TeamGamePlus",prefix="TDM",Settings="Translocator=true")
     mGame[2]=(GameClass="Botpack.CTFGame",prefix="CTF",Settings="Translocator=true,MaxTeamScore=5,Gravity=450")
     mGame[3]=(GameClass="Botpack.Domination",prefix="DOM",Settings="Translocator=true")
     mGame[4]=(GameClass="Botpack.LastManStanding",prefix="LMS")
     mGame[5]=(GameClass="Botpack.Assault",prefix="AS")

Note: you can ADD more game classes here. I will give an example of this later on.
Note: each game class can only appear in the list once.
Note: in the example each mGame line has a "prefix" setting, but just ignore this for the moment.

Note we have specify Gravity in both the defaults and for the CTF game class. This is perfectly
valid. Any setting specified at the game class level overrules any previous value for the setting.
Same with when we get to MAP settings. Settings specified at map level overrule the game and
default values.

-------------------------------------------
     | Map settings |
-------------------------------------------

First you have set the default Settings.
Then you were able to tweak the Settings a bit depending on the game class.
Finally, you can enter more settings that will get applied to specific maps.

Here is the first map example line from the ini:

     mMap[0]=(MapName="DM-ArcaneTemple",Settings="GameSpeed=1.5,Botskill=5,MinPlayers=10")

In this example we have decided to increase the GameSpeed to 1.5, up the BotSkill to 5, and
have a MinPlayers of 10. All for just the map DM-ArcaneTemple.

Of course you can add more maps here, up to 256.

Note, map names must be REAL map names, not aliased names. This will make sense later.
Just make sure that you use real map names only.
One of the Scriveners.

Helen

#2
=====================================================================================================
== How to get medToggle to add Mutators and Actors, exclude Mutators/Actors, and swap Weapons/Ammo ==
=====================================================================================================

First, if you are starting any mutators with a ServerActor in your UnrealTournament.ini, I
recommend you move them out of there and put them into the medToggle.ini. This will centralize
your management of your Actors and Mutators.

(NOTE, you must still leave any custom ServerPackages lines in your unrealTournament.ini!)

-------------------------------------------------------
     | default mutators and Actors |
-------------------------------------------------------

Ok let's say you have a default server actor you want running all the time, for example UT Pure.
So we need to add it to our mDefaults line. Here is what our mDefaults line would look like after
adding it. Note that you can put it anywhere in the line, so I took the blank Actors="" that
currently appears after the settings, and moved it to the beginning of the line):

     mDefaults=(Actors="UTPureRC7G.UTPureSA",Settings="FragLimit=22,WeaponStay=false,Gravity=600",ActorsToExclude="",mutators="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

That's it. medToggle will now start UT Pure for you. If you want more than one server actor, they
are separated with commas within the double quotes, like this:

     mDefaults=(Actors="UTPureRC7G.UTPureSA,CCProtector420.CCProtectorActor",Settings="FragLimit=22,WeaponStay=false,Gravity=600",ActorsToExclude="",mutators="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

Getting mutators to start up is basically the same thing. An example:

     mDefaults=(mutators="KickIdlersV2b.KickIdlers",Actors="UTPureRC7G.UTPureSA,CCProtector420.CCProtectorActor",Settings="FragLimit=22,WeaponStay=false,Gravity=600",ActorsToExclude="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")

For multiple mutators, just separate them with commas.


---------------------------------------------------------
     | game class mutators and Actors |
---------------------------------------------------------

So now you have set up the actors and mutators you want to run all the time (in the defaults).
Now you can use the game classes to pile on more mutators and Actors to start per game class.
And, by default, the mutators and Actors you start adding at the game class level are going
to be ADDED to what was started at the default level. So let's say we have this for mDefaults
and the DeathMatch game class:

     mDefaults=(mutators="KickIdlersV2b.KickIdlers",Actors="UTPureRC7G.UTPureSA,CCProtector420.CCProtectorActor",Settings="FragLimit=22,WeaponStay=false,Gravity=600",ActorsToExclude="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")
     mGame[0]=(GameClass="Botpack.DeathMatchPlus",prefix="DM",mutators="medScoreBoard100.medScoreBoard",Actors="medWeaponAmplifier110.medWAActor")

Notice in the mGame[0] line we have just added mutators and Actors in the same fashion as
we did for the defaults. So the mutators and Actors from the defaults and the game class
will be combined, resulting in these items getting started:

mutators="KickIdlersV2b.KickIdlers,medScoreBoard100.medScoreBoard"
Actors="UTPureRC7G.UTPureSA,medWeaponAmplifier110.medWAActor"

So again, by default, the lists are ADDED together.


---------------------------------------------------------
     | Map mutators and Actors |
---------------------------------------------------------

Same idea here. If you want mutators/Actors started for a single map, add them to one
of your mMap lines. Similarly, the mutators/Actors you specify here will be ADDED to
the default and game class ones. Let's say we have these three lines:

     mDefaults=(mutators="KickIdlersV2b.KickIdlers",Actors="UTPureRC7G.UTPureSA,CCProtector420.CCProtectorActor",Settings="FragLimit=22,WeaponStay=false,Gravity=600",ActorsToExclude="",mutatorsToExclude="",WeaponSwap="",AmmoSwap="")
     mGame[0]=(GameClass="Botpack.DeathMatchPlus",prefix="DM",mutators="medScoreBoard100.medScoreBoard",Actors="medWeaponAmplifier110.medWAActor")
     mMap[0]=(MapName="DM-ArcaneTemple",mutators="Botpack.Fatboy",Actors="medUtil105.medUtilActor")

The resulting mutators/Actors to start will be:

mutators="KickIdlersV2b.KickIdlers,medScoreBoard100.medScoreBoard,Botpack.Fatboy"
Actors="UTPureRC7G.UTPureSA,medWeaponAmplifier110.medWAActor,medUtil105.medUtilActor"

So you could start up the Fatboy mutator for a single map. Kewl.


---------------------------------------------------------
     | Excluding mutators and Actors |
---------------------------------------------------------

In the mDefaults line you can find these two variables:

ActorsToExclude=""
mutatorsToExclude=""

Obviously, this allows you to specify Actors and mutators that you don't want to
get started. There are two main uses for this (as well as others). I'll start with
an example at the game class level.

The first handy thing about exclusion is that some mutators/actors are not compatible
with each other. So let's say you were including UT PURE at the defaults level. But then
for one particular class, it is not compatible with PURE, so you wouldn't want it to run.
So here is an example of three new game classes, that don't want UT PURE running:

     mGame[6]=(GameClass="EUT_1D.EUTDeathMatchPlus",prefix="EDM",Actors="EUT_1D.PureCRCLogger",ActorsToExclude="UTPureRC7G.UTPureSA")
     mGame[7]=(GameClass="EUT_1D.EUTTeamGamePlus",prefix="ETDM",Actors="EUT_1D.PureCRCLogger",ActorsToExclude="UTPureRC7G.UTPureSA")
     mGame[8]=(GameClass="EUT_1D.SmartCTFGame",prefix="ECTF",Actors="EUT_1D.PureCRCLogger",ActorsToExclude="UTPureRC7G.UTPureSA")

mutatorsToExclude works the same way.

Here is the second awesome use of exclusion. This one is very powerful. Besides using
this to exclude an Actor that you yourself have added at the default level, well, you
can also use it to exclude almost any actor you want! A couple of common ones that
people don't want are Invisibility and UDamage. There are a couple of mutators out
there to exclude them, but why have to bother with a couple of mutators when you can
just do this?

     ActorsToExclude="Botpack.UT_Invisibility,Botpack.UDamage"

And you can specify ActorsToExclude at the default level, game level, or map level!
How about no health for one map?

     mMap[0]=(MapName="DM-Codex",ActorsToExclude="Botpack.HealthPack,Botpack.HealthVial,Botpack.MedBox")

How about never seeing that enhanced shock rifle?

     mDefaults=(ActorsToExclude="Botpack.SuperShockRifle")

And on and on. As long as you know the name of the name of the package and class,
most actors can be excluded.
(There ARE exceptions though. 'PathNode' I know to be one of them).


--------------------------------------------------------------------
     | Excluding a literal INSTANCE of an Actor (advanced) |
--------------------------------------------------------------------

This is advanced stuff, but if you are a control freak who has oodles of time to
spend on your server, then read on  :)

The next variable available: InstanceActorsToExclude

This variable is only available at the map level. This deals with literal instances of actors. This allows
you to remove a single instance of an actor at a time. An example. Let's imagine the map Deck16][. This
map has TWO flak cannons. Let's say we want to remove the one down by the goo. First I need to know its
unique name, so I do this:
- I open UnrealEd2
- I find that flak cannon
- I right-click on it, and select Properties
- I expand the 'Object' node.
- I can now see the value for 'Name'. In this case the value is "UT_FlakCannon1".

I now know this flak cannon is uniquely identified with the name "UT_FlakCannon1". So in my map line
I would do this:

mMap[0]=(MapName="DM-Deck16][",InstanceActorsToExclude="UT_FlakCannon1")

There you have it, the flak cannon by the goo would be removed, and ONLY this flak cannon would be removed.
You can specify multiple items of course, separated by commas.


-----------------------------------------------
     | Swapping Weapons and Ammo |
-----------------------------------------------

Next two variables available are WeaponSwap and AmmoSwap. This allows you to swap weapons and ammo.
These two variables can be set at all levels.

A couple of uses for this. Let's say you hate a particular weapon and don't want it to appear in any
of the maps. But instead of using the exclude options above, it may be better to swap in a different
weapon. This is because the map may have been designed to make the weapon's location a focal point.
so if there was no longer anything there, there would be no reason to go to that section of the map.

Another use is to replace all types of weapons with a single weapon, sort of making it into an Arena.
(there is a quick way to do this, as I'll show you).

Ok, the basic way to swap - the format is first the class that exists, then a colon, then the class you
want to replace it with. So for this example we are replacing the sniper rifle with a pulse gun:

     WeaponSwap="Botpack.SniperRifle:Botpack.PulseGun"
     AmmoSwap="Botpack.BulletBox:Botpack.PAmmo"

Maybe you could add this to Deck16][ and stop the camping from above :)

To easily replace ALL weapons/ammo with a particular weapon/ammo, we introduce the keyword of [all],
used like this:

     WeaponSwap="[all]:Botpack.ShockRifle"
     AmmoSwap="[all]:Botpack.ShockCore"

There are a couple of individual flags you can set when you are replacing all weapons. These should be self-explanatory:

     bReplaceAllWeaponsIncludesHammer=false
     bReplaceAllWeaponsIncludesEnforcer=true

These two settings go by themselves directly under the [medToggle315.medToggle] section. That's it.

Note - Weapons/Ammo that you are trying to add to the map do not respect the ActorsToExclude list.
So if you have specified a weapon/ammo to go in, then it's going in!
One of the Scriveners.

Helen

#3
=====================================================================
=============== Using medToggle with MapVoteLA13 ====================
=====================================================================

This assumes you already know how to use the MapVoteLA13 mutator.
So you would first set up your medToggle as outlined above to handle what settings, mutators,
and Actors you want. Then you would add one more setting to the medToggle.ini:

bMapVote=true

This lets medToggle know to it has to allow mapvote to handle a couple of things. Now over to
the MapVoteLA.ini. In there you will need a CustomGameConfig line for each game class you want
to present for voting on (you should know this already). Here is an example:

CustomGameConfig[0]=(bEnabled=true,GameClass="Botpack.DeathMatchPlus",NewPrefix="DM",Mutators="medToggle302.medToggle")

For each game class, you specify just the medToggle as the only mutator, and then medToggle will
handle all the other stuff you set up within its ini.

Now of course you usually use MapVote to get a particular type of game play going associated with
a NewPrefix.

     -- NOTE!! - MapVote's "NewPrefix" and medToggle's "prefix" have nothing to do with each other --

The way to think of organizing it, is to move all the mutators and Actors that you want to start
either ALL THE TIME or all the time FOR A PARTICULAR GameClass or Map, and then move these into
medToggle. Then you keep the one mutator that distinguishes the play in mapvote. Let's say you
previously had this in mapvote:

CustomGameConfig[0]=(bEnabled=true,GameClass="Botpack.DeathMatchPlus",NewPrefix="iDM",Mutators="Botpack.InstaGibDM,KickIdlersV2b.KickIdlers,CCProtector420.CCProtector,Resurrector.Resurrector")

You could change it so this is in mapvote:

CustomGameConfig[0]=(bEnabled=true,GameClass="Botpack.DeathMatchPlus",NewPrefix="iDM",Mutators="Botpack.InstaGibDM,medToggle302.medToggle")

and this in medToggle:

mDefaults=(mutators="KickIdlersV2b.KickIdlers,CCProtector420.CCProtector,Resurrector.Resurrector")
One of the Scriveners.

Helen

#4
=====================================================================
======== How to have a map rotation with mixed game classes =========
=====================================================================

The idea here is that you could play a deathmatch game, then a CTF, then a domination, then maybe
back to CTF, then a TDM, etc, etc, all consecutively from a map rotation, without having to vote.
First we need this setting set to true:

bUseToggleMapList=true

We also MUST ensure that bMapVote is turned off:

bMapVote=false

You can also set the time it takes to load the next map. In this example it will take 5 seconds:

NextMapDelay=5


Ok, now we need to specify the maps in the rotation. In medToggle.ini, you would add a new section
and specify the maps like this (for example):

[medToggle302.ToggleMapList]
Maps[0]=TDM-ArcaneTemple.unr
Maps[1]=DOM-Gearbolt.unr
Maps[2]=EDM-Fetid.unr
Maps[3]=ECTF-Dreary.unr
Maps[4]=DM-Grinder.unr

(... up to 256 maps).

Okaaaaay, this is finally where the 'prefix' setting in the mGame list is finally going to be used.
Notice some of the map names above. TDM-ArcaneTemple.unr. EDM-Fetid.unr. These maps do not actually
exist. What we have done is swapped prefixes.

YOU NEED TO USE THE PREFIX OF THE MAP NAME TO DRIVE WHAT GAMECLASS YOU WANT USED.

Here are the steps per map.
- you chose a map you want to play, for example DM-ArcaneTemple
- Let's say you want the game play to be Team Death Match
- So you look in your mGame list, and find the GameClass='Botpack.TeamGamePlus'
- in this mGame line, you see that prefix="TDM"
- So you take "TDM" and swap it in as the prefix for the map name (in the ini file only! Not on the harddrive!)
- That is how DM-ArcaneTemple becomes TDM-ArcaneTemple.

Okay last requirement. Because you are going to tell medToggle you want it to run TDM-ArcaneTemple,
but that map doesn't really exist, it needs to know what the REAL prefix is. So you provide these:

prefixAlias[0]=(prefix="DM",alias="TDM,EDM")
prefixAlias[1]=(prefix="CTF",alias="ECTF")

... where 'prefix' is the REAL prefix, and 'alias' is of course the fake prefix, or aliased prefix.



Note: "prefix" values in the mGame list can appear only once (so they must be unique).

NOTE: When you first start up UT, it will not use a map from this list. After that first map is
over, then it will start using this list.
One of the Scriveners.

Helen

#5
---------------------------------------
     |UnrealTournament.ini |
---------------------------------------

You need to add this line to the [Engine.GameEngine] section of the UnrealTournament.ini:

ServerPackages=medToggle302


---------------------------------------
     | files |
---------------------------------------

Once you have finished setting up the medToggle.ini, then you will need to put these files into the System folder:

medToggle302.int
medToggle302.u
medToggle.ini


---------------------------------------
     | map vote |
---------------------------------------

If you are using in conjunction with mapvote, then you don't start it up. Rather mapvote will do that.


---------------------------------------
     | command line |
---------------------------------------

If your host allows you to edit the startup command line, here is an example that would include this mutator:

unrealtournament.exe DM-Codex?game=Botpack.DeathMatchPlus?MaxPlayers=16?mutator=medToggle302.medToggle -server

To specify more than one mutator, you just separate them with commas:

unrealtournament.exe DM-Codex?game=Botpack.DeathMatchPlus?MaxPlayers=16?mutator=CCProtector420.CCProtector,medToggle302.medToggle -server

Note: if you are using mapvote, you do not need to add it to the command line, since mapvote will start it up instead.
One of the Scriveners.

trav

I am trying to ge this to work to set up a map rotation, and it seems to be working except that once it hits the last map in the list, that last map keeps repeating and it never goes back to the beginning of the list.  Do you know what could be causing this?

Helen

Quote from: 575142551416230I am trying to ge this to work to set up a map rotation, and it seems to be working except that once it hits the last map in the list, that last map keeps repeating and it never goes back to the beginning of the list.  Do you know what could be causing this?

Two possibles:

A. You have mis-typed the last map in the list within the medToggle.ini. Or you have some extra text at the end of the list such that it thinks it is a mapname. In either of these cases, it fails to load the map, so it goes back to the last one.

B. If not the above, then there may be something wrong with the map itself. Like it can't find a required texture package.

Have a look at the unrealtournament.log file (or whatever you have called it, and search for the text "fail", it should tell you why it can't load the map.

You can post either your medToggle.ini or your log file if you need more help.
One of the Scriveners.

Helen

One of the Scriveners.

trav

#9
Quote from: 7E7B7276711F0
Quote from: 575142551416230I am trying to ge this to work to set up a map rotation, and it seems to be working except that once it hits the last map in the list, that last map keeps repeating and it never goes back to the beginning of the list.  Do you know what could be causing this?

Two possibles:

A. You have mis-typed the last map in the list within the medToggle.ini. Or you have some extra text at the end of the list such that it thinks it is a mapname. In either of these cases, it fails to load the map, so it goes back to the last one.

B. If not the above, then there may be something wrong with the map itself. Like it can't find a required texture package.

Have a look at the unrealtournament.log file (or whatever you have called it, and search for the text "fail", it should tell you why it can't load the map.

You can post either your medToggle.ini or your log file if you need more help.

I'll post my ini file when I get home tonight, as I'm at work right now.  Last night I messed with it some more, and it seems like if I set a map rotation up without using any aliases such as "iCTF" it works.  If I use a map with an alias such as iCTF then that map is continuously repeated.  It doesn't even have to be the last map in the rotation.  Let's say the first appearance of a map using an alias is 3rd out 5 maps in the rotation.  It will rotate through the maps until it hits the 3rd one, and then the 3rd will repeat continuously.  At least that is what appears to be happening while I've been messing around trying to fix the problem.

trav

Actually, I forgot that I can remote in to my server from work.  Here is the ini file and the server log.  I don't see any "fail" messages at al.  It just seems to hit the "iDM" prefix map and then keep spawning it over and over again without proceeding to the next map.

Helen

Thanks for posting your files.

So the problem is that it is a bug :(

A small one though, and I have corrected it this evening, but I would like to test a bit more before posting it (I'm tired right now, I don't trust myself). I will have it posted by Saturday at the latest.
One of the Scriveners.

trav

Cool, I look forward to trying it out.  Thanks for writing this...I am sick of voting for maps and just want to set up a rotation of different types of maps on my server.

Helen

Ok, I have updated the link in the very first post of this thread. When you grab it, of course you won't need the medToggle.ini that is within the package, you can keep your own. Just don't forget to update the medToggle301 bits in your ini to medToggle302.

Quote from: 141201165755600Cool, I look forward to trying it out.Thanks for writing this...I am sick of voting for maps and just want to set up a rotation of different types of maps on my server. 
It's nice to know someone is using version 3 other than myself :)
I've had 20 downloads of it, but no feedback.
One of the Scriveners.

Hermskii

Eventually, I will be going to this so I'm just glad that by the time I start using it, most of the issues will have been worked out already through BETA testing. I hate using BETA stuff.
~Peace~

Hermskii

trav

#15
OK, thanks!  I got the new version and the map rotation seems to be working right now.  However, something else weird is going on.  Now, at the end of the game when the announcer is doing his 10 second countdown, the game ends before he gets to zero. It usually ends when he is around the count of 6 seconds remaining.  I don't know how medToggle could be messing that up, but I have not changed anything else at all...

trav

Maybe it's not medToggle...I started the server not using medToggle and the game timer is still off.  Blah.  Any idea what could be causing the game to end before time is up?

trav

I rebooted my server and everything seems to be working just fine now.  I am not sure was causing the time to be off.  Everything is running great now!

Hermskii

I'm glad you got that worked out trav. I have never heard of UT doing that and would not have had any idea where to start to try to fix it. Let's hope it stays fixed!
~Peace~

Hermskii

Helen

Quote from: 5153525E5C5E493B0I'm glad you got that worked out trav. I have never heard of UT doing that and would not have had any idea where to start to try to fix it. Let's hope it stays fixed!
Ditto and strangeness!
One of the Scriveners.