Example #1
0
        public PlayerModel estimatePlayerModel(string playerName, PokerClient client)
        {
            List <Hand> handList    = getRecentHandList(playerName, client);
            var         playerStats = PlayerStats.createStatsFromHandList(handList, playerName, client, TableType);

            return(estimatePlayerModel(playerStats));
        }
Example #2
0
 public Game()
 {
     _client             = new HttpClient();
     _client.BaseAddress = new Uri("https://localhost:44308/");
     _client.DefaultRequestHeaders.Add("Accept", "application/json");
     _pokerClient = new PokerClient(_client);
 }
Example #3
0
    public void Register()
    {
        int    port       = Convert.ToInt32(serverPortInput.text);
        string serverName = serverNameInput.text;
        bool   insecure   = false;

        if (devToggle.toggle.isOn)
        {
            port       = 8443;
            serverName = "pepper-poker-grpc"; // make sure this is in /etc/hosts pointing to 127.0.0.1
            insecure   = true;
        }

        try
        {
            _pokerClient = new PokerClient(serverName, port, insecure);
        }
        catch (Exception ex)
        {
            _mRPCErrorEvent.Invoke(ex.ToString());
            return;
        }

        StartCoroutine(nameof(DoRegister));
    }
Example #4
0
        public PlayerStats(string playerName, PokerClient client, TableType tableType, int vpipPositive, int vpipTotal,
                           ActionStats[] preFlopAD, ActionStats[] postFlopAD)
        {
            PlayerName = playerName;
            Client     = client;
            _tableType = tableType;
            VPIP       = new StatValue(vpipPositive, vpipTotal);

            _allPreFlopParams  = PreFlopParams.getAllParams(tableType);
            _allPostFlopParams = PostFlopParams.getAllParams(tableType);

            PreFlopStats  = preFlopAD;
            PostFlopStats = postFlopAD;
        }
Example #5
0
        static void Main(string[] args)
        {
            PokerClient client = new PokerClient();
            Karta       karta  = new Karta();

            karta.Boja = "Pik";
            karta.Broj = 1;
            bool odgovor = client.BaciKartuAsync(karta).Result;

            Console.WriteLine("Karta je prihvaćena? " + odgovor);

            for (int i = 0; i < 10; i++)
            {
                karta = client.PrimiKartuAsync().Result;
                Console.WriteLine("Karta {0} {1}", karta.Broj, karta.Boja);
            }
        }
Example #6
0
        static void Main(string[] args)
        {
            PokerClient client = new PokerClient();

            for (int i = 0; i < 10; i++)
            {
                Karta karta = client.Uzimamkartu();
                Console.WriteLine("Primljena karta {0} {1}", karta.Boja, karta.Broj);
            }

            //Baci novu kartu na stol
            Karta k = new Karta();

            k.Boja = "Pik";
            k.Broj = 13;
            bool odgovor = client.BacamKartu(k); //U pozadini ide XML preko HTTP-a po SOAP standardu

            Console.WriteLine("Karta bačena? " + odgovor);
        }
Example #7
0
        private List <Hand> getRecentHandList(string playerName, PokerClient client)
        {
            var playerKey = new PlayerKey {
                PlayerName = playerName, Client = client
            };
            List <Hand> handList = new List <Hand>();

            if (_recentHandsList.ContainsKey(playerKey))
            {
                handList = _recentHandsList[playerKey];
            }
            else
            {
                _recentHandsList.Add(playerKey, handList);
            }

            Debug.Assert(handList.Count <= _options.recentHandsCount);
            return(handList);
        }
Example #8
0
        public BotGameState(string[] playerNames, int heroIndex, int buttonInd, int bigBlingSize, int startStackSize,
                            PokerClient client, TableType tableType, Estimators.IActionEstimator actionEstimator)
        {
            _actionEstimator = actionEstimator;

            _tableType     = tableType;
            _players       = new List <Player>();
            _board         = new Board();
            _heroHoleCards = new HoleCards(0);

            _bigBlingSize = bigBlingSize;
            _pokerClient  = client;
            _heroInd      = heroIndex;
            _buttonInd    = buttonInd;

            foreach (string playerName in playerNames)
            {
                _players.Add(new Player(playerName, startStackSize, null));
            }
        }
Example #9
0
        public PlayerStats(string playerName, PokerClient client, TableType tableType)
        {
            PlayerName = playerName;
            Client     = client;
            _tableType = tableType;
            VPIP       = new StatValue();

            _allPreFlopParams  = PreFlopParams.getAllParams(_tableType);
            _allPostFlopParams = PostFlopParams.getAllParams(_tableType);

            PreFlopStats  = new ActionStats[_allPreFlopParams.Count];
            PostFlopStats = new ActionStats[_allPostFlopParams.Count];

            for (int i = 0; i < PreFlopStats.Length; i++)
            {
                PreFlopStats[i] = new ActionStats();
            }

            for (int i = 0; i < PostFlopStats.Length; i++)
            {
                PostFlopStats[i] = new ActionStats();
            }
        }
Example #10
0
        static void Main(string[] args)
        {
            Console.WriteLine("Dobar dan!");
            Karta karta = new Karta();

            karta.Boja = "Pik";
            karta.Broj = 12;
            // Baci kartu na stol u našem servisu
            PokerClient klijent = new PokerClient();
            bool        result  = klijent.BaciKartu(karta);
            string      poruka  = result ? $" Karta bačena {karta.Boja} {karta.Broj}" : "Došlo je do greške";

            Console.WriteLine(poruka);
            karta = klijent.UzmiKartuAsync().Result; // Izvršavamo asinkrono da ne blokiramo bezveze
            Console.WriteLine($" Karta primljena {karta.Boja} {karta.Broj}");
            klijent.BaciKartu(karta);                // Baci primljenu kartu
            // Daj mi sve karte na stolu
            Karta[] bacene = klijent.dajSveNaStoluAsync().Result;
            for (int i = 0; i < bacene.Length; i++)
            {
                Console.WriteLine($" Karta na stolu {bacene[i].Boja} {bacene[i].Broj}");
            }
        }
Example #11
0
        public static PlayerStats createStatsFromHandList(List <Hand> handList, string playerName, PokerClient client, TableType tableType)
        {
            var playerStats = new PlayerStats(playerName, client, tableType);

            foreach (var hand in handList)
            {
                playerStats.increment(hand);
            }

            return(playerStats);
        }
Example #12
0
 /// <summary>
 /// TO set hand list from database
 /// var handDtos = Database.Hands.GetHands(client.ToString(), GameType.HoldEm.ToString(), Limit,
 ///    playerName, null, null, _recentHandsCount);
 /// handList = handDtos.Select(h => h.ToHand()).ToList();
 /// </summary>
 private void setRecentHandList(List <Hand> list, string playerName, PokerClient client)
 {
     _recentHandsList[new PlayerKey {
                          PlayerName = playerName, Client = client
                      }] = list;
 }
Example #13
0
 public PlayerStats getPlayerStats(string playerName, PokerClient client)
 {
     return(_fullStatsList.SingleOrDefault(i => i.PlayerName == playerName && i.Client == client));
 }
Example #14
0
 public ModelingEstimator(OpponentModeling oppModelling, PokerClient pokerClient)
 {
     _opponentModeling = oppModelling;
     _pokerClient      = pokerClient;
     _dmContext        = new DecisionMakingContext();
 }