It is currently 19 Apr 2024, 06:10
   
Text Size

What is the AI Duel skill level in Manalink 3.0?

Continuing Development of MicroProse's Magic: The Gathering!

Moderators: BAgate, drool66, Aswan jaguar, gmzombie, stassy, CCGHQ Admins

What is the AI Duel skill level in Manalink 3.0?

Postby etphonehome » 01 Aug 2021, 21:32

In the original game, when you duel the AI, it can have 4 skill levels you can choose from.

In Manalink 3.0 that option disappeared. What skill level are we playing at, if we can't choose the skill level???

imagem_2021-08-01_223216.png
etphonehome
 
Posts: 300
Joined: 21 May 2020, 12:50
Has thanked: 270 times
Been thanked: 39 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby Korath » 02 Aug 2021, 06:12

OK, this is somewhat embarrassing. We're playing at Apprentice, and we've been doing so since well before 3.0 - at least since the Momir Basic/Draft/Testing options appeared.

This should have been fixed as part of this bug, where it was discovered that whoever it was that repurposed the difficulty selection into those options didn't get it quite right - the intended hack was to relabel the difficulty options, set the game mode according to the AI skill level (internally, opponent_skill), and then force opponent_skill to Wizard, but they were looking at and changing the wrong data. What I did was to 1) make the dialog in Magic.exe change different (unused) data instead of opponent_skill, and look at that value in C to pick the game mode; 2) track down and remove the places where Magic.exe reset opponent_skill, so that it wouldn't change whatever we set it to in C; and 3) made it so playing at Apprentice difficulty no longer forced the human player to always win the start-of-game coin toss (since that happened before the earliest opportunity (at that time) for us to set opponent_skill in C).

The screwup I made was in 1) - when I replaced the old system that tried to read the dialog results, I removed the nonfunctional attempt to force opponent_skill to Wizard. The funny part is that that attempt would have started working if I'd left it alone, since I updated the C definition of opponent_skill to refer to its real location in Magic.exe. Ugh.

I've put in an option to set difficulty level in config.txt - like I should have done in the first place - and defaulted it to Wizard. For real this time. The good news is that on modern computers, it has much less of an effect than AiDecisionTime.
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby etphonehome » 02 Aug 2021, 09:43

HI Korath!

Thanks for replying, and is good to know you are still around here.

I suspected the AI is not at top because it make some "randomly" bad decisons that helps the player and it NEVER leave creatures to defend against lethal damage, it ALWAYS attack no matter the damage you're going to do next with your creatures.

So, how can we change the difficulty?

You said about change it in config.txt. Is it possible?

Is this going to be in a future update?

This is the best game to play against the AI and it's a pity we can't play it on top difficulty.

Please help change that as you're one of the "code brains" around here.

THX
etphonehome
 
Posts: 300
Joined: 21 May 2020, 12:50
Has thanked: 270 times
Been thanked: 39 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby Korath » 03 Aug 2021, 00:04

It will be in the next release.

And don't expect miracles - if you see any difference at all, it's much, much more likely that it's because you've convinced yourself that you'll see one than because there's actually one there. In particular, it'll have no effect whatsoever on attacking or blocking decisions.

The biggest thing opponent_skill does is to increase the minimum number of possibilities the AI looks at for casting spells or activating abilities, while the already-configurable AiDecisionTime changes (among other things) the minimum total amount of time it spends looking at possibilities. Even if you crank AiDecisionTime down to a tenth of the original - like our default config.txt does - it's going to have long enough to look at more than the minimum possibilities for Wizard difficulty, many times over.
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby etphonehome » 03 Aug 2021, 16:51

HI Korath

Let's hope for a miracle! At least, maybe it will end with those plays where AI puts +1+0 counters on your creatures or put some beneficial Auras on your cards.

Well, at least we'll know the AI is on its best.

THX Korath

P.S. Do you know anything about AI showing the creatures it's playing with Morph? It should be hidding those creatures, not showing them.

I'm asking you this because i saw your name in a discussion about this. :D
etphonehome
 
Posts: 300
Joined: 21 May 2020, 12:50
Has thanked: 270 times
Been thanked: 39 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby drool66 » 03 Aug 2021, 18:09

etphonehome - I'm looking at the morph issue since you brought it up. I have a few things to do before that, but I have an idea of how it can be done.
User avatar
drool66
Programmer
 
Posts: 1163
Joined: 25 Nov 2010, 22:38
Has thanked: 186 times
Been thanked: 267 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby etphonehome » 03 Aug 2021, 20:04

That's cool Drool66 =D>

Take your time. It's a pity AI can't hide morph cards. They are similar to trap cards in YuGiOh.

THX
etphonehome
 
Posts: 300
Joined: 21 May 2020, 12:50
Has thanked: 270 times
Been thanked: 39 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby Korath » 05 Aug 2021, 00:42

The AI's choice for a plain do_dialog() is deterministic - whatever you pass in as the last argument, the AI picks that. All you have to do is not call do_dialog() if the AI's going to pick "Play face-down". Or even not call do_dialog() at all if it's for the AI. Just make sure you only do that if it's actually the AI picking, not just player 1, or you'll break multiplayer even worse. (Of course, that also means if multiplayer ever becomes even sort of playable again, you'd need a different solution, like promoting to a DIALOG() call and passing DIALOG_FULLCARD_CSVID(CARD_ID_FACE_DOWN_CREATURE) when player == 1.)

The only real issue in the short term is making sure every card with morph or megamorph actually calls casting_permanent_with_morph(), and nothing handles it on its own.

Is this also an issue for manifest? How about the other cards that let you move objects from hidden zones to the bf face-down? (I think that's just Illusionary Mask, Tezzeret, Cruel Machinist, and Yedora, Grave Gardener?)
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: What is the AI Duel skill level in Manalink 3.0?

Postby drool66 » 06 Aug 2021, 01:04

User avatar
drool66
Programmer
 
Posts: 1163
Joined: 25 Nov 2010, 22:38
Has thanked: 186 times
Been thanked: 267 times


Return to ManaLink 3.0

Who is online

Users browsing this forum: No registered users and 25 guests


Who is online

In total there are 25 users online :: 0 registered, 0 hidden and 25 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: No registered users and 25 guests

Login Form