I think it would behoove me to try and become familiar with a few languages, especially if I'm going into the game industry. So, as I'm somewhat familar with Java (will likely expand that knowledge later on) and will be learning more advanced C++, I wanted to know what languages YOU would reccomend I learn a bit of, and what they're best applied to.

Learn Scheme and Haskell. I don't know what Scheme's best applied to (probably teaching Scheme, really), but I think learning it will make you a better programmer if you let yourself go from any ways of thinking you've acquired with C++ or Java. C++ and Java basically form a subset of Scheme's (and other Lisps') features, even though Scheme is a much smaller language. (But they C++ and Java much bigger and better libraries, plus operating system interaction.)

Haskell takes a much different approach to programming than Scheme, C++, and Java, and is worth learning for that reason alone. As for applications, a working implementation of Perl 6 has been (is being) built with Haskell.

Avoid these languages' communities, though. It seems like Scheme people are elitist fools that sit around and lament their language's unpopularity, while Haskell people smoke pipes on the deck of a cruise ship and discuss category theory.

Perhaps the best reason to learn them is that they'll make you a much better C++ programmer. The previous sentence is definitely true.

Learn Haskell first.

and it would never hurt to learn a bit of assembly language, just so that you know what's ~really~ going on.

Read the wiki on Haskell and my head went /splode

Read the wiki on Haskell and my head went /splode

You know, come to think of it, there are no good Haskell tutorials. That's pretty sad. Okay, learn Scheme first.