Featured Post

Heroes of Silvermoon, Chapter 1: The Cultist & Chapter 2: Arena Games

I recently switched jobs (from editing to coding! Woo hoo!), and possibly my only disappointment in doing so is leaving the first D&D gr...

Wednesday, April 11, 2018

Adventures in Coding

Well, I've made it through 1/4 of my web development and coding course this year. Two more quarters to go, and then I have an externship at the company who started the program and where my instructors are from for the rest of the year. As usual, time goes by at a breakneck speed no matter what because I'm an adult, but I'll be honest—the hours of the day crawl by agonizingly.

I'm working full-time while going to school, and many days school is boring or we do reviews for the students who are behind, which makes driving 20 minutes at 7:00 in the morning seem like a waste of time. Even worse, though, is my job. For the past couple of months, we've had next to no work to do. Our team is overstaffed, and several of our clients have simply dropped off for some reason I don't care enough to find out (I just work here. I'm no SEO or business enthusiast). So many times I come into work and am done with all my duties after as little as an hour and a half, and then I have to look busy for the remaining 6 or 7 hours till 7:00 pm.

Thank goodness for D&D, both in playing form (we play during our lunch hour every Monday—totally worth the one less hour of paid work per week) and in watching/listening form through Critical Role (I love Mondays), or else I would go insane. But I still ride the line of craziness most of the week when I get tired of fantasizing about playing a group with my siblings again and investing in worldbuilding for a future game to an unhealthy amount. There's such thing as "entertaining yourself to death." This may be the most first-world-problematic thing I've ever said, but I hate coming home from work and not feeling like watching YouTube videos or shows because I've already done that all day and the experience has been cheapened.

And yet, that is why I'm in this situation. I'm sick of my job, I hate working in SEO and editing, and I so very bitterly crave a satisfying career. So I'm learning languages like HTML, CSS, and JavaScript in hopes that they can get me a job that, even at an entry level, will double my salary.

And now for the positive part: I do really love coding! My instructors aren't the sharpest teachers, but that's mainly because they're professional coders, so they know best how to just sort of emanate expertise and hope we can follow along. But the coding itself is fun, I love the problem-solving aspect of it and the vastness of possibility in terms of what I could possibly make now, and I really enjoy the thrill of debugging! Whenever I figure out a particularly troublesome bug, I hear this music in my head. :D

My brother who is a CS major has helped me out quite a bit to wrap my head around the logic involved in JavaScript, and the best way for me to do that is to make it as geeky as possible! If you're into coding, this may demonstrate my method of thinking:

let deathKnight = new Class(Arthas,

Anyway, another thing I've been able to have fun with is making my own programs. D&D-related, of course, and once I perfect them, they'll likely be really useful for worldbuilding in future campaigns (as I said, an unhealthy amount). So here they are if you're interested in using them. Just don't spread the word too much, since I'm technically using information found in a purchased book, so it may not be strictly lawful good, if you know what I mean:

Character Generator


This generator is pretty rough, especially in the CSS sense. I have a lot of visual/UI polishing to do. But it currently does its primary job—that of generating a random race, class, and name—perfectly! You can even fill in fields that you don't want to be random and then randomize it till you get a result you like. You can also edit the text yourself if you want to tweak it.

Eventually I hope to get to the point where you can generate all kinds of different aspects of the character's story, and possibly even click a button to save the entire sheet as a PDF or something. I've gotten a bit discouraged with the coding on this one, mainly because there are SO many random tables I have to make and nest, but feel free to use it in its current state and check it for updates periodically.

Place/Landmark Generator


This one is a lot more solid. I really like how it turned out. Basically, you choose however many "moods" you want the generator to choose from, a biome or terrain type where the place is located, and whether or not you want it to generate a specific landmark or just the name of a region or town. I personally am really proud of how well I nailed the compound words that fit together. Almost every single time you press the button, it comes up with something that sounds evocative and fantastic. I took some inspiration from World of Warcraft, but the names sound a lot like what Matthew Mercer comes up with for his world of Exandria as well. Check these generated names out:
  • Ravenleaf Summit
  • Graysbrad Vineyards
  • Gloomdale Wilderness
  • Shimmerburn Dike
  • Grayflake Forest
  • Banebank Isle
  • Dawnburble Wetlands
  • Chainbush Gardens
If nothing else, this can serve as a great way to get inspiration for a fantasy map you're creating, especially if you're trying to deck out a region with landmarks, dungeons, or other places of interest. I may add some more functionality to this in the future as well; for example, adding the option to have shorter names or names that are more vague (which is sometimes more evocative), like "The Ghostburrows" or something. And I may add more word components as well. But for the most part, it's a solid tool that I'm proud to call my own!

I made a goal to update this blog at least twice a month. There's a lot I want to talk about and have kept putting off for months and years, and I want to show Pretzel Lectern some more love. And heaven knows I need something productive to do here at work!

I'll write again soon!

No comments:

Post a Comment

I love feedback and suggestions. Please comment with your thoughts!