Weekly Game Jam #5 - Post Mortem

And so ends my first ever game jam!  This game was made for Weekly Game Jam #5, and I fully intend to join back in for Week 6 (which starts tomorrow, 8/18/2017).

Also, a big shout-out to @rogersteve97, @pouleyKetchoupp, and @latorrilindsay (not sure what her name is on here) for all their help with debugging and Unity in general.  The Discord community as a whole was super friendly and helpful, even when my questions and mistakes were really... um... well, have a look.


1. Goals Met & Other Good Stuff

  • Completed everything that I had set out as my minimum goal.
    (This was actually done by Tuesday, with the final project due Thursday.)
  • All art assets completed for the base game.
    (Stretch goal complete)
  • Controls are fully implemented as intended.
  • Overall polished look.

2. Positive Contributing Factors

  • Friends IRL and online who were excited to see me do this, and were willing to act as sounding boards or cheerleaders.
  • Awesome community in Discord that helped me out, even though everyone had their own projects as well.
  • Light work load for the week.
  • Having a set theme made it easier to narrow down ideas.
  • Overall good time management.  This was helped by the light workload, but I managed to get substantial work done on the game while still leaving enough time for RL stuff.
  • Setting a low goal to start.  I designated a minimum/base goal, and considered everything else stretch goals.
  • I took a lot of time to plan out algorithms in advance, on paper.  My brain works better with handwriting, for the most part.  This simplified the coding process to essentially translating from pseudocode to C#, which is easier for me (right now) than working directly in code.
  • I think I made a good balance between planning in advance and figuring it out as I went along.

3. Goals Missed & Other Such Nonsense

  • The game is not feature complete.
  • Stretch goals (goals toward, but not including, feature completion):
    • Built-in guide.  The plan was to add arrows and labels to make the controls more clear without having to add a tutorial.
    • Sound effects for matching attempts.
    • Visual effects for matching attempts.  This is partially in place, but I had planned to add particle emitters as well.
    • A point system and/or a timer system.
    • A script that actually determines whether the pieces match.
    • A script that determines whether the pieces have been matched in the right order.
    • Check for bugs/issues that could affect gameplay.

4. Negative Contributing Factors

  • RL commitments.  Not something I am willing to give up, but this did reduce the amount of time I had to work.
  • RL shenanigans.  I could probably have done with fewer of these.  (fun stuff - playing video games, tv machine, reading, etc.)
  • Unfamiliarity with Unity and lack of recent coding practice.  That's improving, though, which was the point in joining this.
  • A tendency to do a lot of work that can't be tested until it's done.  This took up my first 3 days altogether.  Once it was fixed, I had met my minimum goal, but I had no way of telling if I was doing anything right until then.  (This has been an issue in the past, as well)

5. What I Learned

  • How to set an object to move, and how to get objects to move with it (Transform, SetParent).
  • It's possible to disable a script in an object.  Whoops.
  • How to spawn prefabs via a script.
  • How to pass information between scripts/objects using private and public variables.
  • Telling the system to wait is a bit complicated, and there are several ways to do it.  I found coroutines worked best for my purpose, but to be fair, I don't really understand the other methods well.
  • C# does not like using numbers in place of bools (as opposed to C/C++, in which 0 = false and anything nonzero is true).
  • How to set up sprite layer ordering.

6. What I Want to Learn
Note--this section is in response to things that came up during this project.  There's definitely more than this that I want to learn!

  • How to make 3D objects render nicely in 2D games (I originally wanted those cylinders to be shaded, as it would have made more sense for the original plan/aesthetic)
  • How to set up a git repository (to make sharing/help requests better)
  • Other ways to set up timers and wait functions.
  • How to build for other OSes.

I decided from the get-go to try not to take this too seriously.  I have a perfectionism problem and a tendency to go overboard on details and forget the whole, which I knew up front was going to be a weakness for me.  So I repeated to myself "finished is better than perfect," and decided that if I could just get everything to spawn properly and be interactable, that was enough for my first try.

Files

Matchryoshka_v005.zip (14 MB)
35 days ago

Get WGJ05 - Match!ryoshka

Download NowName your own price

Comments

Log in with your itch.io account to leave a comment.

Really cool post mortem, well detailed. It looks like you did a great job at planning everything before you started coding. I know that's a good practice and still I generally tend to skip it. But It seems it does help a lot :)

I'm glad to have helped and help to reach your goal. From what you told me they were surpassed. Great job!