Monday, January 31, 2011

Weekly Plan: 1/31/2011 - 2/6/2011

* Objective *
* SMS Font *
* SMS Code *
* SMS Graphics *
* LBP Level *

   The main goal for this week is to get Swap Meet Server code-locked aside from sound and the high score interface. This will include finishing up the transition of the font object, cleaning up some code, and finishing the graphics. On the side, I will likely continue working with the Little Big Planet level editor.
   I actually only have two places left where I use the DirectX font object instead of my own. This will go pretty easily; however, I do have to work out a draw method for one area that can change the font color.
   I have already made progress in terms of cleaning up the code this week. I have almost completely wiped out the Direct Input object; replacing it with my own code. After staring at it begrudgingly for a couple of hours and researching implementation techniques on Google, I realized that this process is much easier than I thought it was going to be. Once I started cleaning out the Direct Input, it all went (almost done now) very quickly. This was the last portion of code in Swap Meet Server that was not written by me, so this is a great accomplishment for me.
   Some other code things I am looking at is making a menu class as well as a play class. This will leave my game class as a basic controller to handle the transitions between the different states in the game. This will take some time, but ultimately it will make my code very much more organized.
   The other thing I need to get done on Swap Meet Server is a redraw of the player character sprites as well as draw some customer sprites. A friend gave me a good idea about how to implement the customers in a way which will not be confusing to the player. This actually will make drawing the sprites easier too, so I will most likely use his suggestion.
   During my free-time this week, I am going to continue playing with the Little Big Planet level editor. I really want to be a good part of the LBP community and get some content published. While it is play, it is also building skills. Working with any editor helps to familiarize yourself with similar tools. It is a development environment that works differently from the ones I generally use, so it is very interesting.
   These are my plans for the week. Being off to a good start is always helpful. Of course, I cannot even pretend as if these activities are all I get to focus on this week. In any case, if I get this much done, I will be well on my way to finishing Swap Meet Server in C++, and that will be incredibly awesome. What are you doing this week?

Sunday, January 30, 2011

Weekly Progress Report

* Objective Grade *
* SMS Font B *
* SMS Code C *
* SMS Graphics B *
* SMS Combos A *

   I like it when I am able to say I made a lot of progress throughout the week. I did have some late nights as well as the usual early mornings; however, to make even minimal progress is worth the loss of sleep. Programming is fun, but being wet behind the ears and on my own, every bit of experience gained is a learning experience in its own. Small successes can take many hours when you are still figuring out the work flow. As you gain experience, you know better, but for now, I am still finding my way.
   One thing I talked about needing to do this week was divorcing the DirectX font object. This went fairly well. I had to make my own sprite sheet for letters, numbers, and other characters I am using. I also had to make some different images for most of the informational visuals in Swap Meet Server. I still have a little bit of the swap out to complete, but so far I would say I have about 80% of it swapped. This was great experience. I started the sprite sheet for the font by using only the letters, numbers, and characters I thought I would need for the game. After expanding the sheet a few times to include additions I had not though of, I had the brilliant thought of how stupid I am for not just drawing the entire alphabet, all numbers from 0 to 9, and many characters. I drew the whole sheet. It took several more tries to get it exactly how I wanted it, but this will pay off in the long run. One, now I know for future projects just to start with the full range of characters. Two, I could use this sheet for other projects if I wanted.

   I really wanted to make more progress with the code in general this week. All work includes the code, so I did definitely jam in some respects. The font object could only properly be implemented by making it its own object. It has its own functioning class which defines each characters and handles the draw. This cut down code in many places. However, I am not completely satisfied. I am going to end up changing this to implement an algorithm which would take a string (a word) for input, break it down, then draw each character by finding the associated index for the array of images that represents the font. This would be much more effective than calling each letter by index in the calling code.
   I also completely recoded the order class to incorporate this new font object. That is where most of the font was used, because it handles basically all of the on screen information in the game. In it, in order to split down large numbers to draw correctly, I wrote an algorithm the takes an integer with more than one digit and splits it up into single-digit integers. In this case, 1,234 would read like 4 individual numbers, 1 2 3 4. This allows me to more easily call the correct characters in the font. Because it actually belongs as part of the font object, I will be moving it over so that I am able to use the algorithm for everywhere I use the font object. This will also be the basis for the algorithm the will split up words and find those characters in the index. This is excellent work, because this font object will be a highly reusable module.
   Where I did not make progress on the code is from divorcing more of the DirectX API. I am using Direct Input to handle some of my mouse as well as some keyboard functions; however, for now, I am completely removing the keyboard functions. Because I already run my own code for tracking the screen position of the mouse cursor, the only thing I am using Direct Input for is the mouse click. This can be done by myself in about 10 lines of code, so I really wanted to take out the unnecessary mess of a control object. The text swap took so long, I simply never got this far. It probably will not take me too long to write the replacement code in my own mouse object, but there are several places where I need to make adjustments to control function calls. This is pushed to next week.
   I made some progress with graphics this week. The font was one of the graphics issues I was having. That is mostly out of the way now. Thanks to this progress, I am now competently able to release my game to people knowing that they will be to view the game information the way they should be able to. I also make some text appear when the order is correct. This took some magnification and translation techniques, which is basically fun with matrices. Due to time, I used the DirectX methods for this, but will be needing to make my own math library to handle this stuff myself.
   I am still working out some graphics issues though. I have not worked on the character sprites at all this week. That is the most of where I need changes made. I also need to make some adjustments to the game menus as well as the way instructions are presented in the game. These things are also pushed to next week.
   The combos was probably the easiest part of my week. I implemented
them using a basic multiplier. If you get two or more orders in a row correct, your earnings are multiplied by up to 20. This does add a bit of fun factor to the game, because you start to earn money more rapidly.

   While I have made lots of progress, I still have lots to do next week. I really want to get the game on lock-down as far as all looks and functionality that are there goes. After that, I will spend a week or hopefully less generating and implementing some basic sounds, another week to implement a high-score interface, then one more week for code cleanup, packaging, and release. I think three more weeks to completely finish Swap Meet Server is a pretty good estimate at this time. After that, onto mobile, Baby.

* Random Week-Long Personal Stats *
* Description Stat *
* Plants watered 3 Times *
* Toilet flushes about 55 *
* Chicken Enchiladas? Damned right *
* Programming hours 30 *
* Awake? Hardly *

Saturday, January 29, 2011

Review: Little Big Planet - The Definition of 'Next Generation Platforming'

* Title: Little Big Planet *
* Platform: PlayStation 3 *
* Release Date: October 28, 2008 *
* Developer: Media Molecule *
* Publisher: Sony Computer Entertainment *
* My Rating: 10. Flawless *

   Little Big Planet is one of those games that will be very hard to give an all-inclusive review on. There is so much to it, that I cannot possibly hope to touch on everything I would like to mention. To start, let me say that the game is awesome from beginning to its non-existent end.
   The whole experience is only summed correctly by the tagline that has become associated with Little Big Planet: 'Play. Create. Share.' While the core gameplay in Little Big Planet is classic platformer, there is so much more going on. Much of the story mode of Little Big Planet is based on going through the game's fifty or so levels and collecting different objects for use in decorating both the game and your sack-person. The action is frantically fun, as you will navigate the 2.5D levels by running, jumping, swinging, and driving either by yourself or cooperatively with up to four total players. In addition to all of the objects you collect throughout the levels, you also are rewarded for things like finishing a level and making it through a level without dying. The collecting and decorating alone is enough to keep you coming back well past completion of the last level. Further, there are many side activities, mostly meant to be competitions, that you unlock throughout the course of the story mode. Really, the only way to sum it up is to call it amazing and watch a million trailers or play the game.
   The graphics are stunning. If Sony were to pick a game to be its poster child, I would hope they would pick Little Big Planet. LBP is the very definition of high-definition gaming. Everything is so crisp and clean. There are background objects moving around. Even the smallest objects have their own very visible characteristics.
   The audio only matches the graphics in terms of high-definition. Some of the levels will have you dancing in your seat. Everything has an appropriate bell or whistle attached to it for you listening amusement. Again, words simply cannot describe how amazing the whole experience is.
   The controls are a little awkward at first, but it becomes like second nature in no time. The levels are 2.5D, which means it is basically a side-scroller; however, there are three different planes in which the sack-people can be playing. You may have objects on one plane that you have to go around by hopping to a different plane. It goes without saying that you must look behind every object to collect all of the goodies. Many of the levels require you to grab hold of something to either swing or push or pull to get through to the next area. This is appropriately handled with the R1 button on the controller. When you get bored, you can dance around by waving the controller around; six-axis controls, and using the L2 and R2 shoulder buttons with the analog sticks to move your arms. It is absolutely fantastic.
   The story mode is really just a small part of Little Big Planet. Every person that plays Little Big Planet should really participate in the community. If the levels in the story mode are amazing, the levels in community mode are out of this world. One of my favorites so far is a roller coaster ride, which is fairly light on the gameplay, but just jaw-droppingly beautiful.
   Of course, every member of a community should make contributions. Little Big Planet has an excellent level creation tool. There are tutorials to help you get started, but after that, the only limitations are literally your imagination and the thermometer that gauges how much stuff can be in your level. You can make anything you want with the tools and set it to do practically anything. Make an object you like? You can save it for use in other levels and even share it with the community by including it as a pickup in your level. I do not have a published level yet; however, continue following my blog for an update on this. I have a couple of levels in the works and will definitely write a post about each when they are complete and released for play.
   Really, the only thing that needs to be said about Little Big Planet is I absolutely love it. If you were to purchase a PlayStation 3 but only had enough money to buy one game, you must buy Little Big Planet Game of the Year Edition. At this point, you can probably even pick it up for around twenty bucks. Hands down, this is one you absolutely cannot take a pass on.

