Does anyone know of some software than can produce goulashes for using on BBO and/or can output 30 deals for a duplicate?
Page 1 of 1
Goulash Deals Bridge Hand Generator
#2
Posted 2008-March-08, 03:31
Hi,
you could use Deal 3.0 from Thomas Andrews.
http://bridge.thomasoandrews.com/deal/
and this would allow you to generate deals
with a predefined freakness.
http://www.rpbridge.net/7z70.htm
A pssible script may look like as follows:
proc getFreakness {hand} {
set freakness 0
set c [clubs $hand]
set d [diamonds $hand]
set h [hearts $hand]
set s [spades $hand]
if { $c == 0 } { set freakness [expr $freakness + 2] }
if { $d == 0 } { set freakness [expr $freakness + 2] }
if { $h == 0 } { set freakness [expr $freakness + 2] }
if { $s == 0 } { set freakness [expr $freakness + 2] }
if { $c == 1 } { set freakness [expr $freakness + 1] }
if { $d == 1 } { set freakness [expr $freakness + 1] }
if { $h == 1 } { set freakness [expr $freakness + 1] }
if { $s == 1 } { set freakness [expr $freakness + 1] }
if { $c < 3 } { set freakness [expr $freakness + 3 - $c] }
if { $d < 3 } { set freakness [expr $freakness + 3 - $d] }
if { $h < 3 } { set freakness [expr $freakness + 3 - $h] }
if { $s < 3 } { set freakness [expr $freakness + 3 - $s] }
if { $c > 4 } { set freakness [expr $freakness + $c - 4] }
if { $d > 4 } { set freakness [expr $freakness + $d - 4] }
if { $h > 4 } { set freakness [expr $freakness + $h - 4] }
if { $s > 4 } { set freakness [expr $freakness + $s - 4] }
return $freakness
}
proc checkFreakness {north east south west maxHand maxDeal} {
set lv_accept 1
set lv_hand 0
set lv_deal 0
set lv_hand [getFreakness $north]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $east]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $south]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $west]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
if { $lv_hand > $maxDeal } { set lv_accept 0 }
return $lv_accept
}
set maxHandFreakness 5
set maxDealFreakness 20
main {
set lv_accept 1
if { $lv_accept } {
set lv_accept [checkFreakness north east south west $maxHandFreakness
$maxDealFreakness]
}
return $lv_accept
}
with kind regards
Marlowe
you could use Deal 3.0 from Thomas Andrews.
http://bridge.thomasoandrews.com/deal/
and this would allow you to generate deals
with a predefined freakness.
http://www.rpbridge.net/7z70.htm
A pssible script may look like as follows:
proc getFreakness {hand} {
set freakness 0
set c [clubs $hand]
set d [diamonds $hand]
set h [hearts $hand]
set s [spades $hand]
if { $c == 0 } { set freakness [expr $freakness + 2] }
if { $d == 0 } { set freakness [expr $freakness + 2] }
if { $h == 0 } { set freakness [expr $freakness + 2] }
if { $s == 0 } { set freakness [expr $freakness + 2] }
if { $c == 1 } { set freakness [expr $freakness + 1] }
if { $d == 1 } { set freakness [expr $freakness + 1] }
if { $h == 1 } { set freakness [expr $freakness + 1] }
if { $s == 1 } { set freakness [expr $freakness + 1] }
if { $c < 3 } { set freakness [expr $freakness + 3 - $c] }
if { $d < 3 } { set freakness [expr $freakness + 3 - $d] }
if { $h < 3 } { set freakness [expr $freakness + 3 - $h] }
if { $s < 3 } { set freakness [expr $freakness + 3 - $s] }
if { $c > 4 } { set freakness [expr $freakness + $c - 4] }
if { $d > 4 } { set freakness [expr $freakness + $d - 4] }
if { $h > 4 } { set freakness [expr $freakness + $h - 4] }
if { $s > 4 } { set freakness [expr $freakness + $s - 4] }
return $freakness
}
proc checkFreakness {north east south west maxHand maxDeal} {
set lv_accept 1
set lv_hand 0
set lv_deal 0
set lv_hand [getFreakness $north]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $east]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $south]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
set lv_hand [getFreakness $west]
if { $lv_hand > $maxHand } { set lv_accept 0 }
set lv_deal [expr $lv_deal + $lv_hand]
if { $lv_hand > $maxDeal } { set lv_accept 0 }
return $lv_accept
}
set maxHandFreakness 5
set maxDealFreakness 20
main {
set lv_accept 1
if { $lv_accept } {
set lv_accept [checkFreakness north east south west $maxHandFreakness
$maxDealFreakness]
}
return $lv_accept
}
with kind regards
Marlowe
With kind regards
Uwe Gebhardt (P_Marlowe)
Uwe Gebhardt (P_Marlowe)
#3
Posted 2008-March-09, 00:21
Wayne Burrows
I believe that the USA currently hold only the World Championship For People Who Still Bid Like Your Auntie Gladys - dburn
dunno how to play 4 card majors - JLOGIC
True but I know Standard American and what better reason could I have for playing Precision? - Hideous Hog
Bidding is an estimation of probabilities SJ Simon
I believe that the USA currently hold only the World Championship For People Who Still Bid Like Your Auntie Gladys - dburn
dunno how to play 4 card majors - JLOGIC
True but I know Standard American and what better reason could I have for playing Precision? - Hideous Hog
Bidding is an estimation of probabilities SJ Simon
Page 1 of 1

Help
