Adventures in Terrain Generation, Chapter 3: Global Warming (and also Cooling)

Hello, and welcome to the Pretty Colors edition of Adventures in Terrain Generation. This episode in particular is special because, as promised, it will be the first one to not involve that function that everyone needs a break from. Now that you’ve breathed your sigh of relief, let’s start roasting/freezing this planet!

Continue reading “Adventures in Terrain Generation, Chapter 3: Global Warming (and also Cooling)”

Adventures in Terrain Generation, Chapter 2: Into the Woods


Last time, I promised that in this chapter we’d start generating trees and forests. I’ll show you the forests soon, but before we go any further with this project, we need to move this over into a real graphics engine. As neat as it is, the command line isn’t exactly fast/powerful enough to draw the detail we’ll need as we keep going. To this end, I decided to work with libGDX because it’s a framework I’m already somewhat familiar with. It’s basic enough that I have a lot of graphical freedom and efficiency, without having to do a lot of the background work myself. It’s also useful because it lets me create a helpful visual demonstration of how “brightness” in Perlin noise translates to “elevation” in our map:

Contextual Demonstration
Also, this map is like a billion times more detailed than the old one, scientifically speaking

On the left, you can see what the Perlin noise actually looks like: a 2D map of gray values, with a higher value corresponding to a brighter pixel. On the right is the final result with those gray values mapped to different terrain types, and the middle has both overlaid to make what’s going on a bit clearer. Like I somewhat failed to explain last time, the brighter a pixel is, the higher we say its elevation is. Everything below a certain value is water. As we get higher, the terrain becomes sand, dirt, grass, and finally snow. With that out of the way, we can almost move onto trees, but first we need to talk about time travel.

Continue reading “Adventures in Terrain Generation, Chapter 2: Into the Woods”

Adventures in Terrain Generation, Chapter 1: Making Some Noise

The several concerned text messages I received from family and friends after my last entry have taught me two things:

  1. I shouldn’t spend over a thousand words expressing an unhealthy affection for a math function.
  2. I should spend several thousand words expressing an unhealthy affection for several math functions.

That is, I should document, with painful detail, my journey in determining whether Terrain Generation is more productive use of my time than trying to fake a beard by growing really long nose hair. Day 36 of the nasally-rooted beard pursuit* has yielded disappointing results so far, so for now let’s talk about terrain. Continue reading “Adventures in Terrain Generation, Chapter 1: Making Some Noise”

Why I now worship Perlin Noise, the God of Infinite Creation

So, I’ve been AWOL since…May? Which is obviously a record and of course I’m having a plaque made. That aside, I actually had quite a few (like 2) posts half-written, the biggest of which was supposed to be all about this semester being a boss battle with the Specter of Personal Responsibility and his 4 ghoulish heads of despair – “Senior Research Project”, “Career Hunting”, “Web Dev”, and I forget the fourth one. Oh and the Specter’s malignant skin tag of “Fixing my PC” is probably on there somewhere. Ironically(?), the Specter got me before I could finish the post and that is a crying shame because it was beautiful and now you’ll never get to see it.

Oh well, life goes on.

Continue reading “Why I now worship Perlin Noise, the God of Infinite Creation”

TooManyGames looms overhead like a dark cloud of edgy darkness. I look upon it and despair, for I am not ready.

If there’s one thing I learned from the year 1982, it’s that 5 weeks is not long enough for one person to make a game. In Atari BASIC. With a small budget. And the future of your company, or indeed the industry at large, riding on its success.

Turns out I’ve learned nothing from 1982, because I have 5 weeks left to finish demos for at least two games, maybe a third, on a budget of 0 dollars and 43 cents. That’s right, finals are over, my room is clean(ish) and I’ve already got a sunburn so it’s time to completely redesign LEVELS from the ground-up and go start-to-finish on a demo for another, far more ambitious game. But first things first, let’s talk about Birdball. Continue reading “TooManyGames looms overhead like a dark cloud of edgy darkness. I look upon it and despair, for I am not ready.”

LEVELS Won an Award! …Kinda

What’s the best time to write a blog post? 5 AM after you spent all night trying to put a trailer together, obviously.

Hey, remember LEVELS? That game I mentioned in my last post that I threw together last minute for an academic conference? You remember. It was the one whose concept was so bad that I almost scrapped the whole thing? Yeah, that’s the one.

I won money for that. Go figure.

To be more precise, I got third prize in a poster presentation contest at the previously mentioned academic conference.

inked pacise poster.jpg
Since the theme of this week is “low resolution” (foreshadowing), Here’s a definitely-not-intentionally jpg’d picture of me looking uncomfortably enthusiastic about my poster. Yes, I did lose weight. Thank you for noticing.

So, since that’s hopefully too blurry to read, here are some updates on where I went with LEVELS’ design:

Continue reading “LEVELS Won an Award! …Kinda”

Oh good this blog is still a thing. Close one.

I’m not dead.

Jeez, it’s only been a month and we’re already at the “I’m not dead” post? This is going well.

Well, in that case I guess it must be excuses time. Ready for this one? I guarantee you’ve never heard this one before; it’s practically a revolution in the world of excuses. Seriously, prepare yourself. If you’re standing up for some reason, you’ll wanna sit down. Ready? Are you sure? I promise it’s not too late to back out. You still have like a whole sentence left. Still here? Well, okay then, but don’t say I didn’t warn you.

Continue reading “Oh good this blog is still a thing. Close one.”

7 Tips for Presenting at a Gaming Convention (From Someone Who Did it Thrice)

Hey, remember in my first post where I said I wouldn’t try to offer industry wisdom I don’t actually have? Well, what’s the point of setting rules for yourself if you can’t immediately break them? (Spoilers: That’s a running theme for this post.)

In the past year (or so), I’ve presented at MAGfest twice, and TooManyGames once. While those cons were obviously tons of fun, I’ve found that the experience I’ve gained and lessons I’ve learned from trying to pitch a game at a convention largely translate to presenting in any environment. Hopefully, that means that even if you have no plans to get behind the booth, you might still find at least one of these tips helpful somewhere in your life. Without further ado, here are seven guidelines, tips, and life lessons I’ve learned from presenting at conventions: How to look like you know what you’re doing even when you definitely do not. Continue reading “7 Tips for Presenting at a Gaming Convention (From Someone Who Did it Thrice)”

Hello World, and other generic titles that programmers use.

“This is your very first post. Click the Edit link to modify or delete it, or start a new post If you like, use this post to tell readers why you started this blog and what you plan to do with it.”

I’ve been staring at this text for a few hours now, suddenly unsure of what to write after a month or so thinking about this blog. What is there to say, after all, that hasn’t already been said a thousand times before? Hell, it’s gotten so bad that saying it’s cliche has become the cliche. But I get ahead of myself.

Continue reading “Hello World, and other generic titles that programmers use.”

A Website.

Up ↑

%d bloggers like this: