It is currently 06 Nov 2025, 03:38
   
Text Size

Bug reports

Moderators: ubeefx, beholder, melvin, ShawnieBoy, Lodici, CCGHQ Admins

Re: Bug reports

Postby ShawnieBoy » 20 Jun 2014, 15:52

ShawnieBoy wrote:I do feel the timing system needs a bit of revision, as there's many times I've been unable to find the correct combination of playable phases from the current selection, and timing=pump is really overused. Abilities that give a p/t boost and an ability which affects blocking in combat, at instant speed, needs pumpFlash instead. (eg. +1/+1 and flying.)

Although if suggesting that card timings should be irrespective of their current phase playability, could remove pump entirely and only use pumpFlash. Along with Main and it's various incarnations. Or have all cards as timing=none?
If a card was to be able to be played at a different timing, it would make more sense to change the cards timing instead of trying to apply a timing that described what it does, instead of when it can be played.

After looking at the mechanics of the timings, pumpFlash wouldn't always be a good choice >.<

I've put together a table to show which phases spells can be cast with the different timings. What they are called doesn't effect what they do - eg. A card could use the Animate timing if it was appropriate, even if it didn't animate anything.

Table of Spell/Ability timings
User avatar
ShawnieBoy
Programmer
 
Posts: 601
Joined: 02 Apr 2012, 22:42
Location: UK
Has thanked: 80 times
Been thanked: 50 times

Re: Bug reports

Postby melvin » 21 Jun 2014, 00:48

Nice visualization!

ShawnieBoy wrote:If a card was to be able to be played at a different timing, it would make more sense to change the cards timing instead of trying to apply a timing that described what it does, instead of when it can be played.
I think timing hints should be intuitive. Ideally card scripters should not have to worry about what the hints mean to the AI, they just choose the hint that describes the card. That's why we provide tapland in additional to second main.

The current list is definitely not exhaustive, we have added a lot more effects but we've not added more timing hints, so I'd expect there will be some cards with inappropriate timing hints. We should look at expanding the current list as well.
User avatar
melvin
AI Programmer
 
Posts: 1062
Joined: 21 Mar 2010, 12:26
Location: Singapore
Has thanked: 36 times
Been thanked: 459 times

Re: Bug reports

Postby ShawnieBoy » 21 Jun 2014, 17:21

melvin wrote:Nice visualization!
Thanks :)

melvin wrote:
ShawnieBoy wrote:If a card was to be able to be played at a different timing, it would make more sense to change the cards timing instead of trying to apply a timing that described what it does, instead of when it can be played.
I think timing hints should be intuitive. Ideally card scripters should not have to worry about what the hints mean to the AI, they just choose the hint that describes the card. That's why we provide tapland in additional to second main.

The current list is definitely not exhaustive, we have added a lot more effects but we've not added more timing hints, so I'd expect there will be some cards with inappropriate timing hints. We should look at expanding the current list as well.
I agree that the current timings need revision - matching what a card does to it's timing doesn't fit right with me. Demonic Dread with a block timing would be unplayable. (It's sorcery, so can't be cast during declare blockers)

I still feel that the names of timings would be open to interpretation, and it would be difficult to cover all situations.

Giving scripters more control on when a spell can and should be cast would be preferable in my opinion. All the scripters at the moment are using Groovy code (We already have all the card 'scripts'), and would already be defining the AI's actions with TargetPickers, Conditions etc.
While already thinking about what the AI would be doing, defining a timing to match (and also aid players who are using the 'sensible choices' option) would not be too much extra effort.

Just throwing my opinion out there :D
User avatar
ShawnieBoy
Programmer
 
Posts: 601
Joined: 02 Apr 2012, 22:42
Location: UK
Has thanked: 80 times
Been thanked: 50 times

Re: Bug reports

Postby melvin » 22 Jun 2014, 01:22

ShawnieBoy wrote:I agree that the current timings need revision - matching what a card does to it's timing doesn't fit right with me. Demonic Dread with a block timing would be unplayable. (It's sorcery, so can't be cast during declare blockers)
Good point, I didn't consider cases where timing and casting rules disagree.

ShawnieBoy wrote:I still feel that the names of timings would be open to interpretation, and it would be difficult to cover all situations.
I don't think it is possible to cover all situations, just as card script alone can't describe all cards. We should aim to cover most of the common timing cases with memorable names.

