Categories
Doctor Who Writing

Doctor Who: Blackout

Blackout is my first and only attempt at writing an episode length screenplay. I am an avid fan of Doctor Who, so it was only appropriate that I try my hand at writing a Doctor Who episode. I tried to keep the Doctor and Companion vague, but my brain was floating somewhere between Eleven and Twelve. The companion is an original character that I intended to usr for other stories.

The full text of the screenplay is here:
https://archiveofourown.org/works/38674185

Categories
Audio Time to Orbit: Unknown

Time to Orbit: Unknown – Readings

Time to Orbit: Unknown is a free serial by Derin Edala posted at their website. You can support Derin via Patreon.

Links to the chapters will be placed before the corresponding audio file.

Disclaimer: There is no set schedule for recording these and I cannot promise to continue recording these.

001: Javelin (14m:13s)

002: Duty (13m:29s)

003: Assessment (16m:02s)
Note: Click the link, then hit [Map] under the chapter title for the ship map and crew manifest

004: Travel (11m:48s)

005: Ghosts (15m:09s)

Categories
Game Development level design TF2 Mapping

TF2 Mapping – Cow_Dustbowl, KOTC_Prefab

Introduction

As a novice TF2 mapper, I spent entirely too long trying to come up with game modes that would never be conventionally popular. Perhaps the best example of this is my Cow_ and KOTC_ game modes.

Cow_ Game Mode

Cow_ is an attack/defend mode where the defending team is protecting several wooden cutouts of cows. It is possible for the level designer to determine how many cows are in each stage of a level and how many cows need to be destroyed before moving on to the next area/stage.

The cows can only be knocked over with melee weapons and the defending team can stand next to the cows to make the cows temporarily invincible (marked with a large red “cancel” or “do not enter” symbol).

There are countless problems with the mode; for instance, spies can very easily backstab the cows and the only way the defending team can prevent this is by having someone camp within the protection radius of the cow. As you can imagine, the mode lends itself to having spies on the attacking team and pyros on the defending team.

As a proof of concept, I set up two maps using the mode, cow_activate_a2 and cow_dustbowl. Activate will get its own page in the future and Dustbowl is the standard Dustbowl map with cows instead of control points.

KotC_ Game Mode

KotC stands for King of the Cow. The two teams compete to have control over the cow for the longest amount of time. The cow changes teams when it has successfully been hit by a melee attack without the other team being in the protection radius.

I created a template for this mode but never implemented it into any map.

Gallery

Notes

Cow_Dustbowl on TF2Maps: https://tf2maps.net/threads/cow_dustbowl_a1.18807/

My Tumblr post about cow_dustbowl_a1:
https://brokentripod.tumblr.com/post/17139514270/welcome-to-cowdustbowla1-you-may-be-asking

Second Tumblr post about cow_dustbowl_a1:
https://brokentripod.tumblr.com/post/17228265386/urserlicious-hey-im-hosting-cowdustbowla1

A short video on Youtube of Cow_Dustbowl:
https://www.youtube.com/watch?v=_tKBI4vH0cc

Apparently played as part of April Fools 2013 at TF2Maps
https://tf2maps.net/threads/april-foolsday-the-2nd-monday-1st-april.21006/page-2

Categories
Doctor Who Writing

House in Piranesi and The Doctor’s Wife

Piranesi is a book by Susanna Clarke published in 2020. The Doctor’s Wife is an episode of Doctor Who by Neil Gaiman that aired in 2011. What do they have in common? House. In this essay, I will…

show that the House in Piranesi, a seemingly endless span of rooms containing marble statues and an ocean, is literally the same character as House in The Doctor’s Wife, Season 6, Episode 4 (DWS06E04).

Spoiler Warning: Note that this will contain spoilers for the Doctor Who episode and the book.

This essay assumes that you have read Piranesi more recently than you’ve seen the Doctor Who episode. I will provide a short summary of each and then will provide a play-by-play summary of the Doctor Who episode linking it back to portions of the book. Note that I’ll be skipping a lot of the drama of the TARDIS, which is where a lot of the charm of the episode comes from. After describing the similarities in the two pieces of work, I will “Bring It All Together” (skip there if you don’t want the recap) and refer back to the evidence.

The Doctor’s Wife is a lovely Doctor Who episode where the Doctor is tricked into visiting a pocket universe by a consciousness referred to as House. House is an entity that has tricked many Timelords in the past into visiting and has eaten their TARDISes. After the Doctor lands, the TARDIS’s matrix is removed and inserted into a person named Idris. House posses the shell of the TARDIS with Amy and Rory, the Doctor’s companions, inside while the Doctor works with Idris and gets a chance to speak verbally with the TARDIS matrix for the first time. Magic happens, House is extracted from the TARDIS and the TARDIS matrix is returned by the end of the episode.

