Chillennium 2016

So this past weekend I drove 3 hours from Dallas to A&M for the 2016 Chillennium game jam. There were about 60 total teams from all over Texas universities as well as a few out of state universities like Kansas and Oklahoma.

The entries can be found here, aloing with my own game that my group created here.

The theme was “foofaraw”, which everyone immediately googled to find it meaing something along the lines of “needlessly nitpicky” or “making a big deal of a small thing”. The game that I ended up creating with my group was “Bob the Businessman (Vampire)”. You play as a vampire who’s late for work and has to dash between objects that cast shadows to shield yoruself from the sun. The “foofaraw” element came from the vampire’s job being some boring, pencil-pushing office job, and getting back to work doesn’t really matter that much.

The theme itself was okay-ish, though I found it a bit too obscure to really be condusive towards thinking up game ideas. I did get a few other game ideas that I’m pocketing for later, so we’ll see how those go.

The game itself turned out decent enough. There’s a kernel of a playable concept in there. I do like the idea of having a fast-paced platformer where the goal is to dash, jump, and weave through obstacles and minimizing damage rather than trying to avoid it wholly.

I also realized over the game jam that I tend to over-rely on 2D platforming when doing work on projects. There’s nothing wrong with doing 2D work, but I gravitate towards programming tasks that I am already familiar with or are easily solvable/searchable on Google. I tend to be apprehensive towards potential sunk costs, so when I think that a mechanic I want to implement or a programming task I want to try will most likely end in failure, or will potentially not be used in the end, I try to put it off and avoid it with easier tasks.

I need to challenege myself with programming that I haven’t necessarily done, particularly in game jams. That’s the only way that I will improve my coding skills. I should look into learning a different aspect of coding each week, maybe a small personal project of just something I’d like to figure out.

Overall, was an interesting experience. The lessons I’ve learned  are definitely gong to help me out with the capstone as I have been stalling on it for a while. I’ve been apprehensive towards including more complex mechanics because I’m worried about overloading the player, or making the mechanic complicated, or screwing up something along the line as I’m coding, which should be the opposite of my concern. I can always remove a mechanic or feature if I find it to not work with the end result.

We’ll see what happens next.

Sincerely,

~Tomer Braff

Capstone Report Card – Week 4

09.18.2016 - 09.25.2016

What I was supposed to work on

This week I was meant to adjust the obstacle system to allow for more freedom of movement for the player, as well as get the story outline done from Breault and sent over. I was also looking to start working on a basic dialogue system as well as a timer system to incorporate a proper fail state.

What I did work on

This week I was able to get the base story outline done and sent to Breault.

The most significant thing I did was overhaul my input system to allow for full WASD/IJKL movement. Because of this I could get rid of the current obstacle pass/fail system and just let it be something where the player can jump on top of an obstacle rather than having an overly cumbersome system to detect whether the player passed or failed.

What went wrong and what I’m doing about it

Unfortunately I was not able to work on much else. This weekend I was part of the A&M Chillenium Game Jam and was working through the weekend with my group. Basically had to carry them as I’m the only programmer.

On the positive side, though, I have found some code and systems that can help with the input system and some techniques that should help me with the capstone, like using layer masks and sorting layers for the sprites, as well as feeling a bit more confident in doing design work/interfacing with animations.

What’s next (09.18.2016 – 09.25.2016)

  • Create base timer system.
  • Dialogue system
    • Maybe make the basics, like just getting random text to display in a typewriter style. Nothing with nodes, dialogue trees, whatever, just basic coding and visuals of it.

Capstone Report Card – Week 3

Report Card Week 3

09.11.2016 - 09.18.2016

What I was supposed to work on

For this week I was supposed to incorporate some light positioning systems for the player in the obstacle system for verticality. Adjust the input system to allow for more free movement, including “jumping”, and finally work on an “Outline” of the story that the player will experience.

What I did work on

I was able to incorporate “jumping” into the input system as well as lock the camera to it’s y position for this feature, and I have developed a general bullet point outline of some of the main events in the story.

What went wrong and what I’m doing about it

Unfortunately, this week was extremely busy on several fronts. I was busy working with Rush events for my fraternity, working on homework for some of my other classes, and generally kind of freaking out over my future. The standard stuff.

One of the main issues I tend to have is that I’ll delay working on the tasks until Wednesday, especially if I get busy with other things during that time. I need to dedicate a certain amount of time each day to doing some of the tasks. They don’t have to be the same time each day, but I need to have a portion of the day dedicated to working on something for, say, an hour, just to make sure I am doing something every day and keeping myself motivated.

What’s next (09.18.2016 – 09.25.2016)

  • Get the story outline done and sent to Breault.
  • Obstacle positioning system/platforming
    • Maybe just remove “obstacles” and just have it be simple stuff like jump, crouch, leap, etc…?
      • Wouldn’t need a “pass/fail” system if they just do it, and the failure system is just getting to the end on time.
  • Create base timer system.
  • Dialogue system
    • Maybe make the basics, like just getting random text to display in a typewriter style. Nothing with nodes, dialogue trees, whatever, just basic coding and visuals of it.

Capstone Report Card – Week 2

09.04.2016 - 09.11.2016

What I was supposed to work on

This week my tasks included working through the storyboards and iterating on the level manager/loading system

What I did work on

I worked briefly on the storyboarding/game-flow board for the main menu and the tutorial level, but the primary thing that  worked on was the level manager and the loading system to allow for loading between new levels/scenes in Unity.

I focused on writing more of the overarching story structure and specific events that showcase certain themes and character struggles that the protagonists go through. I’ve at least thought of some good set pieces that I should keep in mind when building the rest of the game.

