Author: Josh (page 1 of 327)

Ballad of the Doomguy

I’ve been playing a lot of 2016’s DOOM lately. It hearkens back to the shooters of my youth. There’s a lot of catharsis in blasting demons with cool weapons and punching them in the face. The levels are large and they reward exploration with opportunities to customize your preferred blasting methods and adorable figurines. Perhaps most of all, for me, it showcases some fantastic storytelling and a wonderful way to leverage a silent protagonist.

The data logs you find on everything from the UAC’s methodology to data on the demonic minions you’re exterminating are very well-written. They, like the upgrade tokens, are fun bonuses. You can get all of the story you need, though, just from the brief in-game interactions and the Doomguy’s emoting. From the start, you get a sense of your avatar’s personality, without him uttering a single line of dialog.

In brief: explorers discovered an odd geological rift on Mars that was spewing a fascinating form of energy. The Union Aerospace Corporation’s CEO, Samuel Hayden — imagine the love child of Scott Pruitt and Elon Musk who downloaded himself into a cybernetic body — went into leveraging this resource to solve an energy crisis back on Earth. The EPA can’t file lawsuits if you’re exploiting a natural resource on another planet, right? Right. And Argent Energy rendered nuclear power and fossil fuels obsolete overnight. Hayden didn’t count on his head researcher being a covert cultist who discovered the energy was coming from Hell, and talked to demons about some sort of shady deal. Next thing you know, the UAC facility is getting worked over in the style of the colony from Aliens, and Hayden is trying to figure out how to maintain profits when all of his workers are dying horribly.

Enter the Doomguy.

Our hero hates demons with a fiery passion, and was put on ice after the last time he somehow made Hell worse, at least for its demonic denizens. He wakes up in one of the UAC’s isolated labs, find his iconic armor after smashing some zombified UAC folks with his bare hands, and realizes there’s a demonic invasion afoot. Hayden contacts him right away, figuring the Doomguy can clean the place up and get the energy production back on track.

It takes about 5 seconds for the Doomguy to communicate he’s not down for being a corporate stooge.

The monitor with which Hayden contacts our hero gets smashed to the floor. Moments later, in the elevator to Mars’s surface, Hayden tries again, giving some spiel through another monitor about “the greater good”. That monitor gets a solid, indignant punch.

I can’t tell you how much I love this.

Characterization in video games can be difficult, especially in shooters. Halo’s Master Chief is your stereotypically stoic one-man army in power armor. Most of the Call of Duty protagonists tend to be walking talking recruitment campaigns for modern military organizations. Other bullet-dispensing avatars whoop and wisecrack their way through the bad guys, kicking ass and looking for a fresh pack of bubble gum.

Doomguy’s just here to smash demons and give middle fingers to corporate America while he’s at it.

On top of the pretty obvious disdain he has for the UAC, the Doomguy’s got a sense of humor. When you find the collectibles, there’s a fantastic little sting of classic DOOM music as the hero looks the figurine over. But when you find one that’s the same coloration as your current incarnation, the Doomguy gives it a fistbump. The scion of anti-demon violence and masculine badassery fistbumps a figurine.

And then there’s this little Terminator 2 Easter Egg, when the Doomguy takes a bad step and falls into molten metal:

The developers could have easily just left the Doomguy as an angry psychopathic killing machine. But they didn’t. He has a sense of humor. There are glimmers of knowing self-awareness. And when confronted with the notion that smashing all of the UAC’s work will plunge the Earth into a new energy crisis, the Doomguy shows himself to be a person with conviction, weighing that reality with the fact that demonic invasions are literally the worst thing. Hayden doesn’t agree; the Doomguy doesn’t care. Demons are bad. Sure, making life difficult on Earth is bad, but it’s still life. Better to worry about the prices of your utilities than an Imp eating your face, right? Right.