ShanieBoy wrote:Giving scripters more control on when a spell can and should be cast would be preferable in my opinion.

How would more control over timing hint look like? Perhaps as a list of allowed phases in a comma separated value in the timing hint? eg timing=FirstMain,DeclareBlockers
User avatar
melvin
AI Programmer
 
Posts: 1062
Joined: 21 Mar 2010, 12:26
Location: Singapore
Has thanked: 36 times
Been thanked: 459 times

Re: Bug reports

Postby ShawnieBoy » 22 Jun 2014, 11:53

melvin wrote:
ShawnieBoy wrote:I agree that the current timings need revision - matching what a card does to it's timing doesn't fit right with me. Demonic Dread with a block timing would be unplayable. (It's a sorcery, so can't be cast during declare blockers)
Good point, I didn't consider cases where timing and casting rules disagree.

ShawnieBoy wrote:I still feel that the names of timings would be open to interpretation, and it would be difficult to cover all situations.
I don't think it is possible to cover all situations, just as card script alone can't describe all cards. We should aim to cover most of the common timing cases with memorable names.
Yes, I agree. Timings like 'Tap' and 'Removal' would still be fine for most instances, allowing for a bit of customisation for other 'problem' cards.
Melvin wrote:
ShawnieBoy wrote:Giving scripters more control on when a spell can and should be cast would be preferable in my opinion.

How would more control over timing hint look like? Perhaps as a list of allowed phases in a comma separated value in the timing hint? eg timing=FirstMain,DeclareBlockers
A timing list does make sense, although I could imagine that by just using Phases it could easily get a bit long. Using Steps as a group of Phases could help. If the AI would be able to work with a timing of: timing=CombatStep,Response for something like Glorious Charge It doesn't matter if it's cast during declare attackers or blockers really.

Although being able to split phases to owner would also help. The timing for Cephalid Inkshrouder activated ability could then be timing:DeclareAttackers(Your),Response and a version of the above example would be Morale timing=DeclareAttackers(Your)
User avatar
ShawnieBoy
Programmer
 
Posts: 601
Joined: 02 Apr 2012, 22:42
Location: UK
Has thanked: 80 times
Been thanked: 50 times

Re: Bug reports

Postby muppet » 01 Jul 2014, 09:22

Not a bug. A.I. still incapable of finding things when searching 99% of the time. The searching part seems to work but it never actually finds anything e.g. fetch lands stone forge mystic, pretty much any search at all.
muppet
Tester
 
Posts: 590
Joined: 03 Aug 2011, 14:37
Has thanked: 33 times
Been thanked: 30 times

Re: Bug reports

Postby Linx » 01 Jul 2014, 10:14

Hi. Thanks for making this awesome program.
Really great to play against computer, and even more i want to test decks on Firemind.
I like complex automation.

Really great job you did here, many thanks for it for you.

But i have bug request:

when i was playing Mox Opal it didn't appear on battlefield.

Like this:
Image

I don't know why this happens, maybe i was just doing something wrong,
but anyway i'd like to report this bug, hope this help to improve the program.

Also computer made really silly moves like attacking with Soul's Attendant into Auriok Bladewarden
Is there some more thoughtful AI?
Linx
 
Posts: 2
Joined: 01 Jul 2014, 09:55
Has thanked: 0 time
Been thanked: 0 time

Re: Bug reports

Postby Linx » 01 Jul 2014, 10:19

Sorry for my mistake - i just needed to press pass priority for some reason and
Mox Opal appeared.
Many apologies.
Linx
 
Posts: 2
Joined: 01 Jul 2014, 09:55
Has thanked: 0 time
Been thanked: 0 time

Re: Bug reports

Postby ShawnieBoy » 01 Jul 2014, 20:53

Welcome to Magarena!

The Mox was waiting on the stack as it seems that your Boros Reckoner could be activated in response (just in case you wanted to).

The AI will behave differently depending on which one you use, although there is a known 'bug' where the AI will 'suicide attack' into something, however we've never been able to replicate it in controlled conditions. Very annoying.

Try different AI's at different difficulty settings till you find the right opponent for you. Here's a link to more info on the different AI's and their comparisons AI Comparison - enjoy!
User avatar
ShawnieBoy
Programmer
 
