I'll also document all of the sources I use for my research. Comment if you know any good ones!
Slow Blade – Preliminary Technical Design
Basic Game Systems
2D Game
Art created in Photoshop and animated with the Spriter animation tool (a bone animation tool similar to Spine).
Needs:
Physics-based Platforming
Use Unity's built in physics system for movement. I've done a little bit of research into examples of how to do this, and it's pretty straight forward.
Needs:
- Basic walking, running and jumping.
- Figure out how to do wall jumping.
- Figure out how to control fall speed.
- Figure out how to throw and catch the Blade,
- Figure out how to make the Blade bounce indefinitely of of walls with correct rebounding.
- I may not be able to use the built in physics for the blade itself, since it needs to by unaffected by gravity and bounce at consistent angles.
- Right now I'm planing to restrict the throw angles to Horizontal, Vertical, and 45ยบ, because I'm assuming it will make things easier, but that may not prove to be the case.
Dynamic Camera
Camera will automatically pull out/zoom in to keep the player and the Blade on screen at the same time. Hopefully there's good examples out there of how to do this. I only have a vague notion of how I would try to do it.
Plan B: Just have the camera automatically zoom out to a particular level whenever the Slow Blade is thrown.
Plan C: Just be fully zoomed out all the time.
Plan C: Just be fully zoomed out all the time.
Level Designs
Each level designs will be a specially designed puzzle. I'll start with simple proof of concept levels to demonstrate core mechanics.
I'll use a tile based system to build the levels. This will have the added benefit of making measuring easier, to get the timing of the Slow Blade.
Needs:
- Create a set of appropriate prefab tiles.
- Investigate ways of easily working with tile-based systems in Unity. Might benefit from external tools like TuDee: http://www.diorgo.com/v1/?p=366
- Animated prefabs of all the hazards.
I need to find out how to make prefabs with the correct properties already assigned to the appropriate surfaces and triggers. Once I figure out what those properties and triggers should be of course.
Character Animation
I want to make a fairly elaborate animation system so that I can challenge my self using Unity's Mecanim.Needs:
-I've identified the the following animations that I want so far:
- Idle
- Walk
- Run
- Jump
- Throw - Horizontal, Up, Down, 45° up and down, (Could be complicated if player is able to throw while jumping)
- Catch -probably just one will work
- Fall
- Fast Fall
- Wall slide
- Wall Jump
- Land
- Die
-I also want to try using ray casting to give the player an animation that anticipates landing on the ground. This is totally unnecessary but I think it would be cool, and hopefully it won't be hard to figure out.
Time Slowing Mechanic
No idea how I'm going to do this. I'm hoping there some fairly simple built in. I'm sure this mechanic had been done a lot.
Plan B: Make slowed down versions of all the moving elements and fake it.
Plan B: Make slowed down versions of all the moving elements and fake it.
Replay Mode
Ideally after each level, there would be a feature that replays what you did, but at full speed so you can see how cool you looked to an outsider. Whether this can be done is dependent on how I do the time-slowing in the first place.