Shattered Ties

This project was made in a span of 16 weeks. Team members consisted of Me, Jonathan Jennings, and George Edwards. We used a multitude of programs to make our game. Programs such as: 3DS Max, Microsoft Visual Studio, Unreal Development Kit, Audacity, Adobe Flash, and GIMP.
 SCREEN CAPTURES OF IN-GAME LEVELS
Map: Pleasant Valley

Description:
Main Hub Area. Serves to "connect" to the other maps. Final Boss is located on this Map in a secret location
Map: Gloomwood

Description:
As the name of the map suggests, this is a very dark map.
Map: Toshi no Ame

Description:
Name translates to "City of Rain"
   Features
Custom UI
Weapons
Coding Section
Melee System
Shattered Ties melee system is based on UDK's trace function.

code snippet

UTPawn(Instigator).CurrentWeaponAttachment.Mesh.GetSocketWorldLocationAndRotation ('Hilt', traceStart);
UTPawn(Instigator).CurrentWeaponAttachment.Mesh.GetSocketWorldLocationAndRotation('meleesocket', traceEnd);
//Instigator.drawdebugline(traceStart, traceEnd, 255,0,0);
//trace from weaponpoint to meleesocket
Foreach TraceActors(class'actor', traced, hitlocation, hitnormal, traceEnd, traceStart, vect(10,10,10))
{
//WorldInfo.Game.Broadcast(self,'traceStart');
if(traced != Owner && Pawn(traced) != none) //If traced actor isn't you and a pawn.
{
hitpawn = Pawn(traced);

//WorldInfo.MyEmitterPool.SpawnEmitter(Blood, hitlocation, rotator(-hitnormal),);
hitpawn.TakeDamage(MeleeDmg, Pawn(Owner).Controller/*Controller(traced)*/, hitlocation, Normal(//WorldInfo.MyEmitterPool.SpawnEmitter(Blood, hitlocation, rotator(-hitnormal),);
hitpawn.TakeDamage(MeleeDmg, Pawn(Owner).Controller/*Controller(traced)*/, hitlocation, Normal((Traced.Location - Owner.Location))*meleedamagemomentum, class'DmgType_Crushed',hitInfo,Owner);
WorldInfo.MyEmitterPool.SpawnEmitter(Blood,Hitlocation,, Traced,);

code snippet end

Basically what this does is that a line is traced between the "hilt" and "meleesocket" (as seen in the above picture)

Character weapon placement
Weapons are attached to the "WeaponPoint" socket.
XP system

code snippet
public function GiveXP(int amount)
{
//local ActionPawn Action;
//Action=ActionPawn(Owner);


XP += amount;

CalculateLevelProgress();

while (XPGatheredForNextLevel >= XPRequiredForNextLevel && Level < MAX_LEVEL)
{
Level++;
Pawn.HealthMax+=10*Level;
Pawn.Health=Pawn.HealthMax;
Pawn.DamageScaling+=0.3;
ActionPawn(Owner).RegenAmount+=2.0;
PlaySound(SoundCue'MyPackage.XPSound',,,,,);



// Recalculate level progress after leveling up
CalculateLevelProgress();
}
}

code snippet end

Each mob yields a different xp amount when they are killed.
Shattered Ties
Published:

Shattered Ties

Senior Project. Made in 16 weeks

Published: