Epic Games Mega Jam ‘23 entry breakdown

Another year, Another Mega Jam :slight_smile:
How you guys been doing? how was the Mega Jam? how many days you guys didn’t slept? Me you ask? 3 nights without sleep :slight_smile:
This year I spend 3 nights without sleep, my schedule was little bit messed up and again this year I didn’t have full 7 days of Mega Jam (due to day job, working as a chef is though sometimes). My sleep was every other night. but wasn’t so bad though :slight_smile:

Enough of this my life stuff for now, lets jump into breaking down my submission.
The idea was exploration - Platformer, which I think make 85-90% of what I wanted.
You are a trash diving and digging Racoon :slight_smile: with orange jump suit.

You travel and explore world (5 different maps), search for treasure, get new abilities and traverse the world with them.
This one project for my self was little bit more challenging due I didn’t work with Unreal Engine for a bit, also I implemented systems which I never did before (like save system, ability system).
Wasted a lot of time with auto saving system and at same time trying to learn CommonUI.



To make the project manageable I divide the time I had to main tasks, due to the lack of time: 1 day to make character (from early morning to late night), it’s model (which includes Fur, took me bunch of time to make proper Fur in Blender - never did that before), rig, textures, control rig in UE5, and basic movement animations.
Then one day and night to build all Blueprint scrips and mechanics (which took me more time, than I planned), then 2 days to make all the models and maps, and a day to fix bugs and make UI.

I went with simple visual approach of low poly style and one texture map for all the assets including character model.
Most tricky part of the Character model was Weight painting to make sure the everything would bend at least decently. Whole model has rigged eyes and mouth, but had no time to do proper facial animations, you can see a little bit of facial animations in mane menu.



Renders in blender.


Whole character model is 11k faces

Character Fur was created with blender particle system using hair strands and combed by hand, then exported as Alembic file for UE5
Fur was added to head, hands and tail.



Whole rigging was done inside UE5 with control rig, excluding tail and jumpsuit zipper. Those two parts had constrains in Physical Asset, for avoiding animating by hand.


Very simple control rig setup as per usual, Arms and Legs using two bone IK’s, everything else same simple like look at functions or simple Arrays of bones and Controls. Nothing special in this case.


This is how the Racoon Blueprint looks like, few extra static meshes for Hat and Backpack (added last minute, because character looked very empty).
For characters Fur, I used Groom component and Epic Games - Groom and Alembic Groom Importer plugins.
Never before I worked with Fur/Hair in Unreal Engine, so that thing was something to learn.
After reading some documentation and articles I found the proper way to make Fur/Hair work, also couldn’t figure out how to transfer color information for Fur/Hair from Blender4 to UE5.

Animations for Racoon character was created inside UE5 editor by dragging control rig into the scene, which would instantly open UE5 Sequencer and give ability to animate character.


Each animation I was making, I would save it as Level Sequence, so I could edit them any time I want. After creating animation I would bake it as Animation Sequence.


All the animations which where created for the project.

