Friday, June 26, 2009

What is Forge?

My computer program Forge lets you play the card game Magic: The Gathering against a computer opponent using all of the rules. This is very different than playing solitare Magic with Apprentice or Magic Workstation because the AI will attack and play spells. Currently there are over 1,800 cards ranging from old power cards like Ancestral Recall and Lightning Bolt to newer cards like planeswalkers. The user interface is basic, but it does let you download all of the cards pictures and view them while playing the game.

(If you don't know Magic, the easiest way to learn is to download this demo from here or here for Windows, it is 85 MB. Also checkout the YouTube videos at playmagic.com.)

You can also play sealed deck, draft, or the new quest mode. In draft mode the AI drafts for the 7 other opponents and builds the decks from the cards that it chooses. In the quest mode you start out with a few cards and the more games that you play the more that you win. As you get more cards you can update and change your deck.

There is also a "quest mode" where you start out with a small, random cardpool and you win more cards by playing against opponents. This is a scaled down version of Shandalar that is only menu based. On easy mode your goal is to win 10 matches. Easy mode is well easy because you always win cards after the match whether you win or lose. On some of the harder modes you only win cards if you win. Quest mode is challenging since the computer uses cards that are better than the stinky ones that you have. The computer opponents are divided into three categories so they get progressively harder.

Forge supports a number of keywords such as exalted, fear, flying, shadow, flanking, protection, wither, flash, defender, reach, and haste. Forge now also has a mana pool and supports creature enchantments.

The AI is very simple and does the best that it can. It tries to do reasonable actions. Sometimes the computer seems smart and sometimes it doesn't. Truthfully the AI plays random cards from its hand and each card has some AI code programmed into it. The computer can play cards like Counterspell but in all other cases the computer will never respond to a spell or ability on the stack. Also the computer will only play spells during its Main phase.

Forge runs on Windows, Linux, and Macs. You can download Forge from the panel on the right.

If you need to download Java, you can get it from here.

22 comments:

Yauchy said...

Great tool you have here, reminds me of my days of play Shandalar (still do on occasion, when it wants to work).

I dont pity how much time that Java GUI took though, I'm glad I've moved to C# :)

Take care & keep up the good work!

Anonymous said...

C# GUIs have more problems than Java GUIs. You just need the correct tools for creating the java guis.

Forge said...

Well I used JBuilder. The problem is that I used common Windows components like panels and text boxes to simulate a videogame. I really need to use a graphics or videogame library and draw everything on the screen.

Murdok said...

I have been playing MTGO for a while, it would be nice to polish my skills or lack of vs. a computer.

I sometimes play on Magic Workstation but the bugs in that program make Windows ME look like FreeBSD.

It's probably high time I give it a download. Keep on keep'n on!

Ph said...

good job, hope we'll see the ready work soon

Anonymous said...

Hmm, I am glad I discovered this blog. I find different projects at working on programming Magic to be quite interesting.

Mostly, I find fascinating what approaches different people bring to the table and how the focus your efforts. Always good to see people expanding on the game I have devoted so much energy to supporting as both a player and a judge. Good luck!

Anonymous said...

Thank you, I was looking for something that isn't Magic Online to relive some of the fun I had playing this game before growing out of it.

This is truly a modern chess, unfortunately people do not see it that way due to the competitive cost based market it has devolved into. Provided you can afford the cards you want this is one of the best strategic experiences you can have in the modern era.

Anonymous said...

Thank you. I've been looking for something like this.

Anonymous said...

this is really a fantastic single player version of MTG. Thank you so much for all the time you must have put into creating it.

Anonymous said...

Whahah great of wizards of the coast wont help us poor pc players you will nice m8^^

Anonymous said...

can i ask you a question?

I am currently taking a course about Object Oriented Programming. We use Java as our language. We just had 4 sessions (2-3 hrs each) and I'm still new at java but I have a good experience in C programming (structured oriented programming). We have this project wherein we are asked to make a card game. I decided to make a trading card game just like magic the gathering.

Now, my question is, how long will it take for me to create such game if, say, I am an intermediate or above intermediate programmer. Will it be difficult for me to make such game?

Anonymous said...

when you were just starting out making this program, what was your basic classes and attributes and methods and stuff?

Generic Viagra said...

interesting tool, you have one of the most important point in the game, generate new moves, not only for you also for the computer, this result in a better strategies to play and more results to analyze and put in practice.

Anonymous said...

Hi there !

It's awesome, just awesome !
Big thx to make me replay at MGT after few years ;)

Take care and Keep Rocking !

(spam bot spoted -.-')

Anonymous said...

this is really cool, but i don't see my live points, is that normal?

Ricki h said...

How come when I draft in Forge, every pack has at least 1 coiled tinviper or metallic sliver??

Anonymous said...

i played on forge and i notices alot of cards were missing, like cobra trap and Crystal golem. I was wondering if that could be fixed. and when are you planning on releasing the new cards when they come out tonight?

Anonymous said...

can you make Forge have multi player games, like emporer and others. that would be really cool.

Victorvndoom said...

1)i am happy i am using forge atm. but there are cards missing.Are those missing cards from some sets been post or is there another way to get them ? would the program accept them ?

Cross Dressing said...

This game sounds like a lot of fun!

Anonymous said...

forge is great. i've been looking for a free mtg game where you dont have to deal with other people. forge is the only one i found out of three strait weeks of googling.

Arcanis said...

C++/Qt GUI's are wonderful and portable.

I know that the Tiled project[1] moved from Java to C++ some years ago. You couldn't imagine the performance improvement !