top of page
  • Github
  • LinkedIn

Internship with INFINITY 27  

Samsara Rebuild

On June 27th I was lucky enough to began a 12 week internship with INFINITY 27 through Teesside University Graduate Internship program, through out the internship I got to work closely with the Developers, Artists and Designers on the rebuild of Samsara using unreal engine 5.2, Perforce for source control, Hansoft for sprint planning, agile methodology and Parsec for remote connection to office equipment. 

 

My Internship with Infinity 27 ended on the 15th of September, as part of the last week of internship I created a document of everything I had been involved in throughout the 12 weeks and  this document has been attached to the top of the page through the "internship overview PDF" button.

​

During my time with the studio I got to work on a wide range of tasks from re-creating core systems needed, menu implementation, a research and development task that would lead onto a follow up task working with the designers and artists,  frequent playtesting of the level that the designers had been developing providing feedback, bug fixes from the bug backlog based on severity and QA passes on tasks.

​

One of my most enjoyed task was working on the vault/mantle telegraphing task in sprint 2 with the designers and artists while working on this I was expanding on the demo level I  had created in the R&D task in the sprint before, By the end of this task I was able to create a placeholder empty object that would display the dimensions of  any art asset mesh added giving the designers a clear visualisation on if that object would meet the criteria of an object that could be used with the vault mantle system. The overall outcome of the telegraphing task was to  show to the player an object was able to be climbed based on the shape language of it.

​

Wanting to gain experience in more areas I began taking on some of the QA checks on some of the developers tasks using the acceptance criteria on Hansoft for the task in addition the the QA check lists, I playtested the completed tasks providing feedback going into it blind asking the person who worked on it to tell me what the feature is supposed to do, if the feature didn't meet the either the acceptance criteria or QA check list I would set it to fail on Hansoft and come back to QA when the problems would be fixed.

​

Towards the end of the internship I was assigned to the magic content spells task that involved bringing across the 6 core spells from the old project while working with 2 other members of the team. I was able to implement the following spells into engine in basic form;  Restoration Mudra, Immobilise Mantra, ThreateningForeFinger Mudra and Enraged Mind Mantra (videos of the spells functional next to this box)

​

Bootcamp with INFINITY 27

Summon Minion Spell

I N F I N I T Y 27 IRT3D Boot Camp 

Video Demonstration of the Summon Minion Spell Sara created for the potential use in the upcoming game Samsara. This spell allows the user to summon an AI controlled minion to fight by their side, with a scaling lifespan, health and damage levels depending on the owners wisdom level.

 

The Summon Minion Spell was created using agile methodology in 3 key stages. The prototype stage included creating an empty actor blueprint that the AI would take shape through, creating an AI controller and assigning key values for the spell cooldown, spell cost and lifespan for the minion. 

 

When planning how the minion summon would work I came up with the idea of using a line trace from the player camera to check if the player was looking at a suitable area to cast the spell, the result would then create the impact location for the spell. To calculate the impact location I took the starting location ( this being the players position) and plugging that into the start of the line trace node, then multiply the direction by the distance and add that to the start position to get the end result for the line trace node, lastly the outhit impact point would be connected to the return node to finish the get impact location function.

​

The alpha stage consisted of creating a way for the minion to follow the player, adjusting the damage the minion could do, scaling the life span off the users wisdom stat, assigning an animation for the minion spawning in and adding sound effects to the spell cast and when the minion would die either by de-spawning or its life being taken to 0.

​

The main challenge I faced  in the Alpha stage was finding a way to allow the minion to follow the player, I had been provided a link to the documentation of the plug in being used. After researching the companion component functionality and discussing with the lead programmer, I decided this was the best course of action and by setting the home for the minion as the caster once combat was over the minion would return to the player and follow.

​

The final stage was the Beta stage, this consisted of refracturing the blueprints, adding a icon for the spell, assigning more than one perk to the minion on level up and altering the cooldown timer from 4 minutes to 2 minutes and 54 seconds (this was supposed to be  2 minuets and 45 seconds but the typo ended up staying ) .

​

Over all I was able to keep developing on my existing skills in blueprinting, game math, problem solving and team communication while discovering more about game AI, learning industry used software Hansoft for sprint planning and Perforce for source control and practicing Agile Development and SCRUM.

​

Created in Unreal Engine 5.

bottom of page