JokerStars: Online Poker William Sanville CSE 4904 Milestone II.

Slides:



Advertisements
Similar presentations
NexSentry Imaging Solutions
Advertisements

Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 6A Operating System Basics PART II.
EEE436 / CS422 Preliminary Presentation Group
TANDBERG Content Server January Organizational Challenges Corporations have struggled in the past:  Achieving unified communications within a global.
EEE436 / CS422 Final Presentation Group
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
CPT 123 Internet Skills Class Notes Internet Services Session A.
Team 7 / May 24, 2006 Web Based Automation & Security Client Capstone Design Advisor Prof. David Bourner Team Members Lloyd Emokpae (team Lead) Vikash.
Computing Fundamentals Module A © CCI Learning Solutions Inc. 1 Unit 1: Recognizing Computers Lesson Topic 1Computers All Around Us 2Elements of a Personal.
What is.NET?. The Clients of.NET a) A new generation of connected application b) Microsoft.NET Framework managed execution c) Allows PCs and other smart.
Web-based Distributed Flexible Manufacturing System (FMS) Monitoring and Control Student: Wei Liu Instructor: Dr. Chang Apr. 23, 2003.
Remote Desktop Connection Techniques Wireless Communication Networks.
Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman.
Electrical and Computer Engineering PeopleFinder Vitaly Gordievsky Alex Trefonas Scott Richard Matt Beckford Preliminary Design Review.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
J2EE vs..NET Tom Tong. Enterprise Application 1 distributed 2 multiple-platform 3 critical 4 performance 5 security 6 multiple-data sources.
Hands-On Microsoft Windows Server 2003 Networking Chapter 1 Windows Server 2003 Networking Overview.
Proxy Cache Leonid Romanovsky Olga Fomenko Winter 2003 Instructor: Konstantin Sinyuk.
JokerStars: Online Card Playing William Sanville Milestone 4.
Picture Users Making Art Chat An interactive communication tool.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Final Year Project Presentation E-PM: A N O NLINE P ROJECT M ANAGER By: Pankaj Goel.
Operating System.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
Download & Play E-Learning System PROPOSAL draft1.0.
10/7/2005 ISECON Using a “Real” Systems Development Project to Enrich a Systems Analysis and Design Course Janet Helwig Dominican University.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Introduction to Microsoft.Net Session 01 Mata kuliah: M0874 – Programming II Tahun: 2010.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
1 GAIA VoIP traffic generator and analyzer Presentation by Amrut Bang Ashish Deshpande Vijay Gabale Santosh Patil Sponsored by GS Lab Pvt. Ltd Pune Institute.
Presented by Team D Compare Windows 2000, XP, and.NET By John Leonard, Brian North, Jeffrey Reynolds, Todd Saylor.
Status Report Sponsor: Rockwell Collins and Emerging Media Initiative Ben Johnston Wayne Zage Dolores Zage.
Smart Digital Valve Control Simulator May April 25, 2001 Client: Client: Fisher Controls Intl. Inc. Contacts: Contacts: Patrick Ryan and Jeff Seyller.
VPN Protocol What is a VPN? A VPN is A network that uses Internet or other network service to transmit data. A VPN includes authentication and.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Sonny Thomas Macdonald SONNY THOMAS MACDONALD 2010 Internet Computing Bsc.
Software Framework for Teleoperated Vehicles Team Eye-Create ECE 4007 L01 Karishma Jiva Ali Benquassmi Safayet Ahmed Armaghan Mahmud Khin Lay Nwe.
1 Chapter Overview Using the New Connection Wizard to configure network and Internet connections Using the New Connection Wizard to configure outbound.
Web Services An introduction for eWiSACWIS May 2008.
Windows NT Operating System. Windows NT Models Layered Model Client/Server Model Object Model Symmetric Multiprocessing.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Microsoft Dynamics NAV 2009 and Architecture Overview Name Title Microsoft Corporation.
Texas Forty-Two By: Nate Normandin CS 470. What is Texas Forty-Two? A Domino Game A way for people to learn the game A way for people to play others A.
Module 1: Getting Started. Introduction to.NET and the.NET Framework Exploring Visual Studio.NET Creating a Windows Application Project Overview Use Visual.
eFinaX Teller System. Contents 1. Operation System 2. Development / Maintenance System 3. Feature 4. Benefit 5. Supports.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Reconfigurable Communication Link Between FASTER and RTSim Interface Matthew McCollum Mark Krause Derek Keibler.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
A Casino Simulator Program Using Advanced C++ Concepts Thomas H. Hand July 25 th, 2005 Software/Hardware Integration.
ASP.NET in Definition: 1.ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites,
F Drag and Drop Controls Display and Builder (Synoptic Display) Timofei Bolshakov, Andrey Petrov Fermilab Accelerator Controls Department March 26, 2007.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: Operating-System Structures.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Reconfigurable Communication Interface Between FASTER and RTSim Dec0907.
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
JokerStars: Online Card Playing William Sanville Milestone 5.
Fermilab Scientific Computing Division Fermi National Accelerator Laboratory, Batavia, Illinois, USA. Off-the-Shelf Hardware and Software DAQ Performance.
By: Jordan Simon Mike Norman Charles Slack
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 1: Overview of Planning A Windows Server 2003 Network.
Module 0: Introduction Chapter 2: Getting Started
Module 1: Getting Started
Overview Introduction VPS Understanding VPS Architecture
ONAP Architecture Principle Review
Presentation transcript:

