Wednesday, June 22, 2011

A Blog Post of Almost Zero Content

Hey, cool, a completely unproductive day! Well, in regards to Reconstructing S31, anyways. It is summer and need time to do other things. This will be a sad excuse for a blog post, but there are always going to be a few of those here and there. I did mess around with textures and player types in ZDoom, which is probably the only development related thing I did all day.

Tuesday, June 21, 2011

The History Of Reconstructing S31's Game Design

Recently I have been thinking hard about what to do with the gameplay of Reconstructing S31. This whole entire time my thoughts regarding such have been gradually evolving. Originally, I was planning on the game to be a cross between an on-rails shooter and an adventure-y puzzle game. This gameplay concept would take a lot of its inspiration from the earlier Zelda games, having a non-linear world for the player to explore but a set progression through abilities towards an ending. However, when I started to think about the actually context of the game's world, it take several boring contrivances to explain why the player had to fight enemies. From here, I was left with just the adventure-y puzzle game part.

This meant the focus would have to completely turn to puzzles. Now the term "puzzle" is applied to a great many game designs that can vary significantly from each other. For instance, consider just how different the designs of Tetris and Sokoban are. Or an even large gap would be between something like Bejeweled and an inventory puzzle found within the typical point and click adventure. I wanted to create something as unique as Sokoban, with one specific mechanic that could be applied to multiple elements in different ways. It would be in the combinations of these different interactions where the interesting could occur.

So came the concept of "tiles," the different elements that could be manipulated by the single mechanic of clicking (innovation!). First I introduced sliding tiles, not my own puzzle design but with an imaginative assortment of tile variations I hoped there would be something worthwhile to find. I also worked on the idea of two other tile types, place tiles and rail tiles. Now two new problems revealed themselves to me. While I had shifted the design over to a more linear, puzzle oriented approach, the world was still designed for a more adventure like experience, forcing me to consider the way the game was structured overall. Having a large focus on the player movement amongst rails also challenged what I was trying to accomplish with the puzzle elements. I also found that I had made a common mistake with my three tile types. Yes, they were manipulated by the same mechanic, but mixing them together did not reveal anything really interesting or new in the context of getting the player from point to point. I think there still is potential in them, but I am considering moving them into another project.

I am still considering where to move on to now with Reconstructing S31 and I have an idea I would like to prototype; it is very unique and definitely closer to what I have been looking for.

Monday, June 20, 2011

The Contributions of Details Towards Cohesion

Sometimes I spend my time doing things that I probably should not be focusing on. I have been working on the title scene of the game and its title logo for duration of today, two things that are usually handled at the end of a project. However, I felt like doing this and I was inspired, so I do not feel too terrible about indulging myself. It does help to further establish the visual style of the game (again, this should not be done at the beginning of the process, but whatever). The thing I am really looking for in Reconstructing S31 is a cohesive experience and so while my thoughts are dedicated to how the gameplay will operate, I feel that working on these details as well can help me to establish that cohesion as soon as possible in the development process.

Anyways, enough babbling here is the result of my recent efforts:

Sunday, June 19, 2011

Tedious Work With Rooms and Moody Backgrounds

Half of the process of creating a game is the busy work. Whether it is tediously shading of complex animated sprites or transferring certain files into another format, there can be aspects to game creation that are not so fun. Today I created each of the rooms for the game in Game Maker, setting the correct values for each and fixing some issues that arose regarding properly displaying the smaller rooms. While there are many tools out there that are built to make hard and long tasks easier, sometimes the effort spent building the proper tool does not make up for the time spent on the task.

I also got around to working more on the sky background. There is only one sky seen throughout the entire game, so I have been putting effort into making it really great and effective. When making a background, the designer needs to distinguish it from the foreground and gameplay elements visually. I have been doing this by drawing the background with cool, mellow colors and not adding in shading and details. With the background the power should be found in the silhouettes and the colors, each helping to establish a mood and tone. While what I have right now is not quite what I want, I am definitely closer than I was with my last revision. Originally I was using a bright orange and red color palette to depict a thick atmosphere of a gas planet, but now I have shifted towards a reserved grayish blue coupled with a calm peach color. This reflects the dormancy of S31 in a way that the bright, cheerful colors never could.

