Video about how Soldiers of a village defend their village.
https://www.youtube.com/watch?v=qeWC…ature=youtu.be
https://www.youtube.com/watch?v=kGwZAruaXVY&feature=youtu.be New video about aurelio the hunter
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. ^^
Oh thanks keehoon ahn but later on battle will be the strong dish, like 100 vs 100 battles with strategy ■■■■ too much room
Version of the game 0.975 released on steam Gladiators Of The Arena on Steam
If anyone wants a free copy pm me or leave a post or whatever and i send it
Congratulations man!!! I hope to see my game also on steam soon!!!
You will don’t worry it’s easy as pie, i will help you in the process if you want.
Congratulations. ^^
Honestly I envy you a lot. I want to release my game soon. But there are too many things to do because of my greed. @_@;;;;;
hehe ok keehoo ahn
been watching this game develop.
congrats on finally having it ready to release
can i ask how you are handling matchmaking, if you do?
cheers
I have not done match making
New blood screen done, with post process effects anyone would like a tutorial on how to do it?
Hello there!
WOW, it looks cool, congratulations!. I have done my blood screen entirely in Flash/Scaleform like I said before, however I do want this tutorial on how you have done it.
Cheers.
yours is cool to UDKUltimate I have made mine with material editor and PPC.
cheers.
looking forward to play your game like I did with coldscooter.
Thanks bro, even thought it will take sometime for me to finish it, however, I will let everyone test this demo I am finishing soon, which I will upload here and on youtube.
Cheers
https://www.youtube.com/watch?v=DXqpiCKH_qY Horse riding in Gladiators of the arena. classes involved here, I didn’t use vehicle because AI couldn’t do anything with it. so I made it be a pawn.
//-----------------------------------------------------------
//
//-----------------------------------------------------------
class GOTAMP2Horse extends pawn;
var() const DynamicLightEnvironmentComponent LightEnvironment;
//Body//
var(APVisual) const SkeletalMeshComponent MainBodyMesh;
//For getting touch event, to know if we are close enough
var(UsageVar) const CylinderComponent CylinderOfUsage;
var GOTAMP2Pawn GOTAPawnRidingHorse;
var GOTAMP2PlayerController ControllerRiding;
event PossessedBy(controller C, bool bVehicleTransition )
{
super.PossessedBy( C, bVehicleTransition );
//c.GoToState('PlayerHorseDriving'); needs a timer
SetTimer(0.25,false,NameOf(SetPlayerDriving) );
if( GOTAMP2PlayerController(C) != none)
{
ControllerRiding = GOTAMP2PlayerController(C);
}
}
simulated function StartFire(byte fireModeNum)
{
`log("FROM GOTAMP2Horse starting fire");
GOTAPawnRidingHorse.StartFire(fireModeNum);
}
simulated function StopFire(byte fireModeNum)
{
`log("FROM GOTAMP2Horse stoping fire");
GOTAPawnRidingHorse.StopFire(fireModeNum);
}
function HandleCRidesHorse(controller ControllerRidingHorse, pawn pawnRidingHorse)
{
ControllerRidingHorse.UnPossess();
ControllerRidingHorse.Possess(self,false);
//self.MainBodyMesh.AttachComponentToSocket( pawnRidingHorse.mesh, 'RidingSocket' ); //Caused a problem with the traces and it was not reliable
GOTAPawnRidingHorse = GOTAMP2Pawn( pawnRidingHorse );
if( GOTAMP2PlayerController( ControllerRidingHorse ) != none )
{
GOTAMP2HUD( GOTAMP2PlayerController ( ControllerRidingHorse ).MyHUD ).GFxAS2MultiPurposeHUD.SetElementVisibleOrUnvisibleByNum(20, false);
}
//PawnRidingHorse.mesh.SetScale3D( vect(0.5, 0.5, 0.5) );
pawnRidingHorse.SetCollision( True, false);
//pawnRidingHorse.bCollideWorld = true;
pawnRidingHorse.SetBase(none);
pawnRidingHorse.SetHardAttach(true);
pawnRidingHorse.SetPhysics( PHYS_None );
//if ( !bDriverIsVisible )
//{
// pawnRidingHorse.SetHidden(false);
// pawnRidingHorse.SetLocation( Location );
//}
pawnRidingHorse.SetBase(self,,mesh, 'RidingSocket');
`log("*****************FROM GOTAMP2Horse Setting base");
// need to set PHYS_None again, because SetBase() changes physics to PHYS_Falling
pawnRidingHorse.SetPhysics( PHYS_None );
GOTAMP2Pawn( pawnRidingHorse ).StartTogglingBlendPerBoneRepnotify( true, 0.5 );
GOTAMP2Pawn( pawnRidingHorse ).StartChangingDifferentStanceIndex( 3 );
GOTAMP2Pawn( pawnRidingHorse ).StartChangingPawnStancesListToRepnotify( 7, 0.5);
GOTAMP2Pawn( pawnRidingHorse ).HorseRidden = self;
GOTAMP2Pawn( pawnRidingHorse ).bRidingHorse = true;
}
function HandleCStopsRidesHorse(controller ControllerRidingHorse, pawn pawnRidingHorse)
{
//ControllerRidingHorse.UnPossess();
ControllerRidingHorse.Possess(pawnRidingHorse,false);
//pawnRidingHorse.mesh.DetachFromAny();
//GOTAMP2Pawn( pawnRidingHorse ).TorsoArmourSkeletalMesh.DetachFromAny();
//DetachDriver(pawnRidingHorse);
`log("FROM GOTAMP2Horse the horse driver is "@pawnRidingHorse);
pawnRidingHorse.SetCollision( true, true);
//pawnRidingHorse.ForceUpdateComponents();
GOTAMP2Pawn( pawnRidingHorse ).StartTogglingBlendPerBoneRepnotify( false, 0.5 );
GOTAMP2Pawn( pawnRidingHorse ).StartChangingDifferentStanceIndex( 0 );
GOTAMP2Pawn( pawnRidingHorse ).StartChangingPawnStancesListToRepnotify( 0, 0.5);
ControllerRidingHorse.SetRotation( ROT(0,0,0) );
//pawnRidingHorse.ReattachComponent(GOTAMP2Pawn( pawnRidingHorse ).mesh);
//pawnRidingHorse.ReattachComponent(GOTAMP2Pawn( pawnRidingHorse ).TorsoArmourSkeletalMesh);
SetTimer(2, false, nameOf( SetPawnRotation ));
//PawnRidingHorse.mesh.SetScale3D( vect(1, 1, 1) );
}
function SetPawnRotation()
{
`log("FROM HOrse **************** "@GOTAPawnRidingHorse);
GOTAPawnRidingHorse.SetRotation(ROT( 0,0,0 ) );
GOTAPawnRidingHorse.Detach(self);
}
function SetPlayerDriving()
{
//GOTAMP2PlayerController(WorldInfo.game.GetALocalPlayerController()).GoToState('PlayerHorseDriving');
ControllerRiding.GoToState('PlayerHorseDriving');
}
event Touch( Actor Other, PrimitiveComponent OtherComp, vector HitLocation, vector HitNormal )
{
if( GOTAMP2PlayerController( GOTAMP2Pawn( Other ).controller ) != none)
{
GOTAMP2HUD( GOTAMP2PlayerController ( GOTAMP2Pawn( Other ).controller ).MyHUD ).GFxAS2MultiPurposeHUD.SetElementVisibleOrUnvisibleByNum(20, true);
GOTAMP2HUD( GOTAMP2PlayerController ( GOTAMP2Pawn( Other ).controller ).MyHUD ).GFxAS2MultiPurposeHUD.ChangeTheMessageOfUseMessage( "Press E to ride" );
}
}
//Needs repairs
event UnTouch( Actor Other )
{
if( Other == WorldInfo.game.GetALocalPlayerController().pawn )
{
GOTAMP2HUD( GOTAMP2PlayerController ( GOTAMP2Pawn( Other ).controller ).MyHUD ).GFxAS2MultiPurposeHUD.SetElementVisibleOrUnvisibleByNum(20, false);
}
}
//Basically E key hit
exec simulated function Use()
{
`log("FROM GOTAMP2Horse using ");
HandleCStopsRidesHorse(controller, GOTAPawnRidingHorse);
}
DefaultProperties
{
Begin Object class=DynamicLightEnvironmentComponent Name=MyLightEnvironment
bSynthesizeSHLight=true
bIsCharacterLightEnvironment=true
bUseBooleanEnvironmentShadowing=false
End Object
Components.Add(MyLightEnvironment)
LightEnvironment=MyLightEnvironment
///////// MAIN BODY ////////////////////////
Begin Object class=SkeletalMeshComponent Name=MainBodyMeshComponent
AnimTreeTemplate = AnimTree'MPGOTA2AnimTrees.AnselmusMPAnimTree'
//General Mesh Properties
bCacheAnimSequenceNodes=FALSE
AlwaysLoadOnClient=true
AlwaysLoadOnServer=true
bOwnerNoSee=false
CastShadow=true
BlockRigidBody=TRUE
bUpdateSkelWhenNotRendered=false
bIgnoreControllersWhenNotRendered=TRUE
bUpdateKinematicBonesFromAnimation=true
bCastDynamicShadow=true
RBChannel=RBCC_Untitled3
RBCollideWithChannels=(Untitled3=true)
LightEnvironment=MyLightEnvironment
bOverrideAttachmentOwnerVisibility=true
bAcceptsDynamicDecals=FALSE
bHasPhysicsAssetInstance=true
TickGroup=TG_PreAsyncWork
MinDistFactorForKinematicUpdate=0
bChartDistanceFactor=true
RBDominanceGroup=20
bUseOnePassLightingOnTranslucency=TRUE
bPerBoneMotionBlur=true
ScriptRigidBodyCollisionThreshold = 0.5;
Translation=(Z=-76.0)
End Object
Components.Add(MainBodyMeshComponent)
MainBodyMesh=MainBodyMeshComponent
mesh = MainBodyMeshComponent
AccelRate = 200;
GroundSpeed = 1000;
//This one it's for touching so you can enter the city
begin object class=CylinderComponent Name=CompCollisionCylinder
CollideActors = true;
//BlockActors = true; //We don't necessarily need it, but it would block anyways.
end object
Components.Add(CompCollisionCylinder)
CylinderOfUsage = CompCollisionCylinder
bCanBeBaseForPawns=true
}
Player Controller Horse riding state
state PlayerHorseDriving extends PlayerWalking
{
function ProcessMove(float DeltaTime, vector NewAccel, eDoubleClickDir DoubleClickMove, rotator DeltaRot)
{
Pawn.Acceleration = NewAccel;
}
/* Set the throttle, steering etc. for the vehicle based on the input provided
function ProcessDrive(float InForward, float InStrafe, float InUp, bool InJump)
{
} */
function PlayerMove( float DeltaTime )
{
local vector X,Y,Z, NewAccel;
local eDoubleClickDir DoubleClickMove;
local rotator OldRotation, NewRotation;
local bool bSaveJump;
local float NewYaw;
if( Pawn == None )
{
GotoState('Dead');
}
else
{
GetAxes(Pawn.Rotation,X,Y,Z);
// Update acceleration.
//NewAccel = pawn.Acceleration;
NewAccel = PlayerInput.aForward*X;
NewAccel.Z = 0;
NewAccel = Pawn.AccelRate * Normal(NewAccel);
if( VSize( pawn.velocity ) > 200 )
{
NewAccel = NewAccel + (X * 100) ;
}
NewYaw = NewYaw + ( PlayerInput.aStrafe / 4 );
NewRotation = Pawn.rotation;
NewRotation.Yaw = NewRotation.Yaw + NewYaw;
Pawn.SetRotation(NewRotation);
if (IsLocalPlayerController())
{
AdjustPlayerWalkingMoveAccel(NewAccel);
}
DoubleClickMove = PlayerInput.CheckForDoubleClickMove( DeltaTime/WorldInfo.TimeDilation );
// Update rotation.
OldRotation = Rotation;
UpdateRotation( DeltaTime );
bDoubleJump = false;
if( bPressedJump && Pawn.CannotJumpNow() )
{
bSaveJump = true;
bPressedJump = false;
}
else
{
bSaveJump = false;
}
if( Role < ROLE_Authority ) // then save this move and replicate it
{
ReplicateMove(DeltaTime, NewAccel, DoubleClickMove, OldRotation - Rotation);
}
else
{
ProcessMove(DeltaTime, NewAccel, DoubleClickMove, OldRotation - Rotation);
}
bPressedJump = bSaveJump;
}
}
function UpdateRotation( float DeltaTime )
{
local Rotator DeltaRot, ViewRotation;
ViewRotation = Rotation;
// Calculate Delta to be applied on ViewRotation
DeltaRot.Yaw = PlayerInput.aTurn;
DeltaRot.Pitch = PlayerInput.aLookUp;
ProcessViewRotation( DeltaTime, ViewRotation, DeltaRot );
SetRotation(ViewRotation);
ViewShake( deltaTime );
}
}
new video out S҉E҉L҉L҉O҉U҉T҉ ҉A҉L҉E҉R҉T҉ Gladiators Of The Arena - YouTube new video of GOTA out. Comment and like : D
https://www.youtube.com/watch?v=awR1cpvRmvI&feature=youtu.be&fbclid=IwAR0Rfm_KC5e9u-41a_8QSDaKwImkR1xA7o-6-rDCIFTHtZjIrozmr62nbGg Here is a new video of our new character new animations, Shield sword made by Michal Arendt programming done by me and animations by Tobias Jessop and me.
I watched your game video well. ^^
If your game has a ponytail hairstyle female character, it would be better.
Gladiators Of The Arena 0991 Update Dev Blog Part #2 Throwable items. - YouTube Hey I could add a pony tail but I’m not sure about it hehehe , here a video about how you can throw any item.