It is currently 18 Apr 2024, 05:11
   
Text Size

Upcoming Release: Forge version 1.5.55

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Upcoming Release: Forge version 1.5.55

Postby friarsol » 17 Jul 2016, 14:16

Hopefully by the end of July to get in as much of eldritch moon as possible, plus all the bug fixes/ai improvements that come with new editions.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Upcoming Release: Forge version 1.5.55

Postby Shadowzeny » 17 Jul 2016, 14:46

Perhaps even add Briarbridge patrol <.< :P
Shadowzeny
 
Posts: 52
Joined: 04 Aug 2014, 06:36
Has thanked: 9 times
Been thanked: 7 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 18 Jul 2016, 04:24

I'm bringing this up here because it's relevant for both 1.5.54 and current SVN, and it's an issue we may want to look into as it causes a hard crash under reproducible cirtumstances that does not allow one to continue playing the game.

I confirmed a bug reported by Zirbert in the 1.5.54 thread regarding putting a tapland into play via Necropotence. Here's a test case:

Code: Select all
humanlife=34
ailife=20
activeplayer=human
activephase=MAIN1
humancardsinhand=Soul Summons;Soul Summons;Soul Summons;Soul Summons;Soul Summons;Soul Summons
humancardsinlibrary=Bojuka Bog;Bojuka Bog;Soul Summons;Soul Summons
humancardsingraveyard=Metamorphose;Metamorphose
humancardsinplay=Dakmor Salvage;Creeping Tar Pit;Blackcleave Cliffs;Bloodstained Mire;Cabal Pit;Necropotence
humancardsinexile=Soul Summons;Soul Summons;Soul Summons;Soul Summons
humancardsincommand=
aicardsinhand=Soul Summons;Soul Summons;Soul Summons;Soul Summons
aicardsinlibrary=Soul Summons;Soul Summons
aicardsingraveyard=Soul Summons;Soul Summons;Soul Summons;Soul Summons;Soul Summons;Soul Summons
aicardsinplay=Mountain|Tapped:True;Mountain|Tapped:True;Mountain;Tropical Island;Jungle Shrine|Tapped:True;Jungle Shrine|Tapped:True;Wall of Earth;Wall of Ice;Dakmor Salvage
aicardsinexile=
aicardsincommand=
The issue manifests itself ONLY when:
1. A tapland is on top of the player's library.
2. The player uses Necropotence to draw that tapland at the beginning of his end step.
3. Next turn, the player puts that tapland into play. At that moment, the following crash occurs:

RuntimeException | Open
Code: Select all
Forge Version:    SVN
Operating System: Linux 3.8.0-26-generic amd64
Java Version:     1.7.0_51 Oracle Corporation

java.lang.RuntimeException: AbilityFactory : getAbility -- no API in :
   at forge.game.ability.AbilityFactory.getAbility(AbilityFactory.java:106)
   at forge.game.replacement.ReplacementHandler.executeReplacement(ReplacementHandler.java:175)
   at forge.game.replacement.ReplacementHandler.run(ReplacementHandler.java:134)
   at forge.game.replacement.ReplacementHandler.run(ReplacementHandler.java:71)
   at forge.game.GameAction.changeZone(GameAction.java:221)
   at forge.game.GameAction.moveTo(GameAction.java:458)
   at forge.game.GameAction.moveTo(GameAction.java:439)
   at forge.game.player.Player.playLand(Player.java:1604)
   at forge.player.HumanPlay.playSpellAbility(HumanPlay.java:88)
   at forge.player.PlayerControllerHuman.playChosenSpellAbility(PlayerControllerHuman.java:939)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:958)
   at forge.game.GameAction.startGame(GameAction.java:1481)
   at forge.game.Match.startGame(Match.java:95)
   at forge.match.HostedMatch$2.run(HostedMatch.java:220)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   at java.lang.Thread.run(Thread.java:744)
To reproduce it with the test case file above, do the following:

1. Load the test case using "Setup game state".
2. Use Necropotence once, then wait for your next turn (in the process you'll draw a Bojuka Bog which was previously exiled face down via Necropotence).
3. On your turn, put that Bojuka Bog into play. Witness the crash.

Currently I'm baffled as to what exactly is causing this, and why it has anything to do with Replacement Effects. Can anyone please help me crack this one?..

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby Hanmac » 18 Jul 2016, 05:13

Agetian found the culprit, for some reason the card in ReplacementHandler still thought it was a faceDown card ...
and faceDown does not have that SVar.


Hm for better debugging i would vote for that "AbilityFactory.getAbility" be slightly rewritten or extended.

in most cases its "getAbility(card.getSVar(var), card)" but if card.getSVar does return "" for some reason, then we get only "no API in" which is not very helpful ...

we might do some "getAbilitySVar(card, var)" or something that does do the check if card has the SVar and does warn us if it has not.
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 18 Jul 2016, 05:21

Yeah, that sounds like a good idea. By now I have come to accept that the whole "No API" thing can mean a whole range of things, from a banal mistype in the card script that references a non-existent SVar to issues such as the Necropotence issue discussed above. A little bit more detailed information on the cause of the problem (such as the potentially missing SVar) would have been nice indeed.

Thanks for fixing the issue promptly, Hanmac! :)

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby mastroego » 18 Jul 2016, 14:15