Saturday, June 18, 2011

Planning Out the Game World

Today has been mostly a day of rest, but I was able to sit down and layout all the different rooms that are to be found in the game, essentially creating a map of the entire game world. This helps tremendously; now I have a sense of scale and know how many rooms I will need to build. The system I used to layout the game on paper is probably going to be the system I use to display it on the mini-map. Disregarding secrets and such (which will be planned and added in at the end of the project), there is a total of 55 rooms, both small and large, in Reconstructing S31. Considering the size of the rooms and what many of them function as, this an extremely reasonable amount. This is yet another limit to keep myself thinking reasonably.

Friday, June 17, 2011

The Inevitable, The Future, and The Beauty of UDK

It is official; I made it through 23 daily posts until I ran into my first missed day. This is not something I will encourage myself to do often since the whole purpose of me writing this blog is to simply keep myself accountable. It helps me to be always thinking and always improving. With my thoughts written and displayed to the public I am bound more to what I intend to do; before I started doing this I struggled to come remotely close to finishing any of my projects. Why? I had no one to answer to but my mind. Obviously, this does not usually work very well.

So I missed out on blogging not due to laziness (surprising actually), but I was out at camp and then spent time afterwards with friends. Getting back late at night, my tired soul forgot that there was a blog to write for. Oops.

Nothing to report yet on Reconstructing S31, except that my thoughts are turning towards concepts for sequels. This is beyond dangerous and must be stopped. This weekend presents time for me to start drafting the game, from beginning to end. All the puzzles, story beats, environments etc.

Finally, I have finished my time at the video game design camp I was attending and coming back I must say UDK is hot. Really hot. It is an incredible engine, especially for the level designer, and I hope I will be able to have more opportunities to work with it in the future. Here are a few more screenshots of the three other maps I made during the duration of the course:

And so, full-time work on Reconstructing S31 beginnings again...

Wednesday, June 15, 2011

Games I Desire to Bring into Existence: An Aging Hero

