UnrealScript Tips
UScript Tutorials
« BackExecuting code when a player joins the server
Using Tick() and Level.Game.CurrentID (Thanks to OwYeaW)
This method checks for new players on every tick. Level.Game.CurrentID is a counter incremented when a new player joins. It's not decremented when a player leaves, however, so you can use it to check if it has been incremented since the last tick.
var int CurrentID; function tick(float DeltaTime) { CheckForNewPlayer(); Super.tick(DeltaTime); } function CheckForNewPlayer() { local Pawn P; if(Level.Game.CurrentID > CurrentID) { for(P = Level.PawnList; P != None; P = P.NextPawn) if(P.PlayerReplicationInfo.PlayerID == CurrentID) break; CurrentID++; if(PlayerPawn(P) != None && P.bIsPlayer) { //P.EXECUTE STUFF HERE } } }