Announcement

Collapse
No announcement yet.

Gladiators of the arena 1 Survival

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

    #31
    GOTA day nigth system working for multiplayer aswell



    Last edited by Neongho; 11-19-2017, 02:38 PM.
    Some cool unreal projects you may like!


    Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

    Download the demo Download the demo
    external link Dropbox DropBox

    Become a c++ Professional now C++ Networking Tutorial

    Comment


      #32
      Nice, are you using matinee or scripts? I had to switch to script because the updatecomponent in each tick ruin the framerate.
      Provisional blog: http://cobaltudk.blogspot.com.es/
      Videos: https://www.youtube.com/user/cobaltudk
      Facebook: https://www.facebook.com/babylonprojectgame/

      Comment


        #33
        Lemme post the code

        Code:
         
        //-----------------------------------------------------------
        //By Neongho
        //Description applies day night ingame
        //credits to tutorial of day nihgth system, of UDK " write name when you has time"
        //REWRITE THIS WITH ONLY DAY AND NIGTH
        //-----------------------------------------------------------
        class GOTAMP2DayNigthDominantLight extends DominantDirectionalLightMovable
        ClassGroup(Lights,DirectionalLights)
        placeable;
        
        var () float DayNightFreq;
        var () int DayNightStep;
        var () float Correction;
        
        
        
        //for rotation purposes
        var rotator R;
        var rotator SunRotation;
        
        //Time vars
        var int Days;
        var int Hours;
        var int Minutes;
        
        //assets to modify for lighting
        var() InterpActor SkyActor;
        var() SkyLightToggleable SkyLight;
        var() exponentialheightFog FogAsset;
        
        //Basic colors of the MIC of the Sky
        var() const linearColor HorizonColor[2], ZenithColor[2], SunColor[2], RimColor[2];
        
        //other miscellenous values of the MIC
        var() const float skyBrightness[2], CloudOpacity[2], CloudDarkness[2], CloudBrightness[2], Desaturation[2], RimBrightness[2];
        
        //Directional, fog , skylight , directional light colours
        var() const color DirectionalLightColor[2], FogOppositeColor[2], FogInscatteringColor[2], SkyLightColor[2], StarColor[2];
        
        
        //Brigthnesses and scales of the 6 stages for SKY LIGHT AND DIRECTIONAL LIght
        var() const float DirectionalLightBrigthnesses[2], SkyLightBrightnesses[2], SkyLightLowerBrightnesses[2];
        
        //ShaftsVariablesvariables
        var() const float BloomScale[5], RadialBlurrPercent[2], OcclusionBloomDarkness[2], OcculusionDepthRange[2];
        var() const color BloomTint[5];
        
        //Fog variables
        var() const float Density[2], FogMaxFallOf[2], FogAngle[2], FogOppositeBrightness[2], FogInscatteringBrightness[2];
        
        var() const int StagesStarts[2], StagesEnds[2];
        
        var() bool bIsDay;
        
        //Dyamic variables**********************
        //Horizon zenith sun
        var linearColor ActualColourHorizon;
        var linearColor ActualColourZenith;
        var linearColor ActualColourSun;
        var linearColor ActualColourCloudSide;
        var linearColor ActualStarsColor;
        
        //float variables from the day night system
        var float ActualCloudBrightness;
        var float ActualCloudOpacity;
        var float ActualDesaturation;
        var float ActualCloudDarkness;
        var float ActualRimBrightness;
        var float ActualSkyBrightness;
        
        
        
        
        Var color ActualDirColor;
        var float ActualDirColorX, ActualDirColorY, ActualDirColorZ;
        Var color ActualFogColor;
        var float ActualFogColorX, ActualFogColorY, ActualFogColorZ;
        Var color ActualFogInscatteringColor;
        var float ActualFogInscatteringColorX, ActualFogInscatteringColorY, ActualFogInscatteringColorZ;
        Var color ActualSkyLightColor;
        var float ActualSkyLightColorX, ActualSkyLightColorY, ActualSkyLightColorZ;
        Var color ActualSkyLowLightColor;
        var float ActualSkyLowLightColorX, ActualSkyLowLightColorY, ActualSkyLowLightColorZ;
        
        //Fog properties
        var float ActualFogInscaBrighness;
        var float ActualFogOppositeBrighness;
        var float ActualFogDensity;
        var float ActualFogMaxFellOff;
        var float ActualFogAngle;
        
        
        //Shaft Bloom properties
        var float ActualBloomScale;
        var color ActualBloomColor;
        var float ActualBloomColorX, ActualBloomColorY, ActualBloomColorZ;
        var float ActualRadialBlurrPercent;
        var float ActualMaskOcclusion;
        var float ActualOcclusionBloomDarkness;
        var float ActualOcculusionDepthRange;
        var float ActualstarBrightness;
        
        //Lighting vars " Sky light and DomDir"
        var  float  SLBrigthness;
        var  float  SLLBrigthness;
        var  float  DLBrigthness;
        
        //material instance information
        var float TimeStamp;
        var bool MatInstanced;
        
        var int ActualStage; //0 Mroning Hori //1 Morning
        
        
        replication
        {
        if(bNetDirty)
        ActualStage;
        
        }
        
        
        simulated event PostBeginPlay()
        {
            local LinearColor OutVector;
            local float OutFloat;
         local MaterialInstance CurrentMaterial;
        
              //Instance the mateiral
              if (!MatInstanced){
              CurrentMaterial=SkyActor.StaticMeshComponent.CreateAndSetMaterialInstanceConstant(0);
              MatInstanced=true;
           }
              else
              CurrentMaterial=MaterialInstance(SkyActor.StaticMeshComponent.GetMaterial(0));
        
        
        
         super.PostBeginPlay();
        
        
        
        
        
        
        
        
            //GOTAGameInfo(WorldInfo.game).TheDayNightLight = self;
        
         //Dyamic variables**********************
        //Horizon zenith sun
        CurrentMaterial.GetVectorParameterValue('HorizonColor',OutVector);
        ActualColourHorizon = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('ZenithColor',OutVector);
        ActualColourZenith = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('Sun',OutVector);
        ActualColourSun = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('RimColor',OutVector);
        ActualColourCloudSide = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('StarColor', OutVector);
        ActualStarsColor = OutVector;
        
        
        
        //float variables from the day night system
        CurrentMaterial.GetScalarParameterValue('CloudBrightness', OutFloat);
        ActualCloudBrightness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('CloudOpacity', OutFloat);
        ActualCloudOpacity = OutFloat;
        CurrentMaterial.GetScalarParameterValue('Desaturation', OutFloat);
        ActualDesaturation = OutFloat;
        CurrentMaterial.GetScalarParameterValue('CloudDarkness', OutFloat);
        ActualCloudDarkness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('RimBrightness', OutFloat);
        ActualRimBrightness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('SkyBrightness', OutFloat);
        ActualSkyBrightness = OutFloat;
        
        
        
        
        
        
           //Fog asset
           ActualFogInscatteringColor = FogAsset.Component.LightInscatteringColor;
           ActualFogInscatteringColorX = FogAsset.Component.LightInscatteringColor.R; ActualFogInscatteringColorY = FogAsset.Component.LightInscatteringColor.G; ActualFogInscatteringColorZ = FogAsset.Component.LightInscatteringColor.B;
           ActualFogColor = FogAsset.Component.OppositeLightColor;
           ActualFogColorX = ActualFogColor.R; ActualFogColorY = ActualFogColor.G; ActualFogColorZ = ActualFogColor.B;
        
        
        
        
           //Non color fog properties
           ActualFogInscaBrighness = FogAsset.Component.LightInscatteringBrightness;
           ActualFogOppositeBrighness = FogAsset.Component.OppositeLightBrightness;
           ActualFogDensity = FogAsset.Component.FogDensity;
           ActualFogMaxFellOff = FogAsset.Component.FogHeightFalloff;
           ActualFogAngle = FogAsset.Component.LightTerminatorAngle;
        
           ActualBloomScale = LightComponent.BloomScalE;
           ActualOcculusionDepthRange = LightComponent.OcclusionDepthRange;
           ActualBloomColor = LightComponent.BloomTint;
           ActualRadialBlurrPercent = LightComponent.RadialBlurPercent;
           ActualOcclusionBloomDarkness = LightComponent.OcclusionMaskDarkness;
        
        ActualDirColor = LightComponent.LightColor;
        
        ActualDirColorX = ActualDirColor.R;
        ActualDirColorY = ActualDirColor.G;
        ActualDirColorZ = ActualDirColor.B;
        
        ActualSkyLightColor = SkyLight.LightComponent.LightColor;
        
        ActualSkyLightColorX =  ActualSkyLightColor.R;
        ActualSkyLightColorY =  ActualSkyLightColor.G;
        ActualSkyLightColorZ =  ActualSkyLightColor.B;
        
        
        
        SLLBrigthness = SkyLightComponent ( SkyLight.LightComponent ).LowerBrightness;
        DLBrigthness = LightComponent.Brightness;
        SLBrigthness = SkyLight.LightComponent.Brightness;
        
        
        
        /*
        //Shaft Bloom properties
        ActualBloomScale;
        ActualBloomColor;
        ActualBloomColorX, ActualBloomColorY, ActualBloomColorZ;
        ActualRadialBlurrPercent;
        ActualMaskOcclusion;
        ActualOcclusionBloomDarkness;
        ActualOcculusionDepthRange;
        ActualstarBrightness;
         */
        
          //TimeStamp = WorldInfo.TimeSeconds;
           SetTimer(DayNightFreq, true, 'DayNightTimer');
           SetTimer(1, true, 'DisableAllLigthComponentsForPawns');
        
        
        
        
        }
        
        
        
        simulated function DayNightTimer()
        {
         local MaterialInstance CurrentMaterial;
            //local float deltaTime;
        
        
        
        
                //worldInfo.game.broadcast(Self, Hours);
             //`log("FROM GOTAMP2DayNigthDominantLigth "@Hours@"Rotation "@Rotation@" The stage is "@ActualStage@" the DomLigth Brigthness is "@self.LightComponent.Brightness@"the actual Dom brigthness is "@DLBrigthness);  //Extremely laggy
            //DeltaTime=WorldInfo.TimeSeconds-TimeStamp;
         TimeStamp = WorldInfo.TimeSeconds;
        
         R=self.rotation;
         R.Pitch += DayNightStep;
         SunRotation=R;
         if (Role == Role_Authority){
          SunRotation=R;
         }
        
              //Instance the mateiral
              if (!MatInstanced){
              CurrentMaterial=SkyActor.StaticMeshComponent.CreateAndSetMaterialInstanceConstant(0);
              MatInstanced=true;
           }
              else
              CurrentMaterial=MaterialInstance(SkyActor.StaticMeshComponent.GetMaterial(0));
        
         Days = (Rotation.Pitch + Correction*(65536/24)) / 65536 ;
         Hours = ( ( (Rotation.Pitch - (Days*65536) ) / 65536.) * 24.)+Correction ;
         Minutes = ( ( (Rotation.Pitch+(Correction*(65536/24)) - (Days*65536) ) ) - (Hours*(65536/24) ) ) / 45.51 ;
        
           if(ROLE == ROLE_Authority)
           {
            GOTAMP2GameInfo( worldinfo.game ).Days = Days;
            GOTAMP2GameInfo( worldinfo.game ).Hours = Hours;
            GOTAMP2GameInfo( worldinfo.game ).Minutes = Minutes;
           }
        
        
        
        
           //Change colours change environment***********************
        
           //Lights interpolating
           SLBrigthness = lerp(SLBrigthness, SkyLightBrightnesses[ActualStage] , 0.0005);
           SLLBrigthness = lerp(SLLBrigthness, SkyLightLowerBrightnesses[ActualStage] , 0.005);
           DLBrigthness = lerp(DLBrigthness, DirectionalLightBrigthnesses[ActualStage] , 0.0005);
        
           //Directional light color and brightness
           ActualDirColorX = Lerp(ActualDirColorX, DirectionalLightColor[ActualStage].R, 0.005);   ActualDirColorY = Lerp(ActualDirColorY, DirectionalLightColor[ActualStage].G, 0.005);  ActualDirColorZ = Lerp(ActualDirColorZ, DirectionalLightColor[ActualStage].B, 0.005);
           ActualDirColor.R = ActualDirColorX;  ActualDirColor.G = ActualDirColorY; ActualDirColor.B = ActualDirColorZ;
           ActualSkyLightColorX = Lerp(ActualSkyLightColorX, SkyLightColor[ActualStage].R, 0.005);   ActualSkyLightColorY = Lerp(ActualSkyLightColorY, SkyLightColor[ActualStage].G, 0.005);  ActualSkyLightColorZ = Lerp(ActualSkyLightColorZ, SkyLightColor[ActualStage].B, 0.005);
           ActualSkyLightColor.R = ActualSkyLightColorX;  ActualSkyLightColor.G = ActualSkyLightColorY;      ActualSkyLightColor.B = ActualSkyLightColorZ;
           ActualFogColorX = Lerp(ActualFogColorX, FogOppositeColor[ActualStage].R, 0.002) ;   ActualFogColorY = Lerp(ActualFogColorY, FogOppositeColor[ActualStage].G, 0.002);  ActualFogColorZ = Lerp(ActualFogColorZ, FogOppositeColor[ActualStage].B, 0.002);
           ActualFogColor.R = ActualFogColorX;   ActualFogColor.G = ActualFogColorY; ActualFogColor.B = ActualFogColorZ;
           ActualFogInscatteringColorX = Lerp(ActualFogInscatteringColorX, FogInscatteringColor[ActualStage].R, 0.002) ;   ActualFogInscatteringColorY = Lerp(ActualFogInscatteringColorY, FogInscatteringColor[ActualStage].G, 0.002);  ActualFogInscatteringColorZ = Lerp(ActualFogInscatteringColorZ, FogInscatteringColor[ActualStage].B, 0.002);
           ActualFogInscatteringColor.R = ActualFogInscatteringColorX;  ActualFogInscatteringColor.G = ActualFogInscatteringColorY;  ActualFogInscatteringColor.B = ActualFogInscatteringColorZ;
        
        
           //Interpolations /////////////////////////////////////////////////
        
           ActualColourZenith.R = lerp(ActualColourZenith.R, ZenithColor[ActualStage].R ,0.003);     ActualColourZenith.B = lerp(ActualColourZenith.B, ZenithColor[ActualStage].B,0.003);     ActualColourZenith.G = lerp(ActualColourZenith.G, ZenithColor[ActualStage].G, 0.003);
           ActualColourHorizon.R = lerp(ActualColourHorizon.R, HorizonColor[ActualStage].R ,0.003);     ActualColourHorizon.B = lerp(ActualColourHorizon.B, HorizonColor[ActualStage].B, 0.003);     ActualColourHorizon.G = lerp(ActualColourHorizon.G, HorizonColor[ActualStage].G, 0.003);
           ActualColourCloudSide.R = lerp(ActualColourCloudSide.R, RimColor[ActualStage].R ,0.01);     ActualColourCloudSide.B = lerp(ActualColourCloudSide.B, RimColor[ActualStage].B,0.01);     ActualColourCloudSide.G = lerp(ActualColourCloudSide.G, RimColor[ActualStage].G, 0.01);  ActualColourCloudSide.A = lerp(ActualColourCloudSide.A, RimColor[ActualStage].A, 0.1);
           ActualColourSun.R = lerp(ActualColoursun.R, SunColor[ActualStage].R ,0.01);     ActualColourSun.B = lerp(ActualColoursun.B, SunColor[ActualStage].B, 0.01);     ActualColourSun.G = lerp(ActualColourSun.G, SunColor[ActualStage].G, 0.01);   ActualColourSun.A = lerp(ActualColourSun.A, SunColor[ActualStage].A, 0.1);
           ActualStarsColor.R = lerp(ActualStarsColor.R, StarColor[ActualStage].R ,0.01); ActualStarsColor.B = lerp(ActualStarsColor.B, StarColor[ActualStage].B ,0.01);   ActualStarsColor.G = lerp(ActualStarsColor.G, StarColor[ActualStage].G ,0.01);
        
        
        
        
           ActualSkyBrightness = lerp(ActualSkyBrightness, skyBrightness[ActualStage] , 0.0025);
           ActualRimBrightness = lerp(ActualRimBrightness, RimBrightness[ActualStage] , 0.0025);
           ActualCloudDarkness = lerp(ActualCloudDarkness, CloudDarkness[ActualStage] , 0.0025);
           ActualDesaturation = lerp(ActualDesaturation, Desaturation[ActualStage] , 0.0025);
           ActualCloudOpacity = lerp(ActualCloudOpacity, CloudOpacity[ActualStage] , 0.0025);
           ActualCloudBrightness = lerp(ActualCloudBrightness, CloudBrightness[ActualStage] , 0.0025);
        
        
        
            ActualFogInscaBrighness = Lerp(ActualFogInscaBrighness, FogInscatteringBrightness[ActualStage], 0.002) ;
            ActualFogOppositeBrighness = Lerp(ActualFogOppositeBrighness, FogOppositeBrightness[ActualStage] , 0.002) ;  //Opposite fog bright...
            ActualFogDensity = Lerp(ActualFogDensity, Density[ActualStage], 0.001) ;
            ActualFogMaxFellOff = Lerp(ActualFogMaxFellOff, FogMaxFallOf[ActualStage], 0.004) ;
            ActualFogAngle = Lerp(ActualFogAngle ,FogAngle[ActualStage] , 0.05) ;
        
            ActualBloomScale = Lerp(ActualBloomScale, BloomScale[ActualStage], 0.005);
            ActualBloomColorX = Lerp(ActualBloomColorX, BloomTint[ActualStage].R, 0.002) ; ActualBloomColorY = Lerp(ActualBloomColorY, BloomTint[ActualStage].G, 0.002); ActualBloomColorZ = Lerp(ActualBloomColorZ, BloomTint[ActualStage].B, 0.002);
            ActualBloomColor.R = ActualBloomColorX; ActualBloomColor.G = ActualBloomColorY; ActualBloomColor.B = ActualBloomColorZ;
            ActualRadialBlurrPercent =  Lerp(ActualRadialBlurrPercent, RadialBlurrPercent[ActualStage], 0.005);
            ActualMaskOcclusion = Lerp(ActualMaskOcclusion, RadialBlurrPercent[ActualStage], 0.005);
            ActualOcclusionBloomDarkness = Lerp(ActualOcclusionBloomDarkness, OcclusionBloomDarkness[ActualStage], 0.005);
            ActualOcculusionDepthRange = Lerp(ActualOcculusionDepthRange, OcculusionDepthRange[ActualStage], 0.005);
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
           //Setters ////////////////////////////////////////////***********
        
           //4 colours of sky
           CurrentMaterial.SetVectorParameterValue('ZenithColor',ActualColourZenith);
           CurrentMaterial.SetVectorParameterValue('HorizonColor',ActualColourHorizon);
           CurrentMaterial.SetVectorParameterValue('Sun',ActualColourSun);
           CurrentMaterial.SetVectorParameterValue('RimColor',ActualColourCloudSide);
           CurrentMaterial.SetVectorParameterValue('StarColor',ActualStarsColor);
        
        
        
           CurrentMaterial.SetScalarParameterValue('CloudBrightness',ActualCloudBrightness);
           CurrentMaterial.SetScalarParameterValue('CloudOpacity',ActualCloudOpacity);
           CurrentMaterial.SetScalarParameterValue('Desaturation',ActualDesaturation);
           CurrentMaterial.SetScalarParameterValue('CloudDarkness',ActualCloudDarkness);
           CurrentMaterial.SetScalarParameterValue('RimBrightness',ActualRimBrightness);
           CurrentMaterial.SetScalarParameterValue('SkyBrightness',ActualSkyBrightness);
        
           LightComponent.SetLightProperties(DLBrigthness, ActualDirColor );
           SkyLightComponent ( SkyLight.LightComponent ).LowerBrightness = SLLBrigthness;  //So no need for to change engine classes
           SkyLight.LightComponent.SetLightProperties(SLBrigthness, ActualSkyLightColor);
           //SkyLight.LightComponent.ForceUpdate(false);
           //SkyLight.LightComponent.UpdateColorAndBrightness();
           //SkyLight.LightComponent.SetEnabled(false);
        
        
        
        
        
           //Shaft updating
           //LightComponent.BloomScale = ActualBloomScale;
           //LightComponent.OcclusionDepthRange = ActualOcculusionDepthRange;
           //LightComponent.BloomTint = ActualBloomColor;
           //LightComponent.RadialBlurPercent = ActualRadialBlurrPercent;
           //LightComponent.OcclusionMaskDarkness = ActualOcclusionBloomDarkness;
        
           //LightComponent.UpdateLightShaftParameters();
           LightComponent.UpdateColorAndBrightness();
        
           //Fog asset
           FogAsset.Component.LightInscatteringColor = ActualFogInscatteringColor;
           FogAsset.Component.OppositeLightColor = ActualFogColor;
           //Non color fog properties
           //FogAsset.Component.LightInscatteringBrightness = ActualFogInscaBrighness;
           //FogAsset.Component.OppositeLightBrightness = ActualFogOppositeBrighness;
           //FogAsset.Component.FogDensity = ActualFogDensity;
           //FogAsset.Component.FogHeightFalloff = ActualFogMaxFellOff;
           //FogAsset.Component.LightTerminatorAngle = ActualFogAngle;
        
           FogAsset.Component.ForceUpdate(false);
        
         self.SetRotation(R);
        
             //worldInfO.GAME.BROADCAST(self,"FROM Day nigth skyLigth BRIGTHNESS IS is "@SLBrigthness@" the sky light lower is "@SLLBrigthness@" DL brigthness is  "@DLBrigthness);
        
           //Setters ////////////////////////////////////////////***********
        
        
        
        
        
        
                               //0 day 1 is nigth
           //Nigth To day transition
           if(Hours >= StagesStarts[0] && Hours < StagesEnds[0] )
           {
        
           //commented because it doesent do much
            /*if(!SkyLight.LightComponent.bEnabled && DLBrigthness > 0.1)
             {
            //LightComponent.setEnabled(true);
            SkyLight.LightComponent.SetEnabled(true);
            WorldInfo.game.broadcast(Self,"FROM DayNight turning light on");
             }    */
        
        
             if(Role == ROLE_Authority)
             {
             if(!bIsDay)
             {
             ActualStage = 0;
             bIsDay = true;
             }
             }
           }
        
        
           //Day to nigth transition
           if(Hours >= StagesStarts[1] && Hours < StagesEnds[1] )
           {
        
             //worldInfo.game.Broadcast(self, "FROM DayNigth is Skylight turned on "@SkyLight.LightComponent.bEnabled@"Whats the dl brigthness"@DLBrigthness);
        
        
        
        
        
           //SkyLight.LightComponent.SetEnabled(true);
        
              /*
             if(SkyLight.LightComponent.bEnabled && DLBrigthness < 4)
             {
             WorldInfo.game.broadcast(Self,"FROM DayNight turning light off");
            //LightComponent.setEnabled(False);
            SkyLight.LightComponent.SetEnabled(false);
             }  */
        
        
             if(Role == ROLE_Authority)
             {
             if(bIsDay)
             {
             ActualStage = 1;
             bIsDay = false;
             }
             }
           }
        
        
        
        
        
        
        }
        
        
        //set time specific of the sun
        
        function SetNewTime(int NewHour, int NewMinute)
        {
        local float FloatMinutesAddition;
        local float FloatHours;
        local float ConstantHourRota;
        
        FloatMinutesAddition =( ( (NewMinute*100) / 60  ) /100);
        FloatHours = NewHour + FloatMinutesAddition;
        ConstantHourRota = 65536/24;
        R.pitch = (FloatHours+3)*ConstantHourRota;
        self.SetRotation(R);
        
        
        
        
        }
        
        simulated function DisableAllLigthComponentsForPawns()
        {
        local GOTAMP2pawn RecollectedPawn;
        
        
        
            foreach WorldInfo.AllPawns(class'GOTAMP2Pawn', RecollectedPawn)
            {
                 RecollectedPawn.LightEnvironment.SetEnabled(false);
            }
        
        
        
        }
        
        
        
        
        
        
        
        DefaultProperties
        {
        
        
         bHidden=FALSE //REPLICATION NEEDS THIS
         bNoDelete=TRUE
        
         bRouteBeginPlayEvenIfStatic=FALSE
         bEdShouldSnap=FALSE
        
        
         Begin Object name=DominantDirectionalLightComponent0
        
        
          ModShadowFadeoutExponent=3.0
        
          bRenderLightShafts=True
        
          LightAffectsClassification=LAC_DYNAMIC_AND_STATIC_AFFECTING
        
             CastShadows=TRUE
             CastStaticShadows=TRUE
             CastDynamicShadows=TRUE
             bForceDynamicLight=FALSE
             UseDirectLightMap=FALSE
                bAllowPreShadow=TRUE
        
             LightingChannels=(BSP=TRUE,Static=TRUE,Dynamic=TRUE,bInitialized=TRUE)
                LightmassSettings=(LightSourceAngle=.2)
        
         End Object
        
         bStatic=FALSE
         bHardAttach=TRUE
         bMovable=TRUE
         Physics=PHYS_Interpolating
        
         RemoteRole=ROLE_SimulatedProxy
         Role=ROLE_Authority
         bNetInitialRotation=TRUE
         bUpdateSimulatedPosition=TRUE
         bReplicateMovement=TRUE
            bAlwaysRelevant = true
            bIsDay = true;
        
        
        
        
        
        
        
        }
        
        //-----------------------------------------------------------
        //By Neongho
        //Description applies day night ingame
        //credits to tutorial of day nihgth system, of UDK " write name when you has time"
        //REWRITE THIS WITH ONLY DAY AND NIGTH
        //-----------------------------------------------------------
        class GOTAMP2DayNigthDominantLight extends DominantDirectionalLightMovable
        ClassGroup(Lights,DirectionalLights)
        placeable;
        
        var () float DayNightFreq;
        var () int DayNightStep;
        var () float Correction;
        
        
        
        //for rotation purposes
        var rotator R;
        var rotator SunRotation;
        
        //Time vars
        var int Days;
        var int Hours;
        var int Minutes;
        
        //assets to modify for lighting
        var() InterpActor SkyActor;
        var() SkyLightToggleable SkyLight;
        var() exponentialheightFog FogAsset;
        
        //Basic colors of the MIC of the Sky
        var() const linearColor HorizonColor[2], ZenithColor[2], SunColor[2], RimColor[2];
        
        //other miscellenous values of the MIC
        var() const float skyBrightness[2], CloudOpacity[2], CloudDarkness[2], CloudBrightness[2], Desaturation[2], RimBrightness[2];
        
        //Directional, fog , skylight , directional light colours
        var() const color DirectionalLightColor[2], FogOppositeColor[2], FogInscatteringColor[2], SkyLightColor[2], StarColor[2];
        
        
        //Brigthnesses and scales of the 6 stages for SKY LIGHT AND DIRECTIONAL LIght
        var() const float DirectionalLightBrigthnesses[2], SkyLightBrightnesses[2], SkyLightLowerBrightnesses[2];
        
        //ShaftsVariablesvariables
        var() const float BloomScale[5], RadialBlurrPercent[2], OcclusionBloomDarkness[2], OcculusionDepthRange[2];
        var() const color BloomTint[5];
        
        //Fog variables
        var() const float Density[2], FogMaxFallOf[2], FogAngle[2], FogOppositeBrightness[2], FogInscatteringBrightness[2];
        
        var() const int StagesStarts[2], StagesEnds[2];
        
        var() bool bIsDay;
        
        //Dyamic variables**********************
        //Horizon zenith sun
        var linearColor ActualColourHorizon;
        var linearColor ActualColourZenith;
        var linearColor ActualColourSun;
        var linearColor ActualColourCloudSide;
        var linearColor ActualStarsColor;
        
        //float variables from the day night system
        var float ActualCloudBrightness;
        var float ActualCloudOpacity;
        var float ActualDesaturation;
        var float ActualCloudDarkness;
        var float ActualRimBrightness;
        var float ActualSkyBrightness;
        
        
        
        
        Var color ActualDirColor;
        var float ActualDirColorX, ActualDirColorY, ActualDirColorZ;
        Var color ActualFogColor;
        var float ActualFogColorX, ActualFogColorY, ActualFogColorZ;
        Var color ActualFogInscatteringColor;
        var float ActualFogInscatteringColorX, ActualFogInscatteringColorY, ActualFogInscatteringColorZ;
        Var color ActualSkyLightColor;
        var float ActualSkyLightColorX, ActualSkyLightColorY, ActualSkyLightColorZ;
        Var color ActualSkyLowLightColor;
        var float ActualSkyLowLightColorX, ActualSkyLowLightColorY, ActualSkyLowLightColorZ;
        
        //Fog properties
        var float ActualFogInscaBrighness;
        var float ActualFogOppositeBrighness;
        var float ActualFogDensity;
        var float ActualFogMaxFellOff;
        var float ActualFogAngle;
        
        
        //Shaft Bloom properties
        var float ActualBloomScale;
        var color ActualBloomColor;
        var float ActualBloomColorX, ActualBloomColorY, ActualBloomColorZ;
        var float ActualRadialBlurrPercent;
        var float ActualMaskOcclusion;
        var float ActualOcclusionBloomDarkness;
        var float ActualOcculusionDepthRange;
        var float ActualstarBrightness;
        
        //Lighting vars " Sky light and DomDir"
        var  float  SLBrigthness;
        var  float  SLLBrigthness;
        var  float  DLBrigthness;
        
        //material instance information
        var float TimeStamp;
        var bool MatInstanced;
        
        var int ActualStage; //0 Mroning Hori //1 Morning
        
        
        replication
        {
        if(bNetDirty)
        ActualStage;
        
        }
        
        
        simulated event PostBeginPlay()
        {
            local LinearColor OutVector;
            local float OutFloat;
         local MaterialInstance CurrentMaterial;
        
              //Instance the mateiral
              if (!MatInstanced){
              CurrentMaterial=SkyActor.StaticMeshComponent.CreateAndSetMaterialInstanceConstant(0);
              MatInstanced=true;
           }
              else
              CurrentMaterial=MaterialInstance(SkyActor.StaticMeshComponent.GetMaterial(0));
        
        
        
         super.PostBeginPlay();
        
        
        
        
        
        
        
        
            //GOTAGameInfo(WorldInfo.game).TheDayNightLight = self;
        
         //Dyamic variables**********************
        //Horizon zenith sun
        CurrentMaterial.GetVectorParameterValue('HorizonColor',OutVector);
        ActualColourHorizon = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('ZenithColor',OutVector);
        ActualColourZenith = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('Sun',OutVector);
        ActualColourSun = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('RimColor',OutVector);
        ActualColourCloudSide = OutVector;
        
        CurrentMaterial.GetVectorParameterValue('StarColor', OutVector);
        ActualStarsColor = OutVector;
        
        
        
        //float variables from the day night system
        CurrentMaterial.GetScalarParameterValue('CloudBrightness', OutFloat);
        ActualCloudBrightness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('CloudOpacity', OutFloat);
        ActualCloudOpacity = OutFloat;
        CurrentMaterial.GetScalarParameterValue('Desaturation', OutFloat);
        ActualDesaturation = OutFloat;
        CurrentMaterial.GetScalarParameterValue('CloudDarkness', OutFloat);
        ActualCloudDarkness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('RimBrightness', OutFloat);
        ActualRimBrightness = OutFloat;
        CurrentMaterial.GetScalarParameterValue('SkyBrightness', OutFloat);
        ActualSkyBrightness = OutFloat;
        
        
        
        
        
        
           //Fog asset
           ActualFogInscatteringColor = FogAsset.Component.LightInscatteringColor;
           ActualFogInscatteringColorX = FogAsset.Component.LightInscatteringColor.R; ActualFogInscatteringColorY = FogAsset.Component.LightInscatteringColor.G; ActualFogInscatteringColorZ = FogAsset.Component.LightInscatteringColor.B;
           ActualFogColor = FogAsset.Component.OppositeLightColor;
           ActualFogColorX = ActualFogColor.R; ActualFogColorY = ActualFogColor.G; ActualFogColorZ = ActualFogColor.B;
        
        
        
        
           //Non color fog properties
           ActualFogInscaBrighness = FogAsset.Component.LightInscatteringBrightness;
           ActualFogOppositeBrighness = FogAsset.Component.OppositeLightBrightness;
           ActualFogDensity = FogAsset.Component.FogDensity;
           ActualFogMaxFellOff = FogAsset.Component.FogHeightFalloff;
           ActualFogAngle = FogAsset.Component.LightTerminatorAngle;
        
           ActualBloomScale = LightComponent.BloomScalE;
           ActualOcculusionDepthRange = LightComponent.OcclusionDepthRange;
           ActualBloomColor = LightComponent.BloomTint;
           ActualRadialBlurrPercent = LightComponent.RadialBlurPercent;
           ActualOcclusionBloomDarkness = LightComponent.OcclusionMaskDarkness;
        
        ActualDirColor = LightComponent.LightColor;
        
        ActualDirColorX = ActualDirColor.R;
        ActualDirColorY = ActualDirColor.G;
        ActualDirColorZ = ActualDirColor.B;
        
        ActualSkyLightColor = SkyLight.LightComponent.LightColor;
        
        ActualSkyLightColorX =  ActualSkyLightColor.R;
        ActualSkyLightColorY =  ActualSkyLightColor.G;
        ActualSkyLightColorZ =  ActualSkyLightColor.B;
        
        
        
        SLLBrigthness = SkyLightComponent ( SkyLight.LightComponent ).LowerBrightness;
        DLBrigthness = LightComponent.Brightness;
        SLBrigthness = SkyLight.LightComponent.Brightness;
        
        
        
        /*
        //Shaft Bloom properties
        ActualBloomScale;
        ActualBloomColor;
        ActualBloomColorX, ActualBloomColorY, ActualBloomColorZ;
        ActualRadialBlurrPercent;
        ActualMaskOcclusion;
        ActualOcclusionBloomDarkness;
        ActualOcculusionDepthRange;
        ActualstarBrightness;
         */
        
          //TimeStamp = WorldInfo.TimeSeconds;
           SetTimer(DayNightFreq, true, 'DayNightTimer');
           SetTimer(1, true, 'DisableAllLigthComponentsForPawns');
        
        
        
        
        }
        
        
        
        simulated function DayNightTimer()
        {
         local MaterialInstance CurrentMaterial;
            //local float deltaTime;
        
        
        
        
                //worldInfo.game.broadcast(Self, Hours);
             //`log("FROM GOTAMP2DayNigthDominantLigth "@Hours@"Rotation "@Rotation@" The stage is "@ActualStage@" the DomLigth Brigthness is "@self.LightComponent.Brightness@"the actual Dom brigthness is "@DLBrigthness);  //Extremely laggy
            //DeltaTime=WorldInfo.TimeSeconds-TimeStamp;
         TimeStamp = WorldInfo.TimeSeconds;
        
         R=self.rotation;
         R.Pitch += DayNightStep;
         SunRotation=R;
         if (Role == Role_Authority){
          SunRotation=R;
         }
        
              //Instance the mateiral
              if (!MatInstanced){
              CurrentMaterial=SkyActor.StaticMeshComponent.CreateAndSetMaterialInstanceConstant(0);
              MatInstanced=true;
           }
              else
              CurrentMaterial=MaterialInstance(SkyActor.StaticMeshComponent.GetMaterial(0));
        
         Days = (Rotation.Pitch + Correction*(65536/24)) / 65536 ;
         Hours = ( ( (Rotation.Pitch - (Days*65536) ) / 65536.) * 24.)+Correction ;
         Minutes = ( ( (Rotation.Pitch+(Correction*(65536/24)) - (Days*65536) ) ) - (Hours*(65536/24) ) ) / 45.51 ;
        
           if(ROLE == ROLE_Authority)
           {
            GOTAMP2GameInfo( worldinfo.game ).Days = Days;
            GOTAMP2GameInfo( worldinfo.game ).Hours = Hours;
            GOTAMP2GameInfo( worldinfo.game ).Minutes = Minutes;
           }
        
        
        
        
           //Change colours change environment***********************
        
           //Lights interpolating
           SLBrigthness = lerp(SLBrigthness, SkyLightBrightnesses[ActualStage] , 0.0005);
           SLLBrigthness = lerp(SLLBrigthness, SkyLightLowerBrightnesses[ActualStage] , 0.005);
           DLBrigthness = lerp(DLBrigthness, DirectionalLightBrigthnesses[ActualStage] , 0.0005);
        
           //Directional light color and brightness
           ActualDirColorX = Lerp(ActualDirColorX, DirectionalLightColor[ActualStage].R, 0.005);   ActualDirColorY = Lerp(ActualDirColorY, DirectionalLightColor[ActualStage].G, 0.005);  ActualDirColorZ = Lerp(ActualDirColorZ, DirectionalLightColor[ActualStage].B, 0.005);
           ActualDirColor.R = ActualDirColorX;  ActualDirColor.G = ActualDirColorY; ActualDirColor.B = ActualDirColorZ;
           ActualSkyLightColorX = Lerp(ActualSkyLightColorX, SkyLightColor[ActualStage].R, 0.005);   ActualSkyLightColorY = Lerp(ActualSkyLightColorY, SkyLightColor[ActualStage].G, 0.005);  ActualSkyLightColorZ = Lerp(ActualSkyLightColorZ, SkyLightColor[ActualStage].B, 0.005);
           ActualSkyLightColor.R = ActualSkyLightColorX;  ActualSkyLightColor.G = ActualSkyLightColorY;      ActualSkyLightColor.B = ActualSkyLightColorZ;
           ActualFogColorX = Lerp(ActualFogColorX, FogOppositeColor[ActualStage].R, 0.002) ;   ActualFogColorY = Lerp(ActualFogColorY, FogOppositeColor[ActualStage].G, 0.002);  ActualFogColorZ = Lerp(ActualFogColorZ, FogOppositeColor[ActualStage].B, 0.002);
           ActualFogColor.R = ActualFogColorX;   ActualFogColor.G = ActualFogColorY; ActualFogColor.B = ActualFogColorZ;
           ActualFogInscatteringColorX = Lerp(ActualFogInscatteringColorX, FogInscatteringColor[ActualStage].R, 0.002) ;   ActualFogInscatteringColorY = Lerp(ActualFogInscatteringColorY, FogInscatteringColor[ActualStage].G, 0.002);  ActualFogInscatteringColorZ = Lerp(ActualFogInscatteringColorZ, FogInscatteringColor[ActualStage].B, 0.002);
           ActualFogInscatteringColor.R = ActualFogInscatteringColorX;  ActualFogInscatteringColor.G = ActualFogInscatteringColorY;  ActualFogInscatteringColor.B = ActualFogInscatteringColorZ;
        
        
           //Interpolations /////////////////////////////////////////////////
        
           ActualColourZenith.R = lerp(ActualColourZenith.R, ZenithColor[ActualStage].R ,0.003);     ActualColourZenith.B = lerp(ActualColourZenith.B, ZenithColor[ActualStage].B,0.003);     ActualColourZenith.G = lerp(ActualColourZenith.G, ZenithColor[ActualStage].G, 0.003);
           ActualColourHorizon.R = lerp(ActualColourHorizon.R, HorizonColor[ActualStage].R ,0.003);     ActualColourHorizon.B = lerp(ActualColourHorizon.B, HorizonColor[ActualStage].B, 0.003);     ActualColourHorizon.G = lerp(ActualColourHorizon.G, HorizonColor[ActualStage].G, 0.003);
           ActualColourCloudSide.R = lerp(ActualColourCloudSide.R, RimColor[ActualStage].R ,0.01);     ActualColourCloudSide.B = lerp(ActualColourCloudSide.B, RimColor[ActualStage].B,0.01);     ActualColourCloudSide.G = lerp(ActualColourCloudSide.G, RimColor[ActualStage].G, 0.01);  ActualColourCloudSide.A = lerp(ActualColourCloudSide.A, RimColor[ActualStage].A, 0.1);
           ActualColourSun.R = lerp(ActualColoursun.R, SunColor[ActualStage].R ,0.01);     ActualColourSun.B = lerp(ActualColoursun.B, SunColor[ActualStage].B, 0.01);     ActualColourSun.G = lerp(ActualColourSun.G, SunColor[ActualStage].G, 0.01);   ActualColourSun.A = lerp(ActualColourSun.A, SunColor[ActualStage].A, 0.1);
           ActualStarsColor.R = lerp(ActualStarsColor.R, StarColor[ActualStage].R ,0.01); ActualStarsColor.B = lerp(ActualStarsColor.B, StarColor[ActualStage].B ,0.01);   ActualStarsColor.G = lerp(ActualStarsColor.G, StarColor[ActualStage].G ,0.01);
        
        
        
        
           ActualSkyBrightness = lerp(ActualSkyBrightness, skyBrightness[ActualStage] , 0.0025);
           ActualRimBrightness = lerp(ActualRimBrightness, RimBrightness[ActualStage] , 0.0025);
           ActualCloudDarkness = lerp(ActualCloudDarkness, CloudDarkness[ActualStage] , 0.0025);
           ActualDesaturation = lerp(ActualDesaturation, Desaturation[ActualStage] , 0.0025);
           ActualCloudOpacity = lerp(ActualCloudOpacity, CloudOpacity[ActualStage] , 0.0025);
           ActualCloudBrightness = lerp(ActualCloudBrightness, CloudBrightness[ActualStage] , 0.0025);
        
        
        
            ActualFogInscaBrighness = Lerp(ActualFogInscaBrighness, FogInscatteringBrightness[ActualStage], 0.002) ;
            ActualFogOppositeBrighness = Lerp(ActualFogOppositeBrighness, FogOppositeBrightness[ActualStage] , 0.002) ;  //Opposite fog bright...
            ActualFogDensity = Lerp(ActualFogDensity, Density[ActualStage], 0.001) ;
            ActualFogMaxFellOff = Lerp(ActualFogMaxFellOff, FogMaxFallOf[ActualStage], 0.004) ;
            ActualFogAngle = Lerp(ActualFogAngle ,FogAngle[ActualStage] , 0.05) ;
        
            ActualBloomScale = Lerp(ActualBloomScale, BloomScale[ActualStage], 0.005);
            ActualBloomColorX = Lerp(ActualBloomColorX, BloomTint[ActualStage].R, 0.002) ; ActualBloomColorY = Lerp(ActualBloomColorY, BloomTint[ActualStage].G, 0.002); ActualBloomColorZ = Lerp(ActualBloomColorZ, BloomTint[ActualStage].B, 0.002);
            ActualBloomColor.R = ActualBloomColorX; ActualBloomColor.G = ActualBloomColorY; ActualBloomColor.B = ActualBloomColorZ;
            ActualRadialBlurrPercent =  Lerp(ActualRadialBlurrPercent, RadialBlurrPercent[ActualStage], 0.005);
            ActualMaskOcclusion = Lerp(ActualMaskOcclusion, RadialBlurrPercent[ActualStage], 0.005);
            ActualOcclusionBloomDarkness = Lerp(ActualOcclusionBloomDarkness, OcclusionBloomDarkness[ActualStage], 0.005);
            ActualOcculusionDepthRange = Lerp(ActualOcculusionDepthRange, OcculusionDepthRange[ActualStage], 0.005);
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
           //Setters ////////////////////////////////////////////***********
        
           //4 colours of sky
           CurrentMaterial.SetVectorParameterValue('ZenithColor',ActualColourZenith);
           CurrentMaterial.SetVectorParameterValue('HorizonColor',ActualColourHorizon);
           CurrentMaterial.SetVectorParameterValue('Sun',ActualColourSun);
           CurrentMaterial.SetVectorParameterValue('RimColor',ActualColourCloudSide);
           CurrentMaterial.SetVectorParameterValue('StarColor',ActualStarsColor);
        
        
        
           CurrentMaterial.SetScalarParameterValue('CloudBrightness',ActualCloudBrightness);
           CurrentMaterial.SetScalarParameterValue('CloudOpacity',ActualCloudOpacity);
           CurrentMaterial.SetScalarParameterValue('Desaturation',ActualDesaturation);
           CurrentMaterial.SetScalarParameterValue('CloudDarkness',ActualCloudDarkness);
           CurrentMaterial.SetScalarParameterValue('RimBrightness',ActualRimBrightness);
           CurrentMaterial.SetScalarParameterValue('SkyBrightness',ActualSkyBrightness);
        
           LightComponent.SetLightProperties(DLBrigthness, ActualDirColor );
           SkyLightComponent ( SkyLight.LightComponent ).LowerBrightness = SLLBrigthness;  //So no need for to change engine classes
           SkyLight.LightComponent.SetLightProperties(SLBrigthness, ActualSkyLightColor);
           //SkyLight.LightComponent.ForceUpdate(false);
           //SkyLight.LightComponent.UpdateColorAndBrightness();
           //SkyLight.LightComponent.SetEnabled(false);
        
        
        
        
        
           //Shaft updating
           //LightComponent.BloomScale = ActualBloomScale;
           //LightComponent.OcclusionDepthRange = ActualOcculusionDepthRange;
           //LightComponent.BloomTint = ActualBloomColor;
           //LightComponent.RadialBlurPercent = ActualRadialBlurrPercent;
           //LightComponent.OcclusionMaskDarkness = ActualOcclusionBloomDarkness;
        
           //LightComponent.UpdateLightShaftParameters();
           LightComponent.UpdateColorAndBrightness();
        
           //Fog asset
           FogAsset.Component.LightInscatteringColor = ActualFogInscatteringColor;
           FogAsset.Component.OppositeLightColor = ActualFogColor;
           //Non color fog properties
           //FogAsset.Component.LightInscatteringBrightness = ActualFogInscaBrighness;
           //FogAsset.Component.OppositeLightBrightness = ActualFogOppositeBrighness;
           //FogAsset.Component.FogDensity = ActualFogDensity;
           //FogAsset.Component.FogHeightFalloff = ActualFogMaxFellOff;
           //FogAsset.Component.LightTerminatorAngle = ActualFogAngle;
        
           FogAsset.Component.ForceUpdate(false);
        
         self.SetRotation(R);
        
             //worldInfO.GAME.BROADCAST(self,"FROM Day nigth skyLigth BRIGTHNESS IS is "@SLBrigthness@" the sky light lower is "@SLLBrigthness@" DL brigthness is  "@DLBrigthness);
        
           //Setters ////////////////////////////////////////////***********
        
        
        
        
        
        
                               //0 day 1 is nigth
           //Nigth To day transition
           if(Hours >= StagesStarts[0] && Hours < StagesEnds[0] )
           {
        
           //commented because it doesent do much
            /*if(!SkyLight.LightComponent.bEnabled && DLBrigthness > 0.1)
             {
            //LightComponent.setEnabled(true);
            SkyLight.LightComponent.SetEnabled(true);
            WorldInfo.game.broadcast(Self,"FROM DayNight turning light on");
             }    */
        
        
             if(Role == ROLE_Authority)
             {
             if(!bIsDay)
             {
             ActualStage = 0;
             bIsDay = true;
             }
             }
           }
        
        
           //Day to nigth transition
           if(Hours >= StagesStarts[1] && Hours < StagesEnds[1] )
           {
        
             //worldInfo.game.Broadcast(self, "FROM DayNigth is Skylight turned on "@SkyLight.LightComponent.bEnabled@"Whats the dl brigthness"@DLBrigthness);
        
        
        
        
        
           //SkyLight.LightComponent.SetEnabled(true);
        
              /*
             if(SkyLight.LightComponent.bEnabled && DLBrigthness < 4)
             {
             WorldInfo.game.broadcast(Self,"FROM DayNight turning light off");
            //LightComponent.setEnabled(False);
            SkyLight.LightComponent.SetEnabled(false);
             }  */
        
        
             if(Role == ROLE_Authority)
             {
             if(bIsDay)
             {
             ActualStage = 1;
             bIsDay = false;
             }
             }
           }
        
        
        
        
        
        
        }
        
        
        //set time specific of the sun
        
        function SetNewTime(int NewHour, int NewMinute)
        {
        local float FloatMinutesAddition;
        local float FloatHours;
        local float ConstantHourRota;
        
        FloatMinutesAddition =( ( (NewMinute*100) / 60  ) /100);
        FloatHours = NewHour + FloatMinutesAddition;
        ConstantHourRota = 65536/24;
        R.pitch = (FloatHours+3)*ConstantHourRota;
        self.SetRotation(R);
        
        
        
        
        }
        
        simulated function DisableAllLigthComponentsForPawns()
        {
        local GOTAMP2pawn RecollectedPawn;
        
        
        
            foreach WorldInfo.AllPawns(class'GOTAMP2Pawn', RecollectedPawn)
            {
                 RecollectedPawn.LightEnvironment.SetEnabled(false);
            }
        
        
        
        }
        
        
        
        
        
        
        
        DefaultProperties
        {
        
        
         bHidden=FALSE //REPLICATION NEEDS THIS
         bNoDelete=TRUE
        
         bRouteBeginPlayEvenIfStatic=FALSE
         bEdShouldSnap=FALSE
        
        
         Begin Object name=DominantDirectionalLightComponent0
        
        
          ModShadowFadeoutExponent=3.0
        
          bRenderLightShafts=True
        
          LightAffectsClassification=LAC_DYNAMIC_AND_STATIC_AFFECTING
        
             CastShadows=TRUE
             CastStaticShadows=TRUE
             CastDynamicShadows=TRUE
             bForceDynamicLight=FALSE
             UseDirectLightMap=FALSE
                bAllowPreShadow=TRUE
        
             LightingChannels=(BSP=TRUE,Static=TRUE,Dynamic=TRUE,bInitialized=TRUE)
                LightmassSettings=(LightSourceAngle=.2)
        
         End Object
        
         bStatic=FALSE
         bHardAttach=TRUE
         bMovable=TRUE
         Physics=PHYS_Interpolating
        
         RemoteRole=ROLE_SimulatedProxy
         Role=ROLE_Authority
         bNetInitialRotation=TRUE
         bUpdateSimulatedPosition=TRUE
         bReplicateMovement=TRUE
            bAlwaysRelevant = true
            bIsDay = true;
        
        
        
        
        
        
        
        }
        v
        Some cool unreal projects you may like!


        Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

        Download the demo Download the demo
        external link Dropbox DropBox

        Become a c++ Professional now C++ Networking Tutorial

        Comment


          #34
          You have to go to content browser -> Actor classes , you search for this class and you place it in the map.

          Well i would just write the rotation code to begin with, it fully works as multiplayer "error free".
          Some cool unreal projects you may like!


          Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

          Download the demo Download the demo
          external link Dropbox DropBox

          Become a c++ Professional now C++ Networking Tutorial

          Comment


            #35
            wait that means you replicate the rotation to all clients every frame? :|
            Follow me on Twitter!
            Developer of Elium - Prison Escape

            Comment


              #36
              Originally posted by Neongho View Post
              You have to go to content browser -> Actor classes , you search for this class and you place it in the map.
              I did the mine time ago, but thanks!


              Provisional blog: http://cobaltudk.blogspot.com.es/
              Videos: https://www.youtube.com/user/cobaltudk
              Facebook: https://www.facebook.com/babylonprojectgame/

              Comment


                #37


                Tutorial notifications for the player to know what to do. Acrtionscript 2 is great AS3 ...... AS3....
                Some cool unreal projects you may like!


                Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                Download the demo Download the demo
                external link Dropbox DropBox

                Become a c++ Professional now C++ Networking Tutorial

                Comment


                  #38

                  surviving with a artist that helps me, i know there's a lot of bugs KActorSpawnable for resources ain't an option but fixed it with staticMeshActor
                  Last edited by Neongho; 07-18-2018, 12:46 PM.
                  Some cool unreal projects you may like!


                  Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                  Download the demo Download the demo
                  external link Dropbox DropBox

                  Become a c++ Professional now C++ Networking Tutorial

                  Comment


                    #39
                    Diferent types of gladiators same as chivalry diferent types of mediaval warriors

                    Some cool unreal projects you may like!


                    Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                    Download the demo Download the demo
                    external link Dropbox DropBox

                    Become a c++ Professional now C++ Networking Tutorial

                    Comment


                      #40
                      Where is Spartacus? ^^ ;;;;;;

                      Comment


                        #41
                        Video about how Soldiers of a village defend their village.
                        Last edited by Neongho; 07-18-2018, 12:50 PM.
                        Some cool unreal projects you may like!


                        Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                        Download the demo Download the demo
                        external link Dropbox DropBox

                        Become a c++ Professional now C++ Networking Tutorial

                        Comment


                          #42
                          https://www.youtube.com/watch?v=kGwZ...ature=youtu.be New video about aurelio the hunter
                          Some cool unreal projects you may like!


                          Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                          Download the demo Download the demo
                          external link Dropbox DropBox

                          Become a c++ Professional now C++ Networking Tutorial

                          Comment


                            #43
                            I watched the video you uploaded. I thought there was only battle in your game. But after seeing the video, I realized that I was wrong.
                            I think it is a good idea to have a variety of collection elements. It is also nice to be hunting bears with people and distinguishing between day and night.
                            It's a good work. ^^

                            Comment


                              #44
                              Oh thanks keehoon ahn but later on battle will be the strong dish, like 100 vs 100 battles with strategy **** too much room
                              Some cool unreal projects you may like!


                              Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                              Download the demo Download the demo
                              external link Dropbox DropBox

                              Become a c++ Professional now C++ Networking Tutorial

                              Comment


                                #45
                                Version of the game 0.975 released on steam https://store.steampowered.com/app/7..._Of_The_Arena/

                                If anyone wants a free copy pm me or leave a post or whatever and i send it
                                Some cool unreal projects you may like!


                                Developer of GOTA - Survivalism Gladiatorial game Buy the game google gladiators of the arena steam https://store.steampowered.com/app/7..._Of_The_Arena/

                                Download the demo Download the demo
                                external link Dropbox DropBox

                                Become a c++ Professional now C++ Networking Tutorial

                                Comment

                                Working...
                                X