Friday, January 28, 2011

Free / Indie Game Review: Hobo - Room for Improvement

Title: Hobo
Platform: Flash - Plays in browser
Sponsor: Armor Games
My Rating: 5. I wanted to like it,
but not much to it.

   Hobo is a Flash game available over at Flonga that will take most of us back to the glory days of the Nintendo Entertainment System. See, Hobo is a 2D side-scrolling brawler that was made from the same cookie cutter form as its 8-bit ancestors. Instead of taking a chance to innovate, the developers stuck closely to the old blueprint and produced a game that any of us older gamers will instantly recognize.
   As you may have guessed by this point, Hobo is a story about a bum who was minding his own business, sleeping wherever he could. A cop decides that he may not sleep there and treats him rather unkindly. Hobo becomes disgruntled and decides to wreak havoc on the local neighborhood. Playing the part of Hobo, you punch, kick, and disperse bodily fluid through several different local landscapes.
   For me, where Hobo really fails is the gameplay. I must admit, there are no pesky bugs or misspellings that bothered me, it just was not an inspired experience. Even on the hardest mode, Hobo is just a simple brawler without much going on to keep you entertained. While the combos are disgustingly great, you never do anything more than punch, kick, or dispense bodily fluid on random characters. I think every game looking to emulate a classic style should also look to bring something new to the table. We should never feel that we are stuck with old standards; however, that is all Hobo brings.
   The controls in Hobo are executed flawlessly. I admit that it is hard to not resort to button-mashing. However, for those of us that like to play and think we have some strategy, kick and punch is all you need to know. Different combinations allow for special moves, all of which involve spraying some bodily fluid on the enemy. The combos are not all available at the beginning, you unlock them as you go, so that gives something to work for.
   The looks and sounds of Hobo are great. The graphics are done particularly well. You really feel like you are playing a Nintendo-era game with high-definition graphics. I believe this was the aim and it was executed perfectly. The different sound effects mixed with the animations will have you laughing. This is how such a game should be.
   It is very unfortunate that the gameplay is not so great in Hobo, because the rest of the presentation is absolutely wonderful. A game cannot just look and sound good and get a pass to be great. At the same time, you cannot have great gameplay but be lacking on the looks and sounds and expect to get good reviews. However, gameplay; or lack thereof, will always impact the review score I give a game drastically. There is plenty of room for improvements in Hobo. I am excited to know that there are already several sequels out. I will be playing them soon. Follow my reviews and find out if the series takes a turn for the better or has maintained a permanent spot in the land of mediocrity.

Thursday, January 27, 2011

A Customer Service Experience: Alliance Auto Transport

   These days, customer service is of the utmost importance. People have very little extra spending money and infinite ways to dispose of it. Therefore, when a customer goes to purchase a good or service, they are not just looking for high quality, they are also looking to be treated as if they were part of high society. The feeling is one that has been bred into us through the years. However, no matter how the feeling came to be, the fact remains that customer service is a part of purchasing products and services.
   For some of us, customer service comes naturally. We aim to please. However, for most of the rest of us; myself included, customer service just is not our thing. This does not mean we get a free-pass or that it is an excuse. Frankly, we should always be looking for ways to improve our relations with other people. Recognizing you are not good at something should not be an excuse for avoiding that thing. Rather, it should be an opportunity to improve ourselves. Everybody will find themselves in positions where they must deal with people they would rather not deal with regularly. Every such situation should be looked at as a training program: handled the best you can, evaluated afterward, and have thought given to how the next such situation can be improved.
   All of this said, I would like to share a recent customer service situation I was involved in. This time, I was the customer. My family and I are in the process of moving across the state. I needed to have my car transported on a carrier as cheaply as possible. I went to one of the many websites that offer to give away your information to every company in the phonebook and let them bid on the job. I went with the cheapest, but best peer-rated, company to bid, Alliance Auto Transport.
   The people there were very easy to work with. The job happened much more quickly than I thought it would have. It also cost exactly what the quote was, which was very important to me. Everything was excellent, except for the driver of the truck. After dealing with this guy for the whole day the day of pickup, the only reason I let him carry my car was because he seemed to handle his rig expertly. I cannot really explain the situation better than I did in the letter that I sent to the person at Alliance Auto Transport that handled my job. Therefore, following is the letter, then a conclusion.

Hi there Scott,
   I just want to let you know that my Chevy Malibu was successfully transported and give a little feedback.
   First off, you guys in the office are awesome. I really appreciate being able to get the car carried up there for as cheaply as I did. I know the cost of this job was next to nothing profit-wise. Towing the car behind a moving truck would have cost about the same with trailer rental and extra gas to pull it. Moving is always stressful, so to have that taken care of is one of the weights off the shoulders. Your customer service is excellent. You and Phil were on the ball.
   The web-based system works great. I cannot remember which site I went to for the quotes, but you guys get the response within minutes it seems, so good choice for advertising. I just saw the order form though. I never did fill it out and send it back to you. If you need it for your records, let me know and I will send it to you.
   The carry itself went off without any damage to the car as far as I can tell from pictures sent from the receiving end.
   I had a few issues with the driver though. He was very rude on both sides of the carry. He did not want to answer basic questions. He did not want to drop the car at the house on the receiving end.
   I was told he would be here between 9 and 10 AM on Friday. At 10:30 AM, I called him to find out what his estimated time of arrival was. He said he was in the shop having an unknown problem diagnosed/repaired on the rig. I was fine with that and just let him know to give me a call when he knew. He called me about 2 hours later and asked me for directions, but still said he was not sure what time he would be there. I gave him directions, but I was concerned that a person that drives a truck for a living doesn't have a GPS or at least a map, he seemed to have the time at the shop to look at one. I let him know he could come any time except between 2:30 PM and 3:30 PM. He asked to meet him at a shopping complex near my apartment when he did come so he would not have to worry about driving the rig through the complex. That was fine, but I reminded him of the time constraint. He said even if he did arrive at that time, he would wait. At that time he did not sound like he had a problem with it.
   So about 2:40 PM, the guy calls. He wants me to meet him elsewhere with the car about 4 miles from my apartment. I reminded him that I was picking up my kids and would not be able to meet until 3:30. I told him I could not take the car to where he was, because I did not have a ride back home and did not plan on walking the 4 miles with my kids. Everything was still fine at this point, he was irritated that I was not able to come that moment, but he agreed that he should meet me somewhere closer to my complex (the shopping center we initially agreed upon is literally across the street from the complex).
   I rush my kids home, I drive over there, park the car perfectly behind the truck ready for him to drive up the ramp, it's 3:29 PM. I walk up and introduce myself. He was eating a sandwich and said "I was eating my lunch, but I guess I'll put it away." I kind of just thought were you not expecting me here? Anyway, so he looked over the car briefly and told me older than 10 years shipped as is. I am fine with that, but I still wanted to mark down the damage I have on the fender and stuff, just to establish the base condition of the car. He did not like that very much, I am not sure why. He loaded the car, and I was trying to get some basic information out of him while doing it. I ask him if he were driving up to Sacramento that night or the next day. He just kind of snorted something about his truck being empty. When he was done, he did not even say anything, just started heading back to the cab. I asked if there was a copy of the paper for me and he acted like I was ludicrous for asking. I told him I definitely wanted something stating that somebody else is in possession of my car for the purpose of transporting it upstate. I verified the cost of transport, he asked what I was quoted. When I told him, he did not contradict it, but he was definitely not happy about the price. Really, not a big deal, just kind of rude. I asked if he would call me when he knew an estimated window for delivery. He told me he would call the recipient when he arrived.
   I was told by Phil the drop would be Friday afternoon or Saturday morning. I knew loading the car Friday afternoon meant it would arrive either Saturday morning or Saturday afternoon. By about 12:30 Saturday afternoon I had not heard anything from the guy. I called and asked what the estimated time for delivery would be. He told me he was still filling his truck. I told him that was fine, but insisted he could have shared this information the day before. He was very rude about it and just said that it would be arriving sometime on Sunday. I told him that was fine, but asked if he thought it might be before noon or after noon. He said definitely before noon. He then asked if the recipient would be able to meet him elsewhere for pickup. I told him no. I was paying him to deliver it to their door, which is a house in a neighborhood that circles around. I understand not coming in the apartment complex, but he had no reason to not drop the car at the house. He said he would, but then asked for directions. It's not really a big deal, but this guy drives a truck for a living. How does he not know where he was going?
   Anyway, so I guess he gets to Sacramento at about 11 Sunday morning. He calls my friend. He insists my friend meet him elsewhere to get the car. She told him no. Eventually he took it over there, but only after asking again for directions and having a frustrated conversation with them. I am told he was rude during the whole drop and did not want to give a receipt for the cash he was given.
   I don't know what the guy was mad about, but some people might not want to deal with you if all the drivers are like this. It is too bad too, because besides him being so rude, half a day late on my side, and a full day late on the other side, he actually did a really good job. He definitely seemed as if he knew what he was doing while handling the loading of the truck.
   Anyway, I'll let you know, and you should let him know, I had sent an extra $50 for my friend to give him as a tip, because I knew he did the job for dirt cheap. However, since he was such a PRICK, he did not get a dime.
   Again, thank you for your service.

   Now, Alliance Auto Transport is a contractor that subcontracts the carry out to trucking companies. This was the first time they had ever worked with this particular trucking company. Scott at Alliance was none to pleased to see the direction this letter took. He did straighten things out on both ends. The trucking company did give me a phone call with a formal apology as well. Even though I did not like the truck driver, the way Alliance Auto Transport handled the response to this email was of the highest quality in customer service. Due to this, I give Alliance a 5-star rating. The truck driver? Well, perhaps he was having a bad day. His day certainly did not get any better after speaking to his manager about this carry, but hopefully he got a talking to and is now doing better with his customers.
   Look, part of the service you offer when you offer any service is customer service. Do not think your customer will sit down quietly while you act inappropriately? If you are in an industry that requires you to deal directly with customers, always be on your best behavior. Again, I understand I also have improvements to make in this area. However, I hope this guy has learned his lesson.
   Alliance, thanks for the carry. Double thanks for making sure the truck driver was informed of his bad behavior and attempting to have it corrected. I truly appreciate the gesture and would highly recommend anybody looking for a carry to call Scott and Phil at Alliance Auto Transport.

