Announcement

Collapse
No announcement yet.

Invasion

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Invasion

    Is there any way to set a player start so that it will only spawn monsters and not players ?

    I have googled for this but can't find an answer. Any help appreciated.

    #2
    no doubt, but im not really sure how. Try setting the playerstart teams, and making player spawn managers that allocate what comes out. But again, its just a guess.

    Comment


      #3
      fraghouse invasion found here is a gametype that does just that (with custom weapons and allows vehicles). you could map for that i suppose... or you could code.

      Playerspawnmanager only works in ASSAULT.

      Comment


        #4
        You can override the Invasion gametype class and in then put your own player start code in it. Thats what I did. I wrote my own game type class and wrote my own function to get the player starts that will be used to spawn the creatures from. You would need to tell the mappers to assign player starts different ids.

        Comment


          #5
          Originally posted by GuruKnight
          You can override the Invasion gametype class and in then put your own player start code in it. Thats what I did. I wrote my own game type class and wrote my own function to get the player starts that will be used to spawn the creatures from. You would need to tell the mappers to assign player starts different ids.
          If I did that could I include the modified code in the map file, basically could I make so that the user would download the map, run it as normal and not need to do anything unusual ?

          Comment


            #6
            indeed. you have to import it to package MyLevel and thats all there is to it

            Comment


              #7
              Hmm , i'm not much of a coder but I have been looking at the code for the invasion gametpye, in particular the addMonster function


              function AddMonster()
              {
              local NavigationPoint StartSpot;
              local Pawn NewMonster;
              local class<Monster> NewMonsterClass;

              StartSpot = FindPlayerStart(None,1);
              if ( StartSpot == None )
              return;

              NewMonsterClass = WaveMonsterClass[Rand(WaveNumClasses)];
              NewMonster = Spawn(NewMonsterClass,,,StartSpot.Location+(NewMon sterClass.Default.CollisionHeight - StartSpot.CollisionHeight) * vect(0,0,1),StartSpot.Rotation);
              if ( NewMonster == None )
              NewMonster = Spawn(FallBackMonster,,,StartSpot.Location+(class' EliteKrall'.Default.CollisionHeight - StartSpot.CollisionHeight) * vect(0,0,1),StartSpot.Rotation);
              if ( NewMonster != None )
              {
              WaveMonsters++;
              NumMonsters++;
              }
              }
              Why couldn't I just add a if statement that speciifes that the playerstart needs to have its team id set to 1 ?, would this work ?

              thanks for your help.

              Comment

              Working...
              X