Category Archives: Website

Image Browser, CoH Mapping, Titan Quest

I spent most of spring break drinking on the beach, and then I had sex with a fugly, fat chick cause I was drunk and thought she was hot. No wait, that was probably you. I actually spent most of my spring break coding an image browser in PHP.

It can mostly just read the files in the directory and match up thumbnails to full images. But it tries to link up images to entries in a database for extended information, like description and hits. Directories are a little more involved, requiring a full traversal of subdirectories for random thumbnails; but the product of those thumbs in my cunning folder graphic table is way snazzy. It also has the usual sorting and page selection options. The link in the nav frame goes directly to the Photo Album directory, but it’s possible to navigate up to the image root and view all my images. The only thing left to do on the image browser is keyword searches, which wouldn’t be too hard, but I’ve been engaged in other projects lately.

For one, I recently started making a map for Company of Heroes set in an interesting locale, Longwood University’s campus. It came to me in a dream (the result of too much school and CoH, probably). I saw myself commanding a German force comprised of some friends against the entire rest of the student body. I’m only roughly 10% into the project, but it should be rather interesting, whether it’s playable or not. It’s already obvious Brock Commons will be the major chokepoint of the map. A couple 88s could defend the whole thing, causing the Allies to find a way through the various buildings to flank.

But for the last couple weeks, I’ve mostly been playing Titan Quest. It’s pretty much just a Diablo clone, albeit many enhancements. I think I actually prefer TQ because of its familar story elements (Greek mythology anyone?) and less dreary atmosphere.

I had to overcome several problems to really get into TQ, though. First of all, it crashes all the time for me, even when patched. The solution I found was to just use a NoCD patched executable. This makes sense because the patched exe disables the shoddy Securom code–stuff that the developers can’t fix but are forced to include. Another problem was that my extra mouse buttons would often lag for several seconds. As one can imagine, this is really annoying and can sometimes put my character’s life in danger. I eventually noticed that Titan Quest really doesn’t like to share the CPU with other apps. Thus, the simple fix is to set its process priority to below normal. Lastly, the game doesn’t lock the mouse into the game window. But, of course, my CursorLock program easily fixed that.

Posted in Gaming, Modding, Troubleshooting, Website | Tagged , , | Leave a comment

Gaming, Photo Album, and Search Engines

I’ve been secretly working on a photo browser script for this site from scratch. I’ve completed two of the three parts to this project: augmentation of viewimage.php with extended image information (file details, dimensions, EXIF, hits, keywords), and an updater script that creates thumbnails and links images in the photo album directory with an image database, which holds some of the extended information. The only part left is the actual image browser frontend, which I expect to finish within the next week. Woot. 8)

Since my last post, I’ve been keeping an eye on how the search engines have been crawling, indexing, and caching my site. Google and Yahoo! seem to be getting the idea now–slowly phasing out nonexistent pages and indexing existing pages, eventually with a correct cache (although the caches just send you back to my site). I’ve begun doubting my usage of frames. In the near future, I may start examining DHTML and other alternatives. At least the search engines are cooperating now.

As for my recent gaming trends, I’ve been mostly playing Company of Heroes lately. I’ve pretty much given up on NWN2 near the beginning of Act 3. My Ranger 15/Rogue 1/Shadow Thief 2 character isn’t all that interesting and the story has been way too convoluted. But as for COH, I finished the campaign last week. Then a couple days ago, I discovered the goodness of skirmishes. My favorite tactic is to use a camouflaged sniper to direct artillery fire and then overwhelm the enemy with armor superiority.

Since Kaylen doesn’t like the wargames, we played a few crazy sessions of Super Mario 3 on Snes9x this weekend. To alleviate some of the tedium, I whipped up some memory cheats for infinite lives: addresses 7E0736 and 7E0737 set to 99 (63h) for Mario and Luigi respectively (All-Stars version). Also over the weekend, I discovered a user mod that I had been hoping would be made: Classic Doom for Doom 3. The levels are designed really well–true to the original layouts with upgraded art and decor to up the realism. However, some of the continuity-breaking attributes of Doom 3 persist: more agile/tougher monsters, weapon effectiveness, and monster teleports (I know Doom had these, but they were kinda scarce comparatively). Still, it’s a lot of fun romping around these new renditions of a classic game.

Posted in Gaming, Website | Tagged , , , | Leave a comment

More site enhancements and setbacks

For the last few days, I’ve been working on some upgrades for this site. After deciding that my site wasn’t getting enough traffic, I looked into what Google had crawled on my site and found that a lot of it was old crap that doesn’t even exist or the caches were of my index frame and not the actual page. I thought Google was smarter than this, but I guess not. So I’ve been taking some steps to allow search engines to better comb my existing content and remove non-existing pages.

