#43 - Feb. 6, 2013, 3:38 p.m.
Anet cant program a camera properly(or design a puzzle properly, either way it comes down to broken/lazy coding)
Step 1: Dedicate time, effort, talented devs and resources to create jumping puzzles.
Step 2: Promote Jumping Puzzles as a big feature of the game.
Step 3: Change the camera at the last minute to break all of the jumping puzzles and half of the vistas.
Step 4: Launch the game because “it’s ready”.
Here’s how it worked. I started putting little jumping challenges into my maps several years ago. About a year and a half ago Colin and a couple other designers decided that these were fun enough to turn into some kind of bonus content. About a year ago all the other map artists were told to put a bonus jumping challenge or two in all their maps. We were in our polish phase and these were never intended to be anything more than small diversions for people who like platforming. Not a lot of time was dedicated to this because it was seen almost as Easter Eggs. Just fun little hidden places to discover. As such, JPs were never advertised as primary content, never included in world complete, never required for any story step, and never containing loot that could not be obtained elsewhere.
Because JPs are such a minor part of the game, specific camera issues that are primarily caused by them are not super high on the list of systems that demand the camera code bends to their needs. This does not mean that JP camera issues are ignored by the programmers who work on the camera, simply that they have to prioritize things. And while I’m not happy with the way the camera works because I spend a lot my time doing JPs, I know the engine optimization guys are not happy either because part of the compromise they have to make with us JP guys means that there are places where the world drops out because the camera can get through the occlusion planes. If the optimization guys had it there way 100% the camera would never even get close to a wall and we would build all our maps as flat planes with waist high walls. (Not that they actually want that, but that would be the ideal for avoiding world-dropping bugs) Since the camera has to serve two or three masters, who all want it to do different things, its current implementation is a compromise. This is not due to laziness or bad coding. We simply don’t hire lazy people or bad coders, and we get rid of any who show that tendency.
One issue that a non-developer would not know is the difference between creating a single-player game and an MMO. So it’s easy to look at Uncharted’s camera or Skyrim’s camera and say “Why don’t they just do it that way?” In fact, a lot of us artists DO say that to the coders. And then we get taught a lesson in how incredibly more complex an MMO engine has to be. The sheer amount of dependencies on any one system is staggering, and there is hardly ever a time where a programmer slaps their forehead and says “Oh, I never THOUGHT about just doing like Skyrim!” There are always REASONS that our systems are the way they are. None of this is to say that all our systems are perfect and our team is perfect and nothing will improve. Of course we aren’t perfect, and we are just as frustrated by the limitations and quirks as you are.
So yeah, had we been inflexible, we would have not allowed JPs in the game because they expose weaknesses in the camera. Had we been omniscient, we would have planned the camera from the start to work with the extreme geometry that JPs have. Had we been perfect, maybe we could have come up with a solution to work for all the systems at once perfectly. We are none of those things. What we are is a bunch of people who love making this game and who are constantly looking for ways to provide interesting and new kinds of content. That means pushing against the limits of what our engine can do, then iterating the engine to try to keep up with the design ideas. It’s a process, not and end point. There will never be a point at which we are all happy with the game and declare it to be the perfect representation of our design wishes.
I’m currently in a conversation with the latest ‘owner’ of the camera system and we’ll see what comes of that.