To The Core is a cross between an action platformer and a roguelite. It is build in Unreal engine 4, with a team of thirty people over our third year. Released on steam and free to play! It won an award for Best year 3 game – IGAD 2017-2018.
In the game your goal is to rescue the protagonists father, who has been punches, you fight your way through the level, to reach the end in time. The levels are procedurely generated, together with randomized available upgrades during the level, there is tons of fun to be had.
During this project it was really key to learn to work in a bigger team, and communicate with eachother. Keeping the leads and producer updated of the state of the project.
My role on the project
My role started as gameplay programmer. The basics of that work is in the first versions of the dash and ledge grab. The dash is using a reworked character movement component in C++, that allows a more precise controll of the movement input added to the character as unreal handles the collision responses for it.
Not far along in the project I switched to AI. That work can be seen throughout the entire game.
During my time on this team I was the only AI programmer for a long time. I created the small scroomba’s (the small red robots), and the first version of the boomba (its exploding variant).
My main focus however was on the Centurion. His abilities included a dash, a slam, and picking up and throwing smaller robots. The throwing uses that wonderfull thing called math to predict where the player will be, to then throw the robot towards you with an arc.
Making use of curves that can be set by designers, it uses weight based decision making to choose between its different abilities. After I left the project to start my fourth year, it was decided to split this enemy into three different ones, each with one of the abilities. Splitting up the enemy was not done by me, but my work can still be seen in each individual enemy.
During this time I still helped out with gameplay mechanics here and there, especially when it was related to the AI. An example of this is the GIF below. Where I used the same code for the throw ability of the centurion to launch small enemies on top of the tower.