Sunday, October 19, 2014

An Unexpected Journey: Android to iOS

Springling Swipe has been on Google Play for several weeks now. So, why isn't it on the AppStore yet?

Well ... have you got a minute?

About one week after the initial launch, I opened Unity (upgraded to 4.6 to take advantage of the new GUI system) to find that the entire GUI was gone. It wasn't like the sprites became unassigned - the objects were just gone. Making matters worse was the fact that I foolishly forgot to make a backup of the working copy. The closest backup was before the 4.6 update, so it was better for me to recreate the GUI. Time consuming, but not terribly difficult.

Another issue that needed to be addressed was a conflict between two plugins being used in the Android version of the game. Google Play Services allows for features such as leaderboards and achievements (it requires the later, in fact). Then there's AdMob, the service that provides the advertisements that will (hopefully) justify the work that's gone into this new venture as a game developer.

Depending on which plugins you use (there are a number of variations to pick from), they may or may not work well together. Since GPS require a gmail account anyway, it made sense to drop it from the iOS release. Again, it required a little work, but it wasn't difficult.

No, 'difficult' is being a Windows user trying to get something on the AppStore.

In order to get an app uploaded you have to do the following:

1) Have a Apple Developer license ($99/year; in contrast, Google Play requires a one-time developer's fee of $25)
2) Setup your iTunes Connect account
3) Get two certificates - Developer & Distributor - through this account for the app you want to make and apply them to your 'keychain'
4a) Fiddle with some settings and add a number of libraries related to the plugin to get where Xcode will compile it
4b) Connect an iPhone/iPad to a Mac and compile your app in Xcode to the device - as you might imagine, this is tricky for someone who owns neither an iOS device nor a mac. Fortunately, I know some 'apple guys' (This is the step I'm currently in).
5) Assuming there are no issues, upload the app from the device to iTunes Connect.

Easy for a Apple Acolyte. Nearly impossible for a PC Punk.

I'm praying that's all there is to it - that there isn't another 'surprise' or 'gotcha' waiting around the corner.  This has been such a headache. If I had the money, I'd buy a mac and an iphone just so I wouldn't have to go though all this mess again.

Unless the game suddenly takes off, however, I don't see that happening. I guess that means that the next leg of this journey will involve learning how to market my mobile game and get the word out about Springling Swipe.

Tuesday, September 2, 2014

My Descent Into Mobile Game Development

Sometime around October of last year (2013), I got it in my head that I'd like to make a mobile game. Having ideas and making plans to do this or that is nothing new for me - I've got a number of half-finished (novel) and/or aborted projects (fantasy playing cards) - but for some reason, this one stuck.

Up to this point in my life, I had some experience as a Javascript/PHP coder built over some Java & C++ classes taken years prior in college, but never fancied myself a serious programmer. I always leaned toward front-end work, because that's where the designers and artists got to play. However, I knew enough to get myself into trouble. So I did a couple of Google searches to find out what was involved in producing a mobile game.

Eventually, I stumbled across (not upon) Unity3d. At first blush, it had everything I was looking for: It was free and it could export builds for both Android and iOS devices, which make up something like 98% of the mobile market. It also allowed to languages: C#, which is almost like C++, and Unityscript, basically Javascript, with some quirky additions. I had originally intended to go the 'Script route, but was surprised to find myself working in C#. That decision was probably aided by the number of quality C# tutorials and lessons that help get me immersed in the environment.

