Monday, June 29, 2009

Screenshot of the last few weeks' progress

Nothing visible, just lots of internal stuff

Tuesday, June 16, 2009

Hey guys

Wow 8 days without a post? I figure I should make one.

Jon still hasn't done any art for me. Tell him to get to work.



------------
Spent the last 2 days writing my own scripting language parser / compiler / interpreter. No the game will not be modable like that, it's just for helping to make background objects and decorations feel more dynamic.

Monday, June 8, 2009

Water

Sunday, June 7, 2009

Monochrome v. Grayscale

Jon told me that some people at E3 were mentioning how they preferred the original monochrome graphics over the new grayscale + bits of color graphics.

I hate to have to argue my reasons as to why we chose to go grayscale, but trust us, it's for the better, and it's not simply us trying to go more "next gen" for marketing reasons.

I analyzed all the reviews we got on the first one. I listen to people's complaints, but not their suggestions generally, because complaints tell me what's wrong with it, but suggestions, unless coming from someone who knows what they're doing (someone who has designed games before), usually end up contradicting what WE want for the gameplay, or are a classic case of "good idea, doesn't work in reality". They are appreciated though, but mainly this helps us find out where we need to improve, rather than exactly how to improve it.

One complaint, was people saying how they "fell through the ground on level 9 even though it was lit up". That was a shrinky orb there, and yes it wasn't communicated in the best way possible, yet was the best we could within the first game's engine. In the new one, the light halos and the fog help out TREMENDOUSLY in seeing what's going on with the light. You can see the light's radius shrinking as you approach it, rather than the ground all the sudden disappearing from beneath your feet. We're gonna do a little more to distinguish shrinkies from normals too, but this is a good step in the right direction, made possible through the new graphics.

Secondly, the graphics in the old one hurt your eyes after extended play. People complained about this too.

Anyway, I do have "classic mode" as a hidden option in the game for those that enjoy the monochromatic graphics, but the game isn't designed for it, so there's no guarantee that you'll enjoy it. Spotlights are quite the pain to aim when you can't see the beam.

Just trust us though, we know what we're doing. I think.

Thursday, June 4, 2009

E3: Day 3

I arrived at the convention center at 10am sharp, ready to go. Unfortunately for me, that is 'late' because that's when all the attendees are allowed in. I had to make my way through the crowd to get to the front, show my exhibitor pass and quickly walk up to my station. The booths all looked the same as yesterday, on the way there. This would be the only time I see them all day and I didn't know it yet.

I went the entire day without a single bathroom or food break. It was extremely crowded today. There were people left and right and they didn't stop coming to check out the IndieCade booth. Someone was always looking over my shoulder (or at least within a minute or two of each other), watching me play Closure. Many people were interested in playing it as well so I was busy teaching and letting them play while explaining how it worked to the people viewing from behind me.

While I didn't meet any big celebrities today, such as Dan, John, Morgan Webb, or Olivia Munn, I would say it was one of the more productive days I attended E3. I received the most business cards today and I completely wiped out my supply of cards! I still had a few extra personal cards so I had to write down the website, www.closuregame.com, on the back. So hopefully people read the back of the card and remember to follow our blog.

A lot has seemed to stir up about PSN (PlayStation Network) lately. Two interested guys came by and wanted to know who from PSN came by yesterday. The two from today easily recognized the names and were excited to know that they had stopped by. The downloadable content network PlayStation 3 has now seems to be very stable and well developed thus far and will definitely be considered as an option when choosing how we will market the new Closure.

I also met a few sound guys who compose and do music and sounds for games. We are trying to get the new game up to date with the old one this summer so we will be looking into sound. It's all being considered in the development and we haven't made a clear decision yet as to how we will be going about this. In the previous version, Tyler made the atmospheric tracks for the background. We just need to be able to plan ahead with the amount of money involved while selling the game.

