Today I want to share a simple Lua idiom for assigning a value to a variable only if that value has a specific type.
When using Git on a project I’ll create branches that have work-in-progress commits. That is, commits I intend to later go back and modify by fleshing out their commit message, combining or separating them with other commits, and so forth. I recently screwed up and merged a branch with such a commit onto a project, and other developers have already added work on top of it so there’s no changing that part of the project’s history now.
So I came up with a simple way to stop myself from merging work-in-progress commits in the future, and in this post I’ll explain how.
I do a poor job of playing games when they’re released. So even though the Unfinished Swan came out in 2012 it was not until last week that I finally played through it. Today I want to talk about why it’s an amazing horror game. Yes—I said horror game. Watching the trailer may (rightfully) think that I’m insane for applying that label to the Unfinished Swan.
And so I present my case.
In this article I want to share with you my method for studying computer programming. I devote a lot of time to this but you do not need to do so in order to become a talented programmer. I simply have a passion for programming that borders on an addiction. And here’s how I feed it.
My apologies for the quiet month, as I’ve plans weighing on my mind. In the past I have asked for another Emacs Lisp developer to hopefully step up and offer to maintain PHP Mode. As of today I will no longer work on feature requests for the project. If developers continue to send me improvements and/or bug fixes then I will be happy to review and merge them as necessary. However, I feel like it is time to end my personal work on PHP Mode. I will not completely walk away and leave the project in a dead state until someone is willing to take over the role as maintainer. But from today forward I will no longer be an active contributor, instead simply merging contributions from the myriad of developers who have worked to improve PHP Mode to what it is today.
If you are a PHP programmer, use Emacs, and wish to improve the mode then please take a loot at the latest mode. If you have any questions feel free to ask any quenions.
Today I want to talk about an aspect of an all-time favorite game franchise of mine: The Elder Scrolls. Recently I’ve invested a lot of time into Skyrim. At first I considered writing about my general thoughts, but since I have overwhelming praise for the game I felt that would be wasted effort echoing existing platitudes. So then I considered some of the specific elements of the game which I don’t like, but that runs the risk of coming across as pure vitriol.
Thus I chose to focus on a single element of Skyrim that I desperately want to see change more than anything—well, except for the fact that 2002 was the last year you could fly in an Elder Scrolls game. C’mon Bethesda…. Besides that, there is one issue I have with recent installments of the franchise that I believe should change because they would improve the games.
Yet Another Gamer’s Nostalgic Description of the 90’s
Let’s rewind the clock to 1996 and discuss the start of Daggerfall. You began the game ship-wrecked in Privateer’s Hold, a dungeon that was the equivalent of a swift kick to the family jewels. After dying eighty-six thousand times and escaping with a thorough mastery of combat and magic—and a permanent fear that any room the size of a broom closet may contain an enraged brown bear—you found yourself in the county of Daggerfall with a massive number of possible locations to visit.
The game did nothing right away to nudge you towards the main quest. Instead, after seven to fourteen in-game days, you would receive a letter from someone working for the Emperor. The letter would contain the name of a town and inn within Daggerfall county, and specific mention that the author would only be able to wait there for one month. If you blew her off to do explore at your leisure then you would receive another letter, with a new location and time limit. If you still chose not to pursue this lead in the alloted time then you forfeited any initial help on how to start the main quest. Decide you actually want to help the Empire? Well you probably should have answered that summon.
It was still possible to begin and complete the main quest but now you had no clue about where to start, about the importance of whether or not a certain queen received a certain message, or why you might be attacked by a ghost screaming “Vengance” if you wandered the streets of Daggerfall city at night. There is a crucial element to this entire process which, to me, detracts from the experiences of more recent installments like Oblivion and Skyrim.
Everyone in the World Did Not Wait For You
The majority of quests in Daggerfall had time limits. If you took a job from the Fighter’s Guild and didn’t get it done in two weeks or whatever, it would hurt your reputation with the guild and they’d get someone else to do it. From a role-playing perspective it makes perfect sense to me: the entire world was not going to wait for me. This made the setting feel more involving and less artificial.
Here’s an example of how it would improve Skyrim. When you go to Riverwood and walk into the shop you hear a brother and sister talking about a recent theft. So after awkwardly standing there in silence while they argue, you can strut up to the brother and offer to go retreive his stolen good. Thankfully he somehow knows exactly where the thieves have made their den, but whatever…. If you take on the quest the sister will then escort you to the edge of Riverwood while filling you in on some details that flesh out the characters, the quest, and the entire experience in general.
And then it falls apart when you come back four months later in game time and those same thieves are still at that same spot because those siblings are never going to ask anyone but you for help. If this were an older Elder Scrolls game you would fail this quest for taking so long, and that is how things should be. The world of an RPG feels most alive when it does not revolve around you. When people do not wait forever to meet you then that interaction feels more important. When guilds devalue you or even kick you out because you’re not getting off your ass then that increases the motivation to do the job you signed up to do. At the heart of all of this is a world that will move on without you.
So many quests in Skyrim remind me of this change in the series, the removal of that ever-looming clock over your head. I felt more engaged in the role of my characters when I knew, as a player, that I was operating under a time limit. As much as I still love the Elder Scrolls games, that’s a design element I want back.
You do not take a world for granted when you know it goes on with or without you.
I was woring on an article about Skyrim when another topic came to mind, one which is inseparable from the Elder Scrolls franchise these days: mods.
Mods Are Great Except For One Thing…
In the article I’m writing I criticize some aspects of Skyrim’s gameplay. It immediately crossed my mind that most people would respond with, “Well there’s a mod that fixes that.” I take a serious issue with this attitude. More specifically, I have a certain amount of—dare I say—disgust with the notion that flaws in a game are trivially excused because the community can correct any issues with mods.
A mod that fixes a problem in a game does not excuse the game from having that problem in the first place and does not protect the game from criticism.
Please don’t misunderstand: I think mods are absolutely fantastic. My problem is not with mods themselves. It is with this common notion that community-made mods give developers a free pass on their screw ups and give them a cheap way to deflect a lot of legitimate critiquing.
Maybe I’m just being a bitter old man on the porch yelling at “those damn kids on my lawn!” Anyway—I wanted to get that off my chest before finishing my article about Skyrim in the next couple of days.