Texas Hold'em Trainer Hackathon
A Java-based poker simulation game developed during a 30-hour hackathon led by me with 3 other groupmates. This trainer programs allows users to play against intelligent NPCs while analyzing game states and outcomes. Each round of Texas Hold'em is handled by a custom engine that models realistic poker behavior, including betting, raising, folding, and hand evaluation. The program uses a cyclic linked list to represent players at the table, supporting circular rotation of turns and custom pointer logic:
-
dealer
: rotates after each round -
underGun
: tracks the first player to act in each betting phase -
active
: tracks whose turn it is during the round
Each action updates the internal structure, and once the betting round completes, the game calculates the best 5-card hand for each remaining player and determines the winner. A launch menu allows players to start new games, load saves, and choose the number of NPC opponents.
Console text provides real-time breakdowns of hand rankings, decision flow, and internal structure transitions—offering players insights into poker mechanics and the data structures that drive them.
Technologies Used:
Java Core:
Used for game logic, structure implementation, and user interaction through Java Swing
GUI.
Java Swing GUI:
Built with JFrame
, JPanel
, JButton
, JLabel
, JTextArea
+ JScrollPane
, and JOptionPane
for real-time interaction and visualization.
Data Structures:
Implements a cyclic linked list to manage player order with rotating pointers: dealer
, underGun
, and active
.
Hackathon Rapid Prototyping:
Designed and built within 30 hours, emphasizing quick iteration, console feedback, and robust structure-first design.