To get search engines to remove old pages, you have to let them see the 404 Not Found HTTP header, which I wasn’t doing because all my pages try to go into the frameset thus returning a 200 OK. To tell search engines what pages you do want crawled regularly, you have to have a sitemap. Google’s “Webmaster Tools” system is a really useful web developer interface for their engine that allows you to do things like specify sitemaps. I submitted my already working RSS feed and then created a more complete sitemap. It only has pages that I want it to (mostly PHP pages with specific queries), so no worries about security (as a directory recursion sitemap might have). I’m hoping these steps will at least get Google to send more hits to my site.

While I was at it, I also made a simple database that will put 404 pages into a database that I can go through later and provide correct urls to. The server returns a 301 Moved Permanently header so that search engines won’t think they can still link there, but users will get to the content without any additional loading. It also allows me to tell users and search engines whether a page is gone permanently or just not there yet.

As for setbacks, the other day I was working on my TI-83 RPG and things started getting weird on the map display. Enemies had turned into exit doors and all sorts of funky business. So I go to see what’s wrong and the calc turns off. When I turned it back on, you guessed it…”RAM Cleared”. It’s a good thing I hadn’t been doing a lot of coding on it lately. I was mostly figuring out how I wanted the dice rolls to work with skills, damage, armor, attack, and defense; I had only begun to integrate the dice rolls into the main game that day. So I guess I’ll be recoding it, but this time right into the game. Luckily, I just released beta 2 a couple weeks ago.

And don’t forget to check your ceiling.

Posted in Website | Tagged , | Leave a comment

New Scheme

That’s right, on the brink of local wintry weather, I decided my site needed a jungle theme. Really though, I was just looking at a photo I modified a few months back and thought it would look mighty spiffy on this site. I’ll probably leave it up through the spring. The flash logo has returned with a new style, as well. It chooses a random image from a config file and bounces it off the sides of the mask layer (the text). It’s generally the same code I was using for the last logo flash, complete with opacity and blur tweening.

Also, here’s another pic I found recently. It’s a screenshot from the SNES game Front Mission–maybe a translation error? Enjoy.

news206

That's okay. You can just have that right back.

Posted in Website | Leave a comment

New Domain

As you may have already noticed, I have purchased the new domain of snakebytestudios.com. I was simply tired of how unprofessional s–l.com was. And I was tired of having to explain what it meant. And I was tired of having anything to do with that worthless fuck, Loogie. But, I really like the new name–most people get the pun easily.

The old domain will continue to exist until it expires (in about a year, I believe), but all URLs will immediately redirect to the new domain. This keeps links and bookmarks working and gives people a chance to update at their leisure.

I also updated the about page slightly. More changes will be on the way soon. Ah, and it’s beginning to feel a little like Christmas, which means CHRISTMAS BACKGROUNDS!!! And speaking of images, here’s a couple that I did last night; it’s my girlfriend, Kaylen’s, face.

Posted in Website | Tagged | Leave a comment

Time for an update.

As school is a real bitch for me this semester (OS, Stats, Databases, Assembler, etc.), time for personal projects is at a minimum. Still, I’ve got a few things complete or in progress. The Columns are all up–or at least the ones since 2001. I’m still noticing some issues with search engines not updating the paths to them, though. But most users seem to be able to find the correct item from the simple, new navigation frame.

I also took a few days to learn some Flash “ActionScript” and coded a scrolling logo banner animation. It picks a random logo file, loads it, and moves the view around the image while tweening blur and opacity. The blur effect takes a bit of processing though, so the animation settles down after a few minutes. I’m not sure if it will be permanent, but hell, it’s still rather bitchin.

I’m also working on a new program in VB.Net. It’s the alarm to end all alarms. You can set up multilple alarms of varying types (timer, daily, one-time, weekdays, etc.) with any action you’ve defined. The actions (sound, strobe, command) are setup separately so that multiple alarms can use the same action. The time monitoring routine runs in a separate, higher-priority thread from the editor windows; it uses an intelligent sleep system to minimize polling (and thus CPU usage) when alarms are far into the future. I’m also using the FMOD Soundsystem to play various sound formats, unlike with Dark, which could only use WAVs with its pure DirectSound implementation. My alarm app is nearing a public release soon. It should be the perfect wake-up call for anyone that sleeps in the same room as their computer (i.e. college students).

Posted in Academics, Programming, Website | Tagged | Leave a comment