Well, as a matter of fact, yes! It's been over a year since I've even touched this code (closer to two years), but I felt it was time to take a crack at it again. Interestingly, I've made some big progress, and I thought I'd share it with you.
First off, I decided that I really didn't like my idea of "live rendering" the game tiles (see below). I thought it would save me having to keep tile images in memory, but all it really accomplished was a slowly drawing, and very ugly map! I found a few ways to conserve memory, and redesigned the map layout to use tile scans. Since my tiles are fairly beat up, I decided to use the tile images that Brian has on his website (assuming he's cool with that!)
Curious to see the result? Check out a high zoom and a low zoom. Zooming is smooth, and controlled by the mouse wheel (I should probably have some way to do it in case you don't have a mouse with a wheel...) The map is moved around by clicking and dragging the field of view around. It works quite well, and is very intuitive (I think). I currently have all the logic for summoning and movement built into the code, so the map handling is done, for the most part.
I integrated the new map into the RealmSpeak application, and it works rather well. The application currently works fully well online, meaning that multiple players can join in, and add characters to the board. I improved the networking code so that data transfer is at a minimum, and information is passed quickly enough to not hinder play (DSL anyway - haven't tested 56K modem...)
I just started putting together the piece of the application that will resolve combat. This is just in the very early design stages, but is coming together nicely. (view)(view)
Any alpha-release projection? Well... ah... no, but that probably doesn't surprise you. As my life sometimes intervenes in my "free-time", and my interest sometimes wanes from this project (say it isn't so!!), I can't promise anything anytime soon. What I CAN say, is if anything comes to pass, you will find it on this page. I'm hoping I'll have something together that will pass as an alpha version in the next couple of months, but don't hold me to that!
I can say that I've finished my Wizards project (barring a few bugs), so it does happen once in awhile.
Until next time...
RealmSpeak is my Java application for playing Avalon Hill's Magic Realm over the internet. My intention for this blog is to provide a central place where I can post updates to the application, and muster the responses I get in a public forum. Check the sidebar for other computer conversions of great board games.
Search This Blog
Sunday, January 30, 2005
Saturday, January 29, 2005
Prior to January 30...
Added 7/8/2003:
Why no updates? - I got as far as the server/client, and burned out a bit. I am planning to revisit this game (I put too much work into it to drop it completely), but for now, its on the backburner. Lately I've been putting my efforts into my Java conversion of another boardgame: Wizards. Check it out!
Added 3/11/2003:
Running Server/Client (view) - This is a screenshot of my Magic Realm server running with three connected clients, each playing one character.
Added 2/9/2003:
GameBuilder (view) - I wrote this tool to create/edit pieces in a master XML file. I currently have an XML file for MagicRealm that could be easily used in a number of ways (MySQL import, non-Java code, etc). What is XML? Look here.
PieceViewer (view)(view) - This is a java component that can hold and display any number of Magic Realm game pieces. Note that these are not scans here: each piece is rendered based on information retrieved from the XML document.
MapViewer (view)(view) - This is a java component that can display an assembled game map. A slider allows the user to adjust the scale. You'll notice that I opted to recreate the tile layout, rather than capture the bitmaps. Though I'd prefer to have the bitmaps (may be an option later), they are just too large to handle well in memory. The tile layout is completely captured in XML, and can be faithfully regenerated by the code. This map was built automatically.
TileEditor (view) - This is the tool I used to recreate the tile layouts, path connections, clearing details, and all the various curves.
Why no updates? - I got as far as the server/client, and burned out a bit. I am planning to revisit this game (I put too much work into it to drop it completely), but for now, its on the backburner. Lately I've been putting my efforts into my Java conversion of another boardgame: Wizards. Check it out!
Added 3/11/2003:
Running Server/Client (view) - This is a screenshot of my Magic Realm server running with three connected clients, each playing one character.
Added 2/9/2003:
GameBuilder (view) - I wrote this tool to create/edit pieces in a master XML file. I currently have an XML file for MagicRealm that could be easily used in a number of ways (MySQL import, non-Java code, etc). What is XML? Look here.
PieceViewer (view)(view) - This is a java component that can hold and display any number of Magic Realm game pieces. Note that these are not scans here: each piece is rendered based on information retrieved from the XML document.
MapViewer (view)(view) - This is a java component that can display an assembled game map. A slider allows the user to adjust the scale. You'll notice that I opted to recreate the tile layout, rather than capture the bitmaps. Though I'd prefer to have the bitmaps (may be an option later), they are just too large to handle well in memory. The tile layout is completely captured in XML, and can be faithfully regenerated by the code. This map was built automatically.
TileEditor (view) - This is the tool I used to recreate the tile layouts, path connections, clearing details, and all the various curves.
Subscribe to:
Posts (Atom)