I spent some time trying to figure out what sort of game I wanted to make. Ideas? I had lots of those, but which one? One of the Unity forum threads had some advice for new game developers: "Yeah, you want to make something epic and great, but you need to start small. Otherwise you'll get discouraged and quit before you finish your first game." At least, that's what I took from it. So I began to churn out ideas for 'small' games - ones that I didn't feel would be too terribly demanding to produce (because I'm still working as a full-time freelancer), but would still be fun. Because, ultimately, that's the most important thing.

Nearly one year later, I've almost wrapped up development on my first mobile game - Springling Swipe - and starting to get my business and marketing ducks in a row.

The challenge at this point is feature creep - the urge to keep adding little extra bells and whistles to make the game that much 'better' or 'polished' or 'professional.' Sometimes, I can be a bit of a perfectionist. Other times, I use the perfectionists' excuse of 'it can be better' to tweak a project into oblivion so it never sees the light of day and risk handling any sort of rejection (that's a whole other can of worms). I think I've got a handle on this, though. I think I'm at the point - barring a couple of details - where I'm ready to put the game (and myself) out there in a way I never have before and let come what may.

Tuesday, April 30, 2013

Portrait of a Villain: Brother Ptolemy and the Hidden Kingdom

The following is my original, unedited short story which accompanied the background material I submitted to Nevermet Press for the Brother Ptolemy character, written April 20, 2012. It appears in the adventure we published in November of that same year.



Portrait of a Villain: Brother Ptolemy and the Hidden Kingdom
by: Paul M. King

A gaunt form drifts slowly through the crowd, dressed in robes of dark crimson, the color of dried blood.  A hood, pulled low, all but hides the tarnished glimmer of a smooth, featureless mask that covers his face.  Cracks like shadowy veins spider across the facade, golden paint flaking away to provide a tiny glimpse of the ancient cedar beneath.  Small bottomless wells of darkness fall into the mask, openings for the mouth and eyes, and continue to hide what lies beneath even in the harsh light of the noonday sun.  Two figures, move in step with the first, flanking him on either side.  They are all robed and adorned in the same manner and none who stand in the heavy aroma of incense and exotic spices left in the wake of their passing can spy a difference between them.

Duke Gerhardt von Brandt was a very rich and - his detractors would only begrudgingly admit - handsome man, two facts of which he was keenly aware.  One evening, while preparing to entertain his fellow aristocrats, he spied a gray hair in his ebony mane.  This sent him flying into a rage and von Brandt soon found himself consumed with searching for a means of preserving his youthful visage and vigor.  He began to travel extensively, visiting repositories and practitioners of ever deepening arcane knowledge, his desperation and determination growing with every dead end he seemed to encounter at every turn.  Eventually, in the dusky light of a Far-Eastern back alley, von Brandt found himself handing over a tremendous sum of money to a ragged thief for an ancient dusty scroll.  The scroll, the thief assured Gerhardt, held the secret to immortality.

A shadow looms over the beggar sitting by one of the city gates.  He looks up, shading his eyes against the bright sunlight to find a trio of tarnished, impassive faces silently gazing down upon him. The beaten tin cup he hesitantly extends rattles fearfully, tossing about the pair of coppers he's managed to collect this day.  The middle figure steps forward and kneels down, the aged mask drawing level with the beggar's dirty weather worn features.  A voice, like a dry autumn breeze wafting lazily through brittle fallen leaves drifts towards him. "You hunger?" A question, but not. The beggar nods with practiced humility.  A gloved hand glides forward, and hovers over the beggar's cup; he leans forward expectantly.  "When this is gone, seek us out. You need never hunger again."  The poor man is surprised by an unexpected rattle and a sudden weight in his cup.  He looks down to find it half filled with gold coins, more money than he can ever remember seeing.  The shadows pass and the beggar climbs to his bare feet. "Bless ye! Bless ye, sirs!"  The figures stop and turn.  "We are blessed, and we look forward to sharing that blessing with you."  With that, they are gone.

Years passed, and Duke von Brandt continued to travel, seeking experiences both wondrous and exotic.  As young and handsome as he was, Gerhardt was never for lack of companionship. One night, while in a tavern far to the north, he attracted the attention of a local beauty.  Unfortunately, this attracted the attention of her jealous and rather inebriated lover.  A fight ensued and a dagger found its way through Gerhardt's ribs and into his heart.  He staggered back and withdrew the blade.  The stunned silence was shattered as the mortally wounded Duke began to laugh; he suddenly lept forward and buried the dagger up to the hilt in his opponent's belly.  As the man lay dying on the floor, Gerhardt von Brandt turned and walked out into the bitter cold night.