Wednesday, January 26, 2011

More Controllers: The Touch Interface

   Another entry in my controller series, is a control setup that simply cannot be ignored any longer: the touch interface. For most of us, this comes in the form of our smartphones. Of course, I could not hope to cover all touch interfaces with a single post. This post mostly focuses on those touch interfaces that are implemented well, so think iPlatform and high-grade Android phones.
   I must say, I absolutely love the touch interface. I can see a future where all of our devices are actually a touch-interface. Keyboard keys? A thing of the past. Numerical buttons on the telephone? A thing of the past. A touch interface can easily do these things. Best of all, it is not bound to a single purpose. Because it is essentially a monitor, it can be manipulated to display different screens and behave in different ways.
   I was a little wary when switching to a smartphone. Many of my friends already had one. I thought they were cool, but I simply could not see myself doing much on such a small screen with what seemed like not the greatest functionality. The reality is though that these touch interfaces with their wide ranges of functionality work incredibly well. Being the type of person that regularly ignores the phone when it is ringing, I had a hard time thinking I needed a fancy phone to do anything. I could not have been further from correct. I may only talk on my phone for less than 100 minutes per month, but the amount of other things I do with it account for hours out of each day.
   In the case of playing games, a touch interface only works well if it has multi-touch capability. This means that the phone can easily register both of your thumbs on the screen at the same time. When this functionality is done correctly, the screen can instantly be transformed into a controller or anything else you need for games. There is a little bit of processing power that needs to be added in order to make the response seem up to par, but even when emulating older games, the touch interface on many of these devices is more than adequate.
   A major concern I had with the touch interface is fingerprints. Oh how I hate fingerprints on my screens. Many of these device manufacturers knew this though and designed their screens to be able to easily wipe away the prints. Further, high definition beats out fingerprints any day. Anybody concerned about fingerprints messing up their view on a touch device does not yet have proper experience with a touch screen.
   I really feel that the touch interface is the wave of the future. No Microsoft, dancing in front of a camera to interact with your television will never become mainstream. However, we can certainly make multi-purpose devices with touch screens that do whatever we need. While I would not recommend using a cheap device, if you have apprehensions about touch devices, this is the day and age to get one and get comfortable.

Tuesday, January 25, 2011

Cool Stuff Watch: Bamboo Tablet - Write on Your PC

* What? Bamboo Tablet *
* Why? Drawing pad for the PC *
* How Much? $60+ *
* Where? Electronics store *
* Really? Yes, everybody feels a need to *
* jot something down on the PC *
* from time to time. *

   Did you ever wish you could sign a document in your email without printing it out first? Have you ever used an art application, but wish you had something better than a mouse to draw with? Have you ever just thought, "this would be so much easier with a pen and paper type interface?". The Bamboo Tablet, a touch pad for the PC, is the answer for all of these needs.

   Many people know that I am currently self-employed, working from home. Many people also know that I just graduated from an online school. Therefore, it is easy to think that if I printed each and every document I need to sign simply to fax it straight back to the person that needs it signed, I would be wasting incredible amounts of paper. The Bamboo Tablet has a plug-in for most of the major office suites that allows you to write directly on your documents. No more printing, no more scanning, no more faxing. Sign, save, send back in the email. This tablet literally pays for itself in the ink you save.
   Another great use for the Bamboo Tablet is when drawing stuff on whatever art suite you use. Most of us have at least minimal experience messing around trying to create one art asset or another. All of us with this minimal experience can easily agree that the mouse really does not work well compared to pen and paper. Those of us that are left-handed feel the pain even more. The Bamboo Tablet brings the feel back to paper and pencil. While my art skills are not anything to brag about, I feel infinitely more comfortable drawing with the tablet than I do with the mouse. Added bonus: the kids absolutely love it. Again, savings come in the form of not wasted paper. Also, know how the kids always love to save their drawings? Well computer storage is much cheaper and can be managed much more efficiently than real-world storage. A particularly good drawing by the kids? Use it as your wallpaper. See, this really is great.
   For the true Bamboo Tablet enthusiasts, the tablet can completely take the place of the mouse. The tablet is fully functional as a mouse and is every bit as responsive. I have not taken it to this level yet, but have a couple of friends that swear by it. If you are the type of person that wants a touch screen monitor, but cannot yet afford it, this is definitely a viable alternative to start with.
   In this age, I honestly cannot think of a person that does not have a need for a PC tablet such as the Bamboo Tablet. As more and more of our transactions quickly turn from the physical world to the internet, a tablet such as the Bamboo Tablet will be absolutely essential to our daily needs. Be ahead of the curve and get yours now.
   Exclusive Cool Stuff Watch tips: Do not worry about going too expensive. If you really like the tablet, I highly recommend upgrading to a touch screen monitor. A basic touch pad with a pen should do you well. If you go with the Bamboo Tablet, this is one piece of hardware in which you will want to use the drivers on the disc. I attempted to use the over-the-internet drivers and the tablet did not function as well as I could have hoped. Use the disc.

Monday, January 24, 2011

Weekly Plan: 1/24/2011 - 1/30/2011

