Thursday, October 2, 2014

Manifold Labyrinth Dev Diary 3

Well it has been about 3 and a half months since I last posted, and I only managed to get about 3 weeks of work done on the game in that time, but it looks a lot better now.  I redid some of the graphic style and it think I'm going to keep the graphics how they are now.  

New stuff and what not...
I also managed to get some key and door functionally working.  Which is huge even if it doesn't sound like it is.  I required reworking a fair bit of collision functionality but that resulted in a whole lot better collision (along with removing a bug where you could walk along the wall).  I also had jumping in the game for a while, but I quickly realized the levels weren't designed with that in mind and would require me to redo every level.  So no jumping, which I don't think is a big loss overall.  Then I also added in a menu, its ghetto looking, but it functions quite well.

I also have three complete levels at the moment. Well one is literally you walk straight to the end so maybe only two. I have about four more simple ones planned which don't do more besides teach the basic mechanics of the game. 

I am quite pleased to see that the largest level, one that I had to make on paper, turned out quite well, but I do see a couple design problems already.  Two things really, there isn't much information I'm giving the player (which I knew already) and I'm not giving the player much choice.  The latter one is the real problem.  Because of the first problem, I'm feel like going to have to force the player to do a lot of back tracking.  Get key here, walk back to another door, get another key.  And then there is the problem of not having much choice, it is to easy to get through the level simply just by wondering around.  That's not a big deal for early levels, but it is going to make the game quite bland on harder levels.  

The solution to this problem I think could be one of two things, I need to add a switch that opens and closes a variety of doors, or I need to add some sort of block which can be push around.  The switch seems to be the best solution, and it would fit pretty well with the rest of the design.  Pushing around a block would just add to many possibility and would make the game more complected overall.  Another minor thing I would like to add is some sort of little marker you can shoot out, to help you keep track of where you are when you revisit areas, nothing game changing, just a little mark.

Anyways, here is the game...

Friday, June 20, 2014

Manifold Labyrinth Dev Diary 2

Alright, so it’s been about a month and I have made very little progress, too much real life... But I have got the game to a stable enough point where I feel like I can show it off!  I have also decided on the name that should fit the game fairly well, 'Manifold Labyrinth'.  The name still might change in the future, maybe to something like 'Manifold Maze', but for now it will do. On this post I will try to talk about where the game is at currently and where I want to take it.

Current state of the game
I have finally found a half decent way to map the levels on paper.  You wouldn’t believe the number of different ways I went through just to visualize it on paper.  It takes a while to map it out because I have to draw each region three times (top, side, front) with a variety of markings representing different depths and corners, but it works better than the other methods I have tried.

The core feature of the game works and works quite well.  I’m not sure if I said that last time, but now it is improved).  The player travels seamlessly from region to region except for one small thing... Currently the game only renders the region that the player is in, and the regions connected to the current region.  The problem occurs when the player can see straight to where another region should be, but isn't rendered because it is not connected to the player’s current region.  There is a simple fix for this; I just haven't had the time to implement it.

Collision is something I had to rewrite this past month, and it is a lot better, but still far from perfect.  I managed to get rid of 90% of my old collision code and optimize it a fair bit so it runs a lot faster with much better results.  But as I said, it still has some problems.  If you walk into a wall at just the right angles you won’t fall down.  There are also a couple of other small glitches and optimizing which I will need to do at some point.  But as of now it does what it needs so I probably won’t see any changes for a while.

I haven't been able to settle on a color scheme which I like, and sadly, that is one of the things I have spent more of my time on then I care to admit.  It looks alright in its current state but it could look so much better.  I did a little tweaking to the shaders and added a little bit of the normal to the color of the walls so players could see better where the corners are.  This is something I will probably just keep on tweaking through the whole development because I doubt I will ever be happy with it.

I also have one playable level (really just half a level with no end), but it should give a good understanding of how the game is going to be designed.

What I want to add
There are a lot of puzzle mechanics I want to add, but the first on I plan on adding is just a simple key and door mechanic.  Primarily because need to added to finish up the level I’m working on, but also because it is one of the most versatile and easiest to understand.

