Removed resolved issues from TODO.md

Remove old unused sets.xml related files
Remove faqs and shortcuts doc since they’re outdated and been rewritten
in the wiki
This commit is contained in:
Fabio Bas 2015-05-16 18:50:51 +02:00
parent 15dd3471bc
commit fab4781395
6 changed files with 0 additions and 798 deletions

23
TODO.md
View file

@ -3,34 +3,20 @@
This is an unordered list of possible todo items for Cockatrice. This is an unordered list of possible todo items for Cockatrice.
Note that "improve" and "write" always also means: "document and comment" Note that "improve" and "write" always also means: "document and comment"
##Docs
* Improve README.md, it is very minimalistic and technical
##Improve packaging: ##Improve packaging:
* Add SSL libraries to Windows build to support https links in oracle.exe
* Improve nsis file git hash extraction, it only works if the build directory is cleared as version_string.cpp does not seem to get updated by git pull/cmake * Improve nsis file git hash extraction, it only works if the build directory is cleared as version_string.cpp does not seem to get updated by git pull/cmake
* Fix prepareMacRelease.sh to use default installation paths for Qt and protobuf
* Add Mac compile+package howto to the documentation
* Create script/... for creating Linux packages (deb, rpm, ebuild, ...) or at least an official tarball/git tags; package maintainers dislike using git snapshots so much that they rather ignore software without stable tarballs. * Create script/... for creating Linux packages (deb, rpm, ebuild, ...) or at least an official tarball/git tags; package maintainers dislike using git snapshots so much that they rather ignore software without stable tarballs.
* Move everything package related into one directory
##Scripts ##Scripts
* Write example init script for servatrice. * Write example init script for servatrice.
##Webinterface
* Write a default cgi webinterface in some language for the servatrice database. Keep it simple and think about SQL-injections and other security risks - especially if you do it in PHP :-P
##Improve usermanual: ##Improve usermanual:
* Improve Layout, Text, Screenshots; nearly everything is still quick n dirty copy and paste. * Improve Layout, Text, Screenshots; nearly everything is still quick n dirty copy and paste.
* Add missing TODOs * Add missing TODOs
* Translate the Documentation * Translate the Documentation
* Include faq.txt and shortcuts.txt in usermanual, then remove them.
* Rename the picture filenames to something more meaningful. * Rename the picture filenames to something more meaningful.
* Create an index, lists of tables/figures/... * Create an index, lists of tables/figures/...
## Storage
* Find a better place for sets.xml than doc.
##Create developer documentation: ##Create developer documentation:
* Create developer manual * Create developer manual
* Add comments to code * Add comments to code
@ -38,20 +24,11 @@ Note that "improve" and "write" always also means: "document and comment"
* Describe the *.proto files * Describe the *.proto files
* Comment and document servatrice.sql * Comment and document servatrice.sql
* Document everything!1!! * Document everything!1!!
* Coding guidelines
##Else ##Else
* Update SFMT library (http://www.math.sci.hiroshima-u.ac.jp/~m-mat@math.sci.hiroshima-u.ac.jp/MT/SFMT/) in common/sfmt and adapt common/rng_sfmt.cpp * Update SFMT library (http://www.math.sci.hiroshima-u.ac.jp/~m-mat@math.sci.hiroshima-u.ac.jp/MT/SFMT/) in common/sfmt and adapt common/rng_sfmt.cpp
* Prepare to update to Qt5, as Qt4 will die some day. See http://qt-project.org/wiki/Transition_from_Qt_4.x_to_Qt5 for relevant information.
* Move hardcoded URLs (especially from oracle and cockatrice) into a config file. * Move hardcoded URLs (especially from oracle and cockatrice) into a config file.
* Update the oracle to find all MtG extensions by itself, why the need for sets.xml when the oracle could ask the Gatherer or magiccards.info directly for this information?
* Update the oracle with some intelligence or improve it otherwise to deal with changes from the Gatherer.
* Remove cockatrice/resources/mtgforum.png as it is unused. Find other dead files or dead references to websites and files in the program code and documentation.
* Search git log for useful information/problems/bugs/... * Search git log for useful information/problems/bugs/...

View file

@ -1,62 +0,0 @@
Add Sets
===
The oracle program creates the cockatrice card database and needs a set database to achieve this.
The set database is written in XML and has the following skeleton:
```
<?xml version="1.0" encoding="UTF-8"?>
<cockatrice_setdatabase version="20100416">
<picture_url>http://www.wizards.com/global/images/magic/general/%1.jpg</picture_url>
<set_url>http://gatherer.wizards.com/Pages/Search/Default.aspx?output=spoiler&amp;method=text&amp;set=[&quot;!longname!&quot;]</set_url>
<set import="1">
<name>Set Code</name>
<longname>Set Name</longname>
</set>
<set import="1">
<name>Another Set Code</name>
<longname>Another Set Name</longname>
</set>
...
</cockatrice_setdatabase>
```
The full set database file called "set.xml" should be included in the cockatrice git-sources.
* You could change the picture_url to another source if you want, e.g. if you have HQ scans or another alternative server.
* The set_url is the search URL for Wizard's Gatherer, where the oracle program will fetch it's information from.
* If the Gatherer changes, adapt the URL and keep in mind that '&', '"' and other special characters should be HTML encoded (like '&amp;' and '&quot;').
* Further, the oracle replaces substrings included in '!' characters with information from the set entries, like '!longname!' with the set name.
* If you add a new set to the database, you have to create a new set entry like
<set import="1">
<name>AVR</name>
<longname>Avacyn Restored</longname>
</set>
and update the date in the version string. If you set import="1" the set's checkbox in the oracle's GUI will be set, otherwise unset.
Here is a more detailed step by step manual found in the internet:
1. Load the Oracle program that's installed with Cockatrice. The Oracle program can usually be found by click the Start button and going to All Programs > Cockatrice.
2. Click the File menu item and select 'Download sets information...'
3. Copy the URL from the 'Load sets' screen (the URL should be something like http://www.cockatrice.de/files/sets.xml) and paste it into your internet browser.
4. Right click on the web page and select Save As
5. Save the XML file to somewhere on your PC, preferably somewhere that's easy to get to
6. Right click on the XML file and select 'Open With...' and choose Notepad from the list
7. Before the end of the notepad document (should be something like </cockatrice_set database>) add:
<set import="1">
<name>RTR</name>
<longname>Return to Ravnica</longname>
</set>
8. Save and close the XML file
9. Back in the Oracle progam if the 'Load Sets' screen is still open click the Cancel button
10. Click the File menu item and click 'Load Sets from File'
11. Browse to where you saved the XML file and double click on it to select it
12. Click the Start Download button
13. Once the download is complete close the Oracle program and run Cockatrice. The Return to Ravnica cards should now be displayed.
Hopefully the steps above are helpful and easy to follow.

View file

@ -1,13 +0,0 @@
#!/bin/sh
# Print the header
echo '<?xml version="1.0" encoding="UTF-8"?>'
echo '<cockatrice_setdatabase version="'`date +%Y%m%d`'">'
echo '<picture_url>http://gatherer.wizards.com/Handlers/Image.ashx?multiverseid=!cardid!&amp;type=card</picture_url>'
echo '<set_url>http://gatherer.wizards.com/Pages/Search/Default.aspx?output=spoiler&amp;method=text&amp;set=[&quot;!longname!&quot;]&amp;special=true</set_url>'
# Download the sets and print them in XML
lynx -dump -source http://magiccards.info/sitemap.html |grep Gatecrash|sed 's/<li><a href="/\n/g'|cut -f1-2 -d\>|grep ^/|sort|sed 's@/en.html">@\t@g'|sed 's@</a@@'|sed 's@^/@@' | awk 'BEGIN{ FS = "\t"}; {print "\t<set import=\"1\">\n\t\t<name>"toupper($1)"</name>\n\t\t<longname>"$2"</longname>\n\t</set>"}'
# Print the footer
echo '</cockatrice_setdatabase>'

View file

@ -1,138 +0,0 @@
FAQ
===
How to update the card database
---
When a new set comes out, you need to update your card database to be able to
see the new cards in the deck editor and use them in the game. To do this,
open the Oracle tool in the Cockatrice folder. It's a stand-alone program and
is run directly out of the folder without running Cockatrice.
When the Oracle tool is running, open the menu and select 'Download sets
information'. Use the suggested address and click OK. After at most a few
seconds, you should be presented a list of sets to be downloaded. Do not
uncheck the ones you already have: they should be downloaded again. Click
'Start download' and wait. When the process is finished, the database should
be up to date.
Change Card Art / Custom Card Art
---
Is it possible to change the card art for a specif card, not by changing the
set order in my deck editor?
YES! It is actually very simple.
All you have to do is get a .JPG of the card you wish to change and name the
actual file of the image to the cards (exact) name and add ”.Full” to the end.
You can then take this new card image and replace the old one in your
downloaded image folder.
*NOTE: Image size does not matter. Try to use a high resolution .JPG of the
card you want to use for best quality.*
EXAMPLE: Let's say you wish to turn your M11 Sun Titan from its original art
to a promo version.
If you are using Windows 7, you can find the default location for the
Cockatrice card art files under
```
C:\Program Files (x86)\Cockatrice\pics\downloadedPics
```
Once there, look for the folder of the
set for the card we are replacing. For this example, Sun Titan is in the M11
folder. Open the folder and paste/replace your new “Promo” Sun Titan.full[.JPG]
into this folder, discarding the original copy. (If you have
not yet downloaded the original image of a card by selecting it in the deck
editor or playing it in an online game, the card image will not yet be there)
Once you have the new card image in the proper folder, you can now start
Cockatrice (Or re-start if you already had the program open)and select the
deck editor to see your new card image.
If you are changing the art of a card that has multiple versions in other
sets, make sure you put the new card in whatever folder (or set) is highest
on your card database set list.
*NOTE: Other players on Cockatrice will NOT see your new card image. They will
only see whatever version of the card is in their database.*
Use Higher Resolution Cards
---
Can you get better/higher resolution card art than the default downloaded card
images already used?
Yes!
When you click on a card for the first time in the Deck Editor, Cockatrice
goes onto the internet and finds an image of that card from a database on
another website.
If you find a higher resolution .JPG of a card that you wish to use on your
Cockatrice, you can replace the image with no problem. If you can find a card
image in the 3,000 by 1,000 pixel range, and save it as the cards (exact) name
and add .Full to the end.
If you are using Windows 7, you can find the default location for the
Cockatrice card art files under
```
C:\Program Files(x86)\Cockatrice\pics\downloadedPics
```
Once there, look for the folder of the set for the card you are replacing. If you are not running Cockatrice as an
administrator, look in
```
C:\Users\username\AppData\Local\VirtualStore\Program Files (x86)\Cockatrice\pics\downloadedPics
```
Open the folder of the set with the card, and paste/replace the new higher
resolution .JPG image with the old low quality one.
This process is the same for changing cards to custom images.
*NOTE: Other Cockatrice players will not see your higher resolution card art,
they will only see the image they have in their own database.*
Booster Drafts
---
Cockatrice does not support booster drafts, so players need to use an
external service for this.
Most people use [ccgdecks.com](http://ccgdecks.com/) so it's probably not a bad idea to
register an account there before joining a game in Cockatrice.
How to link a card in the Cockatrice chat.
---
To link a card in the Cockatrice chat, type out the full name of the card,
surrounded by the [card] and [/card] tags.
For example:
```
[card]Black Lotus[/card]
```
How to link a URL in the Cockatrice chat.
---
To link a URL in the Cockatrice chat, type out the url, surrounded by the
[url] and [/url] tags.
For example:
```
[url]http://www.cockatrice.de[/url]
[url]cockatrice.de[/url]
```

View file

@ -1,514 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<cockatrice_setdatabase version="20110126">
<picture_url>http://gatherer.wizards.com/Handlers/Image.ashx?multiverseid=!cardid!&amp;type=card</picture_url>
<!-- <picture_url_hq>http://mtgimage.com/multiverseid/!cardid!.jpg</picture_url_hq> -->
<set_url>http://mtgjson.com/json/!name!.json</set_url>
<set import="1">
<name>ARB</name>
<longname>Alara Reborn</longname>
</set>
<set import="1">
<name>ALL</name>
<longname>Alliances</longname>
</set>
<set import="1">
<name>ATQ</name>
<longname>Antiquities</longname>
</set>
<set import="1">
<name>APC</name>
<longname>Apocalypse</longname>
</set>
<set import="1">
<name>ARN</name>
<longname>Arabian Nights</longname>
</set>
<set import="0">
<name>ARC</name>
<longname>Archenemy</longname>
</set>
<set import="1">
<name>AVR</name>
<longname>Avacyn Restored</longname>
</set>
<set import="0">
<name>BRB</name>
<longname>Battle Royale Box Set</longname>
</set>
<set import="0">
<name>BTD</name>
<longname>Beatdown Box Set</longname>
</set>
<set import="1">
<name>BOK</name>
<longname>Betrayers of Kamigawa</longname>
</set>
<set import="1">
<name>BNG</name>
<longname>Born of the Gods</longname>
</set>
<set import="1">
<name>CHK</name>
<longname>Champions of Kamigawa</longname>
</set>
<set import="1">
<name>CHR</name>
<longname>Chronicles</longname>
</set>
<set import="1">
<name>6ED</name>
<longname>Classic Sixth Edition</longname>
</set>
<set import="1">
<name>CSP</name>
<longname>Coldsnap</longname>
</set>
<set import="1">
<name>CON</name>
<longname>Conflux</longname>
</set>
<set import="0">
<name>CMA</name>
<longname>Commander's Arsenal</longname>
</set>
<set import="0">^M
<name>C13</name>^M
<longname>Commander 2013 Edition</longname>^M
</set>
<set import="1">
<name>DST</name>
<longname>Darksteel</longname>
</set>
<set import="1">
<name>DKA</name>
<longname>Dark Ascension</longname>
</set>
<set import="1">
<name>DIS</name>
<longname>Dissension</longname>
</set>
<set import="1">
<name>DGM</name>
<longname>Dragon's Maze</longname>
</set>
<set import="0">
<name>DDH</name>
<longname>Duel Decks: Ajani vs. Nicol Bolas</longname>
</set>
<set import="0">
<name>DDC</name>
<longname>Duel Decks: Divine vs. Demonic</longname>
</set>
<set import="0">
<name>DDF</name>
<longname>Duel Decks: Elspeth vs. Tezzeret</longname>
</set>
<set import="0">
<name>EVG</name>
<longname>Duel Decks: Elves vs. Goblins</longname>
</set>
<set import="0">
<name>DDD</name>
<longname>Duel Decks: Garruk vs. Liliana</longname>
</set>
<set import="0">
<name>DDL</name>
<longname>Duel Decks: Heroes vs. Monsters</longname>
</set>
<set import="0">
<name>DDJ</name>
<longname>Duel Decks: Izzet vs. Golgari</longname>
</set>
<set import="0">
<name>DD2</name>
<longname>Duel Decks: Jace vs. Chandra</longname>
</set>
<set import="0">
<name>DDM</name>
<longname>Duel Decks: Jace vs. Vraska</longname>
</set>
<set import="0">
<name>DDG</name>
<longname>Duel Decks: Knights vs. Dragons</longname>
</set>
<set import="0">
<name>DDE</name>
<longname>Duel Decks: Phyrexia vs. the Coalition</longname>
</set>
<set import="0">
<name>DDK</name>
<longname>Duel Decks: Sorin vs. Tibalt</longname>
</set>
<set import="0">
<name>DDI</name>
<longname>Duel Decks: Venser vs. Koth</longname>
</set>
<set import="1">
<name>8ED</name>
<longname>Eighth Edition</longname>
</set>
<set import="1">
<name>EVE</name>
<longname>Eventide</longname>
</set>
<set import="1">
<name>EXO</name>
<longname>Exodus</longname>
</set>
<set import="1">
<name>FEM</name>
<longname>Fallen Empires</longname>
</set>
<set import="1">
<name>5DN</name>
<longname>Fifth Dawn</longname>
</set>
<set import="1">
<name>5ED</name>
<longname>Fifth Edition</longname>
</set>
<set import="1">
<name>4ED</name>
<longname>Fourth Edition</longname>
</set>
<set import="0">
<name>DRB</name>
<longname>From the Vault: Dragons</longname>
</set>
<set import="0">
<name>V09</name>
<longname>From the Vault: Exiled</longname>
</set>
<set import="0">
<name>V11</name>
<longname>From the Vault: Legends</longname>
</set>
<set import="0">
<name>V12</name>
<longname>From the Vault: Realms</longname>
</set>
<set import="0">
<name>V10</name>
<longname>From the Vault: Relics</longname>
</set>
<set import="0">
<name>V13</name>
<longname>From the Vault: Twenty</longname>
</set>
<set import="1">
<name>FUT</name>
<longname>Future Sight</longname>
</set>
<set import="1">
<name>GPT</name>
<longname>Guildpact</longname>
</set>
<set import="1">
<name>GTC</name>
<longname>Gatecrash</longname>
</set>
<set import="1">
<name>HML</name>
<longname>Homelands</longname>
</set>
<set import="1">
<name>ICE</name>
<longname>Ice Age</longname>
</set>
<set import="1">
<name>ISD</name>
<longname>Innistrad</longname>
</set>
<set import="1">
<name>INV</name>
<longname>Invasion</longname>
</set>
<set import="1">
<name>JOU</name>
<longname>Journey into Nyx</longname>
</set>
<set import="1">
<name>JUD</name>
<longname>Judgment</longname>
</set>
<set import="1">
<name>LEG</name>
<longname>Legends</longname>
</set>
<set import="1">
<name>LGN</name>
<longname>Legions</longname>
</set>
<set import="1">
<name>LEA</name>
<longname>Limited Edition Alpha</longname>
</set>
<set import="1">
<name>LEB</name>
<longname>Limited Edition Beta</longname>
</set>
<set import="1">
<name>LRW</name>
<longname>Lorwyn</longname>
</set>
<set import="1">
<name>M10</name>
<longname>Magic 2010</longname>
</set>
<set import="1">
<name>M11</name>
<longname>Magic 2011</longname>
</set>
<set import="1">
<name>M12</name>
<longname>Magic 2012</longname>
</set>
<set import="1">
<name>M13</name>
<longname>Magic 2013</longname>
</set>
<set import="1">
<name>M14</name>
<longname>Magic 2014 Core Set</longname>
</set>
<set import="0">
<name>CMD</name>
<longname>Magic: The Gathering-Commander</longname>
</set>
<set import="0">
<name>CNS</name>
<longname>Magic: The Gathering—Conspiracy</longname>
</set>
<set import="0">
<name>MED</name>
<longname>Masters Edition</longname>
</set>
<set import="0">
<name>ME2</name>
<longname>Masters Edition II</longname>
</set>
<set import="0">
<name>ME3</name>
<longname>Masters Edition III</longname>
</set>
<set import="0">
<name>ME4</name>
<longname>Masters Edition IV</longname>
</set>
<set import="1">
<name>MMQ</name>
<longname>Mercadian Masques</longname>
</set>
<set import="1">
<name>MIR</name>
<longname>Mirage</longname>
</set>
<set import="1">
<name>MRD</name>
<longname>Mirrodin</longname>
</set>
<set import="1">
<name>MBS</name>
<longname>Mirrodin Besieged</longname>
</set>
<set import="0">^M
<name>MMA</name>^M
<longname>Modern Masters</longname>^M
</set>^
<set import="1">
<name>MOR</name>
<longname>Morningtide</longname>
</set>
<set import="1">
<name>NMS</name>
<longname>Nemesis</longname>
</set>
<set import="1">
<name>NPH</name>
<longname>New Phyrexia</longname>
</set>
<set import="1">
<name>9ED</name>
<longname>Ninth Edition</longname>
</set>
<set import="1">
<name>ODY</name>
<longname>Odyssey</longname>
</set>
<set import="1">
<name>ONS</name>
<longname>Onslaught</longname>
</set>
<set import="1">
<name>PLC</name>
<longname>Planar Chaos</longname>
</set>
<set import="0">
<name>HOP</name>
<longname>Planechase</longname>
</set>
<set import="0">
<name>PC2</name>
<longname>Planechase 2012 Edition</longname>
</set>
<set import="1">
<name>PLS</name>
<longname>Planeshift</longname>
</set>
<set import="1">
<name>POR</name>
<longname>Portal</longname>
</set>
<set import="1">
<name>PO2</name>
<longname>Portal Second Age</longname>
</set>
<set import="1">
<name>PTK</name>
<longname>Portal Three Kingdoms</longname>
</set>
<set import="0">
<name>PD2</name>
<longname>Premium Deck Series: Fire and Lightning</longname>
</set>
<set import="0">
<name>PD3</name>
<longname>Premium Deck Series: Graveborn</longname>
</set>
<set import="0">
<name>H09</name>
<longname>Premium Deck Series: Slivers</longname>
</set>
<set import="0">
<name>PPR</name>
<longname>Promo set for Gatherer</longname>
</set>
<set import="1">
<name>PCY</name>
<longname>Prophecy</longname>
</set>
<set import="1">
<name>RAV</name>
<longname>Ravnica: City of Guilds</longname>
</set>
<set import="1">
<name>RTR</name>
<longname>Return to Ravnica</longname>
</set>
<set import="1">
<name>3ED</name>
<longname>Revised Edition</longname>
</set>
<set import="1">
<name>ROE</name>
<longname>Rise of the Eldrazi</longname>
</set>
<set import="1">
<name>SOK</name>
<longname>Saviors of Kamigawa</longname>
</set>
<set import="1">
<name>SOM</name>
<longname>Scars of Mirrodin</longname>
</set>
<set import="1">
<name>SCG</name>
<longname>Scourge</longname>
</set>
<set import="1">
<name>7ED</name>
<longname>Seventh Edition</longname>
</set>
<set import="1">
<name>SHM</name>
<longname>Shadowmoor</longname>
</set>
<set import="1">
<name>ALA</name>
<longname>Shards of Alara</longname>
</set>
<set import="1">
<name>S99</name>
<longname>Starter 1999</longname>
</set>
<set import="1">
<name>S00</name>
<longname>Starter 2000</longname>
</set>
<set import="1">
<name>STH</name>
<longname>Stronghold</longname>
</set>
<set import="1">
<name>TMP</name>
<longname>Tempest</longname>
</set>
<set import="1">
<name>10E</name>
<longname>Tenth Edition</longname>
</set>
<set import="1">
<name>DRK</name>
<longname>The Dark</longname>
</set>
<set import="1">
<name>THS</name>
<longname>Theros</longname>
</set>
<set import="1">
<name>TSP</name>
<longname>Time Spiral</longname>
</set>
<set import="1">
<name>TSB</name>
<longname>Time Spiral "Timeshifted"</longname>
</set>
<set import="1">
<name>TOR</name>
<longname>Torment</longname>
</set>
<set import="0">
<name>UGL</name>
<longname>Unglued</longname>
</set>
<set import="0">
<name>UNH</name>
<longname>Unhinged</longname>
</set>
<set import="1">
<name>2ED</name>
<longname>Unlimited Edition</longname>
</set>
<set import="1">
<name>UDS</name>
<longname>Urza's Destiny</longname>
</set>
<set import="1">
<name>ULG</name>
<longname>Urza's Legacy</longname>
</set>
<set import="1">
<name>USG</name>
<longname>Urza's Saga</longname>
</set>
<set import="0">
<name>VAN</name>
<longname>Vanguard</longname>
</set>
<set import="1">
<name>VIS</name>
<longname>Visions</longname>
</set>
<set import="1">
<name>WTH</name>
<longname>Weatherlight</longname>
</set>
<set import="1">
<name>WWK</name>
<longname>Worldwake</longname>
</set>
<set import="1">
<name>ZEN</name>
<longname>Zendikar</longname>
</set>
</cockatrice_setdatabase>

View file

@ -1,48 +0,0 @@
Keyboard Shortcuts
==================
Keyboard Shortcuts can be used while playing a game on Cockatrice. Players use
them to do simple and recurring tasks without the use of looking though menus
to find the proper action.
Shortcut Action
----------------------
| key | action
| ------------------------ | ---------------------------------------------------------------------
| F3 | View library
| F4 | View graveyard
| Ctrl+F3 | View sideboard
| Ctrl+W | View top car(s) of library (Choose a number)
| Ctrl+S | Shuffle deck
| Ctrl+I | Roll dice
| Ctrl+M | Draw 7, then mulligan successively
| Ctrl+D | Draw a card
| Ctrl+E | Draw Cards (Choose a number)
| Ctrl+Shift+D | Undo last draw
| Ctrl+L | Set Life (useful when adding or subtracting a large number of life)
| F11 | Minus 1 life
| F12 | Add 1 life
| Ctrl+U | Untap all permanents you control
| Ctrl+R | Remove all local arrows
| Ctrl+T | Brings up menu to Create a token
| Ctrl+G | Creates last token you made
| (Select card) Ctrl+Del | Move to graveyard
| (Select card) Ctrl+A | Attach Card (For equipment and auras)
| (Select card) Ctrl+H | Clone (Make copy of) selected card
| (Select card) Ctrl++ | Increase power
| (Select card) Ctrl+- | Decrease power
| (Select card) Alt++ | Increase toughness
| (Select card) Alt+- | Decrease toughness
| (Select card) Ctrl+Alt++ | Increase power and toughness
| (Select card) Ctrl+Alt+- | Decrease power and toughness
| (Select card) Ctrl+P | Set power and toughness
| Ctrl+Enter (Return) | Next turn
| Ctrl+Space | Move to next phase
| F5 | Untap step
| F6 | Draw step
| F7 | First main phase
| F8 | Beginning of combat step
| F9 | Second main phase
| F10 | End of turn step
| F2 | Concede game