* Objective *
* SMS Font *
* SMS Code *
* SMS Graphics *
* SMS Combos *

   Time is a very valuable thing. Apparently I cannot afford much for personal projects at this time. Of course, I am working daily on getting the move ready to go at this point. Also, work has been keeping me fairly busy; even into the evenings and weekends.
   Having taken this all into consideration, I have reevaluated my project goals and am going to focus on a sole project. I really need at least one strong piece to use for a portfolio piece. Because I never considered the C++ version of Swap Meet Server to be a finished product, but it is closer to done than other projects I have going, I am going to focus on making that project everything I would like it to be. Finishing out this project will include some more coding, some code adjustments, some graphics adjustments, and the addition of sound.
   The first thing I will do this week is finish up the adjustment of all of the font in Swap Meet Server. I am having an issue where some of the text displays awkwardly on different types of monitors. This is highly undesirable. I do have most of the assets fixed, I just need to implement them, so it should go quick.
   As far as the code goes, I need to clean up some of a mess I left when implementing the mouse functions. This actually should not be so bad and will clear probably several hundred lines of code from the project. That is always nice. Further, the mouse implementation was done with borrowed code. After cleaning it up, I will be able to honestly say all of the code is mine.
   With the graphics, I want to redraw the main character. Sunguy can be an icon in his own right. My art skills leave much to be desired, but I am sure I can do better than I did. Also, instead of having him run back and forth across the screen, he will have a more permanent spot in front of the cash register. This will avoid confusion during the faster gameplay. I would also like to add a few customer character sprites. This was always part of the plan, but they still have yet to be drawn. The other graphics-related item I wanted to add is on-screen visuals for when a correct order is filled. For example, if you get the order correct, you see something like "+$20" float above the cash register briefly. I also need to make an icon for the application that you see on your desktop.
   If I get to it, the last thing I really want to accomplish this week is getting the combo system in. This actually will not be very hard to implement. All I need to do is put in a counter that increments with each correct order and resets with each wrong order. If the number correct in a row is more than one and less than ten, we multiply by that amount. If it is more than ten, we multiply the amount by ten. This means, that the player can earn up to ten times the amount of an order per correct order. Fast money!
   This is what I hope to get done with this week. Again, this is a more focused plan with the thought in mind that I really do not have a whole lot of extra time to spare. After I am happy with this version of Swap Meet Server, not only will I have a portfolio piece I am proud of, but I will be well prepared to close that chapter and move on to the Android port of the game.
   What are your plans for the week? How do you intend to reach towards your goals? Leave some thoughts. As always, thank you for reading. Make this week the best one yet.

Sunday, January 23, 2011

Weekly Progress Report

* Objective Grade *
* Cover Letter Template A- *
* Font Adjustment C *
* Installer D *
* Combos F *
* Android Project F *

   Well, I said I had a tall order for myself. A busy workweek did not help me accomplish much. The cover letter template is complete. Everything else is a work in progress. Moving and work and other things will be keeping me very busy these next few weeks, so I will definitely be scaling back my goals. I really need to be working on at least one of my programming projects, so my focus for this next week will be the C++ version of Swap Meet Server. I have adjustments that need to be made, but as I have said before, I do have a version ready to play. If anybody is interested, let me know and I will send you a copy.

* Random Week-Long Personal Stats *
* Description Stat *
* Crunches 2640 *
* Videogaming Hours 15 *
* Pieces of Sushi 18 *
* Showers 7 *
* Still Alive? Yes *

Saturday, January 22, 2011

Review: Rock Band 2 - The New Definition of 'Fun for the Whole Family'

Title: Rock Band 2
Platform: PlayStation 3
Release Date: October 19, 2008
Publisher: MTV Games (Viacom)
My Rating: 9.5 - Super

   These days, it is very rare that a video game will keep me up until sunrise. Downloadable content? Not for me. Online duels? Again, simply not for me. More than one way to play? Sorry, I do not have the time. However, Rock Band 2 is that rare jewel that will keep you playing in all modes. A couple of weeks ago, I wrote a report on why it is I will not be purchasing Rock Band 3, so it is only appropriate to give Rock Band 2 the review treatment.
   I would love to say that the gameplay in these plastic-instrument music games needs no explanation at this point. However, as a late comer to the genre myself, I fully understand that you really do not know what you are getting into until you start playing. Simply put, you play the game with plastic instruments. The PlayStation 3 version of Rock Band 2 comes with about 100 tracks, including the extras you get a voucher for on PlayStation Network. When you begin playing, you see that the buttons on the instrument are mapped to the "highways" on the screen. You try to hit the buttons in sync with the notes as they pass the cursor at the bottom of the highway. Hit successive notes to gain score multipliers. Play well and make it to the end of the track or do poorly and fail. The more difficult the level of play, the more close to playing the actual music you are.
   There are several modes in Rock Band 2 including Quick Play, Tour, and Practice. You must play on the tour mode in order to unlock all of the tracks. You also get to create an avatar and customize it using cash you earn in the gigs to purchase new clothing, accessories, and instruments. Quick Play is my favorite for practicing, because you do not need to worry about losing fans if you fail. One thing about Rock Band 2, while playing in Tour Mode, you feel as if you are constantly progressing. You are unlocking tracks, moving to different locales, earning fans and cash, and, if you are challenging yourself, moving up in the difficulty levels. For those that need a little extra practice, there is a practice mode to help you get started. For the drums in particular, the practice mode is great. However, for the guitar and the vocals, the best way to get better is just to play.
   I have already alluded to the different controls in Rock Band 2. You have my favorite, the Stratocaster Guitar. Also, there are drums and a microphone. Of the three instruments, the drums make you feel the most like you are playing an instrument. You can literally hear the beat coming out on the plastic drum set as you are playing. I cannot keep a beat, so I generally stay away from the drums. The microphone probably allows for the sloppiest play; however, in the harder difficulties, you either have to be able to sing well or be a female. Serious, every female I know can play vocals on hard and do well. The guitar offers a lot of challenge, but is admittedly the furthest from being an actual instrument. Do not get it wrong, your fingers will fly on the harder difficulties and tracks, but the five button setup simply is not playing a real guitar. What I really like is that with two guitars, you have a four player game. I often complain about the fact that I have four controllers but most games still seem to only support two-player play. Four people in my family plus four playable instruments equals fun for the whole family.

   Whether or not you like the audio in the game really depends on your tastes in music. I would like to think there is something for everybody in Rock Band 2; however, as the name suggests, the music is very rock-centric. PlayStation Network has many downloadable tracks, but be careful, because much of the new music is not supported on Rock Band 2. While playing, your ears will eventually start to pick up when you miss a note. It sounds as if you play a bad chord. I love it, but I can see where you might not like it if you do not like the majority of the music.
   The visuals in Rock Band 2 are downright hypnotizing. There really is nothing extraordinary about the scenery. However, most of the backgrounds are either psychedelic or have a strobe light type effect going on. While focusing on the highway, playing the track, the background is constantly going with vibrant colors and patterns. Often times, at the end of a track, I feel dizzy. Some people might not like this feeling, but I love it. When a game can do that with its visuals and keep you playing, it has certainly hit the jackpot.
   Without a doubt, Rock Band 2 is the new-age definition of "fun for the whole family". I honestly can see a not-too distant future where games such as Rock Band take the place of karaoke machines in bars. While it will take more steps in the right direction, perhaps better publishers with less restrictive control over their music, I truly hope to see the Rock Band series regain a foothold in our living rooms.

Friday, January 21, 2011

Free / Indie Game Review: Sticks - A Quick Physics Puzzler

Title: Sticks
Platform: Flash - Plays in browser
Sponsor: Armor Games
My Rating: 8.5. Pretty good, but awfully short.

   Sticks is a Flash game over at Flonga that instantly hits home with most of us. You play an invisible role helping an ordinary-Joe named Bob scrounge up a little extra change. See, Bob is like many of us. He is a regular guy, works a regular job, drives a regular car, and has the regular dreams of riches. Of course, like many of us, the reality of Bob's financial situation hit home whenever he checks his bank account.
   One day, on his way home from work, Bob drives by a store called Sticks and gets an idea. He can use these sticks to get some more change rolling his way. More appropriately, you can use the sticks to help Bob get some more change. In thirty different levels, you draw sticks on the screen to help some loose change fall towards Bob. Different levels have different amounts of change, and it is not always a coin somewhere above Bob falls downwards towards Bob. You really have to get creative to get some of these coins moving at all. You can arrange the sticks however you like, although you can only use a specific overall length worth of stick in each level. Many of the levels, you obviously make a ramp of sorts for the coins to roll down, but be ready to get a little more creative. Sometimes you will have to go around things or avoid falling objects. Other times, you have to catapult the coins across the screen.
   The controls are very simple. Click the mouse on the screen and drag to draw a stick. Cross two sticks to make them connect. Make a mistake on placement? Just double-click and that stick is gone. A play/pause button allows you to turn on or off gravity, starting and stopping the action. This is great, because if the coins drop incorrectly, you do not need to wait for a "you lose" message. Pressing pause puts everything back where it was before you pressed play.
   The audio and visual effects were appropriately simple. The soundtrack is a quiet, melodic beat that reminds me of Phonics Monkey. When the gravity is turned on, the falling items appropriately plop. When the coins reach Bob, you hear falling change and the unmistakable cha-ching of a cash register. The graphics are very minimal. Bricks represent static items that do not move when the gravity is turned on. The same basic background of stacked coins appears in every level.
   Sticks does have a couple of distracting bugs. One, if you stretch a stick off-screen then try to get rid off it, a ghost stick remains in its place. Not so bad, but you do not get that length of stick back, so it is not usable unless you refresh the level. Another issue arises when you press play and the gravity is turned on. If the sticks are placed awkwardly, they bounce around, defying the physics the game is based on. One other thing I noticed was that there were some stages that were not centered correctly on the screen. This is not excusable in a release product.
   Sticks also has a couple of shortcomings. There is not enough variety in the levels. This is fine though, because it is only thirty levels. Another thing that I dislike; especially after reading some articles on the psychology of video games, is the lack of a rewards system. I mean, I know the purpose is to get Bob the money, but can we not spend just a little of it for some different types of sticks? Not in this version I guess; however, I hope to see some of this in the sequel, if it ever comes.
   While there are some shortcomings in this short game, I think Sticks is a very fun game to play. Bob is a character we can all easily relate to. Weighing in at a very quick to play thirty levels, Sticks will have you entertained just long enough to finish the game.

