What is implemented?

1.2 Release

- New: - implemented all set cards of set "Starter 1999" - implemented all set cards of set "Portal three kingdoms" - some of them include new abilities which were not present befor like: - legendary creatures - tapping in "Blocker" round (Kongming's Contraptions) - tapping of "Attackers" with opponent chosing cards on reaction to that - effect "buf others as long as xxx is in play" (e.g. Kongming, "Sleeping Dragon") - some special abilites (like horesmanship) - toyed around a bit with quest mode, new quests can be build with types: - must win in # turns - destroy # number of creatures - don´t let more as # of your creatures be killed additionally you can play a quest with a PreSet. - I define a Preset as a "Game Situation", which means, you have a quest where you can give player and/or opponent a fixed hand/graveyard/library/land/creature lists with which the quest must be fullfilled. - a quest like Rescue lady XX makes more sense if you have predefined settings - might imlpement even a tutorial this way :-) - you can chose a starting player for quests now - a new menu item "import supported sets", which lets you (... well) import all supported sets at once - Match Stat window now shows Quest progress and some more player related stuff

- added a couple of quests to open up the two new sets - added booster draft as game mode

- technically: "abilities" (invoked by tapping) now go on stack and are not evaluated at once. There might be some more "accept stack" clicking needed but for some new (and maybe many future) cards that was neccessary

- Bugfixes (numerous, can´t tell them all): - some gui stuff for Linux, where texts were cut off etc. - now I know you MUST have Sun JAVA 1.6 at least in order for JPortal to work less won´t do, and Gnu Java won´t work either, I developed JPortal using Netbeans and for that it seems to take liking in Sun Java - default start in Window mode now, for better Mac "compatabilty" - tried fixing AI that it won´t endless loop anymore a) implemented a "Watch" mechanism for endless loops, which will break it internally (and give an error message to debug log) b) If a card for a situation is selected by AI and not accepted by the game, AI won´t chose the same card again, it now never choses (in one round) the same card for the same situation I hope that will fix the rare occasions of endless loops

1.0 Release

Actually everything I wanted for version 1.0 is imlpemented.

All set: "portal" implemented and work as designed

All set: "portal second age" implemented and work as designed

AI can battle other AI - looks cool when they fight each other :-)

Game completly playable, AI seems also pretty undumb, and will get better still :-)

loading set spoiler text and card images from "Gatherer" (google it if you don´t know whta it is)

all needed info for the game is extracted from those loadings

(loading from wagic is also implemented, but will probably vanish soon)

viewing and editing of cards in a set

generating a "heap" from a set and edit etc

building a deck from a heap and edit etc

each card can have numerous scripts, that are loaded and executed for situations a card can be in (framework for scripting situation/type/ability implemented and works quite stable)

template scripting is possible, so not every card really needs its own scripts, in case of "business as usual" cards, template scripts are loaded

AI is also scriptable,

the match (the actual java-class) and the actual players are totally independend of each other, meaning, the "match" entity of JPortal doesn´t even know if a player is a computer or a human player, communication is done via message passing, ai "lives" in its own thread and generates "game events" just like a human player would

"the match" knows all of the game, and each player can get information regarding the game from the "match"

"the match" implements all rules that are not card related, that is for example:

phases of the game

segment of phases

putting players "actions" on the stack

evalution of the stack

etc

all card related rules are - well - card related and are scripted. if a card s scripted wrongly, than it won´t do as expeted. this opens wide doors for cheat abilities, if players are "dumb" (or smart?) enough to change card coding, but - well its their responsibility to play a fair game or not...