Hitnoodle Blog

Axe to the Shoulder – An Epic Mega Jam Chronology

We’re bored with Unity3D. A bit bored with 2D development. We’ve seen the awesome prototypes and games created using Unreal Engine 4. There was a gamejam around the corner.

Sum it up and we’ve got ourselves an Oh My Viking!

viking-1-compressed

Before the storm

We’ve known for about two weeks before that there will be a big game jam for Unreal Engine. So, with such a limited time to learn, we decided that a bit of overall concepts would be nice as a preparation:

Theme…. STARTS

Friday 9 October, 3 AM. It’s “Standing on the Shoulder of Giants”. Literal meaning? Newton meaning? Attack on Titan meaning? We’ve decided to sleep and hopeful that a muse would give us ideas.

Morning comes and no eureka on anyone. CrazyMaul has just re-learned 3D modelling and I don’t even know if Trois at that time know how rigging on Blender works.

Well, first thing first, we decided that it will be a simple one-off gameplay. It relates with our nonexistent capabilities using unreal. We also decided to go with usual local multiplayer (see Dance of Thrones).

We also decided that we want some “cooperative” to the 4 person local game, so we want to make it two teams of two person going around competing against each other. Our basic game idea is to use the rope-spongebob-minigame but with viking, axe, and dynamic grappling hook.

So, two person attached to each other, holding with axe, moving with grappling hook, the arena is on the back of a giant, you win by killing the enemies and then standing on the giant’s shoulder.

Prototypings

Oh boy. This is where the madness begins.

Characters:
  • Physics constraints are fine, we can actually use it to connect two objects.
  • But wait, one should always be a static actor. And it goes wacky.
  • We should actually test with some kind of a rope model with multiple physics constraint. I think that doesn’t work either.
Arena:
  • Characters can attach to arena sure, but we actually need a flat surface. So we make a hidden one, an invisible box on the back of the titan.
  • Sometimes the titan need to “move” and all attached characters will fall. Camera Shake and Events is good here.
Local Multiplayer:
  • Need time to get used to PlayerStart and how unreal handle multiple character.
  • Deciding split screen or not, using two gamepads or one input (keyboard) for multiple characters.
Gameplay:
  • Spawning objects seems easy, objects get collided objects and do stuffs to it also easy.
  • Level blueprint is our GameSceneController. Really.
3D Assets:
  • A character with a shield (different texture for each four character) and an axe. Well, we don’t have time for shields. Modelled.
  • Rigged, but then it’s wrooong. We actually need to rig it again and assign better weights. Someone cmiiw.

Sunday evening, almost two days. We decided to scrap the cooperation mechanic because of the rope-not-connecting-two-actor-dynamically problem and make it just 4 players with hook and axe against each other. Kill one, stand on the shoulder before the killed one respawn, then win.

Weekday and Jam

Monday starts and we have to back to reality to work. WORK NOT JAM. We only have evening to work on and I need one day to recharge. I don’t think we’ve made progress on Monday and Tuesday except rewriting the prototype codes into the real project and realizing that our 3D flow is wrong. Oh we created the landscape around the titan using the Ice assets, with snow and trees.

Wednesday is surprisingly a holiday and we can jam from dusk til dawn. The thing is not all of us can go and we need to finalized all the modules. Also.. this is funny.. we don’t have a working player, or even a game working at Wednesday.

Huge red flag. Assigned peeps new jobs to do and went with it. This is also around the time I realized git is useless. Animation is up and running.

Last 24 hour

Gave up on texturing the 3D models. Gave up UI that following the players. Gave up not-split-screen. Gave up four player to make room for two players.

That last thing.. it’s because we actually have to test it using authentic gamepads and we only have two of them.

  • Sound effects and BGM inserted. Feels epic already. /seewhatididthere
  • Battle done and tested around 6 hours remaining.
  • Created title and tutorial screen. HUD for winning. I think it was 4 hours remaining.
  • Combined gameplay logic, death respawn logic, bug fixing, seeing-random-bug-and-realizing-it’s-a-cursor issue fixing. 2 hours remaining.
  • First time packaging and build, testing. 1 hours remaining.
  • Uploading is slow as shit. Safe and submitted around 20 minutes remaining.
viking-2-compressed

Afterwords

I think I learned a few important in this jam, like how spaghetti blueprint is, how it can easily related to C++, how unreal works, and how the tools correlate each other. Cascade is great, Blueprint is great, Montage is great.

Also, it’s crazy that it actually follow our usual jam schedule (2-3 days). Sure, the game it’s not up to our standard, but we can’t really “win” this jam anyway. So many great submission and I personally grateful of the experience. Exciting to see what we can do next! It can only get better!