Piranesi is an interesting book about Piranesi, a man who has been living in a space he calls House. House is full of marble statues and the ocean tides occasionally sweep through the Halls of the House. Piranesi treats House as something almost religious based on his written descriptions. Piranesi has lost his memory of our world and is visited by several other characters throughout his time in the House. One important figure is the Other (Valentine Ketterly), who is trying to figure out the mysteries of the House and also (unbeknownst to Piranesi at the beginning of the book) trapped Piranesi there in the first place. Laurence Arne-Sayles is the one who teaches Valentine Ketterly and other characters how to get to the House.

Open Systems

DWS06E04: In The Doctor’s Wife, we are introduced to several characters who are in a junk yard. The myriad of clothing they are wearing makes it difficult to tell what time period they might be in. Uncle, a human, is wearing a military outfit. Nephew, an Ood, is wearing a suit. And Aunty and Idris are wearing dresses. The state of their clothing is in disarray, like they have been holding onto this clothing for a while. The place is a junk yard because it’s an open system that allows object from the outside to enter, even though it’s concealed from the outside world.

Piranesi: Compare this to Piranesi, where the characters who make their way into the House are left with nothing except what is on their back. The House exists as a place where there are merely two materials: water and marble. Sea life, birds, humans, and clothing appears to have seeped into the House from Earth. Objects are allowed into the House, even though it’s concealed from the outside world.

Emptying The Mind

DWS06E04: Nephew places his hands over Idris’s ears and, per the script: “Nephew will drain your mind and your soul from your body. And leave your body empty…but soon you’ll have a new soul.” Note that Nephew’s eyes are a green color at this moment and Ood are canonically capable of powers that humans do not possess. This story does take place in the Doctor Who universe, after all.

Piranesi: Something similar happens in the House in Piranesi, albeit more slowly. The characters that enter the House slowly lose their memory and minds. It’s uncertain how long the process takes, and we never see someone properly “empty” in the House. The Other insists he cannot be there for more than an hour, but that seems like more of a precaution than an actual time limit.

A Pocket Universe

DWS06E04: The Doctor receives a “scrumptious little beauty” which is a Timelord Emergency Messaging System. The Doctor says “there are no more Timelords left in the universe, but the universe isn’t where we’re going…” The Doctor pulls some levers, burns up bits of the TARDIS, and they’re outside the universe and have unwittingly landed on House, the villain of the episode.

When Rory inquires about where they are, the Doctor provides a simple metaphor: “Imagine a great big soap bubble with one of those tiny little bubbles on the outside.” The implication that this universe is, as stated above, a pocket universe.

Piranesi: Compared to the method of travel in Piranesi, the Doctor must spend a lot of energy to get to where House is located. The characters in Piranesi are able to reach the House from anywhere on the planet if they’re skilled enough at returning to a childlike state of mind. They’re capable of crossing over by merely meditating. The Prophet suggests that ancient knowledge from the Earth could have seeped into the House over thousands of years and created the halls of the House, and it’s clear that the House is somewhere that could, in a loose sense, be described as a pocket world, if not universe. The House seems to have its own gravity, its own oceans, its own labyrinthine halls that are receptive to creatures from the Earth entering its spaces.

Now, compare this to Piranesi, but perhaps on a different scale. The Earth is the great big soap bubble, and the House is the tiny little bubble on the outside.

What is the House?

DWS06E04: “The House? What’s the House?”

“The House is all around you, my sweet. You are standing on him. This is the House. This world.”

The Doctor looks into a vent at a green light. “I see. This asteroid is sentient.”

“We walk on his back, breathe his air, eat his food, AND DO MY WILL.”

“So you’re like a sea urchin. Hard outer surface, that’s the planet we’re walking on, big squashy oogly thing inside.”

Note that as House is talking, the Ood is holding up his translation sphere, which glows green along with the Ood’s eyes. The implication here is that the House is both a physical object (asteriod) and a consciousness, but despite both of these, he still requires the Ood translation sphere to be capable of speech. House will talk later in the episode when he is in control of the TARDIS, but we know from other episodes that the TARDIS is capable of producing its own noises and has at least one speaker.

Uncle also states clearly that: “Too late. House is too clever.” The fact that House has tricked many Timelords into visiting so he can eat their TARDISes certainly implies a certain devious cleverness. Had the Doctor not been the last of the Timelords, it is entirely possible he would not have escaped from his situation.