Thursday, January 20, 2011

More Controllers: The Logitech Dual Action Game Pad

   The Logitech Dual Action is a game pad for the PC that has been around for quite some time. While I am not much of a PC gamer, when I first had a need for a PC game pad, I picked the Logitech Dual Action due to its attractive price and design. The Dual Action was clearly a great choice, because I have never felt a need to pick a different controller for PC gaming since first using this.

   At first glance, you can see exactly what attracted my eye. The Logitech Dual Action shamelessly copies the design of the Sony PlayStation controller. Holding the controller gives much the same feel as a PlayStation 2 controller. The spatial dimensions are just barely different than the PS2 controller; almost negligible to the hands. The buttons are another area that nearly copied the PS2 controller. They are nice and smooth and placed in the same locations. The only noticeable difference between this controller and the PS2 controller is the fact that the buttons are labeled with numbers, the color, and the fact that it plugs into the computer via a USB plug.
   This controller does not just please the eye either. It will perform well in all of your games. Logitech is the household name when it comes to PC peripherals. This controller delivers nothing less than what you would expect from such a name. I have used it for shooting games, emulators, Flash games, and even incorporated it into my own programming projects. As far as usability goes, I will give this controller the same grade as the Dual Shock 3, "meets expectations". Again, it cannot get any better than "meets expectations", because we really need to expect perfection from our video game controllers.
   I have heard that the drivers you use make a difference with this controller. Look, it is now 2011. Most of our devices that are plug-n-play will automatically install the drivers needed over the internet. I always recommend trying this feature before trying the drivers on the provided disc. Often times, there may be hardware or operating system specific drivers that are not included on the disc. These will be detected by the drivers downloaded over the internet. However, there are always cases where the over the internet drivers do not work; therefore, if you ever run into such an issue, clean the drivers off the computer and use the manufacturer supplied disc. In the case of this controller though, do not use the disc of drivers that come with it if you have an internet connection. The over the internet drivers will work fine, if not better than the drivers on the disc.
   I have said something similar to this before, but do not be innovative with my game controllers unless it makes sense. The Logitech Dual Action Game Pad took a page out of a familiar book, copied it well, and distributed it for a platform that needed a decent video game controller. You will not find a better game pad for the PC. Even better, this beauty is only $20. Go get yours now!

Wednesday, January 19, 2011

Free / Indie Game Review: Crash Test Launcher - Awesome

Title: Crash Test Launcher
Platform: Flash - Plays in browser
Sponsor: Max Games
My Rating: 9.5. Hands down, this game is awesome.

   Crash Test Launcher is the perfect game for reminding us all to buckle our safety belts. A free-to-play Flash game available at many Flash portals, including my recent favorite, Flonga, Crash Test Launcher will hook you in at the very beginning and have you playing straight through to the end.
   The objective is to fly as far as possible after being ejected from a car you slam into a wall. As you are flying, there are a few different objects in the air to help keep you flying. You can hit birds or mines for a little bounce, grab a no gravity power up to turn off gravity for a while, and collect some spare cash on the go. Of course, what goes up must come down. A well-timed button press will give you some bounce though. Also on the ground, you will find a Ryu looking guy who will uppercut you back up in the sky. Joining Ryu is a burly baseball player who will also bat you back up in the sky. If you stop bouncing or hit some spikes, the round is over. You are awarded money based on your flight and damage done, and you are free to move on to another round of crash testing. Will this dummy ever learn to buckle his belt?
   Most Flash games do not provide all of the little extras we are so used to seeing in our console products. However, Crash Test Launcher is not short on the extras. What to do with all of that hard earned cash? How about buying some upgrades? You can purchase new cars, jet packs, different ejection tools, items to give you more bounce per round, even an Iron Man suit to make you impervious to spikes. All of these upgrades help you bounce your way through the four different locales.
   The controls in Crash Test Launcher are very easy to learn. Left and right arrow keys drive the car and allow for a little control over the crash test dummy while in the air. Number keys allow you to use your different upgrades. A well-timed press of the space bar will give you a good bounce when you hit the ground. Everything else is pure amusing watch your crash test dummy flying through the air.
   The sound and graphics in Crash Test Launcher go a long way toward enhancing the experience. The soundtrack is a cool little looping beat that sounds almost like flying through the air. All of the bells and whistles are thrown in with the bouncing off the ground and hitting objects making appropriate sounds. The visuals are particularly well-done for Crash Test Launcher. All of the non-interactive portions are done on a gray-scale. This includes background objects as well as foreground objects. It is fun watching yourself fly past all of the different environments. You can even go so far up in the sky that you reach outer space. The colors for the interactive objects are minimal, but enough to immediately be able to tell what you are about to run into. This is important, because sometimes you will be flying through the air at around 500 miles per hour. Being able to distinguish one thing from another at these speeds is darn near impossible.
   I did have to ding this game for a couple of annoyances. My biggest pet-peeve in any released project is spelling errors. There was more than one in Crash Test Launcher. My other big complaint is that this game is essentially over once you purchase all of the upgrades, but there is nothing really to indicate the game has ended. You can continue playing the levels as much as you like, but once you have everything, you will know you are done. I probably would have made a distance goal in the last level to be a "you beat this game" type marker.
   Aside from a couple of nitpicking issues, Crash Test Launcher is a great Flash game that will keep you entertained for a handful of hours. Head on over to Flonga and check it out. And folks, remember to always buckle your safety belt.

Tuesday, January 18, 2011

More Controllers: The Wiimote

   The Nintendo Wii is probably the most uniquely innovative console in this generation. Really though, the focus is not so much the console itself. The innovation stems from the way in which the console is controlled: the Wiimote. The Wiimote has proven to be the mainstream introduction of motion control to the video gaming world. The Nintendo Wii been so successful with motion control that we have seen the other major console manufacturers flat-out abandon other planned console features and run straight for the motion control jackpot. Continuing my controller series, a synopsis of how I feel about the Wiimote.

   The thought that has always stuck with me pertaining to the Wiimote is that it is not conducive to playing video games in the way that we play them. The Wii really does not feel like it belongs in this generation of video game console at all. This serves as a testament to the power of motion control in gaming. In this instance, being the first to make it work was the major contributing factor to the success of the product.
   The fundamental problem I have with the Wiimote is that the motion control falls apart when the gaming gets fast. It feels sluggish in response. No matter how much I play, I cannot get over the fact that I am actually waving the Wiimote at a sensor bar either below or above my television, not at the television itself. I really do not think it tracks that well either, no matter the sensitivity setting on the controller. In many ways, this is why I would think the six-axis control on the PS3 Dual Shock 3 would win over the Wiimote any day. Yet, developers do not go out of their way to support the six-axis, because it feels awkward when gaming gets fast. You have to hold the controller in a certain way and move just right in order to do what you want. In a lot of ways, it turns video games into a process of mimicking a bunch of hand signals. This goes the same for Microsoft's solution. I do not buy into, "Your body is the controller." That directly translates into, "Charades for your television." Bottom line, a gaming controller will have a place in gaming for at least the next couple generations of consoles. We have at least a few technological feats in processing to go before natural feeling motion control is fully viable.
   The Wiimote falls apart further though when you begin using it as a traditional controller. Whether you want to or not, many games require you to spend some time using the Wiimote as a traditional controller. There are several configurations for this. Some games have you hold the Wiimote sideways. Another method has you connect what is known as the nunchuck and control with the nunchuk in the left hand and the Wiimote in the right. Other methods include various other "classic" controllers Nintendo has released for use with certain games. The better games will allow you to choose the control method; however, most will make you use either the sideway method or the nunchuck method.
   Holding the Wiimote sideways looks and feels much like holding a Nintendo controller. In terms of gameplay, the shortage of buttons highlights the feel. While it is by far my favorite non-motion control method, it feels every bit as old-fashioned as it should. Many games done in 3D almost have an auto-movement feel. Essentially, the game plays like a 2D Game, with the character moving from left-to-right in a tightly confined space. Nintendo could have planned for the thought that a developer would want to use the controller in such a way and at least included an analog stick.

   The nunchuck setup is my least favorite, but it is the best configuration for 3D games with wide-open areas. The nunchuck is an analog stick with shoulder buttons; therefore, it does feel natural in your left hand. The fact that is only connected to the Wiimote with a cord is a bit awkward at first though. After a while, you do get used to it; however, it still feels strangely old. Like the motion control configuration, I do not believe it holds up to the faster moving games.

   There are many add-ons for the Wiimotes. Mostly, these come in the form of plastic molds that you can stick the Wiimote in while playing. This includes various guns, sports peripherals, and driving peripherals. Just about all of these are widely unnecessary. There is on add-on the deserves special mention though. The Plus extension is a worthless addition forced upon the consumer for Nintendo to make more money on what would otherwise be a relatively cheap controller. It was bad enough when the Plus extension was thrown in as an add-on. Now, it is built into the Wiimote. This makes the sideways configuration less comfortable, because you must stretch your thumb further to use those buttons. I am not okay with this. There are only a small handful of games that use the Plus extension and most of those are not fun. Spare me the worthless attachments please.

   There is no denying that Nintendo has paved the way for motion technology to have a place in gaming. However, in doing so, I believe they have really shown the true limitations of such technology as well. While other companies are currently emulating the motion control experience, the fact that most games still require you to use a controller in a traditional controller way proves that the video game controller as we know it is here to stay.