Lets jump to Pickups, Abilities and Artifacts(secrets).
Where was created 3 different pickups: Health, Extra Ability Use and Collectible disk (just for fun), then I made 6 Artifacts (random old technology items like 8mm Camera, old Phone, cassette player, etc… and 3 Ability items (Dash, Boost up and Glide Umbrella).
Models for each item there made extremely fast, and all the efficiency came from using only one texture map for every model.




OK lets jump into the game code
All the code was build in Blueprints, Blueprints are great for small projects and Fast prototyping.
So character Movement and Abilities where implemented in Character BP:


Will not get into details how each ability works, but each ability have custom timer for cool down (triggers progress bar in Action menu Widget for cool down), animation to play and few other small things. Character BP also use Mouse input to show or remove Action Menu.

Saving system I build in Game State, and i over did it with a lot of things I didn’t needed, it was a mistake I should built save system into Game Instance not Game State overall.
Game State had it’s own Blueprint interface with bunch of Functions I used to trigger through main Widgets and main Save/Load functions.



Save game function, it was triggered in few places - On new map load and on specified Blueprint which would save game in the middle of the map. At the end it only would save Spawn Location, and items Player have (Hearts, Abilities etc…).

Some of the game functionality I moved to GameMode Blueprint (level timer, re spawn function, main Hud widget spawning etc…).


Timer function in GameMode BP, which was responsible for starting timer then each level was opened. Each level BP had a call to start the timer, which run through Gate node. Start Time custom event would open gate to let Event Tick to run and add 1 second to timer and after 59 seconds add 1 minute to counter. To stop this function I had made a EndLevel Blueprint with trigger box, then player overlaps trigger it runs few functions and nodes which triggers timer to stop and Close the gates in GameMode BP, also had custom event to load next set level. EndLevel Blueprint would spawn statistic Widget, it shows basic player stats like time spent in level and items collected or secrets found.


This all main Blueprints for the game core mechanics I made:

For the project I made few interactive objects for player to use, it was Switches on the ground to trigger rising level locations, Rotator to turn to make a path to go through and a Jump pad.



Jump Pads there little bit more customisible, I could adjust direction to launch character, it’s height and launch speed, so it helped rapidly place them and make working properly, no needed to go into BP and adjust its settings.

Few of the levels had save locations in the middle of them map.


They where responsible for saving players data like its location and items collected.

Level Design
I made overall 5 levels to play around. The main idea of building Levels was, that all level would be made from large ground platforms, that allowed me for fast iterations and level blocking out. Then used Foliage tools to place grass and then do all the other Set Dressing.
Main reason for so much platforming was, so player could use the abilities to traverse the map how they want, then replay maps by loading them from main menu and then having all the abilities that would allow them to reach spaces they couldn’t.

There was 2 different themes going on, Meadows and Desert.





all levels contains 1 or more secrets to find for Players, bunch of platforming and other attractions. Also each level had custom made Kill-Z alternative, so if player falls of the map it would be re spawned at last saved location.
For both style of maps I made 52 different Assets, from small rocks to Trees, Grass, Platforms…


As in this example bellow, I didn’t bothered UV unwrapping models too much, all I did was use Planar projections (in Blender it’s caller Project for view), and then scaled and moved UV map around. That was time saver for me, and the models looks simple, fit the main themes, most important thing it was a time saver.

UI and Widgets
UI and Widgets was a thing that I messed up, halfway done with widgets I remembered existence of CommonUI, so tried to learn very fast how to work with it, but had issues with adding them on screen. Basically in editor while testing game they worked, but on built game they never showed up, so had to drop that idea very fast.


here is almost all the widgets I used for the project. Building them was kinda easy, just one thing was to keep consistent style and layout with them.
Action Menu widget for using the Abilities consisted of 3 buttons, progress bar and uniform grid to keep how many ability uses player had.

Main Menu widget was one of the more lets say complex, it had a lot of functionality in it. Like loading the game, showing what levels are finished or not and etc…


Sound
Sound this time was agian created using ChipTone, I do love this tool.
ChipTone

But didn’t had time to make the sounds so there was just few sounds made for this project…


here are all the sounds a made for the project also you can see whole project structure tree.

End Notes

I kinda overextended my self with all of this project, looking back now how buggy it went out, with bunch of game breaking bugs, I can tell one thing Sleep is good, and need to sleep, otherwise the productivity is on the floor.
After this project I learned bunch of things, and next time will be so much easier.
But being honest to my self I could much more. Unreal Engine is like Lego’s everything is possible :slight_smile:

I could expand on each topic much more, but maybe some other time.

IMA head out, good game dev people :slight_smile:

3 Likes

Hey there @Tashkas ! Welcome back to posting with us here on the forums and may I say this is a wonderful post!

I was already intrigued in the contents of your post with a brief overview but the more I read on the more impressed I become. I appreciate you breaking everything down as I read along because I was going to ask you some questions but you answered them as I was reading!

I think your concept is absolutely wonderful and I can see myself idly playing the game for hours on end. Your hard work and creativity truly shows off and I can only hope to see more from you in the coming future! :star_struck:

1 Like

Hi there @Tashkas,

Hope you’re well rested and recovered from the lack of sleep. :slight_smile:

I have to say, this artstyle is one of my favorites. It’s not something I’ve seen often with platformers but I definitely think it’s a great combo. Also the idea of becoming a “trash diving and digging Racoon with an orange jump suit” entertains me greatly :joy:

Thanks for sharing and do you happen to have a name for our trash loving friend yet?

1 Like

Really amazing work! I love It!

1 Like

Thank you for great words, I do love doing this this is like little Postmortem’s (also i do love game dev :smiley: ) . I do love that people enjoy this stuff :), I would love too see more of these from other MegaJam participants.

1 Like

Thank you, for nice words.
Nagh Racoon is Racoon.
I tried some different things with art style this time, but everything came rushed out…

1 Like

:raccoon: Nagh Racoon is absolutely precious. Thanks for sharing with us :slight_smile:

1 Like

Wonderful job. Fun to read post. Hats off to you! :slight_smile:

2 Likes