As progress on Reconstructing S31 continues smoothly, I would like to use today's post to share an interesting idea I had recently. On my long drive to "Camp Game" I spend most of my time on the freeway dangerously daydreaming rather than paying attention to what is happening around me (I am just that good) and this time spent has proven to yield interesting ideas. Basically, I am interested in a game who's main character starts out as a young child and grows throughout the game until he faces death in his old age. While I am sure this has been done before (Jason Rohrer's Passage is the example that comes to mind, but that game is of a much smaller scope than what I am imagining), I believe the way I want to present the concept is unique. It would be used in a long game, maybe around 50-60 hours of length (I picture an RPG in my mind currently, but the idea is genre neutral for the most part).

The really interesting thing is this; pace the game so that in the beginning the player feels the joyful youthfulness and curiousness of the main character as they are both new to the mechanics of the game and all sorts of opportunities seem possible. But as the main character ages and the player gets used to and more accustomed to the intricacies of the game they both start to share their jadedness. Soon the player starts to see the game as a cold, deterministic set of mechanics as the main character struggles with doubts and the evils found within his world. I also think that a story that spans the entirety of a person's life would fit well within the time frame most games present (+10-30 hours). Regardless of the story, however, relating the main character to the player in a parallel manner such as this could lead to some interesting design decisions.

Tuesday, June 14, 2011

Reconstructing S31 and the Things Really Begin

First, the title; Reconstructing S31. Based on the criteria I set for myself, which was to describe what the player does and in what context they do it, this is a very perfect fit. The game takes place within the confines of a deep space facility called Shipyard 31, or S31 for short. It is here where a sophisticated system of machines and AI's construct large freighter ships that are sent out throughout the galaxy to carry and deliver large amounts of materials. However, after 700 years of operation, S31 has fallen into bad shape and it is up to the player, an "Emergency Revaluation and Reconstruction AI Construct,"  to return it to full, operating status. Much of the puzzle gameplay revolves around mechanics that have the player rebuilding or resynchronizing the nonfunctional remains of S31.

In order to further limit myself, I will be starting to layout everything that happens in the game. While of course I need to mind that in regards to plans somethings are just going to have to change, I still need to have some basic structure and goal to aim for. Basically, I want to lay out how everything in the game fits together; the gameplay, the sound, the music, the graphics, and the "narrative." This allows me to aim for cohesion and intention. I appreciate the many approaches to creating games, both those that rely on planning ahead and those that rely on improvisation. For this project, I am going with the first of this two as my solution for the bulk of development, even though in the beginning when I was building all of my base code I was basically improvising the whole thing.

It will be interesting to see how this turns out; I am looking forward to crashing and savoring the burn!

Monday, June 13, 2011

Tightening Up Slide Tiles

Today's post is going to be another brief one. This afternoon I was able to sit down and recode the highlight feature of the slide tiles to be more versatile and not some cheap hack like I was using previously. Because of this change, it will be much easier for me now to create new slide tiles, and thus, a longer, richer game. I am not a programming whore, but I do try to create good, flexible systems rather than over-scripted, hacked up code that only works in one single situation. If I find myself doing the latter, I sit down and think hard about what it is I am actually trying to accomplish; usually I am doing something wrong. That is currently the case as I still struggle with place tiles and I am going to further reevaluate their role in the game.

Tomorrow I am going to brainstorm more slide tile variations during the free time I find myself having at camp. I will also reveal what I am probably going to use for the final title of the "Aldea Lenta."

Sunday, June 12, 2011

Programming Problems, New Tiles, and More Regarding the Title

I am running into some frustrating issues with coding the place tiles and I am going to give myself some time to think about how to implement them in an effective and non-tedious way. I have gotten these new ones I have added to work partially, but there are just some problems that stand in my way that will need to be solved.

Despite this little roadblock, I spent a decent amount of time working on the tileset for the outside of the shipyard. I like where I am going with it. It still needs some more details and I will add those when they become necessary to include. Below is a image showing an example of these new tiles:

Regarding the title of the game; I have put some more thought into the options I am looking at and I am starting to narrow things down. I want a name that is simple and descriptive, explaining both the world the player inhabits and the things the player does. I just really want to get rid of the code name "Aldea Lenta." It is driving ever so slowly into insanity.

Saturday, June 11, 2011

An Easily Written Progress Report

I did some work on "Aldea Lenta" this morning. Here is a brief list of what I have done:

1. Finally finished the code for the basic place tiles. They work great; now I need to create the variations of these tiles that allow for interesting puzzles to be made.

2. The controls have been switched from the arrow keys to WASD.

3. I have implemented different sized rooms. "Aldea Lenta" does not have scrolling screens. Instead, the player moves from room to room. This allows for optimal control over how I frame each room for the player. Multiple room sizes allows me to have some scenes where the view is zoomed in and can focus on detail, while others are zoomed way out and allow the player to fully experience the sense of scale.

Tomorrow I plan to work on some of the graphical tilesets and implementing the variations of place tiles. I also think I have a final name for "Aldea Lenta," but I will need to consider it a little longer.

Friday, June 10, 2011

Non-Linear vs. Linear

I have been thinking about the overall structure of "Aldea Lenta" and have been running into some issues with scale. I want to portray this futuristic shipyard as a place of great scale, but with a more open, non-linear game this usually requires that a large world is built for the player to explore. However, I only have so much energy and time, and I need to consistently limit myself to cut down on the dangers that ambition brings. So, I have decided to change the game's structure from a more open, "Legend of Zelda" like experience to something more linear in the vein of what Valve has done with much of their single player products. This decision solves multiple problems; I have justification for controlling what parts of the game world the player can access, puzzles can be solved once and then the player moves on forever instead of me having to design more persistent systems, and the game can focus on what is important, solving puzzles, not tediously traversing an expanse environment.

Thursday, June 9, 2011

UDK's Surprisingly Cool Deathmatch Bots

The majority of today was spent on making my UDK level design actually fun to play. I added things such as player starts, path nodes, and items in order to address the basic gameplay needs of the typical deathmatch. Path nodes in UDK are a nifty thing; at first it might seem tedious to create the paths for AIs to travel on for those of us who have most worked with older engines that did not require this, but it makes the enemy behavior more engaging and controllable. For example, there is a spot in the map where an out of the way, small, horizontal column leads up towards a location where the player can find a Quad Damage pick-up. It is difficult for the player to maneuver themselves up to this spot, thus making the item rewarding to get. With a classic FPS AI model the bots would have no idea how to jump onto this platform and run carefully along its narrow structure. Path nodes make this possible.

These nodes are also surprisingly easy to use; one just needs to simply place them into the map and they work. I am sure there are other functions, more complex of course, that they can utilize, but for basic death match bots I was surprised by just how effectively intuitive they were.

Wednesday, June 8, 2011

Working With UDK is Pretty Enjoyable

Pondering awhile about the my entry yesterday made me realize that I have already started to allow this blog to become the one thing I did not want it to; a place where I whine and complain and act all cynical in the most simplistic of manners. I also was starting to share my opinion, which is something that I know the Internet does not care about, and honestly, neither do I.

So at this camp I have been spending the unnecessarily large amount of time given to me to really sit down and polish up the map that I have been building in UDK. Half of that time is spent baking the lighting, which looks amazing. Since the actual design of the map is not really gameplay oriented (I am not too familiar with the intricacies of UT3's design and at this point I could not care less about death match shooters) I have been focusing on what is most important of all, the visuals! And really, UDK allows a designer to go all out. It is ridiculous how many meshes and lights you can layer into each other; it almost feels a little dirty. Here is a screenshot of what I have accomplished so far:

It definitely helps to have great assets. The tree, which operates as the main set piece and landmark of the map, is a wonderful model provided with the development package. A lot of the other models are also really well made and are quite versatile in there applications. Gameplay wise the map is boring and dull. There is going to be a jump spring somewhere in there to spice things up...

Tuesday, June 7, 2011

UDK is Pretty Neat, What is This I Do Not Even, and E3 Day One

Two days in and I already am starting to get a good grasp on how to utilize UDK. There are actually a lot of similarities between decorating in UDK and decorating in Wonderland Adventures: Mysteries of Fire Island, an indie title I did some level design work for around three years ago. The tone of the class is, shall I say "relaxed." I am all cool with this, but the next time I do something like this were I know the majority of the people involved are introverts I will do it with a friend so that I can have some back-up to get people hyped. Though for now relaxation is what I need; I will feel in the mood for energy later.

I was almost going to write about what I was going to have for lunch, but then I realized that would be the least interesting thing I could possibly talk about. Food is always the go to topic for people who awkwardly trying to make conversation. I mean, everyone eats, right? And more importantly, everyone enjoys food, correct? Unfortunately is seems as if my stream of consciousness flows exceedingly tonight; nothing I write will be correct or orderly. Definitely not poetic. Probably embarrassing.


Video games.

Okay, so E3 Day One was today. Hurrah. Hurray. Only one press conference, which was Nintendo and it was fine. Like Sony's; fine. Nothing mind-blowing, nothing spectacular. Today Nintendo unveiled their next console, the Wii-U. I keep on swearing that I will never complain about the names of products, but then they just keep on being so bad! Anyways, it was basically what all the rumors and leaks and claimed it to be. I think the idea of streaming straight from the console is actually neat and I also find the support for the old Wii controllers an interesting plan to recycle plastic. However, the controller's design looks a little uncomfortably and awkward. I am really starting to wonder why Nintendo keeps on believing that developers will find "new" and "innovative" game experiences with the usage of two screens, one a touchscreen. Let's face it; most of the games only use these features to marginally improve their control interfaces, providing a different venue for accessing maps or inventories. Which is trite.

Monday, June 6, 2011

Camp and E3, How Exciting I Suppose

Well, I must say this camp at Arizona State University is going to be interesting. Great location and a great teacher, Flashbang's Ben Ruiz. Totally chill dude, I can tell that he has a passion for what he does and has some great insights regarding development. I do not have much more to say right now since nothing really happened, but I am hoping that once the class picks up a little more energy things can become fun. If anything I will be able to gain a better grasp of UDK which is continues to surprise me with its easy of use yet powerful results

Oh, yeah, and E3. Well, day zero of E3. Four press conferences today, the schedule changed a little this year with Nintendo apparently being the only company with a Tuesday conference. I was not able to sit down and what the conferences live (and honestly, I just do not care any more), but of course I caught up a bit afterwards. Unless Nintendo decides to drop a bunch of crazy megatons, which I am pretty sure is not happening (there will be Cafe, but I predict it will be tainted with Nintendo's, well, Nintendoness in some way), I was right to not get to hyped up for this year's E3. There was almost nothing new. And honestly, I probably will not hop onto the E3 hype train again unless I go to the show in person. This my fifth year following the event and like with any good TV series I have figured out the formula: awkward talks by executives, "gameplay" demos composed mostly of mass-the-button quick time events, some prices, some development studio names splashed on the wall, and a bunch of ridiculous motion control presentations that lend themselves particularly well to becoming GIFs.

Yep, Gears of War. Yep, waggle motion games for kids. Yep, Halo. Yep, Uncharted. Yep, Mass Effect. Yep. I will say that I am interested in Nadeo's "Mania Planet" and the tech Sony is packing into the "PS Vita" is an incredible deal considering the $249.99 starting price. Definitely a lesson learned from the legendary "699.99 US dollars." In fact, that was probably the only real surprise of the event so far and it really has nothing to do with gameplay or innovation. Though, let me say that I am not trying to sound to whiny or cynical; I know I am looking in the wrong place for those things and I do enjoy the spectacle of E3.

Sunday, June 5, 2011

Place Tiles and the Next Two Weeks

I am going to introduce the second tile element that will be found in "Aldea Lenta," a type of block I am currently calling the "place tile." These tiles are quite different than the slide tiles I had shown earlier. With place tiles, the player clicks on a tile to pick it up and then clicks on an acceptable placing spot to drop it. If another tile already exists in that spot, the player essentially swaps the two. I have working code for this element from another experimental project that I will need to implement into the "Aldea Lenta" engine soon.

The puzzles involving place tiles usually involve creating seamless chains of pipes or other patterns. While the illustration below does not show an actually puzzle (in fact, the arbitrary selection of pieces makes the puzzle unsolvable), it does provide a look into what place tile structures might look like.

For the upcoming two weeks I am going to be attending a game development center camp at Arizona State University and so, work on "Aldea Lenta" will experience a brief break. This means that for this time I will most likely be writing about other things; depending on how interesting the camp is I might comment on it from time to time (basically, I am going to improve my working knowledge of UDK and to give myself something to do during the slow summer days) or I will talk about games in general (E3 is next week, so I am bound to have something interesting to write about).

Saturday, June 4, 2011

Plans for the Next Mechanic and a Brief Update to the Blog's Structure

Today I only got around to doing some sprite work on a new gameplay element that I hope to implement into the engine in some capacity tomorrow. Basically it consists of the player using zero-point energy to place and organize tiles in order to fix broken pieces of the environment and reconfigure particular structures. This is not going to be a physics based mechanic; like the rest of the game it uses grid-based logic. This is the shortest post I have ever written in my vast history of 11 posts and it might start a trend of posts that simply state the things I have accomplished in a day. These could work as filler; still keeping myself accountable to my projects on a day by day basis but also allowing myself to take a little bit of a breather when I simply have no thoughts to share. Hopefully this format change will increase my steadily decreasing sanity!

Friday, June 3, 2011

The First Play Test, Fixing Problems, and Laziness

Today's post is going to be another brief one since I am unfortunately feeling incredibly lazy.

Yesterday I was able to get in the first play testing of "Aldea Lenta." It was a short session since there is barely any content in existence yet, but it is vital to start testing as early as possible and to keep testing as an important exercise to be done throughout development. Even with the briefness of the play test I was able to identify a few key issues already and I am mobilizing quickly to eliminate them.

First, I am going to need to work on the control scheme. Since the game uses both directional keys and the mouse, most people seem to gravitate naturally towards the WASD keys instead of the arrow keys I am using currently. This change will be easy to implement.

Second, when attempting to solve a sliding tile puzzle players will usually plan ahead were they want their pieces to move and click in that space accordingly. However, they forget that the system requires that they move the surrounding tiles in a specific order in to move a tile around. This results in clicks that do not do anything and lead to few short term confusion. I apologize for failing miserably at describing this phenomena, but it is really hard to put into words. Hopefully a description of my solution will help give a better understanding.

Basically, to solve this issue I now have made it so that the tiles that can be moved highlight themselves once the cursor hovers over them. If the player can slide a tile it highlights; if they can't, it does not highlight. This then discourages players from clicking on currently unslidable tiles in an attempt to move them.

Thursday, June 2, 2011

Sticking with Game Maker and Brainstorming Inspired Ideas

Short post for today, for I have very little time.
I have made the decision to stick with Game Maker for the time being. My goal is to make a game, not to gain a large user base (regardless of how nice that would be), and Game Maker makes this as easy and quick as possible. At the end of the project I might want to port "Aldea Lenta" to another engine or write it up in a different language, but with Game Maker I can actually focus on making the game rather than teaching myself a whole new tool set and language (which is what Flash would require).

Yesterday I spent some time implementing the new concepts I had introduced into the "Aldea Lenta" code; basically, the sliding tiles are completely functional and all but a few bugs have been dealt with. So far I am really enjoying how the game is starting to feel; with polish it could be really smooth to play. The decision to make the game primarily a puzzler seems to be the right one; I am now having no trouble imagining what new mechanics and gameplay situations I could potential write into the game.

Wednesday, June 1, 2011

Now This is What I Am Talking About!

For the longest time I had struggled trying to find out what "Aldea Lenta" was going to do in terms of gameplay elements. This uncertainty made me waver back and forth between making the game action oriented and making the game puzzle oriented. And since I did not have confidence in either one of these approaches, I was planning on meshing them into a messy "adventure" design, similar to the mix of these two found in the Zelda series (which is far less messy and better planned than what I was considering). This mesh led to me only coming up with uninspired, boring gameplay elements like door switches and deadly crushers that were not interesting to interact with and had absolutely nothing to do with the core rail mechanic the game was built upon.

But now this has changed!

Looking to combine both the story and context of the game with the gameplay, I decided to look at the common themes the two can share. And then it came to me; reconstruction! To not divulge plot details, I will just say that this theme is vital to the entirety of the game's story crap. This basically means that the route I am taking with "Aldea Lenta" is the puzzler one. There will not be much action, especially combat, which makes sense considering that the location of the main character does not hold any hostile entities (except naive crushers of course. I might still include them in the game as some joke).

So what kind of puzzles will players be encountering in "Aldea Lenta?" Well, most of the puzzles revolve around rebuilding broken structures found within Shipyard 31. Walls, computer circuits, databases, and rails are among the objects that will be rebuilt and re-engineered throughout the game. This is done using the mouse, with the player's character manipulating these pieces remotely via a zero-point energy interfacing tool. I will leave these thoughts with an image showing an example of a very simple puzzle that could be found in the game. This one is sliding block puzzle were the player needs to rearrange the pieces so that they can have a path forward.