The day was a long one, not taking any breaks at all, and letting many, many people test the game out. It was very nice of IndieCade to invite us all out there to participate as developers of the booth, and I look forward to any of their future plans with other conventions and festivals. E3 was very productive and we got a lot of Closure exposure (I had to, I'm sorry) which will help later down the road when we want to start selling the new, full version.

So thanks to everyone who came out to see it at the booth and I hope you start following our blog. We literally post most of our thought and development processes here so it will be very fun and interesting what comes out onto the blog, compared to the final release.

Wednesday, June 3, 2009

E3: Day 2

I woke up this morning an hour earlier than yesterday to take off an hour before the show started. It started at 10am (Western) as opposed to arriving at 11am and starting 12 noon yesterday. I arrived right at 10 this morning when everyone started pouring in so it was a rush trying to break through the entering crowd and walk faster than everyone else to get to my booth area and setup. I eventually made it and hastily set up all the business cards and set my mind straight to play Closure for hours at a time.

Today seemed much different from yesterday. I guess it's because I had some experience from the day before. Many more people were willing to try the game out and get their hands on it as I explained how to play. Whereas yesterday, most people preferred to watch me play through the levels. I did that today, but not nearly as much as I did yesterday. Maybe it's because I had 2 more hours to demo today? Whatever it was, it was a slight difference from yesterday's show.

Today, a couple visitors from yesterday showed up and followed up with a few more questions for clarification of the design and concept behind it. I also noticed a lot more people who had already played the game online or knew about it before today. Some people started explaining the entire game to their friends beside them because they had already played through the whole thing online somewhere. It's very satisfying to see that other game developers or people in the industry take a look at a game and say 'I've actually played this already' when asking if they want to try it out. Replying to that is a little difficult at times because there's not much to say other than asking if they enjoyed it.

Another difference from yesterday, was that I had 2 chairs today, as opposed to 1 for myself. I was able to have many more one-on-one conversations with people who would sit down so I could demo or let them try Closure out, whilst still being at the same eye level. This created the oppurtunity to have good long talks, especially with some businessmen about the marketing and distribution of the new version of Closure. Now, we're still looking at options, so it's hard to say where we're going to go with it, but if we do our homework, it shouldn't be too difficult to decide by the time we're nearing the end of the development of the game.

About halfway through the show today, John, aka jmtb02 (www.jmtb02.com), and Dan McNeely of ArmorGames.com showed up to pay a visit. It was great to finally see them in person after knowing of them for almost 5 years over the internet. John took a lot of pictures at E3, some of which were of me. At the computer. Playing Closure - and showing it off and explaining it to a few people passing by. I also took a couple of pictures of the setup as seen below.

Last but not least, I did end up bringing my laptop. I don't know if it was worth it because I couldn't keep it on due to lack of power outlets in the power strip. I did have it on for one slew of visitors to the booth though, one group being Armor Games. I used my laptop to show a little of the new Closure's mechanics such as spotlights, buttons, and physics-based balls.

So all in all, after talking to people from SCEA PlayStation Network (PSN), Zeevex, and GameStreamer.net about our undecided plans for marketing and distribution, it was a fun day to get to know more people who might be able to help us out in the future when we're looking to release. There are many options out there but we have time to choose what we think is the best. The game is continuing to be well-received amongst fellow game developers so it is a good sign.

As far as fun goes, I had about an hour or two to walk around and get something to eat. I discovered the entire other wing of the building where I found some more big name booths: Capcom, PlayStation, Nintendo, etc. I still haven't tested any games besides Final Fantasy Dissidia, but watching is okay with me considering I'm not an extreme gamer of most of the games such as Halo or Left4Dead. I walked around, saw what I could, took pictures of what I could, and tried to get on TV again when I could - (through G4's broadcasting in the E3 News booth with Attack of the Show and X-Play cast members as our dear hosts). It's definitely a blast being at E3 with all the happy and cool people around to meet and introduce myself to.

Tomorrow is the last day, so let's hope for the best!


Left to right: Dan (Armor Games), Me (Jon), John (jmtb02.com)



























A couple pictures of the station I was set up at in IndieCade's booth. In the distance you can see the E3 news booth (with all the girders and stage lights) where G4 hosted the show live.

Labels: ,

E3: Day 1

So Day 1 of E3 finally ended. I started out by showing up to the IndieCade booth all the way to the back of the showfloor, about 3 stations to the left of the Square-Enix showbooth. Booted up Closure to level 26, where I left off the day before, and beat the rest of the game promptly before people started swarming into the place. I also set up a few stacks of business cards to the left and right of my table.

The exhibit show room was filled about 5 minutes after 12 (Western time). I sat there and played Closure (Flash version) as people started to walk by. Sometimes, if people looked interested or there was a group talking about it over my shoulder, I would turn around and explain to them the mechanics of the game.

I actually started talking to individuals at first because the room wasn't completely full yet. But I did talk to a member of Club Penguin of Nintendo, which is a kids' game based over the internet where players join in to playing the game up to 8 players at a time. Second, I talked to a lead graphics engineer from Ubisoft. He asked questions that involved the development process (blogs are good, wink wink). I answered by talking about all the beginning steps we took to refine the design of the game. A few visits by passersby later, and a lead artist from Blizzard shows up and sits down to take a gander at the game. I again explain to him a little about the art side and some of the design aspects. The whole day was great, getting to know a few people, introducing myself to the people that actually hire for this kind of stuff...It was a little strange but I got used to it after a little while.

Talking to other game developers is very interesting because you get a sense of where everyone else is coming from. It's a very unique experience being picked up by an indie-supportive company, IndieCade, to show off a web-based game. 5 years ago I wasn't thinking about how small games could possibly be recognized when I started making computer games. Nowadays, in a world where games repeat each other over and over and over and over again, developers are starting to pay closer attention to the 'little things' that people think are cool, that don't have to be mainstream to get the attention that a larger title could possibly get.

After a lot of explaining to people how we are actually releasing a newer version of the displayed Flash version, a few people were interested in marketing it, etc. We're not sure how we're going to go about selling the one yet, so stay tuned, because we're still looking at options. No need to jump into anything that hasn't even been made yet. Also, a few other guys were interested in seeing what has been programmed as far as the new version goes. I opened it from a USB drive I had with me to show them on the painfully low resolution monitor. They seemed impressed with the new mechanics and sharper, higher res. feel.

A couple interesting points were actually brought up about it. First, being, 'Do I really want to make graphics grayscale', meaning, take away all the true monochrome black and white and replace it with some graytones. We have decided that it is in the best interest of the new mechanics to have SOME graytones to bring more depth into the graphical style and level design. Fog being an important one. It will also alleviate some noise in the graphics when it's higher res. A second point brought up was a mechanic to have a timed light fade in or out, depending on how light or dark gray it gets before appearing or disappearing. This could be a cool concept and I believe it has been discussed. Buttons and gravitational balls can actually be used to achieve a timed floor effect right now.

Usually before talking to people I would ask if they wanted to play the game. At first no one really wanted to, but later in the day more people were interested in actually sitting down and spending time on it. I eventually took an hour break, and of course, that's when Daisuke Kobayashi, producer of Square-Enix(!!!) stops by and leaves his card and a promotional flyer for me on my table. The volunteer helping to demo Closure as I was absent was kind enough to save them for me, fortunately. I eventually returned after eating some overpriced pizza and taking a lap around the showroom to check it out a bit.

Most of the last hour of the show was spent letting people play test, while talking to others that were standing nearby. I didn't demo too much by myself the last hour because I was getting a lot of people that were actually interested in playing it for themselves.

Overall, we got very positive feedback from our game and it was definitely worth going today. Tomorrow, (technically, later today), I hope to fix up the new version so that it runs properly on the 600x800 screen resolution I'm using at the moment.

I hope to see you there!

Monday, June 1, 2009

Water Physics

Ya so I'm back on work today. Well for interesting stuff today. I polished up some aspects of the level editor before, it wasn't very screenshot-worthy but I put one up on the log anyway. The editor is divided into 3 parts. The "Level Editor" is for designing the parts of the level that can be described by a triangle mesh (that's land, water, and no drop zones). The "Object Editor" is for placing interactive objects. The "Environment Editor", which isn't in yet, will be for decorating the level. Anyway, the land editor is pretty good so far other than a few bugs with undo levels and other minor things, but the object editor OMFG. I didnt do any buttons or menus, so changing what you'd place and properties of them was controlled by a long list of keyboard keys (dubbed hotkeys). Of course, this was fine if just me and jon were to use the editor (which was sorta planned. The editor will be in the final PCMac builds of the game, but it will be hidden). However, I ran out of hotkeys to use (yes it was very confusing) so I had to do something to ease up the pain, which I did by adding in a circular menu for selecting the current "brush mode". It makes it a little better, as I no longer have conflicting hotkeys, although they are still used to switch the state of the currently selected object. It's not a big deal right now, not until the "polish" phase of development.


Anyway I hacked in some water / swimming physics today. It was fairly simple stuff. If the object is in water, change its gravity and friction (character, orbs, and the key float right now, and balls sink. gonna make keys sink now that I think about it). Of course, it's not an ideal solution at all right now. The character gets "diving" abilities in water. The diagram below shows where the motion is at right now, and what I want the motion to be like for final.



So like, it's not really that that motion is too difficult to implement in code. It's pretty basic stuff to do really, but the problem comes in the resulting collision/restitution physics. Physics suddenly gets much much more difficult when you introduce rotation. That's why the character doesn't rotate yet, and why I only have balls and not boxes as interactive physics objects right now. I don't half ass my work though, so one of my long term goals is to implement the Box2D physics engine into the closure engine. Of course, that's no easy task either. Box2D works best with static environments or ones where everything can be described with simple geometry. Closure isn't like that, the walkable area is constantly morphing with the light and spotlights, which makes for an exceptionally difficult job to implement box2D. Essentially, I need box2D to work with bitmap collision maps, which aren't present in the current engine, meaning I can't just plug in and play box2D, I need to hack the functionality I need right into the core engine.

Would it be simpler to just code my own rigid body physics engine? I've tried. 3 times. First try was years ago in flash, and it "worked" but was extremely unstable. The second was c++, and it worked, but had some small stability issues and was extremely inflexible. The third was extremely flexible, but had stability issues which I half-solved in the previous two, so I gave up realizing that the end result would be the same. Box2D is a lot better than anything I could do at this moment, plus what I learned from 3 tries at a physics engine will really help when it comes to hacking additional functionality into box2D.

Anyway, physics are only gonna be a minor part of this game. In my opinion, as fun as physics games can be, I much prefer a game where the physics supplements a different core mechanic, rather than being the main mechanic itself. Physics puzzles are way too random for a game like this, and I have to set up a ton of space-filling machinery in levels involving physics to ensure that the ball rolls the same way every time, and falls in roughly the same place every time. Sure, I could go all out with physics and stuff to the point where people become frustrated, but that's not what this game is about. As a result, physics will be a small part in some of the levels as opposed to a major part in all of the levels. Crayon physics is a fun game, but this isn't crayon physics.