Monday, January 17, 2011

Weekly Plan - 1/17/2011 - 1/23/2011

* Objective *
* Cover Letter Template *
* Font Adjustment *
* Installer *
* Combos *
* Android Project *

   Due to the success I had with my C++ Swap Meet Server project last week, I am stepping up efforts a bit with that particular project this week. I am still a little disappointed with how the Android version of Swap Meet Server is coming along, but some weekend work really stalled my progress on that front. Anyway, this is no reason to slow down. As always, I present to you my plan for the week. As you read, start thinking about your own objectives. Please feel free to share them in the comments.
   I did fairly well with my resumé last week. The final product actually looks decent. I may or may not make a couple of more edits before I leave it alone, but for the time being, I have decided to move on. The next step would be to come up with a template for a cover letter. Generally, when using cover letters, you want to tailor it to the particular company you are applying for. Like any letter, it is always better to have a name to work with as opposed to, "To whom it may concern." However, we can certainly work to come up with a general template that can be quickly edited to suit the needs of the position being applied for. I will be working on my cover letter early in the week. I do not believe it will take much time, as a cover letter really only need be a couple of paragraphs with a few sentences each.
   I am having an issue in the Windows version of Swap Meet Server in which the font does not display the same across all monitors. For the most part, this is a non-issue, except for the fact that part of the order is cutoff on some screens. I need to come up with a way to have the text in the game display legibly across a wide variety of screen resolutions and pixel densities. There are several ways to go about this. I could simply shrink it. I could also adopt a system where I normalize the screen and position and size of the font within the screen. This basically places the font at a certain percentage of the window as opposed to putting it at a specific pixel. This is the more appropriate way to handle this situation, but I am not completely sure which I will pursue.
   After I have the font situation figured out, I will want to make a proper installer for Swap Meet Server. This will be your typical installer that you see when you insert a disc with a program you intend to install. This is mainly for presentation purposes. My project runs as is without an issue; however, the correct way to distribute is to include the redistributable packages for end users for both Visual Studio and DirectX projects. I have never created an installer, so I expect this to be a little bit of a challenge. However, this is invaluable knowledge for me, because it is something I will definitely be using for the rest of my career as a programmer.
   As an added bonus this week, I want to get back to working on the Windows version of Swap Meet Server. The first thing I want to do is incorporate a score multiplier for consecutive correct orders. This is more than just code, because I also need the player to be aware of the fact that it is happening. In the code, all I need to do is keep track of how many correct orders in a row have occurred and assign a multiplier to the subsequent order accordingly. The second portion of this is displaying this information visually within the game. I plan to do this by showing the amount the player earns on the order using floating numbers. For instance, if the player earns $31 on the order and it is the third consecutive correct order, the player will see $31 X 3 on the screen for a brief amount of time.
   I am kind of starting to give the Android version of Swap Meet Server the back-burner treatment. I do not want to do this; however, I have quite a bit stacking up on the personal life side of things. I am mostly focused at this point in making my C++ project better for use as a portfolio piece. None the less, I still have the hope of at least getting the menu screens implemented in my Android project. If I get any time at all this week, this is where I am putting it.
   That concludes my goals for the week. I admit, it is actually a bit of a tall order. I also have some other things going on like packing (less than five weeks before I move back to Sacramento) and taxes. However, staying busy is the best any of us can do for ourselves. Now that I have shared, how about you? What are your plans for this week? How do you intend to accomplish them?

Sunday, January 16, 2011

Weekly Progress Report

* Accomplishment Grade *
* Updated Resumé: A- *
* Cleared Error: A *
* Menu Screens: F *

   I was fairly successful in all of my endeavors this week. I had to push my Android project off to earn some extra money, but that is alright. All in all, because the time I would have spend on the Android project was well spent, I give myself about an A for the week.
   My resumé came along very nicely. I ended up reformatting it quite a bit. I had sent my last week copy to my career adviser at Westwood College. She actually had constructive feedback on almost every section. Instead of going for a unique look, I shot for a more professional presentation that is quick to read. Most of the information is listed as bullet points, which makes it easy to decipher where the pertinent information is. I still think I could do better with my objective statement though. I will likely work with that a little more this next week.
   I am incredibly happy about the outcome of my second objective. I no longer get a side by side configuration error while trying to run my projects on other machines. This means I can comfortably distribute C++ applications I write knowing they will work on other machines. Anybody who would like to try out the most recent version of Swap Meet Server should send me a message and I will send it their way.
   A last minute weekend-work request from my boss prevented me from being able to work on my Android version of Swap Meet Server this weekend. I am very disappointed that I am still not making much progress on this front; however, an opportunity to earn money and make my boss happy will always come before weekend projects. That is the way it is when you have a family. As always, try try again next week.
   How did your week go? What did you get done? What was left undone? What was the high point? What was the low point?
   Thanks for reading!

* Random Week-Long Personal Stats *
* Description Stat *
* Push-ups 3900 *
* Hours of Sleep 51 *
* Working Hours 60 *
* Meals 17 *
* Hair Length 3.5" - 4" *

Saturday, January 15, 2011

The Controller Standard: The Sony Dual Shock 3

   The other day, I wrote about how I would never bother with an XBox 360, mostly due to the awful controller it uses. Naturally, I decided to do a bit of a series on video game controllers. Since I have already described what I believe to be the worst of the worst controllers, I will continue with what I believe to be the best of the best controllers: the Sony Dual Shock 3 for the PlayStation 3.

   The one thing that just makes the PS3 Dual Shock 3 shine is the design. Just take a good look at the controller. Not only is it beautiful, but it is the natural evolution of the video game controller. Have a look at the Dual Shock 3 and the Super Nintendo controller at the same time. You can clearly see some gold-star breeding happened to arrive at the Dual Shock 3 from the SNES controller.

   It is natural evolution. It is the way it was meant to be. Nice, sleek design. All buttons comfortably within reach in terms of hand positioning on the controller as well as the position of buttons in relation to other buttons. A look at this controller in the hands shows that everything from the curvature to the position of which the thumbs and fingers rest on the controller just screams ready to play some video games. There is no looking at this controller and asking yourself, "Why?" The Dual Shock 3 needs no explanation.

   As far as response goes, I can only really give a "meets expectations" score. This is because I expect my game controllers to be perfect. I like how the controller responds in much game. Of course, this has much to do with the software programming as well. However, it takes a great set of drivers to make it do what it does. My only wish in this department would be the ability to change the sensitivity on the controller side as opposed to adjusting it on the game software side. This would allow the controller to have the same sensitivity across all games. This is also true of the pressure sensitivity. All of the buttons on the Dual Shock 3 are pressure sensitive. It would be great to have a way to adjust the sensitivity on the hardware side.
   The rechargeable batteries in the controller are certainly worth a mention as well. The Dual Shock 3 is the only current-generation controller that comes with rechargeable batteries. To make it better, they are built in. You do not have to mess with them at all. Now, I have heard complaints about the life of these batteries. Because they are built into the controller, if the batteries go bad, the controller is gone. Look, you will not have this issue if you properly care for you controller. There is a correct way and an incorrect way to recharge your batteries. The correct way is as follows: first, always charge the batteries 100% before the first use; second, only charge after the first use if the batteries are dead or near dead, like lights flashing dead; third, do not take the controller/batteries off the charger until the batteries are completely charged. If you follow these three steps, your rechargeable batteries will live for the life of the console.
   A nice new feature of the Dual Shock 3 is one of the most underused features: six-axis control. This controller is capable of motion control that is at least as accurate as what you would find on the Wii. It is unfortunate that many developers overlook the six-axis control. In many games, it works very well. There are many missed opportunities that come when talking about six-axis. From driving to taking cover, I can think of at least a dozen uses that nobody bothers with. In this age, especially since Sony has moved on to a peripheral that is all about motion control, yet requires a camera, there is not reason for the six-axis to be as neglected as it has been.
   My favorite feature of the Dual Shock 3 almost never came to be: the dual shock itself. I love the fact that my controller vibrates while playing games as a way to show feedback. A controller without dual shock can still be a good controller, but the dual shock has become the signature of a PlayStation controller. I was very disappointed that the dual shock was not in the original PS3 controller. When it was announced, I felt as if I had been reunited with a long-lost son.
   I could actually stand the weight of the Dual Shock 3 to be a little heavier. I like my controllers to feel as if they really would break the television if I through it in a rage fit. Definitely, after the first generation of PlayStation 3 controller, the weight increased a little, but I wish they would add at least a few more ounces to the overall weight. It might feel a little too light if the one before it were not lighter, but the Dual Shock 3 will not be forgotten about in your hands.
   Ultimately, what makes a good controller is all around good design. Manufacturers should not be so concerned about a unique look to be straying from comfort or functionality. From the looks to the precision to the features, the Dual Shock 3 is the gold-standard in which all other controller manufacturers should seek to achieve.