The drought is severe this season and the local farmers are hard pressed to keep up with the demands of the city, much less keep food on their own tables.  The red monks had imported a large shipment of food and set up a soup kitchen in the center of the city; the line wrapped around nearly the entire square.  A trio of monks enters the square and heads for the kitchen.  One of them breaks off from the other two to stand on the raised dais where a statue to the city's founder gazes out serenely over what he had wrought generations before.  Gloved hands are lifted and the attention of nearly every person in the sullen, shambling line is turned towards him. "Brothers and sisters!  We are happy to share all that we have with you!  But know that this meal can only give but a temporary respite to the unending neediness of this world.  There will always be hunger, always be pain, always be fear.  This does not have to be!  There is another way - a better way! You need not be hungry! You need not suffer! You need not fear, even death!  Friends, these things no longer have any hold over us.  We are free, and we invite you to share in our freedom."

Gerhardt traveled home.  On the way, he had become increasingly aware of a smell that seemed to surround him.  He attributed this to the stench of the road; but was dismayed to find that it continued to offend his senses even after he had returned home and taken a hot bath.  His irritability grew further as each meal seemed blander than the last.  He decided to stop eating altogether; it wasn't very hard to do, as he no longer grew hungry.  One morning, as he performed his daily grooming ritual, a clump of his luxurious dark hair came loose in his hand.  As he stared at it in horror, the duke noted that the texture of his usually fair skin was changing, it was more drawn than usual and beginning to take on discomforting pallor.  He spent the next two days wandering aimlessly through the halls of his manor house, clutching the clump of hair to his sinking, perforated bosom.  On the morning of the third day, the duke called for a meeting with his entire terrified waitstaff.  They were shocked to find him dressed and packed for a journey.  They were even more surprised to hear that he no longer needed their services and that every last one of them was dismissed and to vacate the premises immediately. Then, locking up behind him, Duke Gerhardt von Brandt departed for one final journey.

The mayor stands at his office window overlooking the square. 
    "I don't trust them, I just . . . don't, and I don't know why." 
He shakes his head as his guest, a prominent merchant, moves to refresh his glass of wine. 
    "What's not to like?  They provide for the needy, have taken beggars off the streets, crime is down ever since they came to town - and no one has ever had a bit of trouble out of them.  If only all the other religious orders were as helpful as they.  You didn't seem to mind giving them a permit for their little charity kitchen down there." 
    "But why do they all have to dress the same . . . and those masks . . . "
    "Something to do with overcoming vanity or some such nonsense.  Every order has its eccentricities."
    "The people love them, and I can't fault them for it.  But . . . I wonder . . . where are all those beggars and criminals now?  And what happens when they ask for something that city will not - or cannot - agree to?"

Dust coats every surface of the forsaken von Brandt manor.  Vines snake across the walls and windows, strangling the sunlight.  The gardens, once meticulously kept and manicured are now overgrown and resemble little more than self-contained patches of wilderness.  A pair of rats meander lazily across the great foyer that once greeted nobility from nearly every corner of the kingdom.  An unfamiliar scent causes one of them pause and sniff the air.  Suddenly, a metallic scratch at the door causes them to spin about; a rasping click of the aged lock sends them scurrying for their nest.  The front doors swing inward, sending forth a gust of incense and exotic spice that cause the cobwebs to billow.  A gaunt, red robed figure walks silently into the manor and looks around.  He turns and nods to a second figure, dressed in much the same manner as he, who begins to carry in the few possessions they've been traveling with - scrolls and books, mainly.  The second figure hums quietly to himself, it is a tune he has not heard since his days as a thief living on the streets of a distant Eastern city.