Shadowzeny wrote:Perhaps even add Briarbridge patrol <.< :P
I believe you'll find it in the last or next snapshot build.
mastroego
 
Posts: 236
Joined: 22 Sep 2013, 14:04
Has thanked: 28 times
Been thanked: 16 times

Re: Upcoming Release: Forge version 1.5.55

Postby mcrawford620 » 20 Jul 2016, 22:58

I'm pretty much done with my little branch LimitedCardRanker. It tries to use the DeckHints more liberally to find card synergies when drafting and building limited decks. I added a bunch of hints to SOI, OGW, and BFZ cards. I was going take a pass at Eldritch Moon soon when I have time.

I've merged in the trunk changes to my branch, so the merge back in should be pretty painless. Does someone want/need to take a look at it before I merge it in? Or have any suggestions/changes?
mcrawford620
 
Posts: 112
Joined: 25 Jun 2012, 16:59
Has thanked: 55 times
Been thanked: 25 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 21 Jul 2016, 04:02

mcrawford620 wrote:I'm pretty much done with my little branch LimitedCardRanker. It tries to use the DeckHints more liberally to find card synergies when drafting and building limited decks. I added a bunch of hints to SOI, OGW, and BFZ cards. I was going take a pass at Eldritch Moon soon when I have time.

I've merged in the trunk changes to my branch, so the merge back in should be pretty painless. Does someone want/need to take a look at it before I merge it in? Or have any suggestions/changes?
I just want to say that I monitored your commits in the branch and I really like the project, I think it'll be a nice addition to the upcoming release! I don't think I have any specific suggestions for the project, except maybe that in the future some of the older cards get deck synergy hints for the AI as well. :) Overall, best of luck with merging it back to trunk! ;)

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby mcrawford620 » 21 Jul 2016, 04:30

Agetian wrote:I just want to say that I monitored your commits in the branch and I really like the project, I think it'll be a nice addition to the upcoming release! I don't think I have any specific suggestions for the project, except maybe that in the future some of the older cards get deck synergy hints for the AI as well. :) Overall, best of luck with merging it back to trunk! ;)

- Agetian
Thanks, I'm really glad you've monitored it since I haven't contributed anything here for a few years. :o I do want to go back and do older sets as I have the time; I figured more people would be drafting the newer sets right now, and I was more familiar with them. It takes me a bit of time to look over a set and understand what the major things going on are. Also, I started with BFZ and OGW in particular because I got my work lunch gaming group to play some with a little set cube I made up, so I was familiar with the archetypes for that block. It's been fun working on it!
mcrawford620
 
Posts: 112
Joined: 25 Jun 2012, 16:59
Has thanked: 55 times
Been thanked: 25 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 21 Jul 2016, 04:32

Yeah, indeed! Agreed! :)

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby mcrawford620 » 23 Jul 2016, 05:44

OK, I have merged in and committed my branch. It works as far as I can tell. Wow, the whole merge thing took an hour and half of mostly just sitting around. Merge, update, commit, switch, fail merge, update, merge, fail, update, commit... my connection was really slow tonight so every merge took forever.
mcrawford620
 
Posts: 112
Joined: 25 Jun 2012, 16:59
Has thanked: 55 times
Been thanked: 25 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 23 Jul 2016, 05:49

Thanks a lot for this project! :) Will give it a test soon and will report if any problems arise. Good luck with the future improvements, too!

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby Xitax » 23 Jul 2016, 20:02

.Skirsdag High Priest, Demonic Rising should use both demon token images.

Reign of the Pit has a CNS token image.

BFZ and OGW eldrazi scion token producers should use all 6 tokens - it's not clear which belongs to which...

Predator's Howl should use the CNS token - only 1 of 3 CNS wolf token producers are not reprints.

Selvala's Guide should use the CNS token - again 1 of 3.

Custodi Soulbinders, Rousing of Souls can use the CNS token.
Attachments
Token_update_7_16.zip
(615.12 KiB) Downloaded 255 times
Xitax
 
Posts: 918
Joined: 16 May 2010, 17:19
Has thanked: 183 times
Been thanked: 133 times

Re: Upcoming Release: Forge version 1.5.55

Postby Agetian » 24 Jul 2016, 14:06

The token update was added to trunk. Thanks, Xitax!

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Upcoming Release: Forge version 1.5.55

Postby friarsol » 24 Jul 2016, 15:55

Crazy what are the names of the Melded cards (Chittering Host, etc) on the server?
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Next

Return to Developer's Corner

Who is online

Users browsing this forum: Google [Bot] and 50 guests


Who is online

In total there are 51 users online :: 1 registered, 0 hidden and 50 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: Google [Bot] and 50 guests

Login Form