lucvandijk.dev

lucvandijk.devlucvandijk.devlucvandijk.dev
  • Home
  • Projects
  • Meer
    • Home
    • Projects

lucvandijk.dev

lucvandijk.devlucvandijk.devlucvandijk.dev
  • Home
  • Projects

school projects

Go back

ATAN

Atan is the biggest project I've worked on at BUAS. It's a game about scaling a giant creature. The giant creature is holding up the sky to keep it from falling on the world, but the giant is nearing the end of it's life. It's the players destiny to climb the giant and take over the eternal task of holding up the sky


(fun note, the music used in this video is made by me!)

My contributions for Atan.

Throughout a year I've worked on countless things in Atan. The bullet points in this section are further explained below.

  • Game Music (album embedded under this post)
  • Game ambience audio
  • Game SFX
  • Game audio systems
  • Developer tools for improved workflow
  • A target system for LD to make puzzles in levels
  • Multiple out of the box objects for this system
  • Countless iterations on the system to make it LD friendly
  • Achievement system setup and implementation.

Atan game audio

My main focus for audio in atan was the ambience. The ambience in this game consists of a few elements. These elements include distant birds, crickets, wind gusts, leave rustles, waterfalls and general windy noise based on player velocity.


I also did some of the SFX for this game, like the player footsteps, the random piano notes while exploring the world in-between music, or the mystical sound fx that gets used in for example the intro cutscene.


Thanks to the contributions of the entire team together with the audio work, this game really came together as a complete product.

Atan audio systems

The audio in Atan mainly consists of 3 types of objects.

  • Music area.
  • Ambience area.
  • Noise ambience.


The music area is an object that controls a metasound. The music area has 2 overlap boxes. One will start playing the music, the other defines in what area that music is audible. If of course also comes with loop and volume settings alongside some other handy settings.


The ambience area is an object with a lot of options to make it suit your needs. The basic gist of this object is that it's an area in which a random sound from a list will spawn. The area can be configured to follow the player, spawn sounds only on the box boundary, play sounds in 2D, dispatch/receive audio events, and settings for min/max volume and pitch.


This allows for a multitude of sounds, from distant bird chirps to the leave rustling that plays when a wind gust is present.


The final audio system is a noise based system. These are sound completely generated through noise using meta sounds in unreal. examples of these sounds is the ambient wind in the game or the waterfalls.

Achievements.

During this project I also got the possibility to dive into steamworks. I set up some enums for achievements along with an object to handle granting achievements in the game, together with a function library I can easily define and unlock the game achievement in unreal.

The target system in Atan

Atan's exploration involves puzzles that need solving. In this project It's been my responsibility to set up a system that lets the developers and designers easily add new target types and activatables, while also making it easy for level design to use these objects. This is why i've made the target manager system.

This system provides interfaces and parent classes to use to easily create targets and activatables, it also provides an object to easily group these objects together and to set what's expected from the group AND it comes with a custom interface within the engine to manage all these groups. Over the course of 8 weeks this system has gone through multiple iterations, going from a sloppy unfriendly system to a robust system that's easy to use and lets multiple level designers work in the same level using the system without causing merge conflicts.

The custom widget

Target managers show as a literal target. The widget will let you select a manager from the target list, which finds all managers in the level. You can rename the group, move your camera towards it or draw the connections to see where you left your level elements! This screen also exposes just the detail panel values that are needed to set up the target group and leaves any unnecessary details out.

Iterations, iterations and more iterations!

This video showcases one of the earlier iterations of the target manager system. it's very messy for a few reasons.


  • a manager does not seem to exist (even though it does)
  • targets are set up through target objects.
  • Adjusting a target would update values in other target objects, which is confusing.
  • I had to help level design often, which is a bad sign.


After this iteration I worked on an interation where there was a single target group manager, which was used to manage all target groups in the level. It also held all the info for the targets in a single place. This worked MUCH better, but was still bad for a few reasons.


  • finding specific target groups was difficult, and drawing lines towards a group just looked messy.
  • merge conflicts would occur when multiple level designers were working in the same level.


ultimately this lead to the change to make a target manager per group of targets, which was a lot more pleasant to use. but it was still somewhat messy because.


  • Level design had to manually find back their target groups, which took time.
  • everything was still done through the details panel of target manager objects.


These last issues led to the creation of the widget tool which the team uses today! So far there has been no new complaints, but if they arise I'll make sure to keep iterating!

ATAN SOUNDTRACK

One of my main contributions to Atan was the music. This music is also available as soundtrack on steam.

Super circus fruit show

 

Super Circus Fruit Show is a chaotic fun platformer about a little Papaya mime trying to escape from the Circus. 

All the circus performers have been turned into fruits by the evil ringmaster and are forced through gauntlets to entertain the crowd.

Tilt the level and make the performers struggle. Experience wacky physics, tumbling through obstacle courses with variable hazards in order to get the highest score!

My work for this game

The work I did for this game can be found everywhere. The main things I worked on for this game was the menu system, the bumpers in the game, the dynamic music system, and the level intro. please note that the music itself is NOT made by me.

The menu system

The work I was most proud of in this game was the menu system. It's a menu system that lets you move through the scene, instead of a simple 2D menu. It takes a little more time than a regular menu, which is probably not great for UX, but the visual and feel of it make up for that.


It works using the unreal trolly system. there's a trolly going from the main menu to each subsection. the starting position for all rails are the same. based on the button selected in the main menu it will switch the camera to the correct track and start the trolly, which has the camera in it.

Dynamic music

My next biggest task in this project was the dynamic music for the game! In this game the intensity of the music changes based on how fast your character is moving. This is done by having 3 tracks playing at the same time, then based on the velocity of the player it will blend volumes between the current track, and the track that the game want to be at.


This video also shows some of the bouncy bumpers which i've made, and the level countdown with the cage coming down!


lucvandijk.dev

Deze website maakt gebruik van cookies.

We gebruiken cookies om websiteverkeer te analyseren en de ervaring op je website te optimaliseren. Als je het gebruik van cookies accepteert, worden je gegevens gecombineerd met de gegevens van alle andere gebruikers.

Accepteren