Red Horizon + XML + FengGUI = progress?
The project is still (and always) moving forward, albeit at the pace of most spare-time-only projects on the Internet (ie: slowly). Most recently I've started ironing-out an XML format of Red Alert's Rules.ini file. That file defined all of the configurable settings of the game, so there'll be a 'base' Rules.xml file (which includes new configurable options plus the original game settings) which can then be overriden by a RA-mod-suppplied Rules.ini, or another Rules.xml. This will allow the backwards compatibility with original mods, and open up the option to edit new, previously-unconfigurable options in newer mods. The new rules file will also be more flexible, allowing the creation of new (that's right, NEW!) units, structures, weapons, and the like.
Here's a current (although ever-changing) example of the RA Jeep unit in XML:
]]>
As well as making the attributes look a little like those found in the original Rules.ini file, I've taken a look at how C&C3's XML files were structured, and taken some pages out of their book.
I've also started thinking about how I'm going to implement a graphical user interface (GUI) into the game. One option is to make my own, but that seems like an unnecessarily long use of my time. The other option is to use an existing Java/OpenGL GUI framework, and this is where FengGUI comes into play. The demo looks impressive, and taking a look through the FengGUI API, I'll have to make a few changes so that it'll fit into my existing code. If it works as I expect it should, then this could be the beginning of a beautiful friendship.
Let Amber live
So I saw The Grudge 2 recently (warning: spoilers abound) - blame my non-movie-connoisseur status for not having seen the first one - and was surprised to see it included Amber Tamblyn. She's better known to me as Joan from Joan of Arcadia, but I remember her also as 'the girl who died at the beginning of The Ring'. Having her name listed as 1st in the opening credits assured me that she has main-character status and shouldn't die within the first 15 minutes, but as with every other horror movie heroine she gets herself mixed-up with the frightening forces that be and her chances of mortalility become higher by the minute.
I shouldn't have been surprised that she dies in the end, but I was really hoping that she'd live. Don't ask my why. The only explanation I can come up with is that it's like those nature documentaries where one week you're following the gazelle and rooting for them as they run from the lions, then next week you're following the lions and cheering them on as they go after the gazelles.
So that makes it Japanese Horror Movies: 2, Amber: 0. Here's to hoping that sometime in her career, the genre allows her to live to the ending credits.
Blue Beanie Day
Through the blog of another web developer, I learned that last Monday (Nov 26) was designated 'Blue Beanie Day', an arbitrary day of the year given to the idea of promoting Internet page design with web standards and accessibility in mind. You'd best read Veerle's blog in that link as most of her experiences co-incide with my own and several others out there.
So what does Blue Beanie Day mean to me? 2 parts making life easier, 1 part Microsoft-bashing.
A lack of standards is like when a co-worker shares their holiday pics from their X-dot-Y megapixel camera, but then find that your 500-in-1 flash memory reader doesn't read that 501st format that your workmate somehow uses. Web developers face similar annoyances, except for us it's usually "Why doesn't (feature X) work in IE!??!"
Ah yes, what rant about standards would be complete without mentioning Internet Explorer - the least standards-compliant browser in circulation. We could save ourselves some trouble and all just follow IE, but most people generally aren't that fond of a corporation that electronically ass-rapes us on a daily basis. That, and we like choice (yeah, it's actually all about choice, but I just wanted to squeeze 'ass-rape' in there).
The day I no longer have to provide an IE-specific stylesheet for this site is the day pigs start developing wings. It's still a day I'd like to see in my lifetime, so the next time Blue Beanie Day (or some similar event) takes place, tell all your website-making friends, bring along any cute and opinionless children, and rally behind the cause!
Power metal armageddon
So Guitar Hero 3 is either out, or up-and-coming (depending on where you are in the world), and while I'm not a fan, I was directed to a YouTube video of someone attempting Dragonforce's Through The Fire And Flames. If you know that song, or know power metal in general, you'll know that it will be impossible to get 100% for that song on expert level.
Continuing on the YouTube trail, I went and watched the actual music video for that song, as well as another of their songs, Operation Ground And Pound. In that video I think the band is on some sort of post-apocalyptic Earth, surviving the onslaught of the alien race that has destroyed it. I don't know if my words can evoke the right kind of imagery, but damn it looked cool.
So I don't know what everyone else's version of armageddon looks like, but my one has been slightly altered to have the 4 horsemen riding in not to the sound of the screaming masses, but being greeted by a synth orchestra, double-kick drums, and humankind's most ridiculously over-the-top electric guitar solo ever.
It'll be our finest hour :D
Something old, something new...
...something borrowed, something blue.
So after a month of on-again off-again development, I've finally completed the new layout of site of which you see before you. I've taken a more blog-like approach to the presentation of elements, with proper datestamps on news, artwork, and writings. Accompanying the datestamps are categories or tags for these items, as well as a right-hand navigation menu allowing you to filter items by date or category. The option to sort by the original categories I had for these items has remained and is still the recommended way for viewing anything here.
Much of what you see here is still experimental, so expect things here and there to change over the coming weeks. The splash page will also need re-doing as it's look is very closely tied with previous layout.
Jennifer Connelly & space travel
A new piece of space art in the wallpapers section, and my entry to another competition on deviantArt:
In researching some of the background behind that image, I came across the Live Journal site of the author of the books from which I drew a bit of inspiration. I expected a couple of things while the page was loading, but what I didn't expect was for his posts to make me laugh. Particularly, this reply to a comment on his 'classification' of what makes sci-fi a sci-fi:
Normally, it would count, except that you only used one exclamation point, and did not use all caps for any word; looking carefully, I do not see anywhere that you say you "pwned" me for my n00b3i ski1z -- which would have meant, by the rules of the Internet, that you made your point and won your argument.
Instead you use evidence to fit a definition, submit what amounts to a reasoned proof to prove your point, and attempt to appeal to reason. This is not the way of the Internet. Get with the Information Age! The Age of Reason is over!
Give it a read. Like me, you might actually learn something, like the magic link between Jennifer Connelly and space travel :)
Update
Red Horizon Utilities project has been updated to version 0.21 (dev) which includes Dune 2 SHP <-> paletted PNG support. Details on this sub-project can be found here.
Update
Small update on Red Horizon: I've been asked by Nyerguds to expand the utilities to include support for conversion of Red Alert mouse cursors into a more popular image format, like PNG. I've uploaded a screenshot of my program displaying the RA mouse cursors using the same file reader initially written for Dune 2 SHP files. It turns out that RA and TD mouse cursors are of the same type. Now all I gotta do is get the PNG reading/writing part done; something which should be relatively easy considering PNG image support is built into Java.
If you're interested in this tool, or have some requests/ideas, you can make posts and follow it's progress in this thread.
PlayStation 3 compatible
First of all, shouts to my friends who notched-up this milestone in my website stats:
And they've told me that my site works just fine in the PS3 browser :)
Anyway, apologies for the lack of updates, but I've been kinda busy lately. I recently got a new computer, and have spent the better part of a fortnight getting it up to speed. It isn't helped by the fact that I've now got a dual-boot setup, with Windows XP and openSUSE 10.2 (a form of Linux for those who don't know), so I've been getting 2 operating systems back up to speed. The main reason for adding a bit of Linux to my setup, is so that I can develop Red Horizon for Linux-based OS's as well.
I've also spent a bit of time making my Windows XP look a lot like Vista. Things I've read and heard have turned me away from Microsoft's latest Windows offering, so I'll hold-off moving to Vista for a while (that, and many of my development tools don't work in Vista either). But after having been stuck with the blue XP look for so long, I thought it was about time to revitalize what my eyes have been accustomed to. Here's a screenshot showing-off the new look. If I were to select an appropriate simile: it's like adding speed-flames to your operating system.
It was a bit easier to pull-off a whole new look in openSUSE, just by using Beryl, which gives me an OpenGL-accelerated desktop, and a whole lot of cool animations to make my windows fade, beam-up, burn-up, alter transparency, etc. One of the more stand-out features of Beryl is the ability to represent multiple desktops as 4 sides of a rotatable 3D cube. Functional? Time will tell. Hella cool? Oh yes.
Update
One new Red Horizon development screenshot, showing my second attempt at putting structures on the map. What happened to the first attempt you ask? It looked similar to the second screenshot, except the structures were in all the wrong places. Like a structure-humping orgy or sorts :P
Other 'recent' Red Horizon developments include:
- new Rules.ini tags, to make the game more customizable using the familiar Rules.ini file
- better dual-core CPU support
- game now loads the first Allied mission properly (it was hard-coded in the last release)
Recently created a new picture, on which I've been experimenting with a couple of new techniques. I also used it as an excuse to change the original splash image for my Red Horizon project.
OK, I only used a small corner of the entire image. That's where all the interesting stuff is anyway.
Update
After a long nothing-to-report period, I've finally got a new space wallpaper to show for it. It's not trying to be a complicated one like previous wallpapers, and it's more of another shot at using Terragen than anything else. So it's simplicity just means that there's less of a chance of me to screw it up :)
Aside from that, development on Red Horizon has been pretty slow these passed months. Just recently, I've been helping one of the JOAL (Java bindings for OpenAL) developers try to figure-out an issue in the framework, which was preventing Java programmers from using OpenAL's EFX extensions (think advanced mixing and effects for OpenAL). The results of which have been positive, and I hope my assistance can help other Java programmers be able to use this feature in the future.
There was also C&C3, which kept me away from making updates to Red Horizon. Nothing like a good sidetrack to keep you going eh?
Rant
Regarding the Dune 2 SHP file converter I mentioned - see 2 news posts down - I think I've finally done it!
Update
Saved games are now done! Check-out the recently updated downloads section for the massive 7.55MB file (has saves for both parts, yikes!) and a download link.
Bah, only now did I find-out that the link to e-mail me on the left-hand side wasn't working! Thanks to JG from Florida for letting me know that there were no e-mail links on my website :) (if you're reading this now JG, I'm creating those savegames you requested, and will have them ready for you sometime this weekend)
So that link is obviously fixed now, what else is there to say? Oh yeah, Nyerguds, the one responsible for several great C&C patches/fixes for The First Decade - has requested I make a Dune II SHP converter (create Dune II SHPs from, say, a PCX file). What use is a SHP converter for such an old game? Well, the original C&C's mouse cursors were built on that format, and he hopes to use such a tool to create custom cursors for his C&C total conversion.
I was very surprised to find-out that nobody else has done this before, so I decided to step-up to the challenge. It's bit of a sidetrack from the current stream of Red Horizon development, but I always did intend to provide a small toolset as a part of the overall project.
From a program design perspective, I welcome the addition because it then forces me to develop more separation between what used to be such tightly-coupled program modules. And so far, it has helped me to create a more robust set of file objects; ones that support both saving and loading, which will be of great help in the future.
Now I've managed to get units to show-up on the screen, and to make them selectable (pics). Doing so has raised some challenges (not surprising, since I've never programmed a game before), but it's becoming more of a test of my aspect/object-oriented design skills, rather than programming sounds and graphics.
One thing I've been seeing a lot of recently is blog sites. I've even included a few of my friends' blogs to the links on the right. As well as reading their content, I've been checking-out how they're structured because I've been considering expanding this site's program to restructure the news portion in a similar way. It won't be too hard as my web host - interAdvantage, who have been very good to me considering my slightly different website requirements - includes several features in their standard plans which I can use. It would be kinda cool to finally use some more of what I pay for too. My only worry is that it'll detract from the rest of my free time, and I'll admit right now that I don't have a lot of that.
Another free-time killer on the horizon is a new space pic. I'm aiming to create something along the lines of an aurora, which will give me some reason to start using Terragen again.
Lastly, I'll need to expand the Stuff section to include some e-mails that I've been writing. Sounds rather mundane (I mean, e-mails, c'mon), but I've been writing them in a manner consistent with some of the books I've been reading during my commute between work and home (it's a long train ride otherwise). The recipients have been pretty happy with their narrative style and content, so I'll be putting them up here to archive them, and for future reference.
Update
This is aimed mainly at the programmers, but anybody can take a look. I've made the current development version of Red Horizon available for download. Both as a sort of progress update, as well as letting some of the people interested in the source code finally take a look. I haven't yet made a dedicated page for it on the website, so instead details can be found at my favourite C&C forums, here.
Rant
Happy New Year everyone! To welcome 2007, I'm half-way through my Christmas / New Year holiday, and enjoying every little bit of being able to do nothing at all. Not that I'm sitting on my ass eating chips all day, but it just feels good to not do anything which might have adverse consequences.
On the Red Horizon front, I've managed to get streaming animations and sounds (and thus, videos), so watching/playing any of the vids/sounds doesn't suck-up 200+ MB of RAM like it used to. So if you were to run this program and expect it to play C&C Red Alert, it would:
- display the title screen
- play the intro video
- play the 'select a mission' animation
- play the first mission briefing video
- display the first mission map
And that's it.
The maps are only what I had in the last screenshot I posted: terrain, ore/gems, fences, trees. I haven't yet got around to creating an actual unit you can move around. And to think that when I started out, I thought I'd have a moving unit within a few months...
I'm also thinking of making whatever source code I have available for download sometime this week, before I finish my holiday and have to go back to work. When I first announced this project, some of you expressed interest in getting the source, if even just to see how I write my Java code.