JokerStars: Online Poker William Sanville CSE 4904 Milestone II

Background  Popular Systems  PokerStars, Full Tilt Poker  “Virtual Casino”  Players connect from all over the world  Support multiple games concurrently  Variety of card games at different stakes  Tournaments, cash games  Popular Card Games  Hold 'em, Omaha

Motivation  Not only an interest in playing cards  Online Poker System Requires:  Desktop Development  Network Programming  Multi Threading  Security

Project Description  Simulate a card game over the Internet  Allow players to communicate  View and handle the cards  Make decisions  Place bets, fold, etc.  Support for multiple games  Project should be flexible to support any card game  Game should run by a modular, interchangeable rule engine

User Requirements  Internet Connection  Preferably high speed .NET Framework  Supported Operating Systems:  Windows 98 or higher  Linux, Solaris, Mac OS X 

Development Environment  Application will be written in C#  Visual Studio 2008  Code will be documented using XML Comments  Code should pass FxCop code analysis  Static code analysis to ensure proper practices, naming conventions  Server module will be deployed on a Windows Server 2008 machine

High Level Modules  Server Module  Client Module  Networking  User Interface  Game Engine  Game Entities

High Level Modules Cont.  Server Module  Deployed on a dedicated machine  Continuously listen for connections  TCP/IP  Send and receive data to and from clients  Solicit actions from players  Broadcast player actions to other players

High Level Modules Cont.  Client Module  Deployed on the end user's machine  Connect to game server  Pass and receive messages to and from game server

High Level Modules Cont.  Networking Module  Basic functionality and classes used by both Client and Server modules  Packets, Serialization

High Level Modules Cont.  User Interface  Bridge between the end user and Client module  Receive input from user  Display the users currently playing the game  Display cards, chips, and other game elements

High Level Modules Cont.  Game Engine  Defines the rules of the game  Handle the flow and runtime of the game  Determine which player needs to act  Determine what actions are valid for each player  Evaluate winning hands

High Level Modules Cont.  Game Entities  Class definitions for various elements of the game  Cards  Chips  Deck  Player  Dealer

Priority  Problem:  One team member  One semester  Unrealistic to deliver a fully featured online card system  Solution:  Cut scope  Prioritize  Ensure that the project is a success

Priority Continued  Main Focus: Networking  Client and Server modules will be the highest priority  Manage multiple connections  Develop a working message passing system  Second Focus: Game Entities & Engine  Automate the runtime of the game  Third Focus: User Interface  A basic interface will need to be developed in order to test the game engine and entities

Concepts  User Interface Concept  Nothing fancy, just buttons and pictures

End Result  Single table of No Limit Texas Hold 'em  1 to 9 players  Automated game flow  Game Engine determines whose turn it is and asks them for their action  If time is running short, this will be substituted with a “human dealer” to perform the duties of the game engine  Server Module will have a debugging control panel  Support for future enhancements  Keep it clean, modular, easy to upgrade

Future Enhancements  Security  Data will need to be encrypted  Out of scope for this semester  Integrity of messages must be preserved  Man in the middle attacks  Identity spoofing  Scalability  Support for multiple, concurrent tables  Greater number of users

Other Enhancements  Randomness  “Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin.” - John von Neumann  Project will be using standard math libraries, pseudo random numbers  Commercial systems use more sophisticated methods  Mouse movement of users  Temperature readings

Questions?