Target Roulette
Target_Roulette.dgt
—
Xtreme,
26 KB (27352 bytes)
Contenuto del file
system "Target_Roulette"
{Target Roulette
See documentation for explanation
}
method "main"
begin
While Starting a New Session
begin
Call "Initialize";
Call "Select Input Information";
Exit;
end
Call "Chart Group";
Call "Determine Win";
Call "Determine Loss";
Call "Figure Session Sequences";
Call "Figure Win Sequences";
Call "Count Hits on Streets";
Call "Make Bet";
end
method "Make Bet"
begin
While Flag "Ready to Bet" is False
And Flag "First bet placed" is False
begin
Return;
end
Set Flag "First bet placed" to True;
While Record "Street 1 to Bet" layout = Street(1-3)
And Record "Street 2 to Bet" layout = Street(4-6)
Or Record "Street 1 to Bet" layout = Street(4-6)
And Record "Street 2 to Bet" layout = Street(1-3)
begin
Put 100% of Record "Progression Bet" data on Line(1-6);
Multiply By 100% of Record "Starting Unit" data on Line(1-6);
Return;
end
While Record "Street 1 to Bet" layout = Street(4-6)
And Record "Street 2 to Bet" layout = Street(7-9)
Or Record "Street 1 to Bet" layout = Street(7-9)
And Record "Street 2 to Bet" layout = Street(4-6)
begin
Put 100% of Record "Progression Bet" data on Line(4-9);
Multiply By 100% of Record "Starting Unit" data on Line(4-9);
Return;
end
While Record "Street 1 to Bet" layout = Street(7-9)
And Record "Street 2 to Bet" layout = Street(10-12)
Or Record "Street 1 to Bet" layout = Street(10-12)
And Record "Street 2 to Bet" layout = Street(7-9)
begin
Put 100% of Record "Progression Bet" data on Line(7-12);
Multiply By 100% of Record "Starting Unit" data on Line(7-12);
Return;
end
While Record "Street 1 to Bet" layout = Street(10-12)
And Record "Street 2 to Bet" layout = Street(13-15)
Or Record "Street 1 to Bet" layout = Street(13-15)
And Record "Street 2 to Bet" layout = Street(10-12)
begin
Put 100% of Record "Progression Bet" data on Line(10-15);
Multiply By 100% of Record "Starting Unit" data on Line(10-15);
Return;
end
While Record "Street 1 to Bet" layout = Street(13-15)
And Record "Street 2 to Bet" layout = Street(16-18)
Or Record "Street 1 to Bet" layout = Street(16-18)
And Record "Street 2 to Bet" layout = Street(13-15)
begin
Put 100% of Record "Progression Bet" data on Line(13-18);
Multiply By 100% of Record "Starting Unit" data on Line(13-18);
Return;
end
While Record "Street 1 to Bet" layout = Street(16-18)
And Record "Street 2 to Bet" layout = Street(19-21)
Or Record "Street 1 to Bet" layout = Street(19-21)
And Record "Street 2 to Bet" layout = Street(16-18)
begin
Put 100% of Record "Progression Bet" data on Line(16-21);
Multiply By 100% of Record "Starting Unit" data on Line(16-21);
Return;
end
While Record "Street 1 to Bet" layout = Street(19-21)
And Record "Street 2 to Bet" layout = Street(22-24)
Or Record "Street 1 to Bet" layout = Street(22-24)
And Record "Street 2 to Bet" layout = Street(19-21)
begin
Put 100% of Record "Progression Bet" data on Line(19-24);
Multiply By 100% of Record "Starting Unit" data on Line(19-24);
end
While Record "Street 1 to Bet" layout = Street(22-24)
And Record "Street 2 to Bet" layout = Street(25-27)
Or Record "Street 1 to Bet" layout = Street(25-27)
And Record "Street 2 to Bet" layout = Street(22-24)
begin
Put 100% of Record "Progression Bet" data on Line(22-27);
Multiply By 100% of Record "Starting Unit" data on Line(22-27);
Return;
end
While Record "Street 1 to Bet" layout = Street(25-27)
And Record "Street 2 to Bet" layout = Street(28-30)
Or Record "Street 1 to Bet" layout = Street(28-30)
And Record "Street 2 to Bet" layout = Street(25-27)
begin
Put 100% of Record "Progression Bet" data on Line(25-30);
Multiply By 100% of Record "Starting Unit" data on Line(25-30);
Return;
end
While Record "Street 1 to Bet" layout = Street(28-30)
And Record "Street 2 to Bet" layout = Street(31-33)
Or Record "Street 1 to Bet" layout = Street(31-33)
And Record "Street 2 to Bet" layout = Street(28-30)
begin
Put 100% of Record "Progression Bet" data on Line(28-33);
Multiply By 100% of Record "Starting Unit" data on Line(28-33);
Return;
end
While Record "Street 1 to Bet" layout = Street(31-33)
And Record "Street 2 to Bet" layout = Street(34-36)
Or Record "Street 1 to Bet" layout = Street(34-36)
And Record "Street 2 to Bet" layout = Street(31-33)
begin
Put 100% of Record "Progression Bet" data on Line(31-36);
Multiply By 100% of Record "Starting Unit" data on Line(31-36);
end
end
method "Figure Session Sequences"
begin
While Record "Total Sequences" data not = 0
And Record "Number of Session Sequences" data >= Record "Total Sequences" data
begin
Display "You have completed all Session sequences.
The Session will stop.";
Stop Session;
end
end
method "Figure Win Sequences"
begin
While Record "Total Win Sequences" data not = 0
And Record "Number of Win sequences" data >= Record "Total Win Sequences" data
begin
Call "Reset";
//Street hit counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Hits" data;
//Street missed counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Missed Hits" data;
Put 0 on Record "Number of Win sequences" data;
Add 1 on Record "Number of Session Sequences" data;
end
end
method "Determine Win"
begin
While Flag "Ready to Bet" is False
begin
Return;
end
While Any Inside Bet has won each time
begin
Call "Reset";
Add 1 on Record "Number of individual Wins" data;
Add 1 on Record "Number of Win sequences" data;
While Record "Total Win Sequences" data not = 0
And Record "Number of Win sequences" data = Record "Total Win Sequences" data
begin
Add 1 to Record "Number of Games Wins" data;
end
end
end
method "Determine Loss"
begin
While Flag "Ready to Bet" is False
begin
Return;
end
While Any Inside Bet has lost each time
begin
Add 1 on Record "Progression Bet" Data index;
Call "Determine if new Group";
end
While Record "Progression Bet" Data index > record "Progression Bet" Data count
begin
Call "Reset";
//Street hit counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Hits" data;
//Street missed counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Missed Hits" data;
Put 0 on Record "Number of Win sequences" data;
Add 1 on Record "Number of Games Losses" data;
Add 1 on Record "Number of Session Sequences" data;
if Flag "Stop on Lost Game" is True
begin
Display "You have Lost a Game!
The Session will stop.";
Stop Session;
end
end
end
method "Determine if new Group"
begin
While Record "Progression Bet" Data index = Record "Group 2 bet index" data
Or Record "Progression Bet" Data index = Record "Group 3 bet index" data
Or Record "Progression Bet" Data index = Record "Group 4 bet index" data
Or Record "Progression Bet" Data index = Record "Group 5 bet index" data
begin
Set Flag "Ready to Bet" to False;
end
end
{
As we chart each spin. Update the correct Street list with the number of time
it has come up. Plus update the most recent hits.
}
method "Chart Group"
begin
Copy last Number to the Record "Last Spin" layout;
//set all streets as a miss
call "Increment Street Missed Hits";
//now determine which street did come up
While Record "Last Spin" layout = Number 1
Or Record "Last Spin" layout = Number 2
Or Record "Last Spin" layout = Number 3
begin
//Track street 1-3
put 1 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 1-3 missed list
put 1 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 4
Or Record "Last Spin" layout = Number 5
Or Record "Last Spin" layout = Number 6
begin
put 2 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 4-6 missed list
put 2 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 7
Or Record "Last Spin" layout = Number 8
Or Record "Last Spin" layout = Number 9
begin
put 3 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 7-9 missed list
put 3 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 10
Or Record "Last Spin" layout = Number 11
Or Record "Last Spin" layout = Number 12
begin
put 4 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 10-12 missed list
put 4 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 13
Or Record "Last Spin" layout = Number 14
Or Record "Last Spin" layout = Number 15
begin
put 5 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 13-15 missed list
put 5 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 16
Or Record "Last Spin" layout = Number 17
Or Record "Last Spin" layout = Number 18
begin
put 6 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 16-18 missed list
put 6 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 19
Or Record "Last Spin" layout = Number 20
Or Record "Last Spin" layout = Number 21
begin
put 7 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 19-21 missed list
put 7 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 22
Or Record "Last Spin" layout = Number 23
Or Record "Last Spin" layout = Number 24
begin
put 8 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 22-24 missed list
put 8 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 25
Or Record "Last Spin" layout = Number 26
Or Record "Last Spin" layout = Number 27
begin
put 9 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 25-27 missed list
put 9 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 28
Or Record "Last Spin" layout = Number 29
Or Record "Last Spin" layout = Number 30
begin
put 10 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 28-30 missed list
put 10 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 31
Or Record "Last Spin" layout = Number 32
Or Record "Last Spin" layout = Number 33
begin
put 11 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 31-33 missed list
put 11 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
return;
end
While Record "Last Spin" layout = Number 34
Or Record "Last Spin" layout = Number 35
Or Record "Last Spin" layout = Number 36
begin
//Track streets
put 12 on record "Street Hits" data index;
Add 1 on Record "Street Hits" data;
//number came up, reset the street 34-36 missed list
put 12 on record "Street Missed Hits" data index;
put 0 on record "Street Missed Hits" data;
end
end
{
Add 1 to each Street missed hits list. We start by assuming none of the numbers
came up. This will cover us if 0 or 00 hit.
}
method "Increment Street Missed Hits"
begin
put 1 on record "Street Missed Hits" data index;
loop until record "Street Missed Hits" data index >
record "Street Missed Hits" data count
begin
add 1 to record "Street Missed Hits" data;
add 1 to record "Street Missed Hits" data index;
end
end
{Main rules are placed here.
These rules determine the minimum of 3 hits and 1 hit in adjacent three number groups
}
method "Count Hits on Streets"
begin
While Flag "Ready to Bet" is True
begin
Return;
end
Put 1 on Record "Street Hits" Data index;
//Initialize Street 1 to Bet
Clear Record "Street 1 to Bet" Layout;
put 0 on Record "Street 1 to Bet" data;
put -1 on Record "Street 1 missed hits" data;
Clear record "Previous Street 1" data;
Clear record "Previous Street 1" Layout;
Clear record "Previous Street 1 missed hits" data;
Clear record "Previous Street 2" data;
Clear record "Previous Street 2" Layout;
Clear record "Previous Street 2 missed hits" data;
Loop until record "Street Hits" data index > record "Street Hits" data count
begin
While Record "Street Hits" data >= 3
And Record "Street Hits" data >= Record "Street 1 to Bet" data
begin
//save Street data information
call "Save Highest Street data values";
//initialize for Neighbor test
Set Flag "Neighbor?" to False;
Clear Record "Street 2 to Bet" Layout;
put 0 on Record "Street 2 to Bet" Data;
//point to Left neighbor street
subtract 1 from record "Street Hits" data index;
//check left neighbor street
if record "Street Hits" data index >0
and record "Street Hits" data>=1
begin
//save Left Neighbor data information
call "Save Left Neighbor Street data values";
Set Flag "Neighbor?" to True;
end
//point to Right neighbor street
add 2 from record "Street Hits" data index;
//check right neighbor street
if record "Street Hits" data index <= record "Street Hits" data count
and record "Street Hits" data>=1
and record "Street Hits" data >= record "Street 2 to Bet" data
begin
//Test to see which neighbor has better hits
call "Test Left and Right Neigbor";
if Flag "Right Neighbor qualified" is True
begin
//save Right Neighbor data information
call "Save Right Neighbor Street data values";
Set Flag "Neighbor?" to True;
end
end
subtract 1 from record "Street Hits" data index;
if Flag "Neighbor?" is True then
begin
//We have a qualified Street 1 and Street 2
//Now test for a tied combination
call "Test for tied combinations";
end
if Flag "Neighbor?" is True then
begin
call "Save qualified Streets as previous Streets";
end
else
begin
call "Restore previous Streets as qualified Streets";
end
end
Add 1 on Record "Street Hits" Data index;
end
if record "Street 1 to Bet" data > 0
and record "Street 2 to Bet" data > 0
begin
Set Flag "Ready to Bet" to True;
end
end
method "Test for tied combinations"
begin
//Step 1. we check to see if Street 1 is tied with previous Street 1
if record "Street 1 to Bet" data not = record "Previous Street 1" data
begin
//Nope, no tie. Test passed.
return;
end
{ //Step 2. Ok, Street 1 is tied with previous Street 1
//Test if Street 2 has more hits than previous Street 2
if record "Street 2 to Bet" data > record "Previous Street 2" data
begin
//Yes, Street 2 has more hits. Test pass
return;
end
}
//Step 3. Test if Street 2 is less than previous Street 2
//If Street 2 is less than, then we will use the previous
//Street 1 and Street 2 because the previous Street 2 has more hits
//and Street 1 is tied with previous Street 1.
if record "Street 2 to Bet" data < record "Previous Street 2" data
begin
//Set flag to False to indicate to use Previous Streets 1 and 2
//Reason: Street 1 is TIED with previous Street 1
// Previous Street 2 has more HITS that Street 2
Set Flag "Neighbor?" to False;
return;
end
//Step 4. Ok, We have a Tied Street 1 and a Tied Street 2.
//Now we test for the most recent hits on these Streets
if record "Street 1 missed hits" data < record "Street 2 missed hits" data
and record "Street 1 missed hits" data < record "Previous Street 2 missed hits" data
and record "Street 1 missed hits" data < record "Previous Street 1 missed hits" data
or record "Street 2 missed hits" data < record "Street 2 missed hits" data
and record "Street 2 missed hits" data < record "Previous Street 2 missed hits" data
and record "Street 2 missed hits" data < record "Previous Street 1 missed hits" data
begin
//Street 1 and Street 2 has more recent hits than previous, so use it.
return;
end
//If we get here, it is because the previsous Streets 1 and 2
//have the most recent hits the Street 1 and Street 2
Set Flag "Neighbor?" to False;
end
method "Save Highest Street data values"
begin
//store highest street missed hits
put 100% of record "Street Hits" Data index to record "Street Missed Hits" Data index;
put 100% of record "Street Missed Hits" data to record "Street 1 missed hits" data;
//store highest street data and layout to Street 1 to bet
put 100% of record "Street Hits" Data index to record "Street Hits" Layout index;
put 100% of record "Street Hits" data to record "Street 1 to Bet" data;
copy record "Street Hits" Layout to record "Street 1 to Bet" Layout;
end
method "Save Left Neighbor Street data values"
begin
//store left neighbor street missed hits
put 100% of record "Street Hits" Data index to
record "Street Missed Hits" Data index;
put 100% of record "Street Missed Hits" data to
record "Street 2 missed hits" data;
//store left neighbor data and layout to Street 2 to Bet
put 100% of record "Street Hits" Data index
to record "Street Hits" Layout index;
put 100% of record "Street Hits" data to record "Street 2 to Bet" data;
copy record "Street Hits" Layout to record "Street 2 to Bet" Layout;
end
method "Test Left and Right Neigbor"
begin
Set Flag "Right Neighbor qualified" to True;
if Record "Street Hits" data = Record "Street 2 to Bet" data
begin
//Duplicate hit count in right and left neighbor streets
//check if right neighbor has more recent hits that left neighbor
put 100% of record "Street Hits" Data index to record "Street Missed Hits" Data index;
if record "Street Missed Hits" data > record "Street 2 missed hits" data
begin
//Right neighbor does not qualify because left neighbor has
//more recent hits.
Set Flag "Right Neighbor qualified" to False;
end
end
end
//Right Neighbor has the best qualifications
method "Save Right Neighbor Street data values"
begin
//store left neighbor street missed hits
put 100% of record "Street Hits" Data index to record "Street Missed Hits" Data index;
put 100% of record "Street Missed Hits" data to record "Street 2 missed hits" data;
//store right neighbor data and layout
put 100% of record "Street Hits" Data index to record "Street Hits" Layout index;
put 100% of record "Street Hits" data to record "Street 2 to Bet" data;
copy record "Street Hits" Layout to record "Street 2 to Bet" Layout;
end
//We passed all qualification test. Add it to the previous records.
method "Save qualified Streets as previous Streets"
begin
Duplicate record "Street 1 to Bet" to record "Previous Street 1";
Duplicate record "Street 1 missed hits" to record "Previous Street 1 missed hits";
Duplicate record "Street 2 to Bet" to record "Previous Street 2";
Duplicate record "Street 2 missed hits" to record "Previous Street 2 missed hits";
end
{No Neighbors streets that qualify. Restore back to the previous
found street and neighbors
}
method "Restore previous Streets as qualified Streets"
begin
Duplicate record "Previous Street 1" to record "Street 1 to Bet";
Duplicate record "Previous Street 1 missed hits" to record "Street 1 missed hits";
Duplicate record "Previous Street 2" to record "Street 2 to Bet";
Duplicate record "Previous Street 2 missed hits" to record "Street 2 missed hits";
end
method "Initialize"
begin
Set Flag "Ready to Bet" to false;
Set Flag "First bet placed" to false;
Clear Record "Number of Games Wins" data;
Clear Record "Number of Games Losses" data;
Clear Record "Number of individual Wins" data;
Clear Record "Last Spin" data;
//Street that we will use to place bets on
Put 0 on Record "Street 1 to Bet" data;
Put 0 on Record "Street 2 to Bet" data;
//Progression bets
set list [1,1,1,1,2,2,2,4,4,4,8,8,8,10,12,14,17,20] to record "Progression Bet" data;
//Streets
copy list [Street(1-3), Street(4-6), Street(7-9),
Street(10-12), Street(13-15), Street(16-18),
Street(19-21), Street(22-24), Street(25-27),
Street(28-30), Street(31-33), Street(34-36)]
to record "Street Hits" layout;
//Street hit counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Hits" data;
//Street missed counter
set list [0,0,0,0,0,0,0,0,0,0,0,0] to record "Street Missed Hits" data;
Clear record "Street 1 missed hits" data;
Clear record "Street 2 missed hits" data;
Clear record "Previous Street 1" data;
Clear record "Previous Street 2" data;
Clear record "Previous Street 1 missed hits" data;
Clear record "Previous Street 2 missed hits" data;
//these groups point to where the progression bet amount
//changes.
Put 5 on Record "Group 2 bet index" data;
Put 8 on Record "Group 3 bet index" data;
Put 11 on Record "Group 4 bet index" data;
Put 14 on Record "Group 5 bet index" data;
//data enter from the keyboard
Clear Record "Table Layout" data;
Clear Record "Starting Bankroll" data;
Clear Record "Starting Unit" data;
Clear Record "Total Sequences" data;
Clear Record "Total Win Sequences" data;
Clear Record "Number of Win sequences" data;
Clear Record "Number of Session Sequences" data;
call "Reset";
end
method "Reset"
begin
//reset for search for another street to place bets
Put 1 on Record "Progression Bet" Data index;
Set Flag "Ready to Bet" to False;
Set Flag "First bet placed" to False;
Clear Record "Street 1 to Bet" data;
Clear Record "Street 2 to Bet" data;
Clear Record "Previous Street 1" data;
Clear Record "Previous Street 2" data;
Clear Record "Street 1 missed hits" data;
Clear Record "Street 2 missed hits" data;
Clear record "Previous Street 1 missed hits" data;
Clear record "Previous Street 2 missed hits" data;
end
{
User input data sub-routine.
}
method "Select Input Information"
begin
Put 100% of Bankroll on Record "Starting Bankroll" data;
Group
begin
Input Data "Enter Bankroll for entire Session" to Record "Starting Bankroll" data;
Input Data "Enter Starting Unit for each sequence" to Record "Starting Unit" data;
Input Dropdown "Enter Table Layout
1:=European Layout
2:=American Layout" to Record "Table Layout" data;
Input Data "How many Total Session Sequences to play.
Recommended: 1 Session Sequence.
Note: '0' = unlimited Session sequences."
to Record "Total Sequences" data;
Input Data "How many WIN Sequences for this Session
Recommend: 3 sequences.
Note: '0' = unlimited sequences." to Record "Total Win Sequences" data;
Input Checkbox "Stop Session on ANY Lost Game." to Flag "Stop on Lost Game";
end
Put 100% of Record "Starting Bankroll" data on Bankroll;
While Record "Table Layout" data = 1
begin
Load Single Wheel;
end
Else
begin
Load Double Wheel;
end
end