Posts: 601
Joined: 02 Apr 2012, 22:42
Location: UK
Has thanked: 80 times
Been thanked: 50 times

Re: Bug reports

Postby PalladiaMors » 16 Jul 2014, 02:04

Not really a bug report, but I don't really know where to post AI issues. Today I watched the Monte Carlo AI at level 8 consistently use Homarid Shaman to "tap" already tapped creatures. Besided that, it played very well.
PalladiaMors
 
Posts: 343
Joined: 12 Jul 2014, 17:40
Has thanked: 36 times
Been thanked: 22 times

Re: Bug reports

Postby melvin » 16 Jul 2014, 02:13

PalladiaMors wrote:Not really a bug report, but I don't really know where to post AI issues. Today I watched the Monty Carlo AI at level 8 consistently use Homarid Shaman to "tap" already tapped creatures. Besided that, it played very well.
Thanks for the report and mentioning the specific AI you were playing against.

1. Was there a different action that the AI could have taken that would have been more beneficial to the AI?

2. Was this a turning point in the game? i.e. if the AI played something else, it would have affected the result of the game.
User avatar
melvin
AI Programmer
 
Posts: 1062
Joined: 21 Mar 2010, 12:26
Location: Singapore
Has thanked: 36 times
Been thanked: 459 times

Re: Bug reports

Postby PalladiaMors » 16 Jul 2014, 02:22

I'd have to know what cards it was holding in order to answer. It did waste a lot of mana for no reason on multiple turns, so I guess it may have been able to play cards with all that mana, but I don't know what it was holding so I can't say for sure. Took place both during its turn and mine.

Edit: about question 2, the game wasn't decided yet, although I held a significant advantage at that point. Again, depending on what it was holding, it may have been able to recover. Is there a way to check the AI's hand when such things happen so that I can add more information to these reports?
PalladiaMors
 
Posts: 343
Joined: 12 Jul 2014, 17:40
Has thanked: 36 times
Been thanked: 22 times

Re: Bug reports

Postby melvin » 16 Jul 2014, 03:06

Sure, you could press 's' during a duel to switch the view to the AI's hand. Based on the permanents available, was there a different action that would make more sense?

The fact that you held a significant advantage is significant, probably for the AI, all move moves leads to a probable loss, in such a situation it prefers moves that leads to a later loss (measures in number of moves). Similar if all moves lead to a probable win, it prefers moves that lead to an earlier win. May need to revisit this heuristic, as it may cause the AI to make useless plays.

When the AI is winning, it makes sense to "go for the kill" so to speak and finish off the player in as few moves as possible. When the AI is losing, trying to drag the game out with more moves may lead to useless moves, perhaps it should be measure in number of turns instead of number moves. Hmm...
User avatar
melvin
AI Programmer
 
Posts: 1062
Joined: 21 Mar 2010, 12:26
Location: Singapore
Has thanked: 36 times
Been thanked: 459 times

Re: Bug reports

Postby hong yie » 16 Jul 2014, 03:18

i receive error message about one (or more) of my dec files contain unrecognized cards. i notice that i do have some of these, but i don't remember which dec files i should clean to continue. i search in the crash.log file it doesn't contain any dec filename there.

What about put all dec file name that trigger this error?
i can't continue to run any test with this version now. Thanx :)
User avatar
hong yie
Programmer
 
Posts: 216
Joined: 10 Mar 2013, 06:44
Location: Jakarta
Has thanked: 75 times
Been thanked: 9 times

Re: Bug reports

Postby PalladiaMors » 16 Jul 2014, 03:26

@ Melvin: based on the permanents in play, there was no better use for that mana. Only thing that could have made a difference is if it was holding something that could have used the mana it wasted on the ability. Next time I'll make sure I check its hand when making a report.
PalladiaMors
 
Posts: 343
Joined: 12 Jul 2014, 17:40
Has thanked: 36 times
Been thanked: 22 times

PreviousNext

Return to Magarena

Who is online

Users browsing this forum: No registered users and 22 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 22 users online :: 0 registered, 0 hidden and 22 guests (based on users active over the past 10 minutes)
Most users ever online was 9298 on 10 Oct 2025, 12:54

Users browsing this forum: No registered users and 22 guests

Login Form