Out for a stroll after the end of civilization as we know it.

"I would totally kill for a pair of boots right now," I muttered.

"What?" My wife was confused.

"Oh, in this game I'm trying to survive after crashing a plane in the Canadian wilderness as a result of a massive CME. I've got a bunch of tools, rifle, hatchet, hunting knife, but I'm wearing a pair of sneakers...in the snow," I offered in explanation.

"Ah," she said.

"So it's hard to avoid freezing to death, as a result," I concluded. I turned my attention back to the game, where I was busy starting a fire to prevent just that very thing from occurring.

My latest focus is on an indie game still in development, The Long Dark. Initially funded through Kickstarter, at this time the game is only available via Steam Early Access, although a Steam key can be purchased through the Humble on-line store as well. The protagonist of the game is a bush pilot who was forced into a crash landing as a result of a coronal mass ejection from the sun that caused severe atmospheric ionization, effectively putting society back into the pre-industrialized era. Winter has set in, and in order to survive the pilot must locate and utilize any available tools, gear and food he or she can use to survive another day.

At this point in development, the only portion of the game that is accessible is the Sandbox mode, which permits free-form play through one of three available maps and their interconnecting zones. When the game first released in the fall of 2014, only one map was available, but the developers have been making steady progress at adding additional content to the game, in addition to support for crafting your own gear, tools and weapons to aid in survival. They also release frequent bug patches and interact directly with their player base via Steam's community discussions and their own forums. Consequently, even though I am typically reluctant to pay for an Early Access game (which may or may not be a developer attempting to cash in on a project they never intend to complete) the development team at Hinterland Studio has shown a clear intention to complete this game, with the Story Mode expected to be released sometime in 2015. In my mind, the most impressive move by the developers so far was the replacement of the game's Unity 4 engine with Unity 5, to enable better performance on computers with high-end GPUs and/or multi-core processors. This transition appears to have only taken a few weeks to accomplish.

If I'm starting to sound somewhat fanboy-ish, that's because (against my better judgement) I am. Previously I had ranked The Elder Scrolls V: Skyrim as my favorite video game of all time. Even though the graphics in this game are not quite as realistic, I actually enjoy this game much more. That's probably because the challenge is real, and the scenario behind the game is one that could become all too real, should the Earth be caught directly in the path of a massive coronal ejection from the sun.

When I began the game, I immediately tried Voyageur mode, which is the middle difficulty level (and originally the only difficulty level available). Even though I was new to the game, I managed to survive for more than 5 days before I was finished off by a wolf in the dark. It was a harrowing experience, however, and even with the knowledge I already possess I found the only way I could stay alive was to keep moving and scrounging for food and clothing wherever I could. I expected to die any moment. Subsequent attempts to play the game at this difficulty mode met with disaster in less than 24 hours of game time, so I ended up switching to Pilgrim mode (easy difficulty) to get a feel for the game and attempt to learn the ropes. It didn't take too long to get hooked.

A significant portion of the game is exploration. Newcomers would probably find it best to use Pilgrim mode to get used to the game mechanics, because there is a lot to juggle. Thirst, hunger, fatigue, and cold are all statuses you have to keep your eye on as you play, because they impact your ability to survive. The type of winter gear you are wearing and the gear's overall condition directly impacts how quickly you get cold while you are outside. Tools are necessary for survival in order to do basic things like start a fire, harvest materials and food, and repair your clothing and equipment. All of this is hard enough without having to learn how to avoid and fend off attacks from starving, predatory animals.

I recently reached a point where I was no longer satisfied with the Pilgrim experience, because once you have successfully explored the majority of the three maps and their interconnecting areas, it turns into a slow, day to day experience which may feel like a bit of a grind to some players. At this point, confident that I had learned what I needed in order to survive a harsher apocalyptic world, I returned to Voyageur mode and subsequently died again within 5 days of game time. I returned to Pilgrim mode with the advent of an update bringing new craftable weapons and hunting mechanics, along with a new area to explore, but once I had achieved everything there was to achieve I returned again to Voyageur, where I have now survived over 11 days of game time, with successful hunting and as of this morning, surviving a wolf attack and living to tell the tale.