Friday, January 14, 2011

Free / Indie Game Review: Starlight 2 - An Amusing Interactive Experience

Title: Starlight 2
Platform: Flash - Plays in browser
Sponsor: Armor Games
My Rating: 7. As an interactive experience,
this is a very amusing work.

   Starlight 2 is a Flash game available for play at Flonga. Each level has an assortment of stars laid out on a 3D plane. They are all connected in a connect-the-dots fashion. By dragging the stars around with the mouse, they can be arranged to form a 2D image; a constellation.
   Starlight 2 is not so much game as it is an interactive experience. I was incredibly intrigued by the experience though. It is very interesting to watch the formations transform while dragging the mouse across the screen. Many of the images are not at all distinguishable until the stars are close to being correctly aligned.
   After playing for a while, I realized the whole game was just too easy. I was having so much fun making the pictures, I did not even realize how effortless the whole ordeal was. Looking for a harder experience, I tried the pro mode. I was not disappointed. The pro mode has you both drag the stars around to make the correct picture as well as rotate it to sit in the correct orientation in the night sky. It is only marginally harder, but it added just enough challenge to keep my interest for a few more minutes.
   The idea explained in Starlight 2 is that you are trying to find the perfect vantage point for the constellation in the sky using your mouse cursor. The graphics are very appropriate for it. At the bottom of the play screen is a shadowed skyline image that adds just a little flavor to the night skies. As the stars rotate with the mouse, you can easily see when you are getting near to the picture thanks to the way the lines are drawn. Almost every time you make the constellation, you cannot help but to smile. Some constellations are particularly amusing.
   The soundtrack was appropriately soothing for the game. A nice little piano melody played throughout the course of the game. Strangely though, I think I have heard this tune before. The whole time I played I kept thinking to myself: "I can ride my bike with no handlebars, no handlebars, no handlebars..." Most of us recognize that track.
   Altogether, I think this is a great interactive experience. There is not much gameplay here, but everybody should have a look. If nothing else, I think you will be as amused by making the images appear correctly as I was.

Thursday, January 13, 2011

Seahawks Defeat Defending Champs

   Many of you like to taunt me with the fact that Seahawks do not exist. I absolutely cannot deny the truth behind this sad fact. Seahawks do not exist. Seahawks are mythological creatures. As is the way with mythological creatures; Seahawks do not disappoint.
   Seahawks fans are as sparse in these parts as Seahawks are throughout the world. However, even the worst Seahawks haters cannot help but be happy the Seahawks played football this last Sunday. Because of the Seahawks, no other teams will have to deal with the New Orleans Saints. Many people might loudly say they were not too worried; however, we all know everybody was more concerned about playing the Saints than the Seahawks.
   I will admit; I was as doubtful as the next person. The Seahawks have simply not had an impressive season. We had lost 7 or our last 9 games going into the last week to play the Rams. I did not really think we would get past the St. Louis Rams, so when I found out we would be playing the defending Superbowl champs, I thought for sure our season would be over.
   The first quarter did little to raise my hopes. I pick right at the beginning of the game left me sure that this would be a repeat of previous weeks. I believe that drive turned into a touchdown for the Saints, which then quickly led to the Saints getting the ball back for field-goal. Finally, towards the end of the quarter we were able to respond with a touchdown of our own and keeps the Saints from scoring again.
   The second quarter is where the Seahawks really turned the tables. We came out strong and scored another 10 points before giving up anything more to the Saints. Still though, the Saints did manage to score 10 of their own points during the quarter; however, we made 17.
   Third quarter was downright pitiful for New Orleans. They were so frustrated, they could not even keep their hands to themselves. The Saints really looked as if they had come completely unglued. The Seahawks really did well to shove them even further down; scoring 10 unanswered points for the quarter.
   Something happened around the very end of the third quarter, beginning of fourth quarter though. As we all expect, the Seahawks lost their fire. They lost their fire to a team you do not want to lose your fire to. Drew Brees saw this and stepped up. Under his command, the Saints really could have taken the game. It was 30-34, and the ball was going back and forth. Seattle got it for a second down in their own territory with about 3:30 on the clock. It was going to be another probably fruitless rush by Marshawn Lynch. All of a sudden, he got the perfect start up the middle and shook every guy that came on him, even pushing one off of him. He ran it all the way in for a 67-yard touchdown; sealing the deal to advance to the second week of the postseason. Final score ended 36-41, Seahawks!!!!
   The Seahawks may not be the best team, but whichever team we play this next weekend had better bring their top game. This is not the first time the Seahawks have proven they can bring on the heat in the playoffs. Watch out, here we come!

   This is a video posted to YouTube of the play everybody has seen by now for sure. I, for one, cannot get enough of this video.

Wednesday, January 12, 2011

Why the XBox 360 Will Never Have a Spot in My Home

   There is no denying that I am a PlayStation fanboy. I love my PlayStation and my PlayStation loves me. However, being a video gamer, I would be lying if I were to say there was not room for another console in my house. That is why I also have a Wii. There is also this other console out right now that every once in a while, my thoughts cannot avoid. I like it to refer to it as Microsoft's admission to Windows being an inferior platform for gaming even though it could deliver so much more than some of these consoles. Most of you know it as the XBox 360.
   For many people, the XBox 360 was a clear and obvious choice. It releases before the PlayStation 3. It was cheaper than the PlayStation 3. By the time the PlayStation 3 released, the XBox 360 had a larger library of games.
   There were also less obvious reasons for the XBox 360 when this generation of consoles were just getting their feet wet. It did not support a high-definition format right out of the box. There was an HD-DVD add-on; however, many felt as if Sony took a real dive by making the Blu-Ray disc the choice format for their console. Many uninformed people used scare tactic to attempt to keep people from buying Blu-Ray. One common myth was that Blu-Ray players would not play DVDs. Who would want to update their movie collection and render their current collection useless? Of course, this was a myth from the start. The first popular Blu-Ray player, the PlayStation 3, played DVDs from the start. These days, I do believe it is impossible to find a Blu-Ray player that will not play DVDs.
   Anyway, so it is fair to say that the XBox 360 had more steam than the PlayStation 3 from the beginning. However, when it came time for me (or my wife, as it was) to put down a ridiculous amount of money for a current-generation console, there was no question it had to be the PlayStation 3.
   It was not for a lack of players that I chose a PlayStation 3. I still would have to say that more people I know own an XBox 360 than a PlayStation 3. I knew this generation of console would have heavy online integration. Of course I would like to be able to game with my friends over the internet. Unfortunately, the friends were not enough to convince me to go with an XBox 360. The subscription fees did not help to persuade me either.
   It was not due to missing titles in the XBox 360 library. In the beginning, the XBox 360 had several exclusives. As time wore on, companies such as Capcom opened up their libraries to the XBox. Hey, XBox even scored some early release dates and exclusive downloadable content for several games. However, I always knew that anything that was a third-party exclusive to the XBox would eventually make its way over to the PlayStation. Indeed, there are only a few instances in which this did not happen. The first-party titles are almost all available for PC. I have never gone to play these anyway.
   It was not the lack of backwards compatibility. I never owned an XBox game, so I was certainly not turned away by that. As a matter of fact, the way Microsoft handled backwards compatibility was much better than the way Sony did it in my book. I would much rather be told flat-out that I could not expect backwards compatibility rather than get it then have it taken away. My PlayStation does play PSX and PS2 games though, so it is a plus for PlayStation in my book. However, everybody that does not have a 60 gigabyte PS3 was lied to by Sony, which does not sit right with me.
   What was it then (beyond my PlayStation fanboydom)?

   That is correct. Most of why I do not like the XBox 360 and did not like the XBox before it is this awful excuse for a controller. One thing is crystal clear when examining this monstrosity of a controller. Microsoft wanted a controller that looked familiar, but was different enough to stand out in a crowd. Unfortunately, some of the measures they took were simply too rash to allow for a comfortable playing experience.
   The rearrangement of buttons is my biggest complaint about the controller. I believe the directional pad belongs on the far left side of the controller. The analog sticks should be where the thumb would naturally rest when handling the controller with two hands. Putting these two sticks on different longitudes makes the whole experience feel very unnatural. I am trying to play a game, not do tongue-twisters with my thumbs. I really just wish Microsoft would have put the directional pad and analog stick where they belong. Next thing you know, they will put the shoulder buttons all the way to the back and the directional buttons up on the shoulders. No Microsoft, you may not steal idea. If you do, it is a horrible design as well.
   What could make this arrangement fallacy even worse? The spatial dimensions of the controller. Why is it that I feel as if I am turning my hand on the control and stretching my thumb over there to reach that directional pad and right analog stick? Again, I am playing video games. I am not attempting to train my thumbs for the Olympics.
   Only adding to my frustrations with the controller is the feel of the buttons; particularly that hard-to-reach directional pad. The directional pad is setup as a single piece that controls the four directions. It is raise above the rest of the controller for some unknown reason. It is also stiff and has somewhat-sharp edges. To further complicate the feeling, the analog sticks and directional pad curve downward in the centers. All of this spells two things: sloppy control and blisters on your thumb.
   I often forget about this controller dilemma. This is due to the fact that I usually will not play the XBox, even if I am in the room and people are playing. However, this last weekend I got the opportunity to play an old friend at Super Street Fighter IV. It was on. I picked up that controller and was immediately disgusted with the button layout. Analog sticks do not make good substitutes for arcade sticks. Therefore, when I play fighting games, my thumb goes straight for the directional pad. However, playing this way on the XBox 360 is a downright disadvantage. To the point that I was desperately trying to get the analog stick doing something good for me. Try as I might, I was constantly stretching my thumb back over to that uncomfortable excuse for a directional pad.
   Luckily, the matches only lasted for about twenty minutes. Good thing too, because I was certainly over it. Anyway, I had to leave, so I did. Drove home, went to brush my teeth, noticed a little something extra on my thumb when grabbing my toothbrush. Oh great, a blister on my thumb from literally no more than twenty minutes of playing. This is horrible.
   Therefore, Microsoft, I would like to say to you one thing. If you are making anything besides an operating system for computers, please stop. I like my companies to stay focused and you are stretching outside of your and my comfort zones. Concentrate on what you do well; making Windows better. If you do not do this, all I can do is stick my sore thumb at you!

