Paths to Adventure
Menu
  • Home
    • Game Design Blog (Professional Blog)
    • Game Designer Articles
    • Justin’s Web Journal (Personal Blog)
    • The Solstice Museum (Video Game History Blog)
    • Website Index & Archive
  • Shop
    • Active Promotions
    • Paths to Adventure Shop
    • Hidden Paths Subscription
  • Publications
    • All My Publications
    • Role: Primary Author
    • Role: Contributing Author
    • Role: Cartographer
    • Role: Graphic Designer
    • Role: Artist & Illustrator
    • Role: Game Developer
  • Maps & Cartography
    • Cartography Portfolio
    • Dungeon Maps Magazine
  • Marketing
    • Crowdfunding Portfolio
    • Advertising Portfolio
    • Logos & Titles Portfolio
    • Convention Booth Portfolio
    • Websites & Apps Portfolio
  • Free Gaming Stuff!
    • Free Downloads
    • Free Map of the Day
    • Dungeon Map Generator
    • Tavern Sign Crafter
  • Personal Projects
    • Descent into Wyrmdeep
    • 8-Bit Dungeon Retro-Pixel FPRPG Card Game
    • Video Game Music
    • Aethercon (Archived)
    • Mythic Party (Archived)
    • Webdot Studio (Archived)
    • Getting Crafty
      • Painting TTRPG Miniatures
      • The Green Knight’s Helm
      • Space Goblin Figure
      • My Photography
      • The Quilt of Dreams
      • Machine Mods & Customization
      • Short Film Production
  • Contact Me
    • Send Email
    • Social Media
      • Facebook
      • Instagram
      • X (Twitter)
      • LinkedIn
      • LINE
      • Tumblr
      • Pinterest
      • SoundCloud
      • YouTube
      • Twitch
    • My Résumé
    • Relevant Links
    • Off-site Mass Portfolios
Menu

That Time I Forgot Who I Was

Posted on March 25, 2015

Or, how creating a short-lived internet radio station helped me find direction, and why.

This post is a reflection on my history, delving into a period a decade past when I had to make some difficult decisions about who I want to be. I think it’s worth sharing as an example of how its possible to find direction in the most unexpected places.

It was early 2005. I found myself without much direction in life and overwhelmingly malcontent. I didn’t know with any level of certainty any more who I wanted to be or where I my life was headed. To say that I was unhappy would be an understatement. My reality was still reeling from personal tragic loss a couple of years prior, and I had been searching for answers in some pretty dark places.

It had also been a couple of months since I had split with my then girlfriend. We had been living together in a quaint little house out in the country playing out the quintessential slow-paced middle-class family lifestyle. That person just isn’t who I am or will ever be. The building disdain and unrest I felt about the “quiet-life” routine wreaked havoc on the relationship. I felt more and more like a stranger in my own home, and I struggled to express that my problem wasn’t with her, but with the life it seemed we were building. The disconnect eventually was too much. We weren’t looking for the same things out of life.

After becoming single again, I started leasing a significantly larger house in the middle of town, but I found no peace and every day was fraught with a constant storm of uncertainty and unresolved issues.

It was in the midst of the maelstrom when my employers at the time decided to breach contract by withholding tens of thousands of dollars of back-pay owed and reneging on a higher-paying senior corporate position that was included as part of the contract. After I completed the contract work, of course. Ultimately the conflict ended with me quitting the job and filing for unemployment for the first and only time in my life.

The maximum length and payout was awarded by State arbitration after the company refused responsibility. Even though I had voluntarily quit, the State found my reasons valid due to the company’s breach of contract. Had my mind been in the right place at the time, I would have also pursued them legally for the back-pay, but all I wanted was a moment of peace.

So there I was, depressed and angry with nothing but time on my hands. I had a sustainable (though dramatically reduced) income, a stockpile of way too much alcohol, and was left alone with my thoughts in a house large enough for a 5-person family. My mental state was extreme cynicism; about everything.

So, I did what any reasonable person would do… I buried myself in code and developed a proprietary platform for streaming internet radio and launched my own station.

A decade earlier I had spent a summer as a intern at a recording studio, and had really enjoyed it. For a brief moment back then I had even considered being an audio engineer as a career path. However, the luster of intrigue wore-off, and the experiences of recording (and sometimes recording with) various bands just became fun memories. But, it had adjacently connected me to the world of indie musicians and the realization there was a vast, ever changing array of really good music I had been missing out on by consuming from the mainstream.

It seemed like the perfect genre to gear a radio station towards: Indie, unsigned, and upcoming bands trying to build an audience. I was friends with a few struggling indie musicians and had a decent understanding of how hard it was for them to just be heard. So, I committed to the idea.

The (retrospectively, poorly named) Xcord Internet Radio was an endeavor into some relatively new technologies: streaming content and social media.

Unless you’re around my age or older, it’s probably difficult to imagine the internet without either of these technologies, but at the time they were just curious oddities. However, hailing from the era of BBSes and Fidonet, I understood how personalizing connections could play into building close digital communities. I suspected social media was to soon change everything.