Thursday, February 14, 2013

Art: Ulfen - Midnight/Homebrew PC

Man, it's been a while.

I was invited to participate in a RPG campaign based primarily around the Midnight campaign setting, but incorporated a variety of other source material (D&D 2/3.5, Pathfinder, d20). Since it's been a while since my own group had a session, and even longer since I've actually participated as a PC, I couldn't say no.

There is a story-based reason for the hood, but at the risk of having my fellow PC's stumble across this post, I shall not divulge the reason here. Suffice it to say, he's proficient with a Dwarven Waraxe.
In other news:
  • Progress on my novel is currently sitting at 31,116 words, according to the software's word count. I'm hoping to have it finished and possibly even edited before the year is out, but that's going to take some serious discipline on my part.
  • I haven't played Firefall in a while, since there have been no additions (that I know of) made to the Assault Frames. I did start playing SW:TOR at my brother-in-law's suggestion (it being f2p to level 50), completed the first BioShock, something I was holding off on until I got my new laptop: a HP ENVY dv7. I'm also playing around with Path of Exile, a f2p spiritual successor to Diablo 2. I have some other games waiting to be played, but if the new XCOM goes on sale, that will probably jump to the top of the list.
  • After more years than I care to count, I have stopped collecting comic books. I may write a stand-alone post about that later on, we'll see. Now, if I can just quit Mtn. Dew (and soft drinks in general) ...
  • Saw the Hobbit; it was good, but some of the scenes (Stone giants, escaping the goblins in the caves) were just too overblown - they kinda took me out of the movie, same problem I had with Jackson's King Kong.
  • After migrating my wife's blog into her Wordpress site, I've been considering doing the same with this blog, just to get it off blogspot.com and under my own domain. Don't know if there is any meaningful benefit to doing so, though.

Wednesday, September 5, 2012

Fire Fall: Impressions and Gameplay Vid

