Learning to use TorqueScript has taken more effort than I initially thought. I’d assumed that it would be essentially pure C# with some added global variabels and built-in classes, but it turns out that there’s a lot more to it than that. It’s also been surprisingly difficult to find basic reference material. I’ve been chasing down a bug for hours now, and it turns out that you can’t compare strings using the usual “==” operator; instead there’s a special operator for that, $=. It’s also taken me a while to get back into the hang of a C-based language instead of Python. If I had a dollar for every semicolon I’ve left out since I started working in this language, I could afford a “you’ve got too much money” discharge from the Navy. And if doesn’t help that the compiler doesn’t catch errors; it’ll go right ahead and run anyways, just ignoring any statements that don’t make sense to it. It took me almost three days to figure out how to bring up the error-reporting console.
Long-story short, though, I’m finally starting to get the hang of it. I grabbed some sprites off of David Hellman‘s (the guy that did the artwork for Braid) site, just for something to use. Adding in new animations revealed a couple issues that weren’t too hard to fix, and it’s much more satisfying now that I have visible proof of progress instead of just the understanding that “It’ll look cool somewhere down the road, but it’s doing what it’s supposed to now.”
I’ve got collision detection down with the exception of ladders. I’m not entirely satisfied with the way it handles what happens once you’ve climbed to the top. More importantly, whenever you jump onto a ladder, it propels you skyward like a little rocket launcher. I figured that it had something to do with the way I turn off physics when you get on a ladder and turn it back on when you leave, but I’ve added a statement that displays a message every time the physics status changes, and I’m wondering if there isn’t something else going on in the background that just happens to look like my ladder-physics. I’ll get it narrowed down eventually. After that, I need to start working on one-way platforms (which I can probably use to fix my at-the-top-of-the-ladder issues) and then start working on enemies.