Tuesday, January 11, 2011

Cool Stuff Watch - PedEgg - I Love My PedEgg

What? PedEgg
Why? Keep those feet smooth
How Much? $10-$15
Where? Target, Walmart, etc...
Really? Everybody needs a PedEgg

   Do you ever feel the callouses on your feet and know you should do something about them? No joke, I used to take my large fingernail clippers to my heels to take away the layers of dry skin. Fingernail clippers is not the proper way to take care of callouses on your feet. Do not do it, you might cut too deep and get an infection. Then you would be even more uncomfortable than you were with the callous. The solution for me was my wife. She did not like my methods and insisted on buying me a PedEgg.
   At first, I was weary of using what is essentially a cheese grater on my feet. The whole concept is pretty gnarly when you think of it; going at the feet with a cheese grater. However, this is perfect for removing the layers and layers of dead skin that form callouses on your feet. If you are gentle, the dead skin falls off in a fine powder that you can add water to in order to make a cracker spread. Just kidding, if you make a dead-heel-skin cracker spread, please do not talk to me anymore.
   Exclusive "Cool Stuff Watch" tip: take it easy with the PedEgg; especially when just starting. You are taking a cheese grater to your foot. If you go crazy with it, it will hurt. Slow down, take off a little bit at a time every couple of days, and soon you will have smooth feet too.

Monday, January 10, 2011

Weekly Plan - 1/10/2011 - 1/16/2011

Cleared Error
Menu Screens

   My first objective for this week is to work on making my resumé look better. I have not been able to get it off my mind since I started last week. The writing in it is just too plain. When the time comes, I do not want to be handing out a resumé that reads as if it were produced by a robot.
   My second goal is to clear this side-by-side configuration error I get from my C++ / DirectX projects. I plan to approach this from several directions. First, I am wiping clean an old laptop in order to be able to test projects in a non-development environment. Second, I plan to try to clear the error using several methods I have been looking into on the internet. Third, I will learn to make a proper installer as to hopefully not have this occur again.
   Finally, I really need to get this Android project rolling. As I stated, I really did not get to work on it this last week. I need to get some momentum so I can get this project out and call it a release. Late nights and early mornings will hopefully get this moving. It is unfortunate, I do not believe I will be purchasing any texts this week to be able to help. While the internet excels at helping in some areas, it does not do quite so well in many others. I will simply have to keep working at this slowly to get it doing what I need it to do.
   Alright, that is my goals and plans for the week. What are yours?

Sunday, January 9, 2011

Current Project Review: Swap Meet Server Android

Accomplishments: None
Personal Grade: F
Project Review: Another shot please

   Hands down, I had a very busy week. I simply did not get anything done on my project. Luckily, I have the kids going back to school tomorrow. While this only minimally frees me up during the day, as I do have a full time job, it does lift some stress off my shoulders.
   This said, I will be trying again this next week. I believe I have the few bucks I need to buy the book I need. This will be an invaluable resource. Most of the stuff you need, you can find online; however, when you have a specific goal in mind, a well-targeted book can be the best thing you can get.
   I am also trying to get my C++ version of Swap Meet Server to clear up an error that happens on non-development computers. I find it unfortunate that I am having such a hard time making a distributable package with my projects from Visual Studio. However, I fully understand that Microsoft does this on purpose.
   Next week is a new week. Understand and admit your shortcomings then move on to the next day with the wisdom of yesterday.

Saturday, January 8, 2011

Current Project Review - Updated Resumé

Accomplishments: Resumé = Mostly done
Personal Grade: B
Project Reflection: Room for improvement

   What is it about knowing you need to update your resumé that puts your mind straight into procrastination mode? In reality, updating your resumé is an excellent mind-exercise that I believe should be done at least once a year, if not every six months. I will be the first to admit that it has been more like sixteen months since I last even looked at my resumé. However, beyond potentially helping us land better jobs, resumés can do much more. It allows us to reflect on our accomplishments within the time period from which it was last complete. This naturally leads to a time to evaluate current goals and appropriately adjust them to fit your desired outcome.
   One thing about me is that I am not a huge fan of my writing. Believe me, I read the stuff over and over and over again. In that sense, I am my biggest fan. However, when I read my writing, I feel that it is not up to par with my expectations. Therefore; believe it or not, I am working to improve my writing skills. I actually manage a blog specifically for that purpose. I hope that through constant practice, my writing and communication skills improve even marginally.
   Anyway, so it is natural to say that I am not really happy with my resumé. I need to find ways to improve the presentation of my resumé. Yet, I am apprehensive about not following a cookie-cutter form for the document.
   One of the problems with my resumé is I am trying to use it to get into a new career. Most of my work experience starkly contrasts to making video games. I am struggling with this, because tradition states that you are supposed to state your experience. How can you better say, "Except for the job I currently have, I have always been in a position that was not exactly a match for me. I would like a job that would make any kid, or kid at heart, drool."? At interview time, I will probably say something close to that; however, that comes only if the resumé looks good. The bottom line is I will have to fill the paper with the experience I have. I do not yet have programming experience post-college, so I really have to fall back on my previous work experience.
   As long as we know we have to work with what we have, the best we can do is do very well in describing that experience. This is another place where my skills lack. I would say "I have never received a piece of paper that told me exactly what to do at a job." However, when I truly reflect upon jobs in my past, there have been a few times that I have worked under Standard Operating Procedures for various products. What I can say is I simply am not good at describing what I have done at my previous jobs. Usually, "everything" will not work. It definitely does not fill the page. You really have to use your words very artistically in the prior work experience section. My next draft of my resumé will definitely focus on beautifying this section and trying to sale what I have in terms of experience.
   There is always the possibility of going outside the box when creating a resumé. This is an idea that I am currently infatuated with. Instead of putting the work experience, I could put things that are more relevant to the job I might be going after. There is a time and a place for doing something out of the ordinary, a resumé for a software programming job probably is not that time or place.
   Anyway, now that I am through describing my resumé and what I plan to do to revise it next time around, let me know what you think of resumés. What is your critique of your own resumé? Do you even bother with one? If not, go and make one now.