Video games are mediums of visual storytelling. They’re made for showing, rather than telling. And 2016’s DOOM does this beautifully. I think that these moments, and the data logs, keep me playing just as much as the action and exploration. Fast-paced shooting is one thing; being compelled to see the next bit of story is icing on the cake. It’s a glorious storytelling experience on top of a visceral exercise in catharsis.

I love story-based games. My next solo gaming project is Witcher 3, which will be very different but, from what I understand, rich in its own storytelling. I’m just as invested in the lore of Overwatch as I am its game balance and being a better Reinhardt. But I’ll probably be coming back to DOOM now and again. There are harder difficulties, arcade modes, classic maps, challenges… there’s a lot there, and not just in terms of ammunition and well-designed enemies.

The ballad of the Doomguy is a work of pulse-pounding death metal punctuated by shotgun blasts and breaking bones, but its melody is one of those sprawling lyrical epics about one man standing against a tide of darkness. It’s Beowulf with a BFG.

And I am, as the kids say, so here for it.

Write Place, Write Time

Pictured above is Chuck Wendig’s writing shed. It’s a completely standalone structure made to do one thing: isolate a writer and make them write. It’s a deliberate, concrete manifestation of disconnecting from the world around us, and exploring aspects of how our world was before or could be in the future. Perhaps new worlds are being created in this tiny booth of creativity and frustration. It’s hard to say, until either the writer emerges with manuscript intact, or you go to the door and you knock.

Just be prepared if you knock, because writers are most definitely a frustrated lot.

Being able to isolate oneself is, in my experience, rather essential to the process. I’m sure there are writers who thrive on doing so in the midst of a crowd. Somewhere out there, there’s a novelist who can’t make the words happen unless they’re sitting on a bench in the middle of Grand Central Station getting bombarded by people and PA announcements and smells and odd looks. More power to them, I say. I’m more of a “writing shed” kind of person.

The best I can do is walk up a few blocks to my local library and get in on one of their little work rooms; failing that, use a public terminal that doesn’t have about a thousand distractions a click away. Because let’s face it: writing is incredibly frustrating work, and most writers I know are more than happy to do things that are not writing. Writers are avid gamers, outdoors enthusiasts, movie buffs, even parents… all of these things take the writer away from their writing, and unless they’re isolated to some degree, most writers I know would opt for those not-writing things instead of disconnecting from the world and getting the writing done.

Even this blog post is an example of this. I’ve gone back into my previous entries on writing to see if I’m repeating myself — I’m sure I am to some degree. I’ve looked at other writers’ Twitter accounts to see how far off I am — not all writers are the same, after all. I’ve been distracted by Discord, Facebook, the traffic outside, the sound of the TV in the flat’s main room. I’m thinking about my phone interview in half an hour. I’m thinking about Mad Max Fury Road, and Dungeons & Dragons, and…

Well, you get the idea.

If I were trying to finally put some damn words into the manuscript that’s been very patiently waiting for me to finish it, it’d be even worse. If I weren’t sitting in a place free of most distractions, save perhaps for some good mood music, I’d be getting nothing done and I’d end up frustrated over that. I know I can close my distractions as easily as I can open them. I try to do so whenever I need to get something like this done, let alone laying out hundreds of new words in a story I need to finish. In one particular case, there’s a definite need there, and despite its lengthy gestation period, I think this novel is becoming more relevant as time goes on, not less.

But that’s literally a story for another day.

With the weather in Seattle being its more temperate summer days of late, days of mild temperatures and little precipitation, going to a library for a few hours seems like a likely prospect until I secure more steady dayjob work. The challenge for me is making the time and devoting the energy to do so. Job searches are soul-crushing, heart-eroding, mind-grating things, and I think this is the longest one I’ve been on. I can’t yet sustain myself on writing alone, and the competition for freelance work is just as breakneck as it is for salaried positions, if not moreso. I’m not giving up, but I’m also reminding myself that I still want to write, need to write, and the only way to do it is, to use an old metaphor, “sit down at a typewriter and bleed.”

I’m going to be working to find the right time, and go to the right place, to do just that.

Don’t worry, I’ll clean up afterwards.

The Deep Mines of Published Adventures

I’d like to give you a bit of a peek “behind the curtain” regarding where inspiration comes from and how basic materials from other sources can lead to new ideas and new directions in storytelling. This past weekend, I put together a one-shot D&D adventure for Seattle fans of Critical Role. While I did re-watch some favorite episodes from the first campaign of the series, and read up on a good deal of material in the Tal’dorei Campaign Guide, considering this was a one-shot, I wanted to make sure that the adventure had direction and balance. With that in mind, I turned to my time acting as a Dungeon Master for the Adventurer’s League.

The two Adventurer’s League modules that I took as my basis were “The Waydown” and “The Occupation of Szith Morcaine”. They’re from the same season of the Adventurer’s League, the “Rage of Demons”, and thus had a lot in common. Both were delves into the Underdark, both involved strange beings to both interact with and fight against, and both were influenced heavily by the machinations and madness of the demon prince known as Graz’zt.

But the Adventurer’s League modules take place in the Forgotten Realms. This was an adventure in Exandria, on the continent of Tal’dorei. This lead to some questions for me, as the Dungeon Master: where is the Waydown on Tal’dorei? How are drow, duregar, myconids, and so on different in the world created by Matt Mercer? And what would Graz’zt want with Exandria?

I am, of course, not going to answer that last question here. This is going to be more than a one-shot, much to my delight. But I will say that, since these two adventures were related by the overarching “Rage of Demons,” it wasn’t difficult to tease a few bits apart, remove things that didn’t work, and weave them together into one coherent adventure with Tal’dorei flavor and and plenty of places for a party of adventurers to go.

One of the things that saw me moving away from Adventurer’s League was that in a short, two- or four-hour session, it can be very difficult to get into character, establish rapport with other players — or, if you’re the DM, any players. On the other hand, the published adventure modules are adjustable for all sorts of parties in terms of difficulty and rewards, and the through-line of start to middle to end is very easy to follow. With the change of setting and a longer session time, this flexibility made the matter of adding more narrative storytelling a straightforward one.

Now that the party’s established, and these initial adventures are completed, we can move on. While it can’t be called entirely original, considering the involvement of Graz’zt and the very nature of where Tal’dorei came from, the storyline and character hooks I have in mind are all mine, informed by my fantastic players and rooted in the desire to tell a great story woven through with emotion and character.

I also run a game on the occasional Thursday night, and we’re going through the 5th edition starter set’s “Lost Mine of Phandelver”. Again, however, this adventure has been transplanted from the Forgotten Realms to a campaign setting entirely of my own design. The world of Levexadar is my first real attempt at something like this, and as a result, I’m still tweaking things and looking to published materials. On top of the Phandelver resources, I’ve incorporated some adventure and setting trappings from the previous edition of Dungeons & Dragons. You could say I’ve “filed off the serial numbers”, and I don’t feel bad about that. So far, it’s made for a good story.

When it comes to role-playing games, you can delve deep into the fertile veins of published materials and find all sorts of things to tell a story of your own. I find my thoughts turning to parts of the Tomb of Annihilation hardcover and materials even older than 4th edition as elements to use in one or both of these campaigns. The echoes of the familiar in unexplored territory can both comfort a player, and present an opportunity to surprise them. And if you manage to surprise your players, get them invested in the world and the story, and anticipatory of what’ll happen in the next session or even the next minute, you’ve got a great game of Dungeons & Dragons on your hands.

500 Words on Outrage

Between the political landscape and my personal situation, it’s very tempting to just type out the word “AAAAARRRRRRGGGGGHHHHH” 500 times and be done with it. It’s also tempting to just fire up a video game and try to forget about the things that are taking up space in my brain and making me froth at the mouth.