Some others I plan on adding:
·        Redirect a laser
·        Move and object to a trigger.
·        Switch a lever to open a door.
·        Move an object to hop on to get to a higher spot.
·        Conveyor belt.
·        One way door.

For the most part the puzzles will be built from fairly simple mechanics. I may also cut out the ‘redirect laser’, seems a little too much like portal and would be one of the more complicated ones to implement.  I might also cut out the conveyor belt and one way door, they don’t add an awful lot to the game play and I could achieve many of the puzzles they could create with other mechanics.

I still don’t have a basic menu so that will need to be added.  Along with that I need to add a timer, and some sort of scoring system.  And I still need an obvious start and end.

Jumping.  Jumping is not something I originally planned to have in the game, but after one of my friends played it, he mentioned that it felt really unnaturally that he wasn’t able to jump, even though there was nowhere to jump too.  So I think I will add jumping into that game.  Along with that I will probably add some object you can drag around which allows you to jump on it to get to higher spots.


So that’s it for today, here is a quick demo of the game in its current state, bugs and all.  I’ll be on vacation for a couple of weeks so I probably won’t have anything done for a while…

Tuesday, May 20, 2014

Manifold Labyrinth (Old name was 'Corridors and Chambers') Dev Diary 1

So I'm going to start a Dev Diary for my new, and so far most successful, game that I'm working on.  Mainly I am doing this to keep my self on track, and if I'm lucky I might get some easy advertisement. 

Currently I'm developing this game from scratch using JavaScript and HTML5, which I don't think I'll ever do again.  But I'm currently using JS for my real job and I figured extra practice wouldn't hurt.  And since the game is shaping up to run quite smoothly I don't think it wan't a huge mistake.  On top of that I plan on just giving the game to some HTML5 game website once I'm done, so deployment and usability should be quite easy.  I just wish I was using a real OOP language instead, oh well...

So anyway, the game!  Corridors and Chambers? No idea what to call it.  I'll probably go through many names until I find one that is fitting, but that is what we shall call it for now.  The game is a 3D non-euclidean puzzle/map memorizing/maze game that will be split into 50 or so small levels where the goal is to get from point A to point B.  It is going to be played in first person and probably feel a little bit like Portal, Antichamber, or Qube.  It, of course, wont be anywhere close to the graphic detail of them but hopefully will be just (if not more so) as challenging and fun.

The core gameplay comes down to one key mechanic, and I have been awful at explaining it to people I know so hopefully I do a better job writing it down.  The level is divided into multiply regions which (hopefully) appear seamlessly connected to each other.  So if the player is in Region A (Connected to Region B, C, and D) with up being the Z axis and the player walks all the way to the left side of the region, they will appear on the right side of Region B with up being Z.  If they walk all they way to the right side of Region B, they appear on the left side of Region A, Z still up.  

Now this is where the tricky part come in.  If the play walks all they way to the front of region B, they would appear on the top side of Region D with X being up, if they continue to the left side of Region D, they would then appear on the top side of Region A except the X axis would be up this time.  So the player enters an area they have already been to at some point, except everything is oriented in a different direction.  Hopefully that wasn't to confusing, on my next post I will try to include some screen shots.

The hardest part of this game is going to be designing the levels. The challenge is going to be trying to create a level that is simple enough it can be solved by observing your surrounding, but not to simple where one could just wander around randomly until they find the exit. Also making sure that the player can't trap them self in an area where there is no exit, along with making sure that the different orientation that the regions is part of the puzzle and not just a distraction.  

I'm incredibly excited to get started on designing/playtesting the levels, but I'm just not far enough to focus sole on level design yet. I've thrown together a quick level to test the rendering, collision and region switching, and I must say it is turning out a lot better than I expected!

Anyways next post hopefully will be about where I'm at in the development of the game and the next parts I will work on. It will also include some screenshots to give a better description of how the game play will work.

-Parker Olson