MySpace was on the scene, building off of concepts from Friendster. The company was already a year or so into laying the groundwork of what would come to be commonly known as social media. At the time it was still a relatively loosely inhibited platform. It was easy to utilize frames, Flash, and JavaScript in addition to inline CSS on a profile, making fertile ground for some reverse engineering and monkeying around with what actually happened on one’s profile.

Streaming technology had already been around for several years, but aside from a few examples, it was largely self-contained and isolated. RealPlayer, which supported RealAudio and Quicktime formats, immediately comes to mind. However, Adobe Flash was a game-changer. A few months earlier a new service called YouTube had launched a beta and the concept of everyday streaming content was showing real potential. It seemed like the logical direction to go by combining both technologies.

This was during a booming era of garage and semi-professional bands literally begging people to listen to their music, and MySpace had become the “go-to” place for thousands of artists. It was so prevalent that the service even created their own record label in tandem with Interscope, MySpace Records, to sign and promote upcoming bands. The whole grassroots self-defining aspect of it really appealed to my personality.

I would search around for songs I liked, message the band with a form letter explaining who I was, what I was doing, and asking if I could add their song to the station’s line-up. There were only a handful of times the offer was declined. More often bands were eager to have their music, branding, and links shared with listeners however they could get them out there.

How it functioned: The station audio was broadcast via a flash audio player that streamed two concurrent MP3 files on repeat with a dynamic stream time before forced reloading, thus looping the tracks. After the first track finished playing (based on the length of the song), the content distribution component I developed accessed the service database, picked two new random tracks, and used that data to overwrite the first MP3 on the webserver with the new MP3 from the fileserver (this would become the “third” song). It also generated metadata stored in a text file with all the details about the new songs and placed it on the webserver. The concept was loosely based on how I used "drop files" for BBS door games I developed as a kid, a temporary cache of data that changed as needed.

Once the loop restarted, the service would overwrite the second MP3 previously selected with the new "fourth" song. The process repeated indefinitely to create a seamless, unending live stream.

Since the database contained all the details about each MP3 (including play length), the flash player and content distribution component worked independently but in perfect tandem via the generated metafile. It would only occasionally cause a timing issue when the virtual playtime overlapped with a listener's playtime; in those cases it would default to selecting a station promo track to play to fill the space before force reloading to the new metafile.

The display interface utilized that metafile and allowed for "currently playing" and "playing next" to be displayed along with band links, details, and art/photos. There were even a few bands who provided special MP3s with short recorded messages tagged on the end promoting their album or upcoming tour.

To ensure dissemination of all available tracks, when picking the “fifth” song (track one on the second loop), it would access a query with date-last-played sorted in ascending order and play whatever track hadn’t be played in the longest time.

I added in some random "call-sign" and "promo" audio cuts as tracks, and *boom* -- I had a radio station. I even ran a few contests for various bands swag/CD’s with promotion tracks occasionally added to the mix.

I had a domain name for the station that I used to connect to the data server, but I based the actual station squarely within its MySpace profile with direct embeds and framed content areas. This allowed listeners to "friend" the station's profile, and seemed a better way of keeping an active audience rather than requiring them to remember a URL and browse to a website.

It was a timely decision since soon afterwards MySpace would restrict user modifications to CSS-only. They grandfathered-in existing layouts that had previous embedded elements and scripting included. This meant that soon after Xcord's initial launch, it was impossible to duplicate what I had created and it ended up being the only streaming radio station (that I know of) directly embedded on the platform until...

Eight years after Xcord's original launch (and a few years after I had migrated over to Facebook as my primary social media platform), in 2013, MySpace would launch "MySpace Radio" which actually integrated this functionality into their service allowing users to create their own "radio stations" from music hosted on the platform.

Spending my days working with and around creatives really breathed the energy back into my life, and focusing on the project provided me with a sense of purpose where one had been lacking. Rather than spending my days focusing on all that was wrong, I invested my effort into building something new. It was a gradual shift, but before I knew it I was excited for each new day again.

I ended up running the station until 2007 when additional MySpace changes finally broke the profile. But, by then I had found my personal momentum once again, and my most of time was being dedicated to my new job as senior web developer at an area IT Firm.

Overall, Xcord Internet Radio was a positive experience. The build provided something constructive to focus on and became another fun personal project that taught me some new skills that would be applicable in years to come.


Recently, I came across some old backups of the station file server, which sort of prompted reflections on the time and became the topic of this post. Among the backups were audio files and the final metafile generated when the station went offline.

This video is a short-take recreation of the last song streamed on Xcord Internet Radio (Devil in my Hand by a band called Uncrowned). It is preceded by one of the station call-sign promos (originally recorded by my then 16-year-old brother).

About the Author

Welcome to the blog and creative hub of Justin Andrew Mason.

I am a professional and freelance game designer and developer, ENnie award-winning best selling author, and Map Master award-winning fantasy and science fiction cartographer (among the many other hats I often wear in the game design industry).
Facebook
FbMessenger
Instagram
Follow Me
THREADS