However, no amount of playing cards, rolling dice, or escorting payloads contributes to the solutions of the problems at hand. And even if I spend my time writing fiction or working on programming tutorials and projects, there’s a nagging voice inside of my head telling me that my time should be spent finding more work, or doing something about my country’s political situation, or fighting for the rights of others. You know, addressing the stuff that makes me angry.

Anger, as an emotion, can get a bad rap. I remember Yoda saying in the first Star Wars prequel “fear leads to anger, anger leads to hate, hate leads to suffering,” as if there’s always a linear path that emotions take. Anger is almost always spoken of in negative terms. After all, anger fuels a lot of negative or violent outbursts.

But as with so many things in life, the proper application of anger can get a lot done. Anger is a problem, as are its causes; what matters is how we use that emotional energy to create some sort of solution. It motivates us to finish more projects, to put forward better behaviors, to act in defiance of injustice. Sure, there are those who subscribe to false narratives and let their misinformed anger push them to make bad decisions. But I’d like to think, optimist that I am, that those folks are in a small (but very vocal) minority.

I get little bits of hope, here and there. Seeing people come together in solidarity to fight back against abuse. Social media exchanges of trying to reach a mutual understanding in a civil discussion. Servants of justice constructing their cases to take down the wicked. A phone interview. A comment on Ao3. A hug and a kiss from a loved one. Play of the Game in Overwatch.

It quiets those annoying head weasel voices that try to convince me I’m wasting my time and getting nothing of substance done. I have to look after myself, stay on top of my mood, and keep from falling to pieces. It’s self-care. It’s necessary.

I have a lot going for me, when I stop to look at it. There’s a lot of love in my life. I’m in a safe place. I’m trying to keep an eye on my diet and what little income I’ve actually got, and doing my utmost not to be a drain on my family or friends.

The outrage remains. It bubbles under the surface. It seeps out through cracks in my veneer.

But at least it’s not exploding. Because nobody deserves that.

I’m using my anger; I refuse to let it use me.

WordPress PHP PayPal Payout Helper Class

View on GitHub

At-A-Glance

Platform: WordPress
Language: PHP
Keywords: RESTful API, PayPal, eCommerce, WooCommerce

Overview

We live in an international, interconnected world. We work for one another on all sorts of solutions. And we all want to get paid for our work, right? Right.

It’s not uncommon for people to use a CMS like WordPress to advertise, facilitate, and implement their business. And when doing so, an eCommerce platform handles all of the sales, taxes, and so on. But what if we’re not paying for a product, but rather providing payment to another person for a service rendered?

The client in this example is running a business in Australia, and connects those needing professional SEO services with qualified freelancers. The desired solution would not only ensure the proper flow of payment from the former to the latter, but also automate the process so that recurring contracts with a monthly or bi-weekly payout schedule would take place without requiring manual input.

Approach

The prevailing idea was to have a solution that was as seamless as possible with current WordPress and WooCommerce functionality. The modularity of WordPress and, by extension, WooCommerce means that new classes to handle a situation like this can be added onto the platform is relatively straightforward. With that in mind, I worked to craft a class that drew the information required from existing sources, work it through the PayPal API, and update all of the pertinent data without interfering with other processes.

In most instances, this is a process that is done manually. By automating things, we could make the work of the client more smooth, provided that we could ensure the success of these transactions should they run automatically as a CRON job based on whenever the appropriate payout should be made, as well as checking for the proper currencies on payout.

Result

Thanks to the functionality of WooCommerce and PayPal, the incoming currency was the only type that requires a callout. Once the recipients information is entered and the transaction started, PayPal handles the rest. However, giving it the incoming currency is crucial, in that PayPal is informed that default currency values should not be used.

Then, it’s a matter of making sure the correct credentials are culled for both payer and recipient from the WordPress database. This information is entered by both parties as part of their registration for the site. The class consolidates this information and, along with the currency type and amount, facilitates the transaction.

Older posts

© 2018 Blue Ink Alchemy

Theme by Anders NorenUp ↑