Piranesi: It is difficult to get a good grasp of what exactly House is in the book, but it is clear that is what Piranesi calls the world around him. The ocean, the statues, and the halls, all of it is “House.” It is also clear from the book that being in this space has resulted in Piranesi losing bits and pieces of his memory; filled with something else. In the canon of the book, people who reside too long within the House are susceptible to losing their short term (and long term) memory. Piranesi, who has been in the House far longer than the other characters we see in the book, not only loses bits and pieces of his memory and connects this change to him becoming a different person:

“This, I suppose, is where I differ from both Matthew Rose Sorensen and Piranesi; I find I do not care greatly about clothes.”

“But I, who am not Piranesi – or at least not only him- realise that this wouldn’t go down too well.”

What if the House isn’t only a physical object, but a consciousness that presses its way into the inhabitants of the space?

The Consciousness

DWS06E04: During the episode, House is able to push his consciousness into the (now empty) TARDIS and talk to Amy and Rory and simultaneously take control of the TARDIS. House discusses his plans to leave the pocket universe to seek out additional TARDISes, which implies that the House isn’t bound to the physical asteroid from. It is capable of existing separately as a consciousness and transferring from one physical object to another.

Piranesi: The last words of the book are: “The Beauty of the House is immeasurable; its Kindness Infinite.” Throughout the book, Piranesi views the House and its halls as something akin to religion, nowhere more than this last sentence. It reads as if Piranesi views the House as a conscious being capable of kindness. At different points in the book, Piranesi alludes to the House “providing” for him, as though it has a mind of its own.

Corridors and Halls

DWS06E04: When House takes control of the TARDIS, he states “Corridors. I have corridors. So much to learn about my new home.” House learns to appreciate the architecture of the TARDIS, which is an improvement over a round asteroid junkyard covered in bits of old TARDISes.

Piranesi: The House in Piranesi takes the form of innumerable rooms containing marble statues.

The Powers of the House

DWS06E04: “Why shouldn’t I just kill you now?” “Because…killing us quickly wouldn’t be any fun. And you need fun, don’t you?” “You need to be entertained, and killing us quickly wouldn’t be entertaining.”

As Amy and Rory run though the TARDIS, House is able to make them hallucinate and experience time jumps and, potentially, time dilation. It’s unclear in the episode if this is a capability of House on its own or if it’s only possible because House is controlling the TARDIS. What is clear, is that House is capable of “messing with our heads” as Rory states.

Piranesi: Consider for a moment that characters losing their short term memory and James Ritter’s longing to return to the House aren’t latent properties of the House, but a power that the consciousness of the House is capable of. What if the “consciousness” of the House is capable of causing characters to lose their short and/or long term memory and causes the characters to want to return to the House (ie James Ritter, Raphael, Ketterly, Laurence Arne-Sayles, Piranesi)

A Servant

DWS06E04: After taking control of the TARDIS, Nephew is the only character that the House brings with him from the pocket universe. Aunty and Uncle collapse to the floor when House decides he’s done with them. This makes sense because the Ood appears to have more capabilities than Aunty and Uncle, as clearly shown earlier in the episode where Nephew removes the consciousness from Idris.

Piranesi: The House in the book can be said to have many servants. Each person who teaches someone else to get into the House is helping extend the House’s influence. Laurence Arne-Sayles helps Valentine Ketterly, James Ritter, and Sarah Raphael get into the House. Ketterley helps Matthew Rose Sorensen get into the House and Sorensen helps James Ritter into the House. It is unclear if Matthew Rose Sorensen will help anyone else into the House, but it is clear that multiple characters know how to make it into the House and that the knowledge can be spread.

Our Universe

DWS06E04: The House asks why he shouldn’t just kill the Doctor and his companions and the Doctor rebuts that he is the only hope for House to get out of the pocket universe into the Doctor’s universe. By deleting rooms, as recommended by the Doctor, House successfully makes it out of the pocket universe. With the rooms deleted, the Doctor, Idris, Amy, and Rory are transported back to the main TARDIS control room, Idris dies and the TARDIS matrix is released back into the TARDIS. The TARDIS matrix pushes House out of the TARDIS. House pleads “Stop this! Make her stop! Make her stop!” and is last heard of in the episode with a groan that fades away. It is unclear where exactly House went. It was clearly pushed from the TARDIS, but is House dead? Or has the consciousness merely been pushed out of the TARDIS and floating about into our universe?

Bringing It All Together

Assume for a moment that Doctor Who and Piranesi exist in the same universe and please continue reading.

