Friday, April 27, 2007

Play Magic against the Computer

I’m writing this article to promote a program I wrote called “MTG Forge” that lets you play Magic against a computer opponent using all the rules of a real game, and it’s really fun. (Self promotion is horrible I know. J) Currently there are 350 cards available and you can play in three modes: constructed (all the cards), sealed, or draft. Can you believe it, free drafting? Yes, the best things in life are sometimes free.

Side Note: If you want to play against another human player, you have to use this other free software project, called the Magic-Project. Like Apprentice, you have to know the other person’s Internet IP address in order to play them, but unlike Apprentice, the Magic-Project enforces all of the rules of a real game.

Homepage: sourceforge.net/projects/mtgforge

Good News:
The card set is the best of Magic, and includes such cards like Ancestral Recall, Juzam Djinn, Serendib Efreet, Flametongue Kavu, Man-o'-War, all the moxes, Kokusho, the Evening Star, Keiga, the Tide Star, as well as old favorites like Wrath of God, Psychic Blast, Serra Angel, and a few Planar Chaos cards like Pyrohemia, Serra Sphinx, Damnation.

More good news, you can automatically download all of the card pictures with just one click, which makes playing more fun.

This project is written in Java (so you have to have Java installed) and has been tested on Windows and Linux. It should work on Macintosh but I don’t know for sure. You have the option of downloading either a full-featured Window’s installation program, or a plain zip file. To install using the zip file, unzip all the files into a directory and double-click on the file “run-forge.jar”

Main Download Site: sourceforge.net/projects/mtgforge

Java: www.java.com/getjava

Limited Good News:
You can play in sealed deck format or draft, cool I know. J The sealed deck format works like usual, you get 5 booster packs, 75 cards, and you have to put your deck together. To make a sealed deck, open the “Deck Editor” and from the menu select “New Deck – Sealed” and your card pool is generated for you. If you want a different card pool, just select “New Deck – Sealed” again.

In the sealed format you can optionally select “Generate Deck” for both you and the computer’s deck. This generates a 2 color deck with at least 15 creatures from a card pool of 5 booster packs like normal. The deck has 18 lands, a little high I know, with 9 lands of each basic type. I like this option because I don’t know what cards are in my deck and I definitely don’t know what cards the computer has. It is really surprising but fun. You can still win 95% of the time using the “Generate Deck” option.

Drafting is fun, but I’ve never drafted in real life and only once on Magic Online. It seems like a really enjoyable format, but a little too money intensive for me. Drafting works like normal, you open 1 pack, choose a card, and pass the rest to your neighbor. The computer selects cards for the other 7 players and actually constructs their decks using the chosen cards, something that took way too much programming. You can then play your draft deck against the other 7 players that drafted with you. After you have drafted all of your cards and saved them to a file, you have to open the Deck Editor, and then open the file that you just saved in order to actually make your deck.

Bonus Limited News:
You can edit which cards are classified as common, uncommon, and rare for sealed and draft!!!! If that news isn’t great, what is? Chocolate covered deck protectors? The file “common.txt” contains all of the card names that are considered common, so if you are tired of playing against Wellwisher, just delete it. If you want to play with Kiki-Jiki, Mirror Breaker more, make him uncommon by adding him to the file “uncommon.txt” The files “common.txt”, “uncommon.txt”, and “rare.txt” have no blank lines, lines starting with “//” are ignored, and the card names must be valid. I suggest cutting and pasting card names from the file “cards.txt”, which holds all of the programmed cards, in order to avoid any messy errors.

Bad News:
Since this is the work of one programmer and freely distributed at no cost, the user interface (how stuff looks on the screen) is simple, but very usable. You can see a screenshot here.

The computer intelligence (AI) is simple. The computer only plays cards during its turn, and will play Giant Growth before declaring attackers much like a beginner. Even though the AI is basic, the computer can top deck some great cards, so I think it feels realistic. Honestly, I forget I’m playing a simple computer opponent sometimes since I am so into the game, and focused on winning. Because people enjoy winning – yea!!! –
having a challenging yet beatable computer opponent works out really good.

With the limited card pool and basic computer intelligence you will not be able to test your deck for a tournament. I’m just saying this in case anyone has that idea. That was one of my ideas when starting with this project, but one man can only code so much. So features were cut, and although you can’t play your favorite deck, you can make new decks with all those banned cards like Ancestral Recall, Wheel of Time as well as other expensive rares like Adarkar Valkyrie and Visara the Dreadful. Here is a recipe for fun, mix in Ancestral Recall with a pinch of Eternal Witness for insane card drawing and make sure you don’t deck yourself. One of my favorites is Kiki-Jiki, Mirror Breaker, which is fun to play and really silly to pronounce. And who can tell me what Fire Imp does? Well, he is Flametongue Kavu’s little brother, costs 2R, creature, 2/1, that deals 2 damage to target creature when he comes into play. Fire Imp is a fun Portal card that no one has heard of, but it’s a great casual card. And who out there really has enough money to buy 20-30 copies of Relentless Rats, well put away that wallet, since you can play with them for free.

Extra Ramblings:
If you like Magic, and I bet you do, MTG Forge is really fun. Games are a quick 5-10 minutes and your opponent never gives up. Don’t you hate it when you are winning and your opponent has connection failure, curse you Magic Online. And you can play land destruction and other hate decks without annoying people.

I wrote MTG Forge because I wanted to play fast, quick games against the computer, using cool rare cards that I could never afford in this life time. I’m looking at you Ancestral Recall and Juzam Djinn. Even though the AI is basic, the computer plays a challenging game.

For more information consult the user manual that is included when you install MTG Forge.

Download Me: sourceforge.net/projects/mtgforge

E-mail me any comments good or bad; I want to make MTG Forge the best I can.

--Forge, mtgrares at yahoo com

1 comment:

Mr. Fantastic said...

Hey, this looks pretty cool. I'm going to download it and give it a try. I'll email you my praise/concerns/criticisms when I do.

I'm a huge fan of Shandalar, the old Microprose desktop Magic game. I was really disappointed in the quality of MTGO and I think it's great that you're doing your own thing independently. Rock on!