I have more to tell, but hopefully this should suffice until I have a chance to return and share my story.

Crows are your friend in the Long Dark

Please be assured that the lack of visible activity at this website is not an indication that nothing is happening. Although, to be completely honest, I have been spending a significant amount of time playing The Long Dark lately, when I probably should have been more focused on developing this project. Regardless, progress has been made, and as usual (in my development experience), progress completion has been held up by the little things, or in this case, the proper detection and insertion of tag references to a submission post at the time of submission. In an attempt to prevent duplicate tags, the code now examines the tags entered into the field one at a time, compares them against existing Tags already defined, inserts new ones if no match is found, and then assigns each one to the post all as the post is submitted.

Although relatively simple, the first iteration of the site's built-in submission/editing form is actually rather powerful.

Submit Form

At this stage the form can only insert new posts, mainly because I have not yet added support to the rest of the site to edit existing ones. I have to figure out a few things, such as persistence of form field data, how to load data into fields, and also add in some java-script to prevent the accidental navigation away from a form in progress to prevent some of the invariable loss of data that will occur. That said, all but two of the aforementioned items I wanted working in my last submission have all been met. Those two are namely:

  • Add support for post summary.
  • Add support to limit the number of posts on the home page.
I plan to roll those two items into the 0.3 release, as I get to it, because obviously this is not yet done, but we're making some considerable progress as previously I had to add submissions manually in a MySQL interface, which was clumsy and unwieldy when assigning tags to the posts in question. At this point, however, I can at least submit a draft version of a post in my browser, view the draft, then flag it public after I'm satisfied everything looks correct.

Even better, I learned how to use prepared statements effectively when submitting forms, so even though this form should be inaccessible to an non-authenticated visitor, there is still built-in security present to prevent SQL injection attacks.

Also to be included in 0.3 are the following items:

  • Add support to edit existing posts and set the visibility flag from draft to public (or private, or deleted).
  • Improve the submission form to avoid accidental data loss when a submit fails or when navigating to another page.
  • Add file upload support to add images and/or download links to posts.
  • Additional security.

Future items which may or may not make it into 0.3 include:

  • A dashboard with site statistics, a list of post titles (with links) authored by the user and other useful information.
  • An edit user form to support changing the user's password, adding "About" info, setting an avatar, etc.
  • Administration support to allow an administrator to assign additional privileges to users, inactivate accounts, update passwords, etc.

I have a lot I'm thinking about in regards to how I want this weblog to grow. However, since I seem to forget what I was doing 15 minutes ago, I guess I should probably document some of these. This list may change as time moves on.

ToDo list for 0.2:

  • Quash any remaining bugs
  • Make tags clickable
  • Make titles clickable
  • Add support for post summary
  • Make logo & title clickable link to "home"
  • Add markup support
  • Improve look & feel
  • Add submission form
  • Add support to limit the number of posts on the home page

In my (possibly poor) wisdom I thought I would be generous and offer anyone who might be interested in the current version of the FtES Weblog a chance to peek at my terrible code, and also the method I used to establish the database. I do not know if I will continue making this code available, but for now I have a simple Subversion repository to handle version control, so it is entirely possible that I may do this.

So without further ado, here is your download link. Please be gentle, it's my first time (coding in PHP).

FtES_Weblog_v0.1.tar.gz

Update: I found and fixed two minor output related bugs, but I'm not in the mood to repackage this just yet. Let me know if you know what the bugs are (and how to fix them).

Like the phoenix rising from the ashes once more, this personal weblog is now under construction and being developed in PHP as a learning exercise.

Stay tuned for updates on my progress, which I will post as frequently as time permits.