The Doctor’s Wife has just ended. The Doctor, Amy, and Rory celebrate in the TARDIS, which has returned to its usual self after pushing House out. House, a disembodied consciousness, floats through space. But House is a clever entity; the Doctor said so himself. House focuses inward and makes plans for the future. He can feel that this place is vast and he will take his time.

As happens in so many Doctor Who stories, House gravitates to planet Earth and starts anew. House knows the best place to hide is in A Pocket Universe, and so either creates one or stumbles upon the location in Piranesi. This new pocket universe resembles the one we see in The Doctor’s Wife. Think of it as a great big soap bubble that is attached to the earth instead of attached to the outside of Our Universe. It’s an Open System, where objects and creatures can get in and out if they know how. At House’s old pocket universe, Time Lords, Ood, and other creatures crashed or landed and House gobbled them up. In this new place, birds, sea creatures, and (eventually) humans will stumble in. Most unwittingly, but a few will enter intentionally.

From the book, we know that several humans have stumbled in and died. It’s unclear how long ago each human stumbled into the space. We know from the story that people who spend a long time in the House slowly start to lose their short term memory, and, potentially their minds. It’s unclear from the book what is causing this, but what if the House itself was responsible for slowly Emptying the Mind of each human that entered the space? Without an Ood to do its bidding, House isn’t capable of speeding up the process as we saw with Nephew and Idris.

The architecture of the house does not resemble the junkyard asteroid that we saw in the Doctor Who episode for several reasons. First off, House is not relying on luring ships to land or crash land on the surface. Secondly, House has finally some experience with architecture from his stay in the TARDIS. It may be a bit of leap to say that House saw the corridors of the TARDIS and decided to make the Halls of the House (See Corridors and Halls heading above), so we will perform some speculation here. If House’s little bubble started as not much more than a drain hole on earth, it would have allowed salt water and small sea creatures to enter. With shells from the sea creatures and a bit of time, it would be possible for House to form limestone and marble rocks. Now, it’s unclear how long House has been around, but Laurence Arne-Sayles claims it has been around since ancient times. What if House had fashioned itself sets of corridors to trap unsuspecting people who made it inside? And what if one of the people who ended up inside of House were a marble sculptor from the Roman Empire?

It’s unclear what The Powers of the House are in the context of the book, but if we link House to the Doctor Who episode, it seems that the House has some ability to influence his world. If House is able to form marble from the materials he’s given, who is to say that House can’t form halls and statues? It seems a stretch to say that the seemingly infinite halls and statues of the house were formed by a human hand, so it makes more sense that House has the ability to fashion the world, albeit maybe a bit slower than The Consciousness would like. House also knows that The Doctor is out there, so he purposely takes things slower than he typically would.

This brings us back to an important question: What is the House? In the Doctor Who episode, it is a creature that tricks its prey and eats. It doesn’t really have plans for world dominance or anything of the sort. In Piranesi, it’s unclear what the House might want, but from the context of the book, it appears that the House is responsible for wiping the memory of Matthew Rose Sorensen.

After all is said and done, Piranesi/Matthew Rose Sorensen returns to human society with knowledge on how to help others get to the House. Will he enjoy his time with the rest of the humans or will he want to return to the House? We do know from the end of the book that he does help James Ritter return, so it isn’t a leap to assume that he might eventually help other people get to the House. Unwittingly, Piranesi has become A Servant to the House will perpetuate the cycle of guiding more and more people into its Halls.

In case you are not convinced that the House from The Doctor’s Wife is the same entity as the House in Piranesi, please take a moment to note that the Doctor Who episode was released in 2011, approximately 9 years before the release of Piranesi in 2020. Additionally, Susanna Clarke has made it apparent she is familiar with Doctor Who by referencing “‘Timey-Wimey: Steven Moffat, Blink and J.W. Dunne’s theories of Time’, Journal of Space, Time, and Everything, Volume 64: 42-68, University of Minnesota Press” on page 165 of the book.

House has found a new servant to lure humans into its halls and has a direct connection to the United Kingdom of all places. One day, the Doctor will uncover what House has been doing, and we’ll see just how clever the House really is.

Categories
GIFs

The Art of GIF-making (Including “That’s a penis”)

Introduction:

I have made a number of GIFs that I’ve posted on tumblr. Most of them are very, very dated at the point in time. I’m going to link them (all?) on a separate page and try to categorize them a bit.

Most of these GIFs were developed for Tumblr from a period of 2010 to 2018(?) for use as reactions and some were requested from friends.

This blog post will discuss how I made these GIFs in the past and how I make them in the present. Note that the GIFs were made specifically for posting on tumblr so they meet the file size and dimensions required for tumblr through the years.

