I use those for mulligan rules :
{
"GameCardId":"Mulligan",
"ConfigComment":"This is mulligan rules file.",
"Mulligan":
{
"values":
[
{
"comment": "Patches the Pirate should be discarded",
"mulligan":"CFM_637",
"condition": "my_hero(count(),warrior) > 0",
"value":"discard",
}
,
{
"comment": "hold N'Zoth's First Mate (OG_312),Ship's Cannon (GVG_075),Sir Finley (LOE_076) and Fiery War Axe(CS2_106)",
"mulligan":"OG_312,GVG_075,LOE_076,CS2_106",
"condition": "my_hero(count(),warrior) > 0",
"value":"hold",
}
,
{
"comment": "hold Southsea Captain (NEW1_027) if you start second",
"mulligan":"NEW1_027",
"condition": "coin",
"value":"hold",
}
,
{
"comment": "hold Southsea Captain (NEW1_027) if you have perfect curve with pirate synergy",
"mulligan":"NEW1_027",
"condition": "nocoin AND my_hand(count(),cardid=OG_312)==1 AND my_hand(count(),cardid=GVG_075)==1",
"value":"hold",
}
,
{
"comment": "hold Frothing Berserker(EX1_604) if you start second and you don't have Southsea Captain",
"mulligan":"EX1_604",
"condition": "coin AND my_hand(count(), cardid=NEW1_027) == 0",
"value":"hold",
}
,
{
"comment": "hold Frothing Berserker(EX1_604) if you have perfect curve 1",
"mulligan":"EX1_604",
"condition": "nocoin AND my_hand(count(),cardid=OG_312)==1 AND my_hand(count(),cardid=GVG_075)==1",
"value":"hold",
}
,
{
"comment": "hold Frothing Berserker(EX1_604) if you have perfect curve 2",
"mulligan":"EX1_604",
"condition": "nocoin AND my_hand(count(),cardid=LOE_076)==1 AND my_hand(count(),cardid=CS2_106)==1",
"value":"hold",
}
,
{
"comment": "Southsea Deckhand (CS2_146) + Southsea Captain(NEW1_027) if you start second and you don't have N'zoth's First Mate",
"mulligan":"CS2_146 + NEW1_027",
"condition": "coin AND my_hand(count(), cardid=OG_312) == 0",
"value":"hold",
}
,
{
"comment": "Southsea Deckhand (CS2_146) + N'Zoth's First Mate (OG_312) if Southsea Captain(NEW1_027) isn't in hand and if you start second",
"mulligan":"CS2_146 + OG_312",
"condition": "coin AND my_hand(count(), cardid=NEW1_027) == 0",
"value":"hold",
}
,
{
"comment": "Bloodsail Raider (NEW1_018) + Fiery War Axe (CS2_106)",
"mulligan":"NEW1_018 + CS2_106",
"condition": "coin",
"value":"hold",
}
,
{
"comment": "Bloodsail Cultist (OG_315) + N'Zoth's First Mate (OG_312)",
"mulligan":"OG_315 + OG_312",
"condition": "my_hero(count(),warrior) > 0",
"value":"hold",
}
,
{
"comment": "discard all cards not listed as hold",
"mulligan":"*",
"condition": "my_hero(count(),warrior) > 0",
"value":"discard",
}
],
},
}
*EDIT* added frothing berserker on the mulligan rules and a perfect curve clause had to repeat some rules because the bot doesn't let me use OR & AND on the same expressions