If you read my previous entry, you know I've been watching a lot of DayZ gameplay video on YouTube - mainly by a user known as SideStrafe. But since the game is still in alpha (beta now?) and is a mod for another game you have to pay for (ARMA II), I just can't commit to it. SideStrife does post some other gameplay videos, however - one of which was for a new MMOFPS/RPG called Fire Fall (or Firefall, if you're lazy). Suffice to say, I really liked what I saw.

In fact, I liked it so much, I attempted to make my own gameplay videos for it:



One of the few things that I don't like about Team Fortress 2 is the lack of any sort of meaningful progression. You fight one round at a time or, if you're playing MvM, 9 waves at a time. Yes, you can "find" crates and weapons, but that's it as far as character development goes. Fire Fall solves this by taking the FPS gameplay, wrapping it in a MMORPG structure and giving it a sci-fi twist.

Killing baddies and completing missions gives you XP, which can then be spent upgrading your 'battleframe.' Your battleframe of choice serves as your class, with the added benefit of being able to change into new battleframes. There is a 'tech-tree' (similar to Diablo's skill tree progression) for each battleframe leading to two souped-up versions when you have unlocked the necessary prerequisites. Additionally, unlocking one skill does not lock you out of going back and unlocking any of the other options. You can then mix and match the upgrades to your battleframe (including the primary and secondary weapons) as you see fit.

The game is free-to-play, which, considering the quality of the environment and the attention to detail - down to the descriptions of your battleframe upgrades - is impressive. There is no advantage to be had in buying super powerful weapons or equipment. Instead, you can opt to purchase visual enhancements for your character. It's an interesting and potentially risky move on Red 5's part, but I hope it pays off, as nothing is more annoying than players dominating a game simply because of how much disposable income they have.

Fire Fall is currently in closed beta, but the resourceful user will be able to score an invite without too much trouble (if I can do it, anyone can). There are still some rough edges and lag issues, but the point is to help the developer find problem areas as much as it is to enjoy the game. My only major concern (major being an overstatement) is that I seem to have outpaced the story - I finished the handful of missions available in the two 'civilized' areas of the map and now find myself grinding while waiting for more playable areas and missions to appear.

There is a silver lining to the grinding, however, as I now find myself on the verge of getting my first advanced battleframe.

Saturday, August 4, 2012

Outside-In: A DayZ Short Story


Pre-story disclaimer: I have not actually played DayZ; 90% of what I know came from watching gameplay videos on YouTube. The other 10% from a visit to dayzmod.com


Outside-in: A DayZ Short Story
by: Paul M. King (2144 words)



Chernarus.
The name popped up in the news a few weeks ago because of an epidemic or some kind of disaster - a lot people thought it had to be something nuclear, mainly because the name of the country sounded a lot like ‘Chernobyl.’ The level of international concern was about the same as one of those African countries that are constantly in grip of a severe famine or civil war - We feel bad that something terrible is happening, but there’s not a lot anybody is going to do to help a poor country with no oil and little potential as a tourist destination. It didn’t help that hardly anyone could find the place on a map; I knew it was somewhere along Russia’s eastern shore - on the Sea of something-or-other - but that’s about it; more than most people could tell you, I’d wager.
Eventually, the news moved on to other more interesting stories - another politician got caught cheating, a celebrity couple was splitting up, it was really hot today - and we forgot about Chernarus.

A couple of weeks passed; the only news I can recall from that distant corner of the world was about some military exercises the Russian navy was conducting that raised eyebrows in some of the Asian countries, but nothing came of it. I had other things on my mind; I was finally made full-time at the firm where I’d been doing my best to scrape by on 30-hour work weeks for nearly a year. Have you ever contemplated a memory, only to realize that you don’t really remember doing whatever you were doing when your brain absorbed the information - like it just sort of took root in your mind by itself? The human brain is funny that way.
Anyway, to help make ends meet as a part-timer, I took on a number of freelance projects. The last project I would need to take as a freelancer was for a non-profit organization with international ties. The request was for an online database with both an internal and external interface to track the need for humanitarian aid in third-world countries, places that this organization would then try to raise funds for aid and medical mission work.
At the risk of making a sweeping generalization, working for non-profits is usually a pain. They tend to have very limited resources, but require a high level of functionality combined with an equally high-level of abstraction in their online applications. But, a paycheck is a paycheck and the landlord doesn’t care where the money comes from, just that he gets his share of it by the end of the month.
To my surprise, the client was very easy to work with, they even loved the first design revision I submitted - that hardly ever happens. I continued to develop the site, all the while providing daily updates to the client, just to make sure that yes, they really are happy with the way things are progressing and, no, they don’t feel the need to make a “little change” to the underlying data structure. In fact, there was only one change I was asked to make before the site could go live; a single entry had to be purged from the database: Chernarus.
Normally, I wouldn’t give such a request a second thought, but it occurred to me that I hadn’t heard, read or seen anything about Chernarus since it was mentioned in the news a couple of months prior. I googled Chernarus for any recent mentions and came up empty; not a single mention of the country in news articles, blog posts, wikis, or social media that was less than year old.
On a whim, I did a quick search for recent mentions of Russia in the news. Since Chernarus used to be a part of the Soviet Union, I figured there might be some mention of the missing country. The only remotely interesting article I could find involved an American who had gone missing while traveling in the Ural mountains. Just another sad story.

Another couple of days and the project was finally completed; I got paid and treated myself to a night out with my friends to celebrate. On this particular night, we decided to catch a late movie, so it was nearly two in the morning when I arrived home. I hate to admit it, but I’m not as young as I used to be, I can’t pull all-nighters like I did in college just ten years ago (man, has it really been that long?). So I probably looked like some kind of brain-dead zombie staggering through the front door to the unexpected guest sitting in my living room.
It was clear he had been expecting me. He didn’t jump up in surprise or act in any way like I had caught him doing something suspicious. That’s not to say that he was completely at ease; he wore a fearful, hunted look about him - but I wasn’t the one making him nervous.
“Hey man, long time no see.”
There was an awkward moment of silence as my weary, startled mind struggled to put a name to the face.
“Pete? Is that you?” Pete and I had grown up on the same street, we graduated together, then went our separate ways in life. Last I heard - my mother was friends with his mother on Facebook - he was in the CIA.
He nodded, “You look good, life treating you well?”
“Yeah, I guess. You look …” How do you tell someone you haven’t seen in over a decade they look terrible?
Pete picked up on my hesitation. “I’ve been better.”
“What’s going on? Why are you in my apartment?”
“I need a place to lie low for the night,” he said, “Don’t worry, I’ll be gone by the time you wake up.”
“Are you in trouble? Is someone after you?” I asked.
“That’s the problem, I’m not sure,” he sighed, “And if I was sure, it would be too late.” I can only imagine my expression as he said this.
“What do you know about Chernarus?” he asked.
“It was in the news a while back, people were sick or something. And now it’s like it no longer exists.”
Pete nodded, “There’s a reason for that. The country has been quarantined - completely cut off from the rest of the world.”
“The epidemic?”
“Maybe? I didn’t have enough clearance to dig that up, but I do know something heavy is going on in that country and no one is allowed in or out.”
Pieces of memory began to fit together, “the Russian navy - those weren’t military exercises?”
He shook his head, “A blockade. And the US is providing drones to patrol the mountains that separate the two.”
I had a sinking feeling about the answer to my next question. “That wouldn’t include the Urals, would it?”
“You heard about the missing American?”
“Just that he was last seen in the Ural mountains.”
“He was an independent filmmaker, looking to make a documentary about Chernarus.”
“And he was killed?”
Pete shrugged, “All I know is that my team was assigned to go look for him. Before we even leave the states, word comes down from the top that the case is closed and ‘Here’s your next assignment.’ That’s when I started digging.”
“I get the feeling you dug too deep.”
Pete leaned in, his voice low, “People are being sent to Chernarus. Just … bundled up, dropped off and left there.”
“Why?”
“If I knew that, I could blow the whole thing wide open.” he slumped back in the chair, “Right now I’ve got little more credibility than your run-of-the-mill conspiracy nutjob. Assuming I could get to the media, I’d just be spun as an unfit agent with PTSD or some other nonsense.”
“Truth is often stranger than fiction,” I offered, “But to totally cut off an entire country? How can they expect to keep it up?”
“Look at Area 51,” he countered, “No one denies it exists, they just don’t talk about it. And if any of the crazy ideas about what goes on there are accurate, who’s going to know? How do you tell the truth apart from the rest of it?”
By this point, my brain felt like mush. “I’ve got to get some sleep. The couch pulls out and there are blankets in the linen closet.” I got up from where I was sitting and started towards the bedroom, “Assuming this isn’t some crazy dream I’m having, we’ll figure things out tomorrow.”
Pete chuckled, some combination of bitter mirth and weariness, then said, “Good night.”
The next morning, I awoke to an empty house.

The next day, I returned home from work to find someone waiting for me in the driveway. The man flashed a badge - CIA - and asked to speak with me. Despite my uncertainty at the prior night’s encounter, I’d be lying if I said I hadn’t given any thought to this scenario during the day. With all the calm nonchalance as I could muster, I invited the man inside and offered him a drink.
I sat where Peter had been waiting for me the night before while the agent sat on the couch and asked me questions about the boy who had grown up down the street from me; if I had managed to stay in contact with him, and if he might have tried to contact me recently.
Finally, the questions stopped and he stood to leave. I noticed that the throw pillow he had been leaning against was upside down, so that the zipper was showing.
“Sorry,” I said, as I flipped it over, “it’s an OCD thing - it really bugs me when people leave couch cushions upside down.”
A strange expression clouded his features for the briefest moment before he shook my hand, thanked me for my time and left.
After seeing him off, I collapsed on the couch with a huge sigh of relief. I had done a pretty good job of keeping it together; I drew comfort in the fact that, even if they suspected that Pete had contacted me - I had done nothing wrong, he was the one they were after.
It was getting late and, since I normally grab dinner right after work, I was starving. I didn’t feel like cooking, so I drove through the nearest fast food joint and made my way back home. Shortly after eating, I performed one last email check for the day and decided to turn in for the night. It’s probably telling of my caffeine consumption that I can knock back a regular-sized soda and go right to sleep - of course, being up most of the night before probably contributed. In just a couple of minutes, I was dead to the world.

My dreams that night were really weird; I experienced sounds and sensations, but couldn’t actually ‘see’ anything - like dreaming with a blindfold over my mind’s eye. It reminded me of the time I had my wisdom teeth taken out, and they put me under.
At different points, I felt like I was being carried or riding in a vehicle. The voices I heard were often hushed or muffled; there were a variety of accents and I think - at least once or twice - I heard someone speaking Russian. Not knowing a single bit of the language, it was hard to be sure.

Have you ever woken up in stages - like, your mind wakes up before your body? You’re lying there, thinking thoughts and being aware of the fact that you are awake, but you can’t move at all? Sleep paralysis, it’s called.
As I lay there, waiting for my body to get with the program, I realized that something was very wrong - I was not laying in my bed at home. I felt a fine, gritty texture against my face and hands and a cool breeze stirring above me; I heard the sound of waves and seagulls a short distance away. I was wearing clothes, but not the shorts and sleeveless t-shirt I usually wear to bed; the outfit I wore was unfamiliar to me. Finally, after a minute or two - which each of which felt like an hour - I realized I could move again.
I jerked myself upright to confirm my fears: I was sitting on a rural beach. Despite the lack of a single recognizable natural feature or landmark by which to orient myself, I knew with cold certainty where I was. Getting to my feet and stretching my aching muscles, I attempted to stop the nagging thought that kept repeating itself in the back of my head by finally giving voice to it,
“Welcome to Chernarus.”

Friday, February 24, 2012

Tales of a Less-Desperate Part-Time Developer

I have been remiss in letting you, faithful reader, know that I was hired last Friday.

I am working part-time at a web design firm learning Expression Engine, I will go full-time when I am able to handle a full production schedule ... but you don't need to worry about the details, just know that I have a job. Also, I was fortunate enough to pick up a freelance client two weeks back. I should be wrapping up with him next week. He seems pleased with my work and could lead to future side jobs.

I want to express my sincere, heartfelt thanks to any and all prayers, well-wishes, recommendations and/or attempts to find work for me. I felt like I was in limbo for an eternity, but in reality, I was very blessed to get hired as quick as I did, and to be working with some cool guys in a fancy office - above ground and with windows, no less!

Naturally, this has been a HUGE weight off my shoulders; I feel like I can almost function normally again. "Normal" being highly relative when used in regards to me.

My first order of extra-curricular business is to get some artwork done for Nevermet Press. They've been shoved aside for this whole job-hunting mess and I really want to make it up to them with some quality illustrations. Jonathan, Nevermet's big kahuna, will never know how much I appreciate him making me a part of Nevermet, his patience and his willingness to try and help me find a job.

I also need to make myself keep writing the story I started last year. It's currently sitting at 24,759 words and I am determined to finish it. Unfortunately, I haven't touched it since Jan. 20 due to all the job-related craziness. I also have a bad habit of setting projects aside when something else captures my interest, but this is one that I feel is important to finish.

I'm looking forward to an exiting new year of opportunity and finally getting some interesting content posted at least a couple times a month.