The Old Method:

After finding a video that you want to make a GIF of, the first step is to get the frames or screenshots. This used to be the most difficult part of GIF making. I previously used a program called ZScreen (this program has been depreciated since), to take rapid fire screenshots of clips of TV shows, movies, and YouTube videos. I would start the screenshot function and pick the approximate limits I wanted the gif to show, then take the screenshots. The “best” way to do this was to rapidly hit the “last region” screenshot hotkey as fast and as regularly as possible. Once this was complete, I’d have a folder with a bunch of still frames from the video, hopefully about 0.1 seconds apart.

Next, I used Photoscape, which helpfully released in 2008 to create the animated GIFs. Photoscape has an easy drag and drop interface and lets you pick the speed to display the frames at. Typically a duration of around 0.1 seconds per frame or 10 frames per second is what “looks” good. It all depends on the action. Faster movement requires more frames to look right.

Photoscape also has a convenient Batch Editor which lets you crop and add text, images, etc. to multiple images simultaneously without having to open each image in an image editor. This is mostly how I would get text on my GIFs, and I had some old favorite settings that I can’t remember anymore.

Once the frames are cropped and captioned they are put into the Animated GIF function of Photoscape. The last thing left (in the old days) was to pick a frame rate, which is more of a feel rather than actually trying to match the speed of the original media and the speed that the screenshots were taken at.

The next step is to confirm the size requirements for the website the GIF is being uploaded to. The size limits on tumblr varied through the years, so I found the easiest way to reduce the file size was to simply reduce the scale of the GIF. The more frames the GIF has, the smaller it’ll have to be. There’s a bit of compromise here, as it’s usually possible to delete a few “in-between” frames that aren’t necessary to capture the action that’s happening in the GIF. A lot of the final editing to fit down to size restrictions is just done by feel.

The New Method:

Kids these days are super spoiled because basic GIFs can now be made with a single program and just a few clicks. There’s not nearly as much fuss with getting the screenshots correct and now many online video players feature options to speed up or slow down media. Slowing down the media helps you get more frames easier.

Now-a-days I use ShareX, which is the latest version of ZScreen. ShareX has a lot of different options for capturing screenshots of your screen and comes with a handy little GIF feature that lets you pick a region of your screen to record. Simply hit the “Capture” then “Screen Recording (GIF)” buttons and highlight the region and the program will record a video of that region, cut frames every ~0.1 seconds, and compile the frames into an animated GIF. Unfortunately, since the output is already in GIF format, it’s not possible to use Photoscape’s Batch Editor to crop or add text.

I still use Photoscape to make final adjustments to the GIF following the same steps as above. If I really need to add text or get frames, I typically set up a hotkey in ShareX for “Last Region” and make sure that the program is set to repeat an action every 0.1 seconds. Then I just take an initial screenshot of a region and hold the “Last Region” key to get the frames needed at a decent rate. I personally find it works best to slow down media if possible so that you can double or triple the frames you’re getting.

That’s A Penis!

In 2011, I was at the height of my GIF making career (if it can be called that [it can’t]) and making many GIFs while watching the series How I Met Your Mother. In Season 2, Episode 6, there is a scene where Ted shows off a design for a building to a client and the client reacts with “That’s a penis!”

On January 30th, 2011, I created the GIF and expressed that it was “hard” to use. I later coordinated with a friend who made a post of some artwork that was very penis-looking so that I had an excuse to post the GIF, rather than wait for an opportunity that might never come. Unfortunately, that original use of the GIF is no more. The earliest version of the GIF that exists today is from February 3rd, 2011.

Here’s the original GIF in all its glory:

Note that this version is much more zoomed in than future versions because I had to work with the tumblr size limit.

The image became more popular after it was reposted on Soup and then Facebook in June, 2011. In August, 2011, was the first occasion where someone reversed the GIF using a GIF reversing website that unfortunately left a watermark on it. One of my friends sent the reversed (watermarked) GIF my way, so I obviously went and manually reversed the original version and posted that on tumblr.

Here’s the original reversed GIF in all its glory:

I also remade both in a larger size when tumblr changed GIF limits:

In 2020 when I started doing “research” for this WordPress, I noticed there was a “Know Your Meme” page for the GIF so I submitted my tumblr posts and finally claimed my small throne as the original creator of the That’s A Penis GIF.

And the rest, they say, is history.

[Link to the rest of my GIFs, organized, eventually]

Categories
Half-Life Musical

Half-Life Musical: 1 – “Song of the Black Mesa Transit System”