General Information: Justin resides in Hopkinsville, Kentucky and serves as a creative collaborator for dozens of game design companies worldwide, contributing to projects across a wide range of genres and TTRPG platforms including Dungeons & Dragons and Pathfinder RPG.


Read Justin's Web Journal...


Get More! Find out about Subscribing to Hidden Paths for exclusive TTRPG content, subscriber-only maps, and huge discounts on Paths to Adventure titles!

Game Publishers & Companies

I have worked and licensed with dozens of publishers, studios, and game companies. Here is a list of a some of them:

     • 2 King Games
     • AAW Games
     • Adventureaweek.com
     • AetherCon Convention
     • Avatarart
     • EN Publishing
     • Dark Naga Adventures
     • Dorks of Yore
     • Dread Unicorn Games
     • Dreamscarred Press
     • Dungeon Crate
     • Gallant Knight Enterprises
     • Ice & Dice Gaming Convention
     • Jon Brazer Enterprises
     • Kobold Press
     • Legendary Games
     • Lone Wolf Development
     • Lunar Productions
     • Mentats of Gaming
     • Mongoose Publishing
     • Mythic Design
     • Mythoard
     • Oaken Dragon Press
     • Obsidian Portal
     • Paizo
     • Playground Adventures
     • Rogue Genius Games
     • SmiteWorks
     • TPK Games
     • The Grim Press
     • Wyrmworks Publishing


Click here to find out more!


Random Review

The Unreachable Terror


Justin Andrew Mason’s “The Unreachable Terror” pushes the envelope of the format in a great way. Concisely written and flavorful, this is well worth a final verdict of 5 stars.

Reviewed by—Endzeitgeist


Where Else to Find My Work



Don't forget your Free VTT Map Pack of the Day!
Preveiw of today's Free VTT Map Pack.


Professional Game Design

  • Home
    • Game Design Blog (Professional Blog)
    • Game Designer Articles
    • Justin’s Web Journal (Personal Blog)
    • The Solstice Museum (Video Game History Blog)
    • Website Index & Archive
  • Shop
    • Active Promotions
    • Paths to Adventure Shop
    • Hidden Paths Subscription
  • Publications
    • All My Publications
    • Role: Primary Author
    • Role: Contributing Author
    • Role: Cartographer
    • Role: Graphic Designer
    • Role: Artist & Illustrator
    • Role: Game Developer
  • Maps & Cartography
    • Cartography Portfolio
    • Dungeon Maps Magazine
  • Marketing
    • Crowdfunding Portfolio
    • Advertising Portfolio
    • Logos & Titles Portfolio
    • Convention Booth Portfolio
    • Websites & Apps Portfolio
  • Free Gaming Stuff!
    • Free Downloads
    • Free Map of the Day
    • Dungeon Map Generator
    • Tavern Sign Crafter
  • Personal Projects
    • Descent into Wyrmdeep
    • 8-Bit Dungeon Retro-Pixel FPRPG Card Game
    • Video Game Music
    • Aethercon (Archived)
    • Mythic Party (Archived)
    • Webdot Studio (Archived)
    • Getting Crafty
      • Painting TTRPG Miniatures
      • The Green Knight’s Helm
      • Space Goblin Figure
      • My Photography
      • The Quilt of Dreams
      • Machine Mods & Customization
      • Short Film Production
  • Contact Me
    • Send Email
    • Social Media
      • Facebook
      • Instagram
      • X (Twitter)
      • LinkedIn
      • LINE
      • Tumblr
      • Pinterest
      • SoundCloud
      • YouTube
      • Twitch
    • My Résumé
    • Relevant Links
    • Off-site Mass Portfolios

Delve Deeper…

  • Website Index & Archive
  • Generate a Random Dungeon
  • Get Your Free Map of the Day!
  • Go on an Adventure!

Personal Projects

  • 8-Bit Dungeon Retro-Pixel FPRPG Card Game
  • Descent into Wyrmdeep (Text Adventure Game)
  • Video Game Music
  • Aethercon (Archived)
  • Mythic Party (Archived)
  • Webdot Studio (Archived)
  • Getting Crafty (Additional Creative Projects)
  • Video Game History: Solstice Museum
  • TTRPG Books (600+ Items)
  • Cartography (2,000+ Items)
  • Virtual Tabletop Icons (1,600+ Items)
  • Kickstarter Campaigns (50+ Items)
  • Gaming Marketing (400+ Items)
  • Gaming Banner Promos (200+ Items)
  • Website Design (250+ Items)

Contact Me

  • Email Me
  • Justin’s Web Journal (Personal Blog)
  • Social Media
    • Facebook (Professional)
    • Instagram (Personal)
    • @Threads
    • X (Twitter)
    • LinkedIn
    • LINE
    • Tumblr
    • Pinterest
    • SoundCloud
    • YouTube
    • Twitch
  • Relevant Links
    • Justin @ Goodreads
    • Justin @ IMDB
    • Justin @ Board Game Geek
© 2012-2026 • Paths to Adventure is an imprint of Justin Andrew Mason • "Stay inspired and be creative!"