Currently, the level manager shows the intro and outro “image” when a level is loaded up. For now, it requires that the player press “space” to activate the intro image once the level is loaded, though that should be easily changed.

The way the level manager currently sets up the scenes is that each level/scene in Unity needs to be preloaded in the Hierarchy panel with all the environments, props, etc… turned off (enabled = false). Whenever the game needs to change scenes, it simply sets which scene is “active” according to the Unity SceneManager. Right now it still needs to enable the environment/props/etc… when loading each level, but for now it works okay.

Any managers/systems that I need between scenes have “DontDestroyOnLoad” so they persist between scenes and allow me to access their information when needed.

What went wrong and what I’m doing about it

I perhaps focused too much on trying to make the level loading system “right” when I should have just gotten a base functioning versions, non-fatal bugs be damned. I wanted to pass out on the keyboard and just hope for the best with the code sometimes when trying to finagle the Manager systems to work with the loading system, and I had to try several different methods of level loading before I sucked it up and just did the simplest (though not necessarily the “best” or “efficient”) method.

I need to take a step back every now and then when I catch myself getting too focused on a single task.

What’s next (09.11.2016 – 09.18.2016)

  • Incorporate the obstacle system positioning the player up/down for verticality in levels
  • Adjust the input system to allow for more free movement
    • Let the character “jump” normally, crouch, etc…
      • The character is always moving left or right, but the player can input things whenever they want rather than only seeing results when hitting the obstacle’s input hitbox
      • Kind of like Bit.Trip.Runner
  • Work on direct dialogue/tutorial text that will be displayed.
  • Work on an “Outline” of the story that the player will experience
    • Just pure bullet points for the point by point level areas.
      • Turn in by Friday no matter what

Capstone Report Card – Week 1

08.28.2016 - 09.04.2016

What I was supposed to work on

This week I was tasked to integrate the tiling system into Unity, write out the story beats for the game, and draw up the storyboards/screen flow for the menu screen and tutorial level.

What I did work on

I did not do anything with the tiling system currently. From what I can tell, it is primarily linked to the visuals so it’ll be harder for me to implement it until I can get some assets to put into it.

I did not work on the storyboards/screen/game flow boards at all, unfortunately. This was entirely my fault for being lazy, which I will expand on later.

I ended up working on was the level manager and intro sequence/cutscene handler for the game. I now have a system in the Unity project that displays a temporary image for me when the level starts for a few seconds before starting the game control proper. I have yet to incorporate this for “outro” sequences.

I have currently only gone through about one third, perhaps one half, of the overall story arc of the game (can be viewed here). I am having trouble finding a way to just write out what happens with each event because so much of the story comes from the interactions between the two characters rather than any deliberate, scripted events.

Perhaps instead of doing “arcs” or “events”, I can describe the emotional state of the two characters at the current point in the story and what events caused that to happen since seeing each other last, or actually describe what happened between each level and how that affects the conversations they have in the beginning. Things like Right worrying a lot about his daughter, Left constantly hearing his family and friends regurgitate government propaganda causing him to feel conflicted in talking with Right, Right torn between wanting to hate Left for being complicit in harming his people (and by extension his daughter) or not wanting to cause anymore more hurt than necessary.

What went wrong and what I’m doing about it

In all honestly, I did not earnestly start working on the capstone stuff until Wednesday. I was being completely lazy and undisciplined in my approach to working on it. I have a habit of not doing anything when I have nothing to do for the whole day like Friday thru Monday when I have no classes or wednesdays when my classes end extremely early in the day, and couple that with being lazy in my apartment with a comfortable bed, it prevents me from sitting down and tackling the things I need to tackle.

I am making sure I force myself to stay out of the apartment so I’m forced into an environment that prevents me from being distracted from bad habits.

I am also making sure that I take care of any outside homework ASAP, at a minimum doing them when I’m not in a position to fully work on capstone tasks. Currently it is only weekly worksheets for Linear Algebra and sketching assignments for Drawing Foundations with Digital Logic labs coming up soon. Ironically it might help me with capstone work as focusing on the homework would mean that I’m putting myself in an environment to work, so I usually start working on capstone work when I’m “in the zone” so to speak.

What’s next (09.04.2016 – 09.11.2016)

This time around I will for sure create the story/screen/game flow board for the menu and tutorial sections. This should help me with the overall story beats of the game. IF I am able to, I can go on to the first and second levels as well.

I will also incorporate the outro image into the current level manager (which shouldn’t be too hard). I will also make it so that the end of the level will load up the next level rather than restart completely (with “enter”, or another key, being a debug reset) with the intro sequences and everything else.

If I am able to, I will also look into making certain obstacles manipulate the character to allow for the character to go up and down different levels (for now just instantly teleport). I will perhaps utilize a “lane” system, where anything between 0 and 20 in the y-axis is “ground”, 20-40 is “level 1”, 40-60” is level 2, and so on (negative numbers as well), so I just move the player in between those levels.

New website, wee~

So, I’ve decided to ditch my Squarespace portfolio website and migrate my stuff over to a WordPress account. Squarespace is pretty expensive at almost $100 a year for a single website, plus $20 for a .com domain. I’ll upgrade this wordpress site to a .com domain soon when I have everything in place (and have a decent amount of money)

I want to try and post more of my thoughts and progress via this blog. Right now I am working on my senior capstone, Rockets, and I’ll try my best to post my weekly “report cards” for how I’ve been doing as well as some other progress like coding and art.

Should be an interesting final year at UTD.

Sincerely,

~Tomer Braff