Commit graph

1425 commits

Author SHA1 Message Date
Oleg Agafonov
d06b79e9b4 Fixed infinite AI loop in TargetPermanent abilities (see #5023) 2019-01-14 15:38:27 +04:00
Oleg Agafonov
063be44523 Fixed NPE errors for some cards (#5471) 2019-01-08 07:15:39 +04:00
Oleg Agafonov
e9f9b05141 Fixed NPE errors for some cards (#5471) 2019-01-02 20:06:01 +04:00
brodee
5bd30c8c55 added the scg winter con cube
this is the cube they drafted for $10k
2019-01-01 14:07:16 -08:00
Oleg Agafonov
2ebad63595 Added seeds support to random util:
* all xmage code uses shared util to generate random values;
 * tests can uses seeds to repeat "random" results like deck builds or AI plays;
2018-12-30 03:52:30 +04:00
Oleg Agafonov
52df594396 Fixed that freeform commander don't ignore banned cards from basic commander; 2018-12-29 20:40:05 +04:00
Miguel Sainz Jr
aede48df04 Implement December 2018 Vintage Cube 2018-12-26 11:49:49 -05:00
Evan Kranzler
baef4114d2 fixed silver bordered cards being legal in various formats 2018-12-22 11:26:15 -05:00
Evan Kranzler
66aab73cfa fixed silver bordered cards being legal in commander 2018-12-21 20:12:44 -05:00
Oleg Agafonov
5d1289a66e
Merge pull request #5465 from magefree/ui-new-download-window
UI: added new download images window
2018-12-21 18:03:55 +04:00
Oleg Agafonov
4495d75d8a Fixed NPE error on AI calcs 2018-12-18 17:17:10 +04:00
brodee
4c94938c14 Merge branch 'master' of https://github.com/brodee/mage 2018-11-28 23:01:47 -08:00
brodee
6a37e102c0 uma ai limited ratings 2018-11-28 23:01:12 -08:00
LevelX2
e6ce58d6bf XMage 1.4.32V0 2018-11-26 19:30:22 +01:00
Oleg Agafonov
8185bdf62b * Updated Canadian Highlander format to November 19th, 2018 version (#5436); 2018-11-21 02:54:08 +04:00
Jeff
1bac7fc04c - Fixed Soul Strings. DoUnlessAnyPlayerPays now supports X costs. 2018-11-20 09:46:36 -06:00
Evan Kranzler
4d01c72c3e updated Aus Highlander and Canadian Highlander point lists 2018-10-30 11:04:38 -04:00
brodee
83afff5a05 kld card ratings
draftaholics data was very skewed towards masterpieces. which meant
decent cards were ranking very low relatively
I used the relative ranking from draftaholics and generated a normal
distribution mean60 std 20 for these rankings to smooth it out.
2018-10-28 16:18:53 -07:00
brodee
43f32f9640 card ratings files fixes/updates
fixed kld and aer
2018-10-28 15:24:06 -07:00
brodee
08d895d110 fix typos in card ratings files 2018-10-28 15:20:51 -07:00
brodee
a95f3b2211 remove ktk from list of sets with ratings
haven't commited the ktk rating numbers, need to remove it from the list
2018-10-28 14:27:06 -07:00
brodee
6f93abfd5a ai ratings revamp code review changes
* when resources are missing, fails gracefully
* uses highest found rating, rather than most recently found for the
case of sets containing duplicates
* moved ratings files to their own directory
* thread safe reading of all files
2018-10-28 14:23:53 -07:00
brodee
505a4b00a7 AI Draftbot rating system reworked, ratings added for 10 sets
the way stored ratings for cards has been reworked
1. each set has its own ratings file and it will be loaded dynamically
if the AI needs it
2. each ratings file for a set is normalized within itself, so the
rating systems don't need to be scaled to match eachother. essentially
cards are rated within the context of their set
3. changed the rarity rating booster to only apply to unrated cards
4. the file setsWithRatings.csv explains how to add additional ratings.
no code changes are required, but a recompilation will be required to
add the files to the jar.
2018-10-28 12:10:00 -07:00
brodee
4f61afa62b AI updates, more cards will have the isRemoval bonus to their card rating
these weren't being picked up as removal spells and now are:
* modal spells where one mode is a removal spell
* spells that do a dynamic amount of damage, such as fireball
* cards that reduce the toughness temporarily or permanently
* cards that keep a creature tapped down
* cards that exile a creature
* cards that damage creatures that are attacking or blocking
* enchantments that exile a creature when they etb
* fight cards, and one sided fight cards

the ai will now rate those types of cards higher as they are removal
2018-10-28 00:16:14 -07:00
brodee
04457558b3 ai tweaks: improve rating for multicolor cards and reduce effect of rarity
multicolor cards are the payoffs for playing those colors so they should
be better
reduced the effect of rarity increasing the rating
2018-10-27 11:50:59 -07:00
brodee
843702bd86 draftbots and afk autopicks will more aggressivly take rares
two draft quality of life improvements for situations when real players
quit or go afk.
1. made the draftbot lean on rarity for card ratings. this helps make
the draftbots behave and not just pass bombs to the human players.
2. changed the draft autopick that happens when the timer runs out and
the player hasn't selected anything. I changed it to pick the last card
in the pack, which should be the rarest, so basically it raredrafts.
again making it so AFK players aren't just feeding real live human
players the best cards.
2018-10-26 22:17:57 -07:00
Evan Kranzler
6ad6151be7 removed rotated cards from standard banlist 2018-10-03 14:50:16 -04:00
Evan Kranzler
b7c5b3bd36 updated Australian Highlander points 2018-09-22 15:02:59 -04:00
Evan Kranzler
79635ff9a0 updated Canadian Highlander points 2018-09-22 15:01:30 -04:00
Ingmar Goudt
f04d7c9b03 remove redundant null checks before instanceof 2018-09-17 21:09:42 +02:00
jmharmon
ec23ea0dd2
Implement Premodern 2018-09-12 08:17:34 -07:00
Oleg Agafonov
1bc022a94a Revert freeform commander to singleton format (1 card copy max) 2018-08-25 10:43:18 +04:00
Oleg Agafonov
b4fdce53c4 * Fixed freeform commander that's it not allowed snow lands and cards duplication (#5262) 2018-08-25 08:42:45 +04:00
LevelX2
deb675a74a Xmage 1.4.30V0 2018-08-15 11:35:40 +02:00
Evan Kranzler
e70b1fadbe updated MTGO 1v1 commander rules to ban partners 2018-07-27 11:38:08 -04:00
Evan Kranzler
62584601a1 updated MTGO 1v1 Commander banlist 2018-07-27 11:27:08 -04:00
spjspj
aae3930ef4
Merge pull request #5145 from spjspj/master
Check if there are actually different replacement effects and only ask then if there are.  Having two Mana Reflections out makes the game unplayable atm.
2018-07-12 23:30:30 +10:00
spjspj
1c540bbc77 Check if actually different replacement effects 2018-07-12 23:21:00 +10:00
Evan Kranzler
490217facd updated 1 on 1 Brawl life total 2018-07-09 11:25:47 -04:00
Evan Kranzler
0324c1ad9f Updated how Standard and Brawl share legality 2018-07-09 10:31:30 -04:00
spjspj
af0e9aac89 Brawl is missing m19. 2018-07-10 00:15:08 +10:00
igoudt
9f06046f22 add isOwned and isControlled methods. remove some null-checks, remove some unnecessary casts 2018-07-04 14:24:11 +02:00
Evan Kranzler
85402b5522 updated Legacy banlist (https://magic.wizards.com/en/articles/archive/news/july-2-2018-banned-restricted-update-2018-07-02) 2018-07-02 10:37:29 -04:00
igoudt
ca1ebeb55e add method Game.isActivePlayer(UUID playerId) 2018-06-29 14:59:11 +02:00
Evan Kranzler
88eeaa3f1e temporarily removed future requirement from standard to allow M19 2018-06-24 19:29:12 -04:00
Evan Kranzler
bb92d04ff4 Updated Australian Highlander points list 2018-06-17 16:42:09 -04:00
Evan Kranzler
fb419bebca Updated canadian highlander point list 2018-06-17 16:25:28 -04:00
Evan Kranzler
d466d7f34c Added June 2018 Vintage Cube 2018-06-14 12:52:42 -04:00
Evan Kranzler
633dcd927d reworked standard legality to handle the return of core sets and removal of blocks 2018-06-14 10:55:29 -04:00
Michael Simons
2fbbf7a516 Fixed typos 2018-06-03 23:24:36 -04:00
Michael Simons
d0f0de33a2 Fixed typos 2018-06-03 23:22:39 -04:00
Michael Simons
b0d1f86890 Changes to try and better handle X mana costs with minimum X values with AI decisions #4906 2018-06-03 22:50:56 -04:00
Michael Simons
de9042dafe Changes to try and better handle X mana costs with minimum X values with AI decisions #4906 2018-06-03 22:47:56 -04:00
GrayedFox
3953f3dbdd
remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
LevelX2
58d618e8d7 * Used some default code to get opponents for Game classes. 2018-05-31 12:52:05 +02:00
Evan Kranzler
20287a2739 updated Duel Commander banlist 2018-05-29 19:46:52 -04:00
LevelX2
27ced167fb * Added logic to add permitting object to play/cast events. 2018-05-27 23:47:57 +02:00
Evan Kranzler
c7ba717453 Fixed colorless commanders not being able to use a single type of basic land (fixes #4973) 2018-05-27 13:06:26 -04:00
LevelX2
ad5b719dd2 Merge origin/master 2018-05-27 01:29:52 +02:00
LevelX2
a19c257e50 XMage 1.4.30V0 2018-05-27 01:28:42 +02:00
Evan Kranzler
4dd6bbef14 Updated Adam Styborski's Pauper Cube 2018-05-26 19:15:44 -04:00
Evan Kranzler
636b35ae39 small change to Partner with ability 2018-05-21 15:53:06 -04:00
Evan Kranzler
bd96d30b3d Implemented Partners With ability 2018-05-21 15:12:31 -04:00
LevelX2
3972695428 * Some changes to improve mana use of AI. 2018-05-21 11:50:49 +02:00
jmharmon
19c9d7634c
Add files via upload
Added Old School 93/94 variants for different rules.
2018-05-18 03:20:22 -07:00
theelk801
9739c0c6f9
Merge pull request #4924 from hooptie45/master
Added No Banned List Modern format
2018-05-15 14:21:20 -04:00
LevelX2
21e5591e29 * Some rework of handling of mana effects. 2018-05-13 22:52:14 +02:00
Evan Kranzler
d6ff7f851d updated Brawl banlist, color identity rules, and 1v1 starting life total (closes #4931) 2018-05-10 20:40:52 -04:00
Shaun Hannah
755569d996
Fix class name mis-match 2018-05-10 05:13:02 -04:00
Shaun Hannah
4d335fc396 Added No Banned List Modern format
This is just as the name implied, modern with no banned cards.

Why? Because I want to gear up for the SCG-CON's no banned list modern
tourney: http://scgcon.starcitygames.com/open.php#prizes

Sure I could play in a freeform game, but modern can't compete with
vintage cards; so not really a good test case.
2018-05-09 20:10:11 -04:00
LevelX2
90d6b29841
Merge pull request #4656 from pmbarrett314/master
Attempted fix for Momir Free For All
2018-05-07 00:53:39 +02:00
LevelX2
cddd81123b Some changes related to #4893. 2018-05-03 01:33:21 +02:00
Oleg Agafonov
a69aac2243 Fixed tests and exceptions in AI choose target code 2018-05-01 01:34:24 +04:00
spjspj
48de177f75
Merge pull request #4881 from brikr/patch-1
Fix Brawl.java banlist comments
2018-04-30 20:27:17 +10:00
LevelX2
ec96f8a18e * AI - Improved nadling of target selection if AI doe smot control the ability itself. 2018-04-30 08:05:17 +02:00
Brik Royster
54e4c2c484
Update Standard.java
update comments to reflect actual ban date
2018-04-28 17:08:43 -07:00
Brik Royster
a514f12196
Fix Brawl.java banlist comments
These cards were banned in 2018
2018-04-28 16:11:39 -07:00
Oleg Agafonov
c24ba742f6 Fixed equal or == errors -- 23 cards and more (see #4407) 2018-04-28 21:24:48 +04:00
LevelX2
db077d68ca * Fixed Rat Colony deck valid check for all formats. 2018-04-25 16:34:55 +02:00
spjspj
66825b37df
Merge pull request #4865 from spjspj/master
Implement Brawl Free For All and Brawl Duel
2018-04-25 19:44:41 +10:00
spjspj
730d23164a Implement Brawl Free For All and Brawl Duel 2018-04-25 19:17:34 +10:00
LevelX2
242e55dcd4 * Fixed that Fall of the Thran allowed AI to get back dragons (fixes #4848). 2018-04-24 23:22:29 +02:00
spjspj
1f2f61e945
Merge pull request #4856 from spjspj/master
Aus Highlander update
2018-04-24 21:26:21 +10:00
spjspj
3a8a6019ca Aus Highlander update 2018-04-24 21:24:54 +10:00
Evan Kranzler
d2f41405b7 updated MTGO 1v1 Commander banlist 2018-04-23 11:45:22 -04:00
LevelX2
92793327f3 * returned UUID of used THOUGHT AS effect instead of boolean. 2018-04-21 22:32:45 +02:00
Evan Kranzler
ec3007d141 a few more changes to help with tests 2018-04-20 18:51:15 -04:00
Evan Kranzler
dc2d8145fd added copy methods that I accidentally removed 2018-04-20 17:17:51 -04:00
theelk801
95d2721421
Merge branch 'planeswalkerErrata' into master 2018-04-20 16:21:44 -04:00
Evan Kranzler
f07ac5e844 fixed issue with computer player handling target distribution 2018-04-20 12:35:39 -04:00
LevelX2
fe2220e19e Xmage 1.4.29V0 2018-04-19 21:07:14 +02:00
LevelX2
47ad1ea0ee Fixed a AI target selecting problem. 2018-04-19 21:02:34 +02:00
Evan Kranzler
5fe607e852 updated targeting for cards that damage 2018-04-19 11:45:20 -04:00
LevelX2
245a3c5202 [DOM] Added Saga ability and Fall of the Thran. 2018-04-14 14:30:20 +02:00
LevelX2
20f03cfcb1 Some minor changes to Momir code. 2018-04-01 12:33:59 +02:00
Paul Barrett
dea874e278
Attempted fix for Momir Free For All
Work for #1955
2018-03-23 21:47:37 -05:00
ArcadeMode
5ac975c52e Blocker and Critical level bugfixes throughout the project (#4648)
* fixed https://sonarcloud.io/project/issues?id=org.xmage%3Amage-root&issues=AWIlv32RgrzAwlaaQ7rP&open=AWIlv32RgrzAwlaaQ7rP

* ensure closing of scanner if it was opened

* Refactored method in EmpyrialArchAngel to not always return same value.

* Refactored method in FalkenrathAristocrat to not always return same value.

* Refactored method in GilderBairn to not always return the same value.

* fixed left open resources, ensured quiet closing of the streams

* Refactored method in IceCave to not always return same value.

* Refactored method in KjeldoranRoyalGuard to not always return same value.

* Refactored method in LegionsInitiative to not always return same value.

* Refactored method in NaturesWill to not always return same value.

* added quiet closing method in new streamutils class, used to clean up the connectdialog

* Fix small typo

* added quiet closing to saveobjectutil

* closed resources in savegame method of gamecontroller

* properly close resources in loadGame method of GameReplay class

* further proper resource closing in ServerMessagesUtil

* fixed unclosed resources in copy method in mage framework Copier

* closed unclosed resources in copyCompressed method in Copier

* ensure closing of filewriter in manasymbols

* ensure proper closing of Stream in arcane UI

* ensure closing of datagram socket in arcane Util

* ensure resource closing in deckimport from clipboard

* ensure closing of plugin classloader

* ensured closing of zipinputstream resource

* ensure closing of fileoutputstream in ScryfallSymbolsSource

* ensure closing resources after finishing/canceling download of pictures

* remove commented code

* move locks to try block to ensure unlocking along all execution paths

* remove dangerous instance of double-checked locking

* removed dangerous instance of double checked locking in settingsmanager

* Removed dangerous instance of double-checked locking in ThemePluginImpl

* close resource which did not happen certainly

* close another stream

* ensure closing of inputstream
2018-03-22 08:13:13 -05:00
Oleg Agafonov
ddc43d05f6 Removed unnecessary log info on user's freeze (#4646) 2018-03-22 11:58:14 +04:00
LevelX2
b073ce1c42 * Added to all toUpperCase/toLowerCase calls the Locale.ENGLISH to prevent problems with some languages (e.g. Turkish). Removed some unused import statements. (#4634). 2018-03-18 18:18:54 +01:00
LevelX2
442130beb6 Some minor changes. 2018-03-17 23:40:36 +01:00
LevelX2
170ad083c7 * Fixed a problem of the AI that it could cast cards with flashback without paying the costs. 2018-03-17 01:51:25 +01:00
LevelX2
b7fa942b10 * Fixed a problem that the AI did not care for maximum allowed mana payment for X mana costs. 2018-03-12 16:33:42 +01:00
LevelX2
16adc9b4ef Added Legacy Cube February 2018 2018-03-11 14:12:21 +01:00
LevelX2
fed2d1a259 XMage 1.4.28V0 2018-03-10 20:42:29 +01:00
LevelX2
dac8f2dfe8 Fixed a bug of AI not handling pass action correctly so the AI got passive. Added AI possibility to act after blockers are declared (eg boost for blocking or blocked creatures). 2018-03-10 19:59:59 +01:00
LevelX2
59f5851e73 Fixed a problem to pay costs for e.g. triggering abilities while casting a spell. 2018-03-10 12:39:44 +01:00
LevelX2
a4c2e51ab3 * Added some missing AI target logic. 2018-02-13 10:33:33 +01:00
JRHerlehy
fcfb431290 Feb 12, 2018 B&R Update
Modern - Jace, the Mind Sculptor UNBANNED, Bloodbrade Elf UNBANNED

All other formats - No Changes
2018-02-12 13:29:24 -05:00
LevelX2
61c3798b83 Removed some system.out debug lines. 2018-02-12 11:38:35 +01:00
LevelX2
b752eacfaa * Optimized handling and call of player.choose choice to prevent problems if a player disconnects or left a game (#4263). 2018-02-04 17:51:12 +01:00
LevelX2
4dd196f373 * Fixed some problems with getting cards at random from collection that could cause loops. 2018-02-04 12:27:08 +01:00
Oleg Agafonov
8596a92ed8 Added error logs for freezes ignoring timer (see #4476) 2018-02-03 13:54:39 +04:00
spjspj
aebc16dc82
Merge pull request #4476 from spjspj/master
Scenario I was testing for this fix:
2018-02-03 18:45:52 +11:00
Oleg Agafonov
3bfe5ec5d3 Fixed game and/or timer freeze on another player concede with 3+ games (see #4476) 2018-02-03 08:26:01 +04:00
spjspj
b924f4bb6b Scenario I was testing for this fix.
Local Server, EDH game with Player1, Player2, Player3.
Player1 has 2 mana reflections out, cast Torment of Hailfire for 15 and is tapping mana for it.
The 'choose replacement effect' popup comes up.
Whilst this is happening, Player2 concedes.
This will currently lock up the game and sits forever in waitResponseOpen.
 (With the time out now there, it will time out after 30 seconds or so.
2018-02-03 13:21:47 +11:00
LevelX2
db0fc1b439 * Some changes to skip handling. 2018-02-02 00:27:12 +01:00
Oleg Agafonov
6f175981ce Small fix 2018-01-28 15:12:41 +04:00
Oleg Agafonov
c2d661eca7 Fixed freeze on end game 2018-01-28 06:47:53 +04:00
LevelX2
b60cd3d40e Removed debug command. 2018-01-28 01:14:50 +01:00
LevelX2
2f016c8ea6 Fixed some more exception and/or logging problems. 2018-01-27 13:19:20 +01:00
Oleg Agafonov
7b90201099 Merge remote-tracking branch 'production/master' into production_master 2018-01-27 14:03:08 +04:00
Oleg Agafonov
ba4fee11f6 Fixed weird errors with server lost of player priority on lagged games (see #4448) 2018-01-27 13:59:38 +04:00
Oleg Agafonov
9d131f6bde Random generated decks improvements and fixes for AI:
* added generation of only basic lands decks;
 * fixed wrong color cards selection;
2018-01-27 13:19:03 +04:00
LevelX2
09582eafc3 Added banned standard cards of 2018-01-15. 2018-01-27 10:14:37 +01:00
Jeff
9cd3c010fd - Cleanup of AI classes. 2018-01-19 16:37:09 -06:00
LevelX2
40afa04b24 xmage 1.4.27V0 2018-01-13 22:54:53 +01:00
igoudt
2564f61182 HumanPlayer constructor missed a reference to attribute 2018-01-07 21:47:00 +01:00
Oleg Agafonov
3d53d28f5e Fixed AI infinite loop on wrong answers input (tests affected) 2018-01-04 18:14:22 +04:00
Oleg Agafonov
d1475f28b4 Fixed not working response result from key-value choice dialogs 2018-01-04 00:32:17 +04:00
Oleg Agafonov
3dda5712db AI: fixed not working choice with key-value dialogs, random refactor 2018-01-04 00:23:20 +04:00
Oleg Agafonov
e9012a8eda Added MTGO Vintage Cube December 2017, fixed typos 2017-12-30 07:26:19 +04:00
LevelX2
acc4c70f24 Added block formats. 2017-12-29 11:30:00 +01:00
Zzooouhh
3a6974c0b0
NullPointerException fix 2017-12-23 19:42:02 +01:00
spjspj
fe02e3fba3 Fix points for Aus 7pt Highlander 2017-12-12 01:02:51 +11:00
Evan Kranzler
93ad59ab4a updated the Duel Commander banlist 2017-11-28 13:59:12 -05:00
Evan Kranzler
34c31834c5 fixed an error 2017-11-26 17:23:39 -05:00
spjspj
a2e78cd3e4
Merge pull request #4200 from spjspj/master
spjspj - Add a version of Freeform Commander
2017-11-26 00:26:47 +10:00
LevelX2
603e625d8d Fixed a problem with AI opponent selection, 2017-11-25 12:55:26 +01:00
spjspj
46db9973c9 spjspj - Add a version of Freeform Commander (any creature or legendary permanent can be commander, no ban list) 2017-11-25 22:36:56 +11:00
spjspj
44b9d89974 spjspj - Add a version of Freeform Commander (any creature or legendary permanent can be commander, no ban list) 2017-11-25 22:35:47 +11:00
spjspj
00eb481004 spjspj - Add a version of Freeform Commander (any creature or legendary permanent can be commander, no ban list) 2017-11-25 22:14:20 +11:00
spjspj
7292683604
Merge pull request #4171 from spjspj/master
spjspj - Add in a new way to allow just the Face Art for cards to be shown
2017-11-18 10:30:44 +11:00
Oleg Agafonov
2a12e788d5 clean git source 2017-11-11 13:02:49 +04:00
spjspj
19c9689f89 Apostrophes 2017-11-11 12:39:42 +11:00
Evan Kranzler
83231c8992 updated Canadian Highlander points list 2017-11-08 15:34:47 -05:00
LevelX2
0d46c68924 * Fixed some problems for handling concede during game init. 2017-11-04 18:19:41 +01:00
LevelX2
9700445fae
Merge branch 'master' into master 2017-11-02 11:29:47 +01:00
LevelX2
f1bbb37c81 Merge origin/master 2017-11-02 10:29:04 +01:00
jerekwilson
5d34a2304d Merge branch 'master' into master 2017-10-22 20:09:26 -04:00
Jerek Wilson
8f49988bbf JW-TalonOfPain: Implemented Talon of Pain 2017-10-22 19:37:53 -04:00
theelk801
0ac6bf93b8 Merge pull request #4119 from Faxn/feature/momirFFA
Add Momir Basic Free for All
2017-10-21 16:11:44 -04:00
LevelX2
919ec2fade Merge origin/master 2017-10-21 16:14:14 +02:00
LevelX2
58d3fc2328 Fixed player leaving/conceding handling. 2017-10-21 16:13:45 +02:00
Evan Kranzler
d52f46323b Updated Adam Styborski's Pauper Cube 2017-10-19 13:55:16 -04:00
Faxn
51ea9972e0 Merge branch 'master' into feature/momirFFA 2017-10-19 13:08:13 -04:00
Jerek Wilson
be7d23d15c JW-Dead-Iron_Sledge: Implemented Dead-Iron Sledge 2017-10-18 23:53:04 -04:00
Jerek Wilson
12f14ea488 JW-RhysticCave: Implemented Rhystic Cave 2017-10-15 11:17:23 -04:00
Jerek Wilson
1afcf67e8d JW-IceFloe: Implemented Ice Floe 2017-10-10 00:12:26 -04:00
Jerek Wilson
50d9cb5568 JW-JaggedPoppet: Implemented Jagged Poppet 2017-10-09 22:04:30 -04:00
Evan Kranzler
901a640592 updated MTGO 1v1 Commander banlist 2017-10-09 12:30:36 -04:00
Evan Kranzler
93f01af87e fixed SOI block being incorrectly included in standard, removed unnecessary bans 2017-10-02 13:51:52 -04:00
Faxn
31d4be7a1c Momir Multiplayer Might just work. 2017-09-28 18:21:47 -04:00
Benjamin Maitland
f22d64df82 Fixed Zendikar release date. 2017-09-27 23:13:06 -04:00
Evan Kranzler
c8457aec49 updated Duel Commander banlist 2017-09-26 08:50:55 -04:00
LevelX2
3ac7fc2726 * Some fixes to possible exceptions. 2017-09-23 23:48:25 +02:00
LevelX2
2d6bcd83f4 xmage 1.4.26V4 2017-09-16 16:55:58 +02:00
LevelX2
2117bfc17c Merge ReworkImageDownload 2017-09-15 23:23:49 +02:00
LevelX2
3fc3d96fe0 Some updates to image download. 2017-09-15 23:18:40 +02:00
LevelX2
5996aa12e6 Trove of Temptation working for Human. 2017-09-15 17:51:54 +02:00
LevelX2
d9c601dd26 Trove of Temptation - Basic some changes to Combat and Human 2017-09-14 17:50:00 +02:00
Evan Kranzler
252c941b4f Refactored more subtypes usages to enum 2017-09-08 09:57:51 -04:00
LevelX2
23fc43fafe Merge master into ReworkImageDownload 2017-09-08 13:58:09 +02:00
LevelX2
b2496e3d7f Fixed Vintage restricted list. 2017-09-05 16:19:53 +02:00
Evan Kranzler
26e4e2672e Updated Vintage restricted list 2017-09-04 12:11:47 -04:00
LevelX2
d003cd898f Image download by set with source restriction to supported sets. 2017-09-04 07:57:10 +02:00
LevelX2
5bf12d227c Some minor changes. 2017-09-01 23:50:07 +02:00
LevelX2
cba7a510ea * Fixed a bug if casting split cards from other players e.g with Mindclaw Shaman (fixes #3867). 2017-08-30 00:30:46 +02:00
LevelX2
e909f5c801 C17 Added Portal Mage. 2017-08-28 16:50:00 +02:00
theelk801
22d253acd7 Merge pull request #43 from magefree/master
merge
2017-08-26 19:59:51 -04:00
Evan Kranzler
942e1cce9a Updated Canadian Highlander points list 2017-08-26 18:03:26 -04:00
LevelX2
52897094b3 * Some chnages to chat, user and player handling. 2017-08-26 18:26:55 +02:00
LevelX2
db93e3f672 * C17 Enchantment Curses - Fixed a bug that could create game errors (index out of bounds). 2017-08-17 21:36:55 +02:00
LevelX2
1fb24116ae xmage 1.4.26V0 2017-08-15 01:27:06 +02:00
spjspj
6435b9950a Add in Penny Dreadful EDH format (plus filter options for deck editor). 2017-08-04 17:13:25 +10:00
LevelX2
69e239d2ed Xmage 1.4.25V0 (update because of Log problem) 2017-07-30 08:54:37 +02:00
LevelX2
fe2ee5dfec Xmage 1.4.25V0 2017-07-29 20:35:16 +02:00
LevelX2
400bbba8e1 * Deactivated macro button, becuase it's not working correctly (#2147). 2017-07-29 17:39:13 +02:00
LevelX2
ea3d00a430 * Fixed that testing framework does not support snow mana payment (fixes #3751). 2017-07-28 12:47:00 +02:00
Jeff
e4c81df35e Fixed Bug #3711 2017-07-24 11:12:20 -05:00
LevelX2
878ba90625 * Fixed a bug that prevented players from paying costs during spell resolution (e.g. Mana Leak) - (fixes #3715). 2017-07-23 19:48:04 +02:00
LevelX2
ee890418c5 * Added missing imports. 2017-07-23 16:59:20 +02:00
LevelX2
4806738cfb * Some more use of StaticFilter objects. 2017-07-23 14:59:13 +02:00
fireshoes
382476206c Restored inadvertently deleted line in DuelCommander.java 2017-07-19 16:33:57 -05:00
fireshoes
71f1acc90c Updated Duel Commander banlist. 2017-07-17 16:33:51 -05:00
ingmargoudt
09f0c9ad97 huge rework on subtypes (#3668)
* huge rework on subtypes

* update for coat of arms

* fix test
2017-07-16 16:57:39 -05:00
LevelX2
1fe841e6d9 Merge branch 'master' into master 2017-07-10 13:18:58 +02:00
fireshoes
48413a956a Added MTGO 1v1 Commander and Amonkhet Block Constructed formats. Fixed a typo in the Duel Commander banlist. 2017-07-09 16:51:57 -05:00
Benjamin Maitland
8e16cf0bd6 Added the Old School 93/94 Format. Uses original rules. 2017-07-08 23:40:27 -04:00
Benjamin Maitland
1869777634 Fixed bug Historical Type 2 Issues #3417.
Shards of Alara had an incorrect release date.
Nemisis had the wrong set code in the hardcoded standards.
2017-07-08 14:54:44 -04:00
LevelX2
7d911ae803 XMage 1.4.24V0 2017-07-08 16:33:09 +02:00
Devon Richards
ba80bf9227 Merge pull request #6 from ruler501/master
Merge Master In
2017-07-06 09:21:46 -05:00
Ben Homer
612d863883 Fixed bug where PlayerResponse toString throws an error sometimes. 2017-06-27 17:42:36 -05:00
fireshoes
1d183736c8 Added Vintage Cube June 2017. Added some HOU and XLN spoilers to mtg-cards-data.txt. 2017-06-26 20:31:02 -05:00
Devon Richards
fee630a0ac Small cleanup 2017-06-24 11:23:58 -05:00
Devon Richards
63382aed93 Some stylistic fixes for code review 2017-06-21 23:51:59 -05:00
Devon Richards
0d98514550 Added better UI and made it work with most categories of combos 2017-06-21 01:09:54 -05:00
Devon Richards
028d7ed1f8 Initial working product. Doesn't handle skipping stack. 2017-06-20 19:54:16 -05:00
fireshoes
476fb37afb Added Aetherworks Marvel to the Standard banned list. 2017-06-13 21:10:31 -05:00
fireshoes
5633fe9b18 Updated Adam Styborski's Pauper Cube through Amonkhet. 2017-06-12 11:20:58 -05:00
spjspj
71d06dd894 Update odd apostrophes (could have multiple Lion's Eye Diamonds in a vintage deck). Also aus highlander has the vintage banned list. 2017-05-25 11:23:35 +10:00
spjspj
5bba4dc7fb Update Canadian 7pt Highlander rules 2017-05-25 11:13:09 +10:00
spjspj
dfbb87bd5d Update Australian 7pt Highlander rules (to 24th April 2017) http://www.auseternal.com/7-point-highlander/ 2017-05-25 08:51:02 +10:00
LevelX2
40f192eafc * Squelch - Fixed that it was causing a ClassCastException (fixes #3396). 2017-05-20 23:22:31 +02:00
spjspj
e752ee3156 EDH Power level fix 2017-05-20 15:45:40 +10:00
spjspj
3cb7424dfd EDH Power updates 2017-05-16 23:14:33 +10:00
Derek M
6d52ec5a59 Merge pull request #3377 from spjspj/master
Emblems refactor to show emblems in Card/Token Viewer
2017-05-14 12:00:58 -04:00
spjspj
739cbd12a3 Minor add to infinite combo 2017-05-14 21:51:29 +10:00
spjspj
f85c7e07ba Emblems refactor to show emblems in Card/Token Viewer 2017-05-14 13:43:18 +10:00
magenoxx
53228d2389 Added game state change in the loop 2017-05-13 18:56:48 +03:00
spjspj
347d08298f Allow sort by EDH Power level in Deck Editor 2017-05-11 17:52:43 +10:00
spjspj
5b225fa142 EDH Power level update 2017-05-11 16:25:15 +10:00
LevelX2
4d60685c05 * Fixed handling of standard set rotation(fixes #3260). 2017-04-29 23:18:36 +02:00
LevelX2
ab352a3c6b * Fixed handling of standard set rotation(fixes #3260). 2017-04-29 23:17:52 +02:00
igoudt
2c34870bf0 remove util function on converted manacost, make getColorIdentity default interface method 2017-04-27 10:57:48 +02:00
drmDev
fae65241e2 updated banned standard list to include felidar guardian 2017-04-26 20:56:10 -04:00
drmDev
f794b54dda updated banlist resolves #3232 2017-04-24 23:42:31 -04:00
fireshoes
399d589358 Added Sam Black's No Search Cube. 2017-04-20 09:59:51 -05:00
spjspj
8c46f23e02 Increased performance function for finding a card in DB with a specific set. Cube from deck (custom cube) now respects chosen set for a given card. 2017-04-18 20:58:03 +10:00
fireshoes
ea6e2ecbe7 Updated the Duel Commander banlist. 2017-04-17 19:10:50 -05:00
LevelX2
ef4cf90a0f Release 1.4.23V0 2017-04-17 10:53:59 +02:00
LevelX2
ed341528d9 [AKH] Fixed that Aftermath card images were shown wrongly rotated. 2017-04-16 22:57:08 +02:00
fireshoes
20772ff370 Added Legacy Cube April 2017.[AKH] Added 4/11 spoilers to mtg-cards-data.txt. 2017-04-11 16:14:31 -05:00
Jeff
8072e79571 - Fixed #3064 2017-04-06 10:57:24 -05:00
ingmargoudt
6f8f10fcc3 move static function to CardImpl, and other api fixes 2017-03-30 20:09:47 +02:00
fireshoes
55b433ae36 [AKH] Added 3/27 spoilers to mtg-cards-data.txt. Implemented several of the new cards. 2017-03-28 22:25:29 -05:00
vraskulin
d3214c65e4 Merge remote-tracking branch 'fork/master' 2017-03-22 14:51:31 +03:00
vraskulin
d93061c0bc Equals should be compared with == but not equals() 2017-03-22 14:50:50 +03:00
vraskulin
c783614cba NotifyAll 2017-03-20 15:17:30 +03:00
LevelX2
9d8a8a33f1 Xmage 1.4.22V0 2017-03-11 13:38:55 +01:00
spjspj
17aa9e3f6c Merge pull request #2954 from spjspj/master
Slight fix for modern cube
2017-03-09 23:14:51 +11:00
spjspj
1646fb491f Slight fix for modern cube 2017-03-09 23:13:56 +11:00
Nathaniel Brandes
2ecb415b4d Removed potential integer overflow.
If the number passed into max is Integer.MAX_VALUE, like it is with
ChoiceOfDamnation, the random number will overflow. So let's not do
that.
2017-03-08 21:43:37 -08:00
Nathaniel Brandes
ce1f4a3bf8 Phyrexian mana now correctly a payment choice.
Per rule 601.2b, it is not determined at the pay costs step,
but at the "choice" step, long before costs are determined.

This fixes trinisphere interactions and should be consistent with the
rules.
2017-03-08 20:03:28 -08:00
Nathaniel Brandes
733de2d27f Remove generated folder. 2017-03-04 23:31:55 -08:00
fireshoes
010be2b53f Added 3/2/17 MM3 reprints. 2017-03-02 21:39:14 -06:00
spjspj
faee8fb298 Refactor color restriction in edh. Change to look at commander color identity. 2017-03-01 08:56:52 +11:00
Achilles
c4737f11d0 - Fix for issue #2885 2017-02-28 10:25:10 -06:00
vraskulin
11dc1e10f1 Few lambda's and removed explicit type from creating lists and hashmaps 2017-02-28 13:46:57 +03:00
vraskulin
0a3c95dde5 Inner classes should be static. It reduces memory usage and gives perfomance boost + DeckImporter rollback 2017-02-28 12:40:12 +03:00
vraskulin
04973ea5aa Checking String for emptiness with .lenght() is preferable since 1.6 2017-02-28 11:46:51 +03:00
ingmargoudt
afbf5ce2b6 Merge pull request #2891 from kubikrubikvkube/master
Nulls to optional. Also there was bug with AetherChaser
2017-02-27 17:51:35 +01:00
vraskulin
498c8cf60c Made utility classes final to explicitly forbid it's inheritance 2017-02-27 17:03:38 +03:00
spjspj
5365f9cac5 Allow limiting a colour in edh 2017-02-27 23:33:58 +11:00
vraskulin
a15220d51e Bugfixes with != instead of equals and default toString calls 2017-02-15 19:52:20 +03:00
vraskulin
752392fc46 Functional interfaces should be annotated as functional interfaces 2017-02-15 19:23:12 +03:00
spjspj
a897f2d91e Merge pull request #2851 from spjspj/master
Update some edh power levels
2017-02-11 00:53:46 +11:00
spjspj
dfbdc058cf Update some edh power levels 2017-02-11 00:52:58 +11:00
vraskulin
0557b5e89c list.size > 0 changed to !list.isEmpty
We care about if it's empty or not, not about it's size
2017-02-06 14:32:51 +03:00
vraskulin
f60ebfbb1f All 1-character strings converted to primitives
"b" + "r" now changed to 'b' + 'w'.  It's more straight-forward, and may cause perfomance improvements - character primitives allocation is faster and less expensive than string creation.
2017-02-06 14:32:51 +03:00
spjspj
c98bf163be Add Canadian Highlander Deck/Game implementation. Also implements the double-mulligan-on-6,5,4,3,2,1 rule. 2017-02-05 23:23:51 +11:00
spjspj
64ff81af75 Merge pull request #2825 from spjspj/master
Add Canadian Highlander format
2017-01-30 23:58:47 +11:00
spjspj
de6fae8c00 Add Canadian Highlander format 2017-01-30 23:57:59 +11:00
spjspj
4bad553249 Merge pull request #2824 from spjspj/master
Add Canadian Highlander format
2017-01-30 23:56:49 +11:00
spjspj
532eb3fdea Add Canadian Highlander format 2017-01-30 23:48:16 +11:00
LevelX2
e6b5c0aef6 * Fixed that wrongly custom set cards were used for Mormir random card selection (fixes #2809). 2017-01-19 23:51:33 +01:00
LevelX2
6625bf86be Xmage 1.4.21V0 2017-01-15 17:44:02 +01:00
LevelX2
eb802431fa * Duel Commander - Removed commander damage logic. 2017-01-13 23:36:22 +01:00
LevelX2
1a03c7ce07 * Fixed a targeting problem of AI (e.g. for Maulfist Revolutionary). 2017-01-13 21:31:31 +01:00
fireshoes
8845319903 Updated Legacy Cube 2017 to match a change Wizards made. Fixed Asylum Visitor's missing LoseLifeEffect. Fixed Rishkar's GainedAbilityEffect to be only controlled creatures. 2017-01-12 00:12:15 -06:00
LevelX2
1c4bf298eb Merge pull request #2762 from sotovdev/bigRefactoring
Big refactoring
2017-01-11 07:42:52 +01:00
fireshoes
76b28742cb Added Legacy Cube January 2017. Corrected the Legacy Cube Sept 2016 list. Fixed Wrangle's target filter. 2017-01-10 20:09:36 -06:00
sotovdev
fe7aaedf1c Merge branch 'master' into bigRefactoring 2017-01-10 15:37:43 +03:00
fireshoes
de3c6168d8 Updated Banned & Restricted lists. 2017-01-09 15:08:08 -06:00
vraskulin
076840df53 Big refactoring
I used Intellij IDEA to automatically refactor code to achive 3 goals.
1) get rid of anonymouse classes, and replace the with lamba to get more readeable and clean code (like in TableWaitingDialog).
2) make effectively final  variables actually final to avoid inadvertent changes on it in further releases and keep objects as immutable, as possible.
3)  Get rid of unused imports (most of the changes) in whole project classes.
2017-01-09 19:16:53 +03:00
LevelX2
ee203cf981 Xmage Release 1.4.20V0 2017-01-08 01:36:05 +01:00
LevelX2
2162fab114 * Fixed a problem of AI target handling (e.g. for Precursor Golem) 2017-01-01 14:56:34 +01:00
LevelX2
c2852ca233 [AER] Added Battke at the Bridge. 2016-12-31 17:00:00 +01:00
LevelX2
8075ea2e50 * Fixed a problem that Emblems created by permanents where its owner left the game caused errors in clients. Some handling cganges of emblems. 2016-12-27 16:00:22 +01:00
vraskulin
2e83930ace Creating new ArrayList is unneccesarry
We shouldn't create new arraylist with default size and no element in it to show that no elements found in database. It's one more object in heap, which will be never used. There is special method Collections.emptyList() - it's more readeable and returns empty immutable list
2016-12-19 12:23:23 +03:00
LevelX2
da9e9a1180 * Fixed some possible null pointer exceptions and some minor editing. 2016-12-18 15:02:19 +01:00
spjspj
6b0eb6397e Merge pull request #2666 from spjspj/master
spjspj - Final.. update to edh Power Level.
2016-12-08 17:08:54 +11:00
spjspj
8680ab212f spjspj - Final.. update to edh Power Level. 2016-12-08 17:08:10 +11:00
spjspj
14f6988227 Merge pull request #2664 from spjspj/master
spjspj - Final update to edh Power Level.
2016-12-08 11:58:23 +11:00
spjspj
9caaf0d5be spjspj - Final update to edh Power Level. 2016-12-08 11:57:45 +11:00
spjspj
2bec9aa4b1 Merge pull request #2663 from spjspj/master
spjspj - More updates to edh Power Level.
2016-12-08 10:55:26 +11:00
spjspj
a5c677f72a spjspj - More updates to edh Power Level. 2016-12-08 10:54:45 +11:00
spjspj
62e9aeec49 Merge pull request #2662 from spjspj/master
spjspj - More updates to edh Power Level.
2016-12-08 10:30:48 +11:00
spjspj
7d67351921 spjspj - More updates to edh Power Level. 2016-12-08 10:29:37 +11:00
fireshoes
11a705fda3 Added Borderland Explorer, Yaheeni's Expertise, and Vintage Cube Nov '16. 2016-12-07 09:46:27 -06:00
spjspj
02bfd09a0c spjspj - More updates to edh Power Level. 2016-12-05 22:58:35 +11:00
spjspj
6f0aafb449 spjspj - More updates to edh Power Level. 2016-12-03 19:29:57 +11:00
spjspj
2d1e776153 spjspj - Fix for must attack effects not forcing attacks in multiplayer 2016-12-03 18:48:41 +11:00
spjspj
9f66125cf9 spjspj - Fix for must attack effects not forcing attacks in multiplayer 2016-12-03 18:26:40 +11:00
LevelX2
b62ca1ed1f Xmage 1.4.19 2016-11-27 19:59:42 +01:00
spjspj
c0be640c4a spjspj - Implement Australian 7pt Highlander 2016-11-25 20:56:24 +11:00
spjspj
d4493ac5f0 Merge pull request #2620 from spjspj/master
Add 'EDH power level' rating to Commander tables
2016-11-22 19:30:54 +11:00
spjspj
1fd3ab68b6 Add 'EDH power level' rating to Commander tables 2016-11-22 19:30:02 +11:00
LevelX2
375699a379 * Changed/fixed handling of controlling other player's turn to prevent unwanted turn/phase skipping. 2016-11-21 22:41:00 +01:00
spjspj
713854bb43 Add 'EDH power level' rating to Commander tables 2016-11-21 19:40:08 +11:00
spjspj
9b80b1abb1 Add 'EDH power level' rating to Commander tables 2016-11-21 19:34:20 +11:00
spjspj
7fd2eeedcf Add 'EDH power level' rating to Commander tables 2016-11-20 23:13:16 +11:00
LevelX2
03c766a485 * Myriad - Fixed a bug that the token was also created to attack the definding player. 2016-11-19 23:12:02 +01:00
spjspj
47874a7f03 spjspj - Force stop and stop skip for when there's potential attackers 2016-11-15 23:20:51 +11:00
fireshoes
852eabaca2 Duel Commander - unbanned Balance, Necropotence, Yawgmoth's Bargain, Serra Ascendant, and Grindstone 2016-11-08 16:14:20 -06:00
fireshoes
4590c19b71 Update Adam Styborski's Cube through C16. 2016-11-08 12:09:48 -06:00
LevelX2
c9e1b415e2 Xmage 1.4.18V0 2016-11-06 18:11:19 +01:00
LevelX2
a4e1c7aefd Merge origin/master 2016-11-03 22:38:14 +01:00
LevelX2
d2561c1752 * Fixed a problem with triggered mana abilities. Fixed a problem that AI did not always select the needed mana color. Fixed a problem with Reflecting Pool not taking triggered mana abilities into account. 2016-11-03 22:37:54 +01:00
fireshoes
a5cb9ff037 Added Peregrine Drake to the Pauper banlist. 2016-11-03 10:19:22 -05:00
emerald000
c38f96ae55 [C16] Implemented Partner ability. 2016-11-01 22:59:39 -04:00
LevelX2
5090eaee0d Fixed that Commander and Tiny leader decks were not checked for valid sets. 2016-11-01 22:57:34 +01:00
LevelX2
8b62eece68 XMage 1.4.17V0 2016-10-23 10:03:01 +02:00
LevelX2
bf43ea9936 Added test and fixed some possible null pointer exception. 2016-10-22 12:45:50 +02:00
LevelX2
97b872d926 * Fixed that a spell that becomes a permanent didn't had the colors of the spell (e.g. ERsatz Gnomes). 2016-10-22 10:38:10 +02:00
fireshoes
3f0a97a778 Fixed cube name. 2016-10-18 19:29:18 -05:00
fireshoes
a13dc33342 Fixed cube name. 2016-10-18 19:27:25 -05:00
fireshoes
89dd981075 Merge 2016-10-17 23:45:47 -05:00
fireshoes
1f4c0eb1d9 Added the four finalists from You Make the Cube. 2016-10-17 23:10:01 -05:00
LevelX2
157827addc XMage 1.4.16v0 2016-10-08 11:14:13 +02:00
fireshoes
ae41a5fbbf Changed Duel Commander starting life total to 20. 2016-10-04 00:24:45 -05:00
LevelX2
9a00dd20ca Fixed some problems with constructed formats definition and custom sets. 2016-10-03 20:25:08 +02:00
LevelX2
16027d5fef [SWS] Added Star Wars Block Format. 2016-10-03 10:26:30 +02:00
fireshoes
783a278fca Added Frontier format (M15 forward). Added Kaladesh block constructed. 2016-09-27 01:54:49 -05:00
LevelX2
c9bb0be016 Reworked selected modes handling. That fixed the Subtle Strike targeting problem. 2016-09-24 01:12:01 +02:00
LevelX2
c82d6b5566 * Fixed some possible null pointer exceptions. 2016-09-20 23:40:25 +02:00
Fenhl
ab7e86cb27 Change AE to Ae 2016-09-17 16:59:24 +00:00
ingmargoudt
3128bd2b4b replace [list].size() == 0 and [string].length() == 0 to use .isEmpty() instead 2016-09-14 15:27:31 +02:00
fireshoes
69984a3d27 Added Legacy Cube September 2016. [KLD] Updated mtg-cards-data.txt with more 9/13 spoilers. 2016-09-13 14:19:57 -05:00
LevelX2
bb8326d46b XMage 1.4.15v0 2016-09-10 12:31:18 +02:00
emerald000
bc0f53973d Added an easier way to put custom text on buttons in a chooseUse prompt. 2016-09-06 02:07:59 -04:00
ingmargoudt
e2a479255a refactor : removed all instances of new Random() and replaced with RandomUtil for a ThreadLocal randomizer 2016-09-05 15:03:47 +02:00
Samuel Sandeen
148f633672 Make the Counters API for card and permanent consistent. 2016-09-03 10:33:54 -04:00
Samuel Sandeen
282443c231 Add Subtype to the CardAttribute Framework
This is a massive change. I’ve refrained from unrelated refactoring
when possible but there are still a lot of changes here.
2016-08-28 17:30:10 -04:00
fireshoes
e26a85187d Eldritch Moon update of Adam Styborski's Cube 2016-08-23 20:14:41 -05:00
LevelX2
539b03bd1d Xmage 1.4.14v0 2016-08-13 10:14:38 +02:00
Quercitron
c04bd6d64a Replace Yes/No text with Mulligan/Keep text on mulligan answer buttons to make options more clear. 2016-07-31 15:57:45 +03:00
spjspj
883b63a01d spjspj - Update to push deck List across from Client to Server for Custom Cube 2016-07-25 22:44:21 +10:00
fireshoes
1d206b8f2b Updated Duel Commander banlist. 2016-07-19 15:41:24 -05:00
LevelX2
d0ecb473da Xmage 1.4.13v0 2016-07-11 22:54:43 +02:00
spjspj
26d38f0773 spjspj - Add the option of having a .dck file as a cube 2016-07-04 00:20:31 +10:00
draxdyn
a7409f3d08 Hold priority on Ctrl+click
In most cases, it is not useful to hold priority after doing something,
since the spell or ability added to the stack can just be performed
beforehand.

Hence, automatically passing priority is the only comfortable setting.

However, in some cases it is useful (chiefly for Infernal Tutor +
Lion's Eye Diamond and similar interaction), and currently players
have to open Preferences, change the option and then change it back
whenever they need to hold priority, which is very annoying.

This change allows to temporarily hold priority by simply holding
Control while performing an action, which solves the issue in a
manner similar to other clients.

A "Hold" indicator next to the spells cast indicator is displayed so
that the user knows his Control key holding was registered.

The code works by adding a new HOLD_PRIORITY player action that causes
the automatic priority pass options to be ignored until the player is
given priority again.

The client sends the message whenever it's not already holding priority
and Ctrl+click/space/enter happens anywhere.

This is somewhat "loose" as it means that Ctrl+click on the background
also holds priority, but this might actually be desirable and it greatly
simplifies the code, since only a global AWT event listener is required,
and there is no need to change every place in the code that could add
something to the stack.

It is also possible to hold priority and stop holding priority using
the context menu.
2016-06-29 19:57:45 +02:00
LevelX2
f7cecdf050 Merge pull request #2033 from draxdyn/f6
Add support for F6
2016-06-28 09:16:09 +02:00
spjspj
b73d68437e spjspj - Add Rich Man Cube draft. This is a variation on the Rich Man set draft. It still (like cube) shouldn't let there be more than one copy of a card in the draft but will give each player a new pack from the cards that haven't been picked already each time. Allows 2 player cube drafts to be playable. 2016-06-26 12:57:52 +10:00
spjspj
2eb68403cf spjspj - Add Rich Man Cube draft. This is a variation on the Rich Man set draft. It still (like cube) shouldn't let there be more than one copy of a card in the draft but will give each player a new pack from the cards that haven't been picked already each time. Allows 2 player cube drafts to be playable. 2016-06-26 12:54:59 +10:00
draxdyn
62d5d45a45 Add support for F6
Skips everything until next turn, except for declare attackers and blockers.

F11 and F9 are a better design, but F6 is provided for compatibility with
established conventions.

There is currently no GUI button for it.
2016-06-24 21:34:30 +02:00
fireshoes
95a1146947 Added Vintage Cube June 2016. [EMN] Added Thalia, ~Identity Impersonator, and Hanweir, the Writhing Township to mtg-cards-data.txt. 2016-06-23 11:37:23 -05:00
LevelX2
70a22da8e3 Fixed possible null pointer exception. 2016-06-18 11:31:50 +02:00
LevelX2
7750bc2cd9 Fixed possible null pointer exception. 2016-06-18 10:01:38 +02:00
fireshoes
e05f8e04f7 Updated Jim Davis's Cube for SOI. 2016-06-16 17:32:30 -05:00
fireshoes
5d2973f616 Updated Adam's Styborski's Pauper Cube for SOI and EMA. 2016-06-16 12:21:47 -05:00
LevelX2
266a0870ca Xmage 1.4.12v0 2016-05-29 10:59:39 +02:00
fireshoes
e77817b67a Fixed collector numbers of basic lands in DD: Blessed vs Cursed. 2016-05-15 12:58:07 -05:00
spjspj
f9e363fb30 spjspj - Update Rich Man draft to allow Random packs 2016-05-15 23:52:13 +10:00
spjspj
5ee4b5193e spjspj - Modify Rich Man draft to be random 2016-05-15 18:50:59 +10:00
spjspj
218fd088b8 spjspj - Makes no sense to force RichMan to be 4 players - 2's actually better I think 2016-05-15 17:18:18 +10:00
LevelX2
773decf593 * Fixed a problem with the AI handling of TARGETED event (e.g. Silverfur Partisan not triggering - fixes #1916). 2016-04-30 11:42:01 +02:00
emerald000
9d380331d7 Removed choices that should not be made while casting of a spell.
For example: color choices for protection abilities.
2016-04-28 01:32:48 -04:00
LevelX2
e2a8ddef0f Merge pull request #1905 from KWottrich/clean-up-java-imports
Clean up java imports
2016-04-26 11:37:35 +02:00
LevelX2
1fcd26fc60 xmage 1.4.11v0 2016-04-26 00:59:03 +02:00
Kenny Wottrich
ec5d986ef8 comment out URL in code 2016-04-24 20:27:55 -05:00
Kenny Wottrich
f3c83d54f5 Remove Unused Imports
Delete unused java imports that cause compiler warnings
2016-04-24 19:50:29 -05:00
fireshoes
a4e1444d63 Added Freeform constructed format (same requirements as limited), Shadows over Innistrad block constructed format, and added Wastes as a valid basic land for Momir Basic. 2016-04-18 20:16:44 -05:00
emerald000
8823839a42 Added framework method for copying a StackAbility without casting it.
Modified the effects doing so with the new method.
2016-04-17 23:55:11 -04:00
drmDev
5ab54142de W16 fix. Eldrazi Obligator fix and test 2016-04-15 12:24:04 -04:00
Fenhl
430ae503c7 Change all line endings to LF 2016-04-14 16:18:01 +00:00
spjspj
bd12d17d44 spjspj - Implement new form of draft in which you simulate opening a full booster box (36 boosters) and take one at a time. Known (to me at least) colloquially as 'Rich Man's Draft' as it requires you to buy a full booster box. 2016-04-14 22:48:54 +10:00
Jared Hall
3f2611de76 Fixes #1836 2016-04-12 08:16:15 -04:00
LevelX2
ed3b63652f MTG Cube - Fixed wrong name of Fire // Ice. 2016-04-09 13:13:18 +02:00
LevelX2
d99d35b9c9 Legendary Cube 2016 fixed wrong card name of Opalescence. 2016-04-09 13:12:50 +02:00
fireshoes
2778ae2381 Added Legendary Cube April 2016. 2016-04-06 22:41:15 -05:00
LevelX2
bcdde0a945 XMage version 1.4.10v0 2016-04-06 22:56:02 +02:00
spjspj
822917322c spjspj - Use first Mana ability fixes 2016-04-05 21:37:04 +10:00
LevelX2
20f77b8662 Updated banlist changes 2016-04-04. 2016-04-04 20:32:12 +02:00
spjspj
e5ca1bd6d2 spjspj - Implement a 'Use the first available mana ability for a land mode'.
This allows people to float mana more easily and to not have to get the popup forcing them to select which mana ability they would like to activate.
There's a new option in the menu system under the Mana Payment section which is set via pressing 'Alt' and the number '1' key (aka Alt+1) (and is unset by releasing Alt+1).
Or they can set it from the right click menu as well.
2016-04-04 20:30:28 +10:00
spjspj
3dfe9de05f spjspj - Add the 'Skip to End Step of Previous Player' button to the GamePanel and associated changes 2016-03-27 00:07:23 +11:00
fireshoes
e1e6c3b9be Updated Adam Styborski's Pauper Cube for OGW. 2016-03-11 12:38:32 -06:00
LevelX2
3f57012c85 Merge origin/master
Conflicts:
	Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java
2016-03-03 23:22:06 +01:00
benjamin
d2fec6c61d Added Eternal format (Legacy without reserve list cards). Fixed Issues 1133 and 1521 (Pauper Deck legality check). 2016-02-24 21:33:10 -05:00
LevelX2
e9638bcc4d Release 1.4.9v0 2016-02-21 12:58:58 +01:00
LevelX2
74799d286b * Improved mana source check. Fixed #1513. 2016-02-14 18:31:02 +01:00
LevelX2
d2eb6151f1 Fixed some possible exceptions. 2016-02-06 02:12:51 +01:00
LevelX2
151e678e84 Changed history handling for user a bit. Added history to table waiting dialog and user avatar tooltip. 2016-01-23 13:37:34 +01:00
LevelX2
5981816a4b Switch to 1.4.8 for upcoming realease. 2016-01-22 22:33:58 +01:00
fireshoes
260a103d45 Pointed Crush of Tentacles to the BFZ Octopus token. Updated the Tiny Leaders Sultai commander proxy to 3/3 p/t and added Glass, the colorless commander proxy. 2016-01-19 11:52:01 -06:00
fireshoes
12ded1cbda Updated pauper banlist. 2016-01-18 18:02:23 -06:00
fireshoes
1082a0c549 Updated modern, commander, and duel commander banlists. 2016-01-18 14:49:38 -06:00
LevelX2
4eb9719769 * Allow more than 4 Wastes land in constructed decks (fixes #1454). 2016-01-11 00:00:21 +01:00
LevelX2
121f40c019 Prepared 1.4.7. 2016-01-10 22:13:59 +01:00
LevelX2
c8f82b49ff Added possibility to check kind of cost to pay for conditional mana use. 2016-01-10 12:01:58 +01:00
LevelX2
782190bac3 Some changes to mana handling to handle {C} mana. 2016-01-08 23:25:42 +01:00
fireshoes
9a31402e9d Added Legacy Cube 2016. [OGW] Added additional 1/4 spoilers to mtg-card-data.txt.Added Bone Saw reprint, Boulder Salvo, and Overwhelming Denial. Fixed translation on Corrupted Crossroads and Eldrazi Obligator and activation cost on General Tazri. 2016-01-05 00:30:59 -06:00
LevelX2
1d5a645712 [OGW] Added Oath of Jace. 2016-01-04 19:55:12 +01:00
LevelX2
207f486afc * Xmage 1.4.6v0 2015-12-13 19:47:04 +01:00
fireshoes
f8ba0da7e5 [OGW] Added Mina and Denn, Wildborn. [EXP] Added filterlands. [CUBE] Renamed Holiday Cubes to Vintage Cubes. Add Vintage Cube 2016. 2015-12-07 15:13:31 -06:00
fireshoes
7abd1133e6 Added numerous cards, mostly from PO2 and PO3. Fixed that Suture Priest's first ability wasn't optional. Updated Adam Styborski's Pauper Cube. 2015-12-03 16:26:29 -06:00
Neil Gentleman
bfb428b13a always use log4j
removed all references to mage.util.Logging, java.util.logging

transient static doesn't mean anything, since static fields are never
included in serialization
2015-11-28 21:11:25 -08:00
LevelX2
b25e35920e * AI Player - Fixed that the AI took mulligan in Mormir format. 2015-11-28 12:14:58 +01:00
LevelX2
c008b04965 * AI Player - Fixed that the AI for soem card effects could choose itself for choose opponent choice. 2015-11-28 11:23:08 +01:00
LevelX2
eb6a5e7dcb * Some rework of play card effects. 2015-11-26 17:06:50 +01:00
LevelX2
8957128b13 * Renamed "Historical Standard" format to "Historical Type 2" and "Super Standard" to "Super Type 2". Added Chronicles to the set lists. 2015-11-25 17:29:23 +01:00
fireshoes
ac5c18fc0c Added 8 cards. Updated Jim Davis's Cube to current list. Added OGW spoilers to mtg-cards-data.txt 2015-11-23 23:32:18 -06:00
Neil Gentleman
a90d0e5597 reuse shared code for picking basic land sets 2015-11-22 18:00:10 -08:00
LevelX2
0d86e8e063 Xmage 1.4.5v0 2015-11-21 10:33:43 +01:00
LevelX2
c06e86cd2f * Lurking Predators - Some minor rework. 2015-11-18 15:34:10 +01:00
LevelX2
4711e0cf99 Changed ability handling of modal spells to be able to select the same mode multiple times with different targets. 2015-11-14 01:56:56 +01:00
fireshoes
b18cae5100 Legendary Cube - fixed formatting of split card names 2015-11-12 22:18:10 -06:00
Neil Gentleman
c5ecb26289 Momir: lookup token at activation
loading all the cards at game start is quite slow
2015-11-11 12:55:49 -08:00
Neil Gentleman
cda5a06a6c fix sorcery-speed LimitedTimesPerTurnActivatedAbility
calling super.canActivate() from inside activate() will always fail,
because the stack is no longer empty
2015-11-11 12:31:42 -08:00
Neil Gentleman
02a6780766 add Momir Basic game type
- re-using Emblems as Vanguard cards; should probably give them their own
  CommandObject class
- setting the timing on the Momir ability to TimingRule.SORCERY causes the
  ability not to activate (?), so I've left it at INSTANT for now
- need to add a new card image source for vanguard cards
2015-11-11 12:31:30 -08:00
fireshoes
6a86a19408 [C15] ImplementedFiery, Mystic, Verdant, and Wretched Confluences. Added Legendary Cube. 2015-11-09 14:09:39 -06:00
LevelX2
431d0005f2 Updated modes to handle selection of modes multiple times (not working yet if targets included). 2015-11-08 20:07:02 +01:00
LevelX2
e0c1492f88 * Fixed a problem that the AI was locked if a attack fee has to be paid but the AI was not able to pay the costs. 2015-10-30 22:34:42 +01:00
fireshoes
ff71654a5f Added Adam Styborski's Pauper Cube and Army of Allah card. 2015-10-22 15:24:23 -05:00
LevelX2
ae69986aef * Fixed a bug that the AI did not handle to target a card in its hand (e.g. Chrome Mox). 2015-10-22 01:00:17 +02:00
LevelX2
7ac0fe65ef * Fixed bug that prevented to use mana abilities manually. 2015-10-21 23:24:04 +02:00
Neil Gentleman
3817118bc0 Fix 'Of', 'By' and 'The' in card names 2015-10-19 00:44:26 -07:00
LevelX2
8b8097878c * Reworked/Cleaned card movement handling. 2015-10-11 03:52:38 +02:00
LevelX2
0176478441 * Fixed a bug that caused creatures forced to attack could prevent to attack by deselecting the forced creature or be able to attack another defender by using the Attack All button. 2015-10-06 22:22:37 +02:00
LevelX2
625aa29d6e Rework of "spend mana as though it were mana of" handling. 2015-10-06 17:28:59 +02:00
fireshoes
0501ecc8ae Added BFZ block constructed 2015-09-29 13:01:17 -05:00
fireshoes
8108894da1 Updated Legacy, Vintage, and Duel Commander banlists 2015-09-28 15:54:05 -05:00
fireshoes
13337b1fe0 Merge origin/master 2015-09-15 00:21:10 -05:00
fireshoes
192fa87e58 Corrected the card list for Legacy Cube 2015 and renamed to Legacy Cube March 2015. Added Legacy Cube September 2015. [BFZ] Updated mtg-cards-data.txt for 9/14 spoilers and correct some translations. Implemented Noyan Dar, Roil Shaper; Transgress the Mind; Crumble to Dust; From Beyond; Dragonmaster Outcast reprint; Endless One; and Sylvan Scrying reprint. 2015-09-15 00:18:53 -05:00
LevelX2
8f64a2ab54 * Fixed that a player doing a library search with a stated quality (701.15b) couldn't fail to find a card if cards with the stated quality did exist in the searched library. 2015-09-14 23:36:32 +02:00
LevelX2
de639cc1d6 * Suspend, added the card name to the rule text of the ability triggering, so different suspended cards were not auto put on the stack by the activated same rule text option. 2015-09-11 23:06:26 +02:00
LevelX2
9a37bd28ad Xmage 1.4.4v0 2015-09-05 12:51:07 +02:00
LevelX2
707c1acf6b * Added an option to auto order triggers with the same text. Added options to pass priority automatically after spell cast and ability activation. Fixed a problem of the tests with the new Scry mulligan. 2015-09-04 00:25:23 +02:00
fireshoes
84163dd356 Added Jim Davis's Cube 2015-09-03 17:12:15 -05:00
LevelX2
5a812f022d Added the new mulligan rule with Scry. Litte Scry rework. 2015-09-03 17:27:43 +02:00
LevelX2
5f7f04be65 * Master of the Wild Hunt - Fixed that the damage that the controller of the targeted creature could assign was handled targeted and so hexproof could wrongly block that assignment. 2015-08-30 21:30:58 +02:00
LevelX2
423e1fd368 * Triggered abilities order selection is applied immediately now. 2015-08-28 15:16:24 +02:00
LevelX2
39e62095e4 Fixed some dialogs for human players that were not shown after a reconnect to a game (e.g choose mulligan, any use Yes/No choice, amount choice, Pile choice). 2015-08-28 14:29:54 +02:00
LevelX2
758f56792e * Added button popup menu to be able to automatically answer ability related "Yes" / "No" requests (related to #328). 2015-08-28 11:44:14 +02:00
LevelX2
532d4e0af0 * Added automatic handling for order of triggered abilities going to stack (fixes #701 / related to #328). 2015-08-22 19:29:57 +02:00
LevelX2
9df993bd3a * Intet, the Dreamer - Improved handling to look at face down cards exiled with Intet. Works now also if Intet has left the battlefield. 2015-08-19 00:59:05 +02:00
LevelX2
aa1eb354ef * Removed some data from player restoring to fix unintended draws after a player concedes game (#1205) 2015-08-18 17:20:04 +02:00
LevelX2
75ed3ffbca * AI target selection - Fixed a problem with TargetSpellOrPermanent (could cause e.g. a bug if AI casts Venser, Shaper Savant). 2015-08-18 12:43:54 +02:00
LevelX2
5ee01868a9 * Fixed a bug of AI target card in hand selection leading to UI hang if AI had no valid targets in hand (e.g. Show and Tell or Hypergenesis). 2015-08-16 17:59:14 +02:00
benjamin
bff35a5b16 Fixed error where timeshifted cards were not validated. 2015-08-15 13:15:15 -04:00
fireshoes
90c2ce6b2e Added Bite of the Black Rose, Cackling Witch, and Orim's Touch. Added Serra Angel and Tariel, Reckoner of Souls FTV: Angels reprints. Removed unused imports on Voidmage Husher. 2015-08-09 22:52:52 -05:00
LevelX2
c98577cc6a Xmage 1.4.3v0 2015-08-06 22:18:01 +02:00
benjamin
9565b06c67 Changed names of Historical and Super standard for consistency. 2015-08-05 19:35:28 -04:00
LevelX2
662ee7ca10 * Fixed handling of face down card selection (e.g. for Scroll Rack). 2015-08-05 17:45:45 +02:00
LevelX2
36cacff537 * Historical Standard - Fixed the missing Scourge expansion data. 2015-08-04 23:31:55 +02:00
LevelX2
efb5e06e57 * Rollback - Fixed that UI is locked after a accepted rollback request (fixes #1158). 2015-08-02 12:39:02 +02:00
LevelX2
009f2a85fd Fixed weird replacement effects showing from otehr games (#643). 2015-07-30 16:46:24 +02:00
LevelX2
64b8e73ec9 Merge pull request #1155 from marthinwurer/master
Added Historical Standard deck validators to config
2015-07-28 14:46:17 +02:00
benjamin
cc9bda92af Updated Historical Standard validators
Made both actually test for having Stoneforge Mystic XOR Batterskull. Updated Super Standard Banlist.
2015-07-27 21:46:00 -04:00
LevelX2
1ef74f3293 Fixed some possible null pointer exceptions. 2015-07-28 00:04:57 +02:00
benjamin
bd5d13a323 Updated Historical Standard validators
changed name of AllStandards.java to more accurately reflect the format; it uses the new date range and banlist from /r/AllStandards. Historical Standard uses the banlist from http://thattournament.website/historic-tournament.php
2015-07-26 22:59:18 -04:00