Tuesday, February 12, 2013

Developers Log. Development Date 86. The saving of a level.

Two weeks since my last update. Last weeks post sits as a draft, 90% complete, but due to things getting crazy it was never completed. Last week we realized the level we had was unusable. The artist that created the assets in Maya had not exported the models at the origin, this was causing discrepencies when we loaded the models at their positions in XNA. We had developed a tool in Unity3D to build the maps then export them as XML so that we could re-build the level in XNA. By modifying the model and setting it at the origin, the level would become messed up in Unity (as expected.)

I spent some some time scripting a Python script for Maya that would center the pivot on the model, then center the model at the origin (relative to the pivot), then it would freeze the transformation and clear the history. I created a second method to loop through all fbx files in a given folder and all sub-folders, importing the fbx into Maya, running the centering script, then re-exporting the fbx file. Next I scripted a Unity editor script that adjusted each model relative tot he original offset in Maya, so that everything matched up.

I then spent a lot of time getting quests and quest objectives to go from our unity level to our XNA level. Part of this included setting up triggers and the quest manager. The Quest Manager loads the first quest, spawns all of the objectives, then after all objectives have been completed, the next quest loads. Standard stuff.

After the playtest, I slept for 12 hours. Following that a little ranked League of Legends, a man must keep his elo up, of course.

This weekend I spent working on improving the controls. The biggest issue from the playtest was the controls are slippery. People seemed to really enjoy the game, the concept and the feel they got from doing ninja moves, but they couldn't master the controls the way that is essential to having this game succeed.

When I first sold myself on this game idea, before I pitched it, my selling point was having tight and sexy controls. I haven't had the time to sit down and make them sing, I've been needed on too many other fronts. Everything is coming together well, and I finally now have the time to really baby our controls.

First I improved our camera. It now considers more of the player to determine if the player is in view or if the camera needs to do something to get the player in view. I will be looking into either making objects transparent, or improving our logic for moving the camera in the coming days.

Next I removed rotation of the player whilst in the air (again.) This time, however, I added the ability to change direction when using the double jump. This feels great. I also added the ability to slightly shift to the left/right mid air. So while not turning and moving as freely, the landing position can be slightly altered.

The wall jumping was one of the biggest challenges during the playtest. The answer was "mash jump" to scale between the two walls. Terrible. I added a slide when holding your thumbstick towards the wall, megaman style. This slows down the jumping so the player can make precise and timed jumps. This has helped a great deal, but I will be re-visiting this soon to further improve it.

I'm excited to see these improvements coming along so well, and am also excited to finally be able to focus my time on gameplay.

No comments:

Post a Comment