I am the sole application developer in a company full of building developers, and such hands-oney people, it's my job to fulfil all the rolls that are required in the software lifecycle. As the company is getting more confident of my ability to meet their specific needs, they are taking on more adventurous projects. These projects are becoming more than just the regular old "I need a calculator to do this", or "We want you to make this program web based" kind of thing, to applications that require more forethought and planning.
I would say that one of my main weaknesses in the whole application development thing is my lack of experience in the design stages of a project. This is mainly due to the fact that I've been working in small companies since I left uni, and while I've learned the design skills, I've never really had an opportunity to use them or to fully understand the concepts involved.
In an attempt to keep up to date with the design requirements involves, I've been reading books, internet articles, and blogs to try and put togeather a process that fits my current position as "the one". Almost all of these sources assume that there are multiple people involved in the process (rigthly so), however, few really address the situation where your architect is your designer, is your programmer, is your tester, is your support rep, is your dogsbody.
I would imagine that this would be a fairly common circumstance, where there are relatively few people involved in the process of creating an application.
The current book that I am reading "Use Cases - Requirements in Context" (Kulak & Guiney), seems to be providing the most adaptable process yet for my own affliction. The book focusses on requirements gathering, providing a detailed process for the exercise.
In the smaller projects that I've worked on, I've found that the process of figuring out exactly what the application needs to do is one of the slowest most drawn out parts of the whole project. The main problem with it is that everyone has a different idear of what they want, and in some cases that I am just one person. The process described in this book gives pointers on what to watch out for, samples for documentation with complete walkthroughs on how to fill them out, and can be used in the single developer case just as easily it can in the development team case.
Reading the book kind of gets me itching to start the next project, just to try out some of the methods and see them in action. I wouldn't expect them to work for me strait off the bat tho, I'm a bit on the unenthused side when it comes to documentation and the like.. and this process will give you plenty. I guess, in the end, this is a good thing.
Thought I'd add in another movie, while I'm still up on the movie making stint. Here's a gameplay movie of what we managed to get working in Total Dominion. It may look like crap, but it did take a year of our time.
Since I can't embed the youtube stuff here:
Again cudos go out to the team for this: * Kashif Ansari (Game Design, 3d Models & Animation) * Graham Heiner (Awesome background music & sound effects).. sorry I couldnt figure out how to record it. * and me, Chris Scott (Game Design, Technical Design, Programming)
I managed to find an app to make videos of my game. The quality is kind of crappy, but I think it is mostly due to some double compression along the way. I recorded it with GameCam, then uploaded it to YouTube to save the bandwidth on my website :).
Just a little something I thought up in the shower this morning.
Name: Alpha Flyer
Synopsis You are a pilot, who has recently acquired a top of the line personal space craft, the "alpha flyer". With terrorists controling most of your sector, you take it apon yourself to rid the sector of the viscous terrorists (ie. the kind that leave a trail of slime behind them). Or will you join the terrorists and overthrow the government?.
The gameplay will be somewhere between WoW and Freelancer, with the following features:
Quest based - Single player game will have a 'main questline' with several branches to make the story interestinmg. There would also be 'side quests' that would allow the player to more thoughroughly explore the game universe.
Dogfights - In multiplayer mode, a player can sign up for a dogfight, in which all participants (an even number on each side) are transported to a special arena. When all the other players are dead, you are the victor and win cool prizes
Group / Raid content - players can join a raid on a large enemy base and completely annihalate it, gaining lots of goodies in the process
Player Server - while the multiplayer games may be hosted on player systems, authorized servers may connect to a centralized player server to retrieve / update a player's ship / profile information. This will allow a player to continue their game experience across multiple instanced servers. Players will be able to build an online identity with a minimal outlay on server / MMO technology
Strengths / Why I would write this game
Easy graphic content - No/few moving parts makes for less difficulties in getting the animations 'just so', allowing more time to create cool looking models.
I like space - Space is cool
LMO able - such a large space should be able to handle a large number of players, allowing for a 'Large Multiplayer Online' environment.
Incremental development - This style of game can be developed incrementally, allowing us to see what is happening and add new features on the fly
Weaknesses / Why I would not write this game
Been done before - Freelancer was a fun game, and almost precicely what I am thinking
My networking skills are totally hackable I doubt that I would be able to write a secure client / server connection that couldn't be hacked by any script kiddy
Lazyness prevails - It would be far easier not to write this game
I've made the decision to try out a psychologist for this depression thing. I'm really not sure what will come of it, but I did get to do a couple of those nifty answer the multiple choice question thingamies.
The first one gave the psychologist an indication of the depression levels involved, and the results in my case were "Mild". I'm thinking that this is a good thing, but I wonder at some of the answers you would need to make for a "Severe" rating, and indeed how many different ratings there are.
The second test took about 40 minutes to complete, and appeared to be some kind of personality profile test, similar to what you would get in a job interview. I was told the various results the following week, and although the results were not really a surprise (ie. I agreed with them), there were a few interesting points:
* I have an ability for abstract thinking, as opposed to concrete thinking. * I am easily distracted * I get bored easily * I am not very traditional
I'm sure that there were other points there that I've now forgotten, but they will come back eventually.
It's one thing to know that these are things about you, but it is another to be told by someone else methinks. Having been told these things, I am finding myself more alert to them.
I find that I usually get more down when I am bored with my work, (not too hard with the current design/databases stuff yicc..). I also find that if I am on a roll with something, and I get distracted from it, that I will almost immediately become bored with it, and unable to get back into the zone again.
This does seem to be the case with both my work, which I need to push really hard to get rolling, and with my games, which I have really been putting to the back burner lately.
Perhaps the solution to all my problems it to somehow get un-bored with things, so that I actually feel like going back to it after stopping. This would seem like an impossible task though :P
I've been wondering lately if a change of tac is neccessary. I appear to be getting burnt out in my current job, and have no real way of recovering from the problems that I am having here. It is really getting so bad that I sit in front of my computer for 8 hours a day, staring at the screen doing nothing. Strangely, I work from home, so it should be easy just switching to another project or even getting away from the computer. The main reason that I dont do this is that I feel guilty about doing 'non-work' stuff on their time, since they are paying me. (ok.. maybe I do jump into a game or something occasionaly, but I feel guilty the whole time.. promise.. :) )
I have decided that this will be the last job before I move on to either a) my own business, or b) a job in the game development industry. I have also decided that option B is out of the question, as I do not really wish to have the long hours / low pay associated with it. Option A would likely have just as long hours, but I would feel more rewarded by the additional time spent.
The death of our baby Scarlett has also weighed heavily on things here as well. It's coming up to her first birthday, and it's easy to see that prety much everything has returned to "normal". I can't effectively explain how this is affecting my work / burnout problems, except that I can't seem to shake the feeling that this "normal" is not right. I should be having a different normal at the moment, with waking in the middle of the night, and pram pushing, and noisy houses, etc.
If you read my blog enough, you would probably realize that I seem to come up with alot of idears for games or tools or just general crap. I usually start a small project based on testing out my theory, and end up with a prototype style model (ie. crappy minimal implementation). Some of these prototype tools work out to be something that I would use again, like SynthGraph in the header section above or several of the tools that I designed in my AGE engine (which I will put up there when I untangle them from each other). Some of the projects never really see the light of day (eg the AGE engine above), which is ok, since you have to dig through the dirt to find the gems.
Ocasionally, about once every year or so, I come up with an idear that I think would be really worth someting. It's usually the kind of thing that wakes me up at 2am and buggs me until I get up. It then continues to bug me until I have written it down in my little notebook, which is usually sitting in my office by my desk. I will continue to get nagged by this thought for several more days (I even have dreams about how the end product would work), untill finally, I have filled up that notebook with chicken scratchings, code segments, swot analysees, financial estimates, time cost estimates, you name it.
The last time this happened, It was for a product that could be used by the company that I worked in. I tidied up the idear, put the numbers and whatnot into a spreadsheet, and gave the boss a presentaion. The boss liked the idear, and got me to write a prototype. I had the prototype written in a week, and they licenced the prototype 3-4 of their customers immeadiatly for about $10-15K each. The company then folded about 6 months later, due to overreaching financially to get into dubai. I still get questions from those clients, and also the new company that I work with, about additions to the application but generally try to avoid them, since I dont know who the IP belongs to. My new company tried to buy the IP, but the reciever didn't return their phone calls. Two of the other clients also tried to buy the IP, but they were also ignored by the reciever. Weird, yes?. Anyway, I digress...
Last week, I had another, equally astounding stupid-o-clock revellation. I did the usual process of writing it down in my little book, and beginning the several week process of looking at it from every angle that I can think of. I have decided that this is indeed a hum-dinger of an idear, and that I have several options at this point. Without telling you what the actual idear is, I can tell you that it could be applied to game development in general, or (some parts at least) can be taken out and applied to the current field that I work in (Asset & Maintenance Management software), or even used in other, non-game related areas.
So I see several options here that I could take, ignoring the ones that would be dishonest:
1) Develop the game development related product, retain the IP, and attempt to sell it. This product would be more interesting, and if I could reach the right ears with it, perhaps some profit associated. But, alas, I don't have the industry contacts to make this one work and it would be a full time job with much money spent on advertising to reach the ears that I need to.
2) Quit the company I'm working with, develop the buiness application, and sell it to clients of the liquidated company. Would have to sell it to previous clients, as there is a sunset clause in my current contract. There is also an anoying legal setup that I have to go through for working with these clients. This would probably be the most profitable option, but has many risks associated with it.
3) Write up a plan, and present it to the company I'm working with. Recieve no profits, but get to continue working from home for the forseeable future... unless this company also folds.
4) Do nothing. Let the idear collect dust, until my current job gives me the boot. I don't quite mesh with the companie's stategy, and think I may eventually be seen as a burden on their budget (I earn more than most people there, and am fairly invisible in the scheme of things).
I will mull over the options for the next few months, and come up with a decision, which will likely be option 3 or 4, because each of those are pretty much the path of least resistance. I just dont know if I have the balls to put aside a good a monthly paycheck, even if the financial rewards of taking such a risk could be ten-fold.
Ok, so as to keep you all not guessing at what happens next after kissing the frog.. here's what I have so far:
1) Big Bubble Belching Bullfrog (see previous entry) 2) Shower Big Bubble Belching Bullfrog with kisses (also previous entry) 3) Big Bubble Belching Bullfrog goes pop (see below) 4) Prince of the Purple Poncho appears (pictured below), aparently, he was freed by kissing the frog.. whoda thunkit. 5) Prince of the Purple Poncho gives your kisses the power to melt ice.
IMAGE 1 - Big bubble belching bullfrog goes pop
IMAGE 2 - Prince of the purple poncho (in development)
During the extended downtime that GameDev had recently, I decided to write and implement my own blogging tool on my website. So if you want a look my derangingly boring life over the last couple of week, you can go there.
I also managed to make some progress on Scarlett's Treasure during that time.. here's a screenie:
So, continuing on, and trying to make some more bits for Scarlett's treasure, I have managed to get myself into a little animation. With the help of this article, I was able to create a kinda believable walk cycle for my main toon.
And, after a 4 hour stint of eye tingling pixel artistry with Graphics Gale, I have managed to come up with the animation below:
Dusted off one of the books off my bookshelf, and read up a little on Inverse Kinematics as a follow up to the idear that I presented in my last post, and thought it would be a good test to try this out in a simplified 2d environment prior to going the whole hog on a fully integrated 3d application.
For reference, the article I read described how to use Cyclic Coordinate Descent for Contstrained IK.
Here's the inital fruits of my 1 hour of work, still have to implement CCD, but the framework is there:
For those of you reading along at home, here is the article reference:
Webber, Jason, "Constrained Inverse Kinematics", Game Programming Gems 3, Charles River Media, Inc., 2002. pp 192 - 199. ISBN:1-58450-233-9
During my epic sunday morning tv watching sessions, I have been 'observing' some of the 3d style cartoons that have been popping up lately, I realised that the people making these shows must be using some kind of tool kit to produce these shows.
I noticed that all of these new cartoons seemed to have a couple of things in common. They often use a 2D un-animated background, which was sometimes scrolled across ala tratitional cartoon 'sets'. There was also evidance of ragdoll physics being used on the 3D actors in the scene.
Thinking on what I had seen (and I'm sure it's been done before), I thought of a neat kind of tool that could import a character from a popular editor. This character would be the basis for a ragdoll type object. Using the bone structures, I could attach 'strings' to the ragdoll at various joints. I could then pull those strings in various directions, effectively making my ragdoll into a puppet. Thow in a 2d-scrollable background, the ability to attach sounds, and a few more ragdoll puppets, and we have a simple, neat, puppet-theatre tool.
I do realise that it would not be as simple as this to create, and that ragdoll physics is more complicated than just manipulating bones and joints and whatnot. I guess that I'd need to research ragdoll techniques, and perhaps some inverse kineomatics (I think that's what it's called) to pull it off successfully.
I do think that this tool it would be within the realm of my abilities to do, so perhaps you will be seeing more of Akatimmeah Puppet Theatre in the future :)
Once again tinkering with my marvelous MS Paint skills, I have come up with a nifty looking logo for my website.
Obviously, it was inspired by circuitboard patterns, and it draws the two initials of Akatimmeah Games (AG) within the pattern. It is a flat two-color pattern (foreground / background), which lends itself easily to changes in the websites look & feel. I may modify it a little more, to include anti-aliased lines, etc, but I believe it looks none too bad at the moment.
Now, the question really is, what the ding diddly dang doodle should I do with this with this willy of a website? I kind of want to keep the site, cause I think it's kinda cool, but I dont have all that much to add to it on a regular basis. Meh, it doesnt really matter, it paid up till next year anyway, so I'll decide then.
Came up with a few good idears in the wee small hours of the morning today. I was thinking about some idears for a pda platformer type game, and think that I may have just passed the slow point for designing "Scarlett's Tresure".
I've decided to make it a sort of mini platformer type game, along the lines of "Wonder Boy in Monster World" (imho a Sega Master System classic). This game had reusable rooms, I'm presuming to save on the space requirements, while allowing a maximum amount of game play. In any case, I enjoyed the way that you would revisit familiar areas and find something new to continue your journey through the game.
This design would require a level editor, or at lease some drawing skills to figure out. I decided to use MS Paint to make some simple blocks, and MS Word to put the blocks in place. This worked great, and fueled the ideas some more.
Here's the final result of my tinkering:
The way I figure that it will work is that as you go through the game, you collect various "treasures" from each of the bosses.
1) White Dress - Allows you to walk on water 2) Harp - Allows you to break ice bricks 3) Halo - Allows you to stand on clouds 4) Wings - Allows you to fly
As you can see in the picture supplied, each of these features would be used in this 'main room', to gain access to the next room. Going though this room will allow you to access the next boss, which would then in turn give you the next treasure.
Made some rumballs by combining a few recipies togeather today. They are great, and extreemly alcoholic, recepie below:
Dry Ingredients: 250g Packet of Scotch Finger biscuits (or shortbread biskuts) 1/2 cup Dessicated Coconut 1/2 cup Almond Meal (or 1/2 cup of well blended nuts) 2 Tablespoons Cocoa 1 cup Icing Suguar (or Confectioners Sugar) 1 cup Raisins
Wet Ingrediants: 100ml Glucose Syrup (or Corn Syrup) 100ml Bundaburg Rum (underproof brown rum)
Coating: 1 cup Dessicated Coconut 1 cup Chocolate Sprinkles (or Jimmies)
Directions: 1) Put the Scotch Finger biscuts into a blender and blend until fine
2) Chop the raisins into small pieces, this is best done with a knife, as the blender is likely to pulverize them :P. You want to keep going untill all the raisins have pretty much been chopped at least once.
3) Put all the dry ingredients into a large mixing bowl and mix with a wooden spoon.
4) Fold in the wet incrediants gradually, and mix (with the wooden spoon) until all ingrediants are combined. At this point the mixture should have a fairly thick, sticky consistancy.
5) Cover the mixture and put it in the fridge for a few hours to chill. It will be ready for the next step when it has a hard play-dough consistancy.
6) Using your hands, roll the mixture into approx 2-3cm (1 inch) ball shapes, and coat with either coconut or chocolate sprinkles. You should be able to get around 3 dozen if you haven't been snacking on the mixture.
7) Place the rum balls in the fridge so that they retain shape until they are ready to be served.
Tried putting a shot of espresso into my Coke today, with a big mess and some amusing results. The taste wasn't too bad, and I can imagine that the caffine hit would be rather good too. It looks as though the bubbles in the coke didn't like staying in there after I put the shot in, and as a result tried to bail over the edge of the glass.
The resulting drink looked somewhat like a badly pulled Guinness, with a head all the way to the bottom that would not go away. My second attempt was slightly more successful, with only half the cup worth of head, and a dark redish black liquid at the bottom. The liquid it's self had lost any hint of bubbles, and tasted like.. um.. coke and coffee.
Anyhoo, while googling for a reason for this madness, I found out that the coca-cola company was/will be trialing a similar drink.
fyi: No, I don't have too much time on my hands, just wanted more bang for my buck so to speak.
Well, aparently I may have developed myself a good dose of Major depressive disorder. After about 3 months the drugs they gave me seem to be having a small effect but still not back to my usual crappy self. I say I'd be about 30% of normal going by the workload that I am completing per day.
Anyone want to vote.. should I see a psycho-ologist like the doctor suggests?
I recently thought up a new game idear, and will start some documentaiton on it. It's kind of a trading card game similar to "Magic: The Gathering", but entirely computer based.
I have thought out a fairly novel way of getting the actual game mechanics down before writing a single line of code. Basically, I work out the rules, and a set of trading cards, print them out, and play the game manually with a few friends to test out the idear. This should allow plenty of potential problems with the actual gameplay to be realized before they become coded into the game.
Realizing that this could be an interesting way of generating profits, having people purchase booster decks and whatnot online, I have decided (for the time being at least) to avoid doing this. The main reason being that I don't want to have to manage a server that store's all of this information, or deal with people who have purchased these things online, or worry about any of the legal implications involved. For now, I just want to make the game.