Toronto Game Jam coming up, so me and another dev toying with unity
Just wanted to comment. It’s kind of crazy the stuff Unity has, the surprises and all. Has a Nav Mesh that can be used to have an AI do clever path finding. Almost no implementation required, just there. Me and him are just playing with some idea for the game jam, trying to see what might work. Learning to use unity with source control, as that was a big lacking part when we did global game jam in january.
Going to see if i can get some basic attack mechanics working :D
@agmcleod Awesome, sounds like fun! I keep hearing interesting stuff about NavMesh; I’ll have to look into it more soon. Good luck in the jam. :)
We’re looking at doing a top down hack & slash. Building the world with 3d, and using an orthographic camera. So still using 3d colliders & 3d rigid bodies. Seems to work okay so far.
Jam completed! here’s the jam games on itch io: http://itch.io/jam/tojam-10
and our entry: http://saltire.itch.io/overthrow. Sadly only have windows build up at the moment.
Anyways, time for a post mortem.
First things first
We definitely lacked the man power needed. Our core artist was only able to attend friday night and saturday morning to mid afternoon, due to having a part time job. We were also unable to get a floater to assist with us, so us mostly dev focused guys had to add a bit of art content now and then, which dug into dev time.
Unity is definitely powerful, but also a little funky at times. The nav mesh worked out pretty damn well. Just have to be sure to check floor & wall objects under the navigation tab, so the navmesh entities will collide into them as necessary. However, due to the fact the nav mesh objects rotate, this made some funky ness with the 2d sprite. So we ended up having a separate sprite in the scene, that referenced the transform of the enemy to position itself. This feels unintuitive for me. I feel like nav mesh could benefit from having fixed rotation, and you calculate what animation to do based off velocity.
The major issue by far is working on the same scene at the same time. We used git, but even with text format for the meta data & scene data, merge conflicts still arose like crazy. When they did arise on the .scene file, the changes were incomprehensible. It’s a YAML file, but the properties don’t really mean much to a human. Apparently what you want to do is work on a temporary scene, push that, and have the other person pull it in as a prefab. After mid saturday, i just got fed up with trying to merge conflicts, so i re-created the objects manually. I did not know how to export prefabs. From then on, one of us would just do the scene work, the other would only change scripts, or work on the title screen or whatever.
The game itself
I feel like this turned out pretty well. We had to cut stuff out unfortunately, including a boss fight. We also wanted to try and get some effects in there, but it just took time to implement the levels, tweak the gameplay, add the animations, figure out the 2d sprite + rotation stuff. It was definitely a learning experience.
Honestly, I don’t really forsee myself using unity again for a team project. Merging stuff is just such a huge pain, it doesn’t feel worth it to me. We leveraged the nav mesh, but other than that, i feel like i could have coded the rest of the game without much issue.
Man, I dunno if it’s meant to 2 player but I really suck at controlling both characters! Fun, though.
Thanks for sharing your post mortem. @richtaur has been mostly focused on art so far, and we haven’t run into many conflicts. It’s good to know that it might be an issue, however.
I’m not sure how NavMesh works, but I just discovered Blend Trees for our 2D animations and it made them many times easier to work with. Essentially, you can treat the up/down/left/right animations for one particular set (walk, idle, attack) as a single state and use animator parameters to blend between the directional states.
It is definitely meant for 2 player. Of course due to time, we couldnt get in player selection & difficulty reduction :)
Yeah, Unity games don’t seem to work that well with Wine, for some reason…
I demand a Linux build!