Return to Summary Page

[Gordon Freeman enters stage left. He stands for a moment in his scientist outfit and opens his mouth to speak.]

Barney [off stage]:
Gordon Freeman, is that you?
Aha! I knew it was.
The boys in blue are inviting you
to join us and get buzzed

Scientist [enter stage right]:
Gordon Freeman! There you are!
Looks like you’re early for once.
[whispered, to another scientist]
He always shows up late,
Can’t believe they hired this dunce

[Gordon shuts his mouth, vaguely dejected, and continues off stage right]

[Alarm blares]

Robotic Voice:
Gordon Freeman to Training Facility for Hazardous Environment Training

[Freeman enters stage left again and looks away from the audience. He checks his watch and taps his foot and a tram arrives from stage left.]

[Music builds as the tram gets closer. The doors open in front of Freeman and he steps in.]

[As the song continues, actors, props, etc. travel from stage right to stage left to give the illusion of movement]

Announcer:
Welcome to the Black Mesa Transit System
We’ve got facts and safety tips galore
Please keep your hands inside the vehicle
We’re traveling from the surface to the Reactor Core

Press the button to request an exit
And if you miss yours don’t be vexed
Our trams run every ten minutes
Through the entire complex

We’ll get you safely to your destination
There hasn’t been an injury in [Robotic Voice] TEN [return to normal voice] days
Here at BMTS that’s a personal best
So don’t forget to give the technicians your praise.

Now sit back, relax, and you’re on your way
It’s not the time to worry about your government pay
And don’t you worry about any delay
This is BMTS wishing you a fabulous day.

~~~ ~~~

Disclaimer: Half-Life and Black Mesa and the associated characters are owned and copyrighted by Valve Software

Categories
Half-Life Musical

Half-Life Musical: 0 – Summary Page

Author’s note: There are no plans to continue this project at this time.

On February 8, 2021, Marc Laidlaw (writer on the Half-Life series) posted a tweet about finding song titles for the non-existent “Half-Life Musical.” The song titles are in the image at the bottom of this post.

I have no plans on writing all of these songs, but that doesn’t mean that I won’t accidentally try.

The song titles are shown below. Please follow the song links for lyrics and stage direction for each song.

01 – Song of the Black Mesa Transit System
02 – Test Chamber Music
03 – Resonance Cascade
04 – Hearts and Headcrabs
05 – The Cavalry is After Me
06 – Quiet! The Beast Can Hear You!
07 – The Interminable Corridors of Love
08 – Barney’s Song
09 – Three Scientists in Peril Are We
10 – Lambda Lab
11 – Xen Again
12 – So You Think I’m a Big Baby, Do You?
13 – G-Man’s Etude

Feb 8th, 2021 10:26pm
List of Song Titles by Marc Laidlaw

Disclaimer: Half-Life and Black Mesa and the associated characters are owned and copyrighted by Valve Software

Categories
Game Development level design

Going up together? AKA btmap1_rc

Teamwork Required.

In the Days of Olde, Portal 2 did not have the Perpetual Testing Initiative, which means that making Portal 2 maps required one to go into Hammer, get things set up for Portal 2, and generally scour the “Thinking With Portals” forum for information.

While playing Portal 2, the level designer in me decided “time for me to make some puzzle-y maps!” And from there btmap1_rc was created. I decided my first released Portal 2 map before the workshop would be a co-op map because I have little to no self control when it comes to aiming high.

btmap1_rc was iterated a few times and tested entirely on my own using the Portal 2 splitscreen feature. It was also the first time I used “instances” in Hammer. Overall, the map wasn’t difficult to make or design, which is why I would go on to make a number of other Portal 2 maps. This is still the only co-op Portal 2 map that I’ve created and it was also the first; so it has a sweet spot in my brain and heart.

After the Perpetual Testing Initiative, I recreated the map as “Going up together?” I still have the original version of the map, but the Workshop version is much more accessible.

Let me know if you give the map a try! (Link to Steam Workshop below)

Puzzling things out.

VIDEOS:

Scooter on Youtube (Approved method of making it to the top level)
coopcrowd on Youtube (Slightly cheeky way of completing the map; they rated the map 8/10)
Djinndrache on Youtube (Also a valid solution)

LINKS:

Going up together? on Steam Portal 2 Workshop
btmap1_rc on Thinking With Portals

Categories
level design TF2 Mapping Zombie Fortress

Zombie Fortress – ZF_Industry

Introduction:

Zombie Fortress is a mod for Team Fortress 2 that’s been around since 2008 (Official 1.0.0 release on September 20, 2008). The earliest reference to “Zombie Fortress” I’ve found is from July 2008, where Lurk (also known as Sirot) posted about a Zombie class on the Penny-Arcade TF2 forums (honestly I’m not sure of the context).

Sirot would go on to iterate on the server mod in an effort to make the mode fun. There were some complaints from other forum members, but one issue with the mod was that we were running it on standard TF2 maps rather than a map made for Zombie Fortress. Sirot created a Blogspot website where he kept a nearly daily account of the project as it went forward.

Overview of one of the ZF_Industry variants.

History:

On August 15, 2008, Sirot posted a map concept for ZF_Industry, pictured below.

Original map concept by Sirot

Sirot asked if anyone would make a map for the mode and I offered to try running with the rough concept above. I had some rough experience making maps for TFC and some playful maps for TF2 and figured I could make a halfway decent map that was at least partially designed with Zombie Fortress in mind.

Development:

I don’t know exactly how long I spent on zf_industry, but I can assure you it ended up being a much larger project than I anticipated. I created the Train Station, labeled “T” on the map above and set up a train to drive through the station. The Warehouse, labeled “W” on the map was placed in a lower area with multiple areas for the zombies to attack from. The Mines, labeled “M” on the map, was never created because I wasn’t confident in my abilities with displacements and never seriously tried making it.

I also created a parking garage structure to get between the zombie spawn and the Mines. Not entirely sure how I ended up with the parking garage.

ZF_Industry screenshots were posted on September 6, 2008 and the initial release candidate ZF_Industry_RC1 was released on GameBanana (Formerly RPGBanana/FPSBanana) on September 21, 2008.

ZF_Industry was the first and only map for Zombie Fortress for a little while there and I made a mistake by adding a capture point area over the entire site which meant the zombies could prevent the players from winning really easily. I remedied this by removing the control points in a ZF_Industry_CPLESS version of the map released on September 28, 2008.

1,996 downloads, 5,436 views

Impact:

On September 19, 2010 (about two years after release) I found Zombie Fortress again and looked into the ZF_Industry map and found a few interesting things.

The Train God:
I stopped working on the map after the initial release, but a forum called Ubercharged.net (defunct as of 2020) continued playing my map and the Zombie Fortress game mode. Apparently the train on my map was called “The Train God” at some point and inspired a Steam Group with the name “The Order of the Train God” with 174 members.

There was also a poem on Ubercharged.net with a reference to the Train God.

The “Order of the Train God” Steam Group

Undead Garrison:
I also stumbled upon Gang Garrison 2, which is a demake of Team Fortress 2 in 2D. Apparently, some people had created a mod called “Undead Garrison” which was basically Zombie Fortress in the demake. I can’t vouch for how far the Undead Garrison mod went, but I do know that someone recreated ZF_Industry in 2D for the mod and that someone else looked at it for long enough to remind the original creator that there’s hills in the background of ZF_Industry.

Undead Garrison version of ZF_Industry without hills.
Undead Garrison version of ZF_Industry after the creator was reminded by someone else that there are supposed to be hills in the background.

Remake:
On March 8, 2010, a remake of ZF_Industry called ZF_Industry_v2_1b2 was posted on RPGBanana/GameBanana by Kontata54. Someone (probably the uploader) decompiled my map and made some adjustments to it, including: a secret room that can explode, the map now takes place at night, and there’s additional details added throughout.

The creator of this remake did not contact me, but he at least did reference that I was the one who made the original in his post.

ZF_Industry_v2_1b2 (nighttime!)

Here’s a short video of the map “in a nutshell” showing the secret room and the explosion.

Short Story:
The remake of the map inspired someone to write a short horror story about it. The story features some screenshots from the map and references specific features of the map. It’s wild.

Image by USMValor from here

Statistics (Updated 12-10-2020):

Teamwork.TF is a website that aggregates and summarizes information collected from TF2 servers. The following is some fun facts about peak players and when the map was last seen as of December 2020.

ZF_Industry_RC1: 3 concurrent players on 26-Jun-2017, last seen on 2018-12-10 (happy anniversary!)
ZF_Industry_RC1_cpless: 30 concurrent players on 11-Jun-2017, last seen on 2020-12-09 (???)
ZF_Industry_RC1_cpless_MAG: 28 concurrent players on 04-Nov-2017, last seen on 2019-06-28 (I attest to not actually knowing where this came from and it apparently is only being played in Asia)
ZF_Industry_V2_1B2: 30 concurrent players on 10-May-2017, last seen on 2020-12-10 (???)
ZF_Industry_V2_1B4: 24 concurrent players on 06-May-2019, last seen on 2020-03-01

“Final” Words:

I released ZF_Industry back in 2008 and did some brief research to see how it was doing back in 2010. A lot of this information comes from the initial search. Zombie Fortress has grown in popularity, but TF2 as a whole has decreased in popularity over the last 12 years. I’m still amazed that anyone played a map I made and *waves arm at all of the above*.

It warms my heart to have released something that had a surprising impact on the TF2 community.

If you have any stories about Zombie Fortress or screenshots or YouTube videos that I haven’t found in my search, please let me know and I might add a link to it here. I’ve got archived copies of old websites and screenshots and videos living on my external hard drive to look back on in another 10 years.

Categories
Game Development Unreal Engine 4

UE4 – The Maskening

Introduction:

During the COVID-19 pandemic of 2020, Allen Pan created a launcher that launches masks onto people’s faces. Around this time, I was experimenting with Unreal Engine 4 and decided the scope of my project was too large.

A Discord server I’m on linked to the Reddit post and highlighted one of the comments:

Link

It occurred to me that this would be a “quick” project to approximate in UE4, so I asked the team if it would be better as an FPS or third-person. Karva said “The only problem is that once this is all over the game would be out of date” and “third person so you can customize your mask.” I came up with the cringeworthy phrase: “maskrotransactions.”

I knew I wouldn’t get to any sort of mask customization, but I started up a new UE4 project with the Third Person Template and got to adding some basic functionality for a Tower Defense game.

Progress:

Basic customer pathfinding/following

After getting basic pathfinding into the game, I created path through some rectangles that would eventually be shelves inside a store. I realized I’d need the AI to do a bit of crowd control, since there were potentially going to be a lot of customers so I used the “Detour Crowd AI Controller” which has some embedded functionality for avoiding other objects. A list of YouTube tutorials that came in handy are at the bottom of this post.

After getting AI pathfinding to work, I wanted to incorporate the mask launching. I followed a few tutorials related to adding a weapon to third person and found it was a bit more involved than expected (as is everything). I did a quick mask model using primitive objects in Asset Forge and threw it onto the default mannequin for the player model, then copied that onto the customer models.

I used Joe Wintergreen’s debug lines tutorial to emulate bullet trails so you could vaguely tell where you were shooting since there was no crosshair and the mask launcher was literally a cylinder in the mannequin’s arms.

When the mask is applied to a customer, I adjust the visibility on the mask and apply a blue hue to the customer’s material so it’s easier to tell at a distance.

Launching masks onto customers

I posted the gif on Twitter and Allen Pan (the guy who made the original video) commented on it. I am admittedly not an artist, so I went onto the UE4 Marketplace and found a few grocery store/convenience store looking assets and made some very minor edits.

My computer/UE4 has a weird error where I had to turn off screenspace reflections otherwise there were some pretty horrendous reflections off the pavement.

Screenspace reflections turned on is bad for me

“Final” Product:

The Maskening was certainly an interesting side project and ended up taking a lot more time than I thought it would. As of November 4, 2020, the map loads with 2 maskless customers who pick a random route through the store. There’s a trigger you can step on to spawn additional enemies and you’ve got 50 masks in your launcher. The words “Wave 1 of 10” display at the top and there’s no functionality there.

Maskening two rude customers that decided to come out without masks

Will I ever work on this again? Probably not! But it was fun and challenging in ways I wasn’t expecting.

Tutorials/References:

Basic Pathfinding and Detour Crowd AI Controller:
UE4 Detour Crowd AI Controller Tutorial by Gustavo Reis
Detour Crowd AI Controller : Unreal Engine 4 Game Engine by Peter L. Newton
UE4 Quick Tutorial – Ai Waypoints by LemonFrost Games
Unreal Engine 4 Tutorial – AI – Part 4 Patrolling NPC by Ryan Laley Games
Unreal Engine 4 Tutorial – AI – Part 5 Patrolling NPC Continued by Ryan Laley Games

Firing and adding masks to customers:
UE4 tute: Drawing debug lines with constructionscript by Joe Wintergreen
UE4 Third Person Shooter Game Project SetUp Part 1 by SG Unreal Creation
UE4 TPS Game Add Weapon and Equip Weapon Part 3 by SG Unreal Creation
Animation Assets – #2 Unreal Engine 4 Animation Essentials Tutorial Series by DevSquad

UI Widgets:
UE4 / Unreal Engine 4 UMG / Widgets – #01 Custom UMG by Dev Enabled

Screenspace Reflections Issue:

Unreal Engine Forum Topic by BrokenTripod