Results 1 to 14 of 14
  1. #1

    Default CTFExtraMaps{vctfmap listfor CTF}

    CTFExtraMaps -// VCTF maps for CTF

    Contents
    1 x gametype; that combines the CTF and VCTF map list into one.
    3 x Mutators
    *Allow Translocator
    *Allow hoverboard
    * Remove all vehicles [except turrets]
    PC - Download Link;
    http://www.gamefront.com/files/21777...FExtraMaps.rar

    - This is just a response to this thread requests.....
    http://forums.epicgames.com/threads/...ns-(3-so-far-)

    NOTES:
    will update soon
    Last edited by TKBS; 05-31-2012 at 05:11 PM. Reason: updated

  2. #2
    MSgt. Shooter Person
    Join Date
    Jun 2009
    Posts
    429

    Default

    Quick feedback:

    • It needs proper readme with an installation section
    • GiveTranslocator can be done with the modifcation of a specific GameType property (like you did with the AllowHoverboard mutator)
      Code:
      class AllowTranslocator extends UTMutator;
      
      function InitMutator(string Options, out string ErrorMessage)
      {
          if ( UTGame(WorldInfo.Game) != None )
          {
              UTGame(WorldInfo.Game).bAllowTranslocator = True;
              UTGame(WorldInfo.Game).TranslocatorClass = class'UTWeap_Translocator_Content';
          }
          Super.InitMutator(Options, ErrorMessage);
      }
    • The threads name (and the gametype's name) is misleading as it implies that someone is able to translocate (with) the flag which is not the case.
    • The ini files needs to have correct values.
      GameSettingsClass=UTGameSettingsCTF
      GameSearchClass=UTGameSearchCTF

      In this case, the serverbrowser will list this game as CTF. The settings should be written to the CTF stats as well.



    -----------------

    The AllowTranslocator is useless. The gametype inherits the wrong class. It needs to be the content class (to work correctly).

    Code:
    class UTTLCTF extends UTCTFGame_Content;
    
    defaultproperties
    {
        bStartWithLockerWeaps=True
    
        Acronym="UTTLCTF"
    
        MapPrefixes.Empty
        MapPrefixes.Add("VCTF")
        MapPrefixes.Add("CTF")
    }
    The Translocator should be available in this gametype.

    ---------------

    Quote Originally Posted by TKBS View Post
    [B][U][COLOR=#FF0000]
    ** please can someone teach me to code "give inventory to players" without replacing them....
    You can check the following thread.
    http://forums.epicgames.com/threads/...1#post27732009

    Basically, it can be done via the ModifyPlayer function and giving the Pawn an inventory item (which includes weapons, powerups, pickups, ...).

    Code:
    class AddTranslocator extends UTMutator
        config(MyMutator);
    
    var config string WeaponString;
    
    function ModifyPlayer(Pawn P)
    {
        local class< Inventory > weapclass;
    
        PlayerPawn = UTPawn(P);
        if ( PlayerPawn == None )
        {
            return;
        }
    
        weapclass = class<Inventory>(DynamicLoadObject(WeaponString, class'Class'));;
    
        // Ensure we don't give duplicate items
        if (PlayerPawn.FindInventoryType( weapclass ) == None)
        {
            PlayerPawn.CreateInventory(weapclass);
        }
    
        Super.ModifyPlayer(P);
    }
    
    defaultproperties
    {
        WeaponString="UTGameContent.UTWeap_Translocator_Content"
    }

    ----------------

    As said in the quoted thread (VCTF to CTF converson), you can add a vehicle removement. Something like this.

    Code:
    class VCTFCTF extends UTCTFGame_Content;
    
    var bool bRemoveVehicles;
    
    // Parse options for this game...
    event InitGame( string Options, out string ErrorMessage )
    {
        local string MapName;
    
        super.InitGame(Options, ErrorMessage);
    
        MapName = WorldInfo.GetMapName(true);
        if ( Left(MapName, 4) ~= "VCTF" )
        {
            bRemoveVehicles = true;
        }
    }
    
    function bool CheckRelevance(Actor Other)
    {
        if (bRemoveVehicles && UTVehicleFactory(Other) !=none)
        {
            UTVehicleFactory(Other).VehicleClassPath = "";
            UTVehicleFactory(Other).VehicleClass = none;
            return false;
        }
        
        return super.CheckRelevance(Other);
    }
    
    defaultproperties
    {
        bStartWithLockerWeaps=True
    
        Acronym="VCTFCTF"
    
        MapPrefixes.Empty
        MapPrefixes.Add("VCTF")
        MapPrefixes.Add("CTF")
    }
    This mutator works fine. Every vehicle is removed from any VCTF map (kismet ActorFactory or similar is not implemented).

    ------------------------

    Your intention of creating a combined maplist for CTF can be done with just a INI file. I did not test if it works for clients machines.

    Code:
    [UTCombinedVCTFCTF UTUIDataProvider_GameModeInfo]
    FriendlyName=Combined VCTF & CTF
    Description=
    GameMode=UTGameContent.UTCTFGame_Content
    GameSettingsClass=UTGameSettingsCTF
    GameSearchClass=UTGameSearchCTF
    PreviewImageMarkup=<Images:UI_FrontEnd_Art.GameTypes.CaptureTheFlag>
    DefaultMap=CTF-Strident
    Prefixes=CTF|VCTF
    OptionSet=CTF|VCTF
    IconImage=UI_HUD.HUD.UI_HUD_BaseD
    IconU=230
    IconV=76
    IconUL=104
    IconVL=113
    ---------------------

    Hope all these tips, advices and code snippets are helpful.
    Last edited by RattleSN4K3; 05-31-2012 at 04:34 PM.

  3. #3

    Default

    i found this for remove all vehicles;
    http://forums.epicgames.com/threads/...k-All-Vehicles

    * - thread name = inconsequential, at least for now
    - i will try the modify player thing to get give working instead of replace- TY for link

    - as for the rest - unless its compiled it is probably no use to anyone.
    cheers

  4. #4
    MSgt. Shooter Person
    Join Date
    Jun 2009
    Posts
    429

    Default

    Quote Originally Posted by TKBS View Post
    i found this for remove all vehicles;
    http://forums.epicgames.com/threads/...k-All-Vehicles
    That mutator breaks bot pathing.

    Quote Originally Posted by TKBS View Post
    i found this for remove all vehicles;
    * - thread name = inconsequential, at least for now
    But not for the gametype's name. As i clicked on the link, i thought you have tried something with translocating/teleporting with the flag held by the player.

    Quote Originally Posted by TKBS View Post
    i found this for remove all vehicles;
    - i will try the modify player thing to get give working instead of replace- TY for link
    The stripped version for adding any inventory is on my previous post.

    Quote Originally Posted by TKBS View Post
    - as for the rest - unless its compiled it is probably no use to anyone.
    cheers
    i didn't want to hijack your mutator. The code was/is for you. All the posted code snippets can be compiled and are fully working.
    The ini file is somehow a compiled version .

  5. #5

    Default

    How about this; - [trying to think of a name is the hardest thing LOL]

    * TITLE: CTFExtraMaps ?
    *- A gametype that comines CTF & VCTF maps
    Code:
    class CTFExtraMaps extends UTCTFGame_Content;
    
    defaultproperties
    {
    	MapPrefixes[0]="VCTF"
    	MapPrefixes[1]="CTF"
    	Acronym="UTCTFEM"
    
    	bAllowHoverboard=False
    	bAllowTranslocator=True
    	bStartWithLockerWeaps=true
    }


    - Mutators included;
    - remove all vehicles [removes vh]
    Code:
    class RemoveAllvehicles extends UTMutator;
    
    function bool CheckReplacement(Actor Other)
    {
        if(UTVehicleFactory(Other) != none)
        {
            return ModifyVehicleFactory(UTVehicleFactory(Other));
        }
        else
        {
            return true;
        }
    }
    
    private function bool ModifyVehicleFactory(UTVehicleFactory vf)
    {
        switch(vf.VehicleClass)
        {
            case class'UTVehicle_ShieldedTurret':
            case class'UTVehicle_Turret':
            case class'UTVehicle_ShieldedTurret_Rocket':
            case class'UTVehicle_ShieldedTurret_Shock':
            case class'UTVehicle_ShieldedTurret_Stinger':
    
                break;
    
            default:
    
                // Replace whatever vehicle it was.
                vf.VehicleClassPath = "RemoveAllvehicles.UTVehicle_blank";
                vf.VehicleClass = class'UTVehicle_blank';
        }
    
        return true;
    }
    
    defaultproperties
    {
    }
    Code:
    class UTVehicle_blank extends UTVehicle;
    
    defaultproperties
    {
    }
    - CTFxInventory [hammer, enforcer, translocator]
    Code:
    class TEMP-DEFAULT-INVENTORY-NAME extends UTMutator;
     
    function InitMutator( string Options, out string ErrorMessage )
    {
        // Make sure the game does not hold a null reference
        if(UTGame(WorldInfo.Game) != none)
        {
            // New Default Weapon Array
            UTGame(WorldInfo.Game).DefaultInventory[0] = class'UTWeap_Translocator_Content';
    	UTGame(WorldInfo.Game).DefaultInventory[1] = class'UTWeap_Enforcer';
    	UTGame(WorldInfo.Game).DefaultInventory[2] = class'UTWeap_ImpactHammer';
        }
        super.InitMutator( options, ErrorMessage );
    }
     
    DefaultProperties
    {
    }
    *is that all we need?
    Just to clarify in my own head...
    -allow hoverboard [all gametypes]
    -allow translocator [all gametypes]
    -give new default inventory [translocator, hammer, enforcer]
    -new gametype to combine both map lists, - with the above defualt inventory and no hoverboard


    - i dont ever expect online support- and im not touching it either - its too much for me
    Last edited by TKBS; 05-31-2012 at 02:59 PM.

  6. #6
    MSgt. Shooter Person
    Join Date
    Jun 2009
    Posts
    429

    Default

    I won't split things into several mutators - just one gametype.

    Regarding the inventory mutator:
    You're overriding the first 3 defaultinventory items. Is that your intention?

    Try this instead
    Code:
    UTGame(WorldInfo.Game).DefaultInventory.AddItem(class'UTWeap_Translocator_Content');
    Regarding the vehicle mutator:
    It will not remove any Turret. Is that your Intention?

    --------------

    The default gametype UTCTFGame_Content comes with an Translocator.

  7. #7

    Default

    - i realize now that i don't need the default inventory override [so lets forget about that]- becuase like you said...
    "change the gametype to "xxx_Content"
    - and this works fine

    the game type and mutators will be separate because then ppl have choice.
    - gametype= combined map list [or just your ini- either is fine]
    - mutators = remove vehicles - But not turrets; turrets are in ctf maps
    - allow hoverboard - yes or no
    allow translocator - yes or no.

    - then if ppl want a translocator in warfare they can- they can choose to add or remove.- just like the UTMutators_nohoverboard// no orbs// no translocator etc etc

    Many Thanks for the help - great result for an hours work i think- ill post it later or tomoro

  8. #8
    MSgt. Shooter Person
    Join Date
    Jun 2009
    Posts
    429

    Default

    Quote Originally Posted by TKBS View Post
    - i realize now that i don't need the default inventory override [so lets forget about that]- becuase like you said...
    - then if ppl want a translocator in warfare they can- they can choose to add or remove.- just like the UTMutators_nohoverboard// no orbs// no translocator etc etc
    It won't work well for Warfare or VCTF as they uses the ToggleTranslocator command for the Hoverboard.

    People may have to check the BattleTRANS mutator which will add a perfect replacement for the Hoverboard/Translocator conflict.
    http://dvgaming.com/ut3mods.php#trans

  9. #9

    Default

    - Regarding warfare -
    - "Q" Problem could be fixed with changes to the users UTInput [I think?]-
    - but that was just an example- i could have said "Deathmatch", either way it works for what i have.
    - so no worries about that issue- just dont use it for warfare, or use a double tap .lol

    * BUT you have got me thinking about warfare...

    * swapping the UTOnslaughtFlagBase_Content for the CTFFlag base. - is that possible?

    -what do i need to look at ? -[//not proper code, just thinking what i might need]-
    *Local UTOnslaughtFlagBase_Content
    * maybe an integer
    * homebase [i] & HomeBase[i+1]
    Code:
    if .. i=i 
    if .. i=>i
    ?
    * i say this becuase; there is no red and blue objects in warfare-not liek the flag base.
    'UTGameContent.UTCTFRedFlag'
    * would i need to get team number?- get nearest home base.
    - then if team number = 0 and homebase = i, set this to red flag?

    * i cant swap the core- for obvious reasons like war-confrontation [lol be impossible to score]
    - so i can only swap a base/ where the orb spawns; or maybe a team start.- but that would cause issues.
    - it looks like the engine - checks player team number/ then checks its nearest Homebase- then assigns the Orb colour to that number.
    - tbh - i don't really care if this goes any further; but i would like to know if it is possible to implement the warfare map list aswel- by means of "relative ease"
    Thanks RattleSN4K3
    Last edited by TKBS; 06-01-2012 at 10:05 AM.

  10. #10
    MSgt. Shooter Person
    Join Date
    Jun 2009
    Posts
    429

    Default

    Check the official Orb fix Mutator which does the same - replacing the Onslaught flag base.
    http://forums.epicgames.com/threads/...rb-Fix-Mutator

    I think you just need to set DefenderTeamIndex in order to get things working. Other stuff has a visual effect. The OnslaughtFlagBast is not always present (Sinkhole).

    If you disable the OnslaughtFlagBase (UTMutator_NoOrbs will help), and spawning a UTCTFBlueFlagBase or UTCTFRedFlagBase (depending what OnslaughtFlagBase you're trying to replace) would be find. The CTF FlagBase will register itself to a UTCTFGame. Set the defenderDefenderTeamIndex manually.

  11. #11

    Default

    thanks for the information.

    - but...i could not get it working.

    1. The team spawn points get completely messed up; On floodgate i spawn in a random position and cannot even find the other players.

    2. i do not understand how to replace a 2 object references for 1 object -surely, that's impossible right?
    - i.e. redflag can be swapped for a onslaughtflagbase...[maybe] - but you cant swap say
    - "i want to swap a red flag for the onslaught base- and a blue for for the onslaught base."
    - there is only one onslaught base.

    - it would be really nice if it wasnt just me and you trying to do these things, because
    - this isnt even for me and i have no idea what i am doing....

    - i have so many other things i want to work so i might try something else. constant failing is pissing me off
    Cheers

    p.s {@ all}
    - the aim of this was for the vctf+ ctf map list- so it is not a problem that i can't get WAR working.
    -if anybody wants the source they can have it- try not to burden rattle with it though
    Last edited by TKBS; 06-02-2012 at 11:53 AM.

  12. #12
    Redeemer
    Join Date
    Apr 2011
    Location
    Metro Manila, Philippines, Southeast Asia
    Posts
    1,449
    Last edited by Private Tux; 08-09-2012 at 10:40 AM.

  13. #13
    MSgt. Shooter Person
    Join Date
    Sep 2009
    Location
    Arlington, TX
    Posts
    372

    Default

    I was working on replacing cores with ctfflagbases last month. With the following script, I had flag bases spawning in place of power cores in a CTF gametype extension, and I could cap them on either team, but I kept getting an error if I tried to spawn bots. Some of this was copy pasted from Nico De Vries objective removal section of BTA/BFTA. Some of these game objectives do not actually have a state'disabled' but that only creates an error in the logs, afaik. The NUTCTF flag bases were just a movable subclass, I forget if subclassing the flag bases was really necessary for spawn-ability.
    Code:
    class NUTCTFGame extends UTCTFGame;
    
    function PostBeginPlay()
    {
    	local int i;
    	local UTGameObjective GO;
    	local UTOnslaughtNodeTeleporter ONSTEL;
    	local NUTCTFBlueFlagBase CTFBLU;
    	local NUTCTFRedFlagBase CTFRED;
    	local int DEFENDERTEAM;
    	local bool bNextSpawnTheOtherOne, bThenDone;
    	
    	foreach AllActors(class'UTOnslaughtNodeTeleporter',ONSTEL)
    	{
    		ONSTEL.SetHidden(true);
    		ONSTEL.SetCollision(false);
    	}
        foreach AllActors(class'UTGameObjective', GO)
    	{
    	  if (UTOnslaughtPowernode(GO) != none)
    	  { // Remove powernode
    	  	GO.bIsActive = false;
      	    GO.bIsDisabled = true;
            GO.DefenderTeamIndex = 255;
    	    UTOnslaughtPowernode(GO).bStandalone = false;
    	    UTOnslaughtPowernode(GO).GotoState('DisabledNode');
    	  }
    	  else if (UTOnslaughtSpecialObjective(GO) != none)
    	  { // Remove other things
            if (UTWarfareBarricade(GO) != none)
    		{
    			GO.bIsActive = false;
    			GO.bIsDisabled = true;
    			UTWarfareBarricade(GO).SetDisabled(true);
    	    }
    		else
    		{
    			GO.bIsActive = false;
    			GO.bIsDisabled = true;
    			GO.DefenderTeamIndex = 255;
    			UTOnslaughtSpecialObjective(GO).GotoState('DisabledNode');
    	    }
    	  } 
    	  else if (UTOnslaughtNodeEnhancement(GO) != none)
    	  { // Remove orbs
    			if (UTOnslaughtFlagBase(GO) != none)
    			{
    				UTOnslaughtFlagBase(GO).HideOrb();
    				UTOnslaughtFlagBase(GO).DisableOrbs();  
    			}
    			GO.bIsActive = false;
    			GO.bIsDisabled = true;
    			GO.DefenderTeamIndex = 255;
    			UTOnslaughtNodeEnhancement(GO).GotoState('DisabledNode');
    	  }
    	  else if (UTOnslaughtPowerCore(GO) != none)
    	  { // Remove powercore
    			DEFENDERTEAM = GO.DefenderTeamIndex;
    			loginternal ("defenderteam=" @ DEFENDERTEAM);
    			if (DEFENDERTEAM == 2)
    			{
    				if (bThenDone != True) //just in case there is an extra node or something, call quitsies.
    				{
    					if (bNextSpawnTheOtherOne == True)
    					{		
    						CTFBLU = Spawn(class'NUTCTFBlueFlagBase',,,GO.Location,GO.Rotation );  
    						RegisterFlag(CTFBLU, 1);
    						loginternal("spawned blue flag at:" @ GO.Location);
    						bThenDone = True;
    					}
    					if (bNextSpawnTheOtherOne != True)
    					{
    						CTFRED = Spawn(class'NUTCTFREDFlagBase',,,GO.Location,GO.Rotation );
    						RegisterFlag(CTFRED, 0);
    						loginternal("spawned red flag at:" @ GO.Location);
    						bNextSpawnTheOtherOne = True;
    					}
    				}
    				GO.bIsActive = false;
    				GO.DefenderTeamIndex = 255 ;
    				GO.bIsDisabled = true;
    				UTOnslaughtPowerCore(GO).bStandalone = false;
    				UTOnslaughtPowerCore(GO).GotoState('DisabledNode');
    				if (bThenDone == True)
    				{
    					for ( i=0; i<2; i++ )   
    					{
    						Flags[i].Team = Teams[i];
    						Teams[i].HomeBase = Flags[i].HomeBase;
    						Flags[i].Team.TeamFlag = Flags[i];
    						UTCTFTeamAI(Teams[i].AI).FriendlyFlag = Flags[i];
    						UTCTFTeamAI(Teams[i].AI).EnemyFlag = Flags[1-i];
    					}
    				}
    			}
    	  }
        }
    
    	Super(UTTeamGame).PostBeginPlay();
    }
    I haven't revisited this yet to research the bot error, just wanted to share, if case you are still working on this.
    If you can figure out how to set the ai... from there, it would seem a matter of setting up the team spawns to a proximity of each flagbase, dividing the map, or even have them server configurable (could probably easily tack on reverse ctf, and/or "chain" ctf if you reached that point.)
    Narayana*SIG*

  14. #14

    Default

    I only just noticed this post, sorry i missed it.

    -First; thank you for offering source code and for taking an interest.

    - 2nd; this warfare inclusion needs some serious thought; which i have taken, and concluded it is not feasible, or worthwhile.

    -Considering the existing Stock UT3 WAR maps; layout and Core positioning, i have concluded that any vctf conversion would not be sufficiently addressed via code alone.
    -- i am reluctant to duplicate epic content [by which i mean the size/ doubling maps for the purpose of new gametypes]

    * i see no realistic alternative [than the aforementioned duplicating] to provided the WAR content as VCTF and do not considering worth doing, simply; it would not be fun to play, they would not work like this.
    * downtown would not work [for example] etc
    * marketdistrict/ sink hole [has already been done] etc
    heres a link to those sortve maps;
    http://www.iamgaming.com/forum/forum...verted-to-vctf



    Many Thanks for your interest though
    Last edited by TKBS; 07-24-2012 at 08:44 PM.


 

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Copyright ©2009-2011 Epic Games, Inc. All Rights Reserved.
Digital Point modules: Sphinx-based search vBulletin skin by CompletevB.com.