===== Quick Start! =====

Five-card draw poker - you against 5 computer
players around the ole' poker table.

Requires Workbench 2.04 or later.
May be slow on 68000-based Amigas (turn the sound
off to speed it up). To get synthesized speech, you
need the AmigaDOS speech software from WB 2.04 or
earlier releases.

You can change your preferences at the start of each
session.

Each game proceeds as follows:
- ante and dealing
- opening bets (no minimum hand to open)
- discarding cards (1 discard of up to 3 cards)
- closing bets
- the showdown (where you win, lose, or tie)

All standard poker hands are allowed, including
low-ace straights (A-2-3-4-5). Check-raising
(sandbagging) is allowed. When a computer player
runs out of money, they leave the session. When you
run out of money, the session ends.

For more details, see the other topics in this
documentation.

Just Deal It!


===== Introduction =====

Welcome to Smoke'em Poker. Ante up and deal it, Tex!

The game is five-card draw (for rules, see "About
Five-Card Draw"). You play against five other
simulated players who would like nothing better than
to "smoke" you on a huge pot.

(Yes, this is real multi-player poker, not another
stupid "video poker" game. The best thing about
poker is matching wits with conniving opponents, not
playing a glorified slot machine. So nyaaah.)

Smoke'em Poker is completely mouse-driven and
graphic, although the graphics are spartan (for
now). If you've played real poker before, you should
have no problem playing Smoke'em Poker.


===== System Requirements =====

Smoke'em Poker requires an Amiga with the following:
- Workbench 2.04 or later (so upgrade, already!)
- probably 1 meg of memory, but I'm not sure

To get synthesized speech, you must have the
AmigaDOS speech synthesis software. This was part of
the system software in WB 2.0x, but Commodore (in
their finite wisdom) removed it from later system
releases. If you have WB 2.1 or later, you just need
to get your hands on the 2.04 speech software
(narrator.device, "Say", etc.). How you get it is
your business...  ;^)
Smoke'em Poker does speech by sending arguments to
the "Say" program, which it expects to find in the
Utilities drawer of your boot volume (Sys:). So,
if your "say" program is elsewhere, move or copy
it to "sys:utilities".

While Smoke'em Poker should run on any model of
Amiga, it will probably be sluggish on slower
(68000-based) Amigas. To speed things up, turn the
sound off.


===== About Five-Card Draw =====

Poker comes in hundreds of different flavours, but
five-card draw is probably the best known and
simplest form. Here's how it goes:

After paying an initial ante, each player is dealt
five cards down (visible only to that player).

After the cards are dealt, the opening round of
betting starts with the player to the left of the
dealer. Betting continues clockwise around the table
until all players have matched the highest bet or
folded out of the game. There is NO minimum hand
required to open the betting. If no bets are made
(i.e. everyone checks), then the game continues
normally - everyone gets what amounts to a free
discard.

All players who pay the opening bet can then discard
UP TO THREE cards from their hands. These cards are
replaced by the same number of new cards from the
deck.

A closing round of betting follows, starting with
the player who last raised in the opening round. All
players who pay the final bet then reveal their
hands in the "showdown". The player with the best
hand wins the "pot" (the accumulated money bet
during the game). In case of a tie (which is rare),
the winners split the pot.

For more information on using Smoke'em Poker's
interface to play a round of five-card draw, see
"Playing A Round".


===== What Beats What? =====

For those of you who keep forgetting, here's the
order of poker hands (from worst to best):

Runt (nothing, nada, e.g. 2-4-7-J-K)
Pair (e.g. 2-2-7-J-K)
Two Pair (e.g. 2-2-7-7-K)
Three of a Kind (e.g. 2-2-2-J-K)
Straight (e.g. 2-3-4-5-6, but different suits)
Flush (e.g. five hearts, but not consecutive)
Full House (e.g. 2-2-2-7-7)
Four of a Kind (e.g. 2-2-2-2-7)
Straight Flush (e.g. 2-3-4-5-6, all of same suit)
Royal Flush (10-J-Q-K-A, all of same suit)

Smoke'em Poker automatically displays which of the
above hands you have. It's up to YOU to make money
with it.

(In some cases, Smoke'em Poker may tell you that you
have a "baby" straight or flush. For more
information on these, see "Baby Hands".)


===== House Rules =====

Every poker gathering decides on a few "house
rules". Here are the house rules for Smoke'em Poker:

Low-Ace Straights:
Normally, aces are high (valued above kings). The
only exception to this is a low-ace straight
(A-2-3-4-5), where the ace is the "one" card.
If you get an low-ace straight, Smoke'em Poker
automatically re-sorts your hand to put the ace
before the 2.
Note that an ace can only be high OR low in a given
hand. You cannot create a "wrap-around" straight
using an ace (e.g. Q-K-A-2-3).

Check-Raising:
Check-raising (also known as sandbagging) IS ALLOWED
in Smoke'em Poker.
You typically check-raise when you have a strong
hand but want to see who else does too. Instead of
making the first raise, you check (pass) the bet.
When someone else raises, you can then raise them
more.
While check-raising is viewed as unfair by some,
the check-raiser also runs the risk that no one
else will raise at all, costing the check-raiser a
fair bit of money if they do eventually win the pot.

Splitting Pots:
Once in a great while, two or more players will tie
at the showdown. For example, two players may have
the same two pair.
The "kickers" (the remaining card(s) in their hands)
are used to determine the winning hand. If the
kickers are also equal, the players divide the money
in the pot equally.
In case of tied flushes (e.g. two players with
king-high flushes), the suit is NOT used to break
the tie - suits have no inherent value.


===== Setting Preferences =====

When you start a new session of poker, the
preferences requester appears. In this requester,
you can set the following:

Your Name:
Enter your name (up to 12 characters).
If you don't enter a name, you'll be known as
"Stranger".

Starting Cash:
The amount of money that every player starts with.
Must be between $100 and $10000. Defaults to $1000.

Ante:
The amount of money that each player chips in to
play in each hand.
Must be between $1 and $100. Defaults to $5.

Maximum Raises:
The maximum number of raises (INCLUDING the first
bet) that are allowed in each round of betting.
Must be between 1 and 10. Defaults to 3.

Minimum Bet:
The smallest amount that a player can raise.
Must be between $5 and $50, but must be smaller than
the medium bet (see below). Defaults to $10.

Medium Bet:
The in-between amount that a player can raise.
Must be between $10 and $100, but must be larger
than the minimum bet and smaller than the
maximum bet. Defaults to $25.

Maximum Bet:
The largest amount that a player can raise.
Must be between $15 and $200, but must be larger
than the medium bet. Defaults to $50.

Reset To Defaults:
Resets all numeric values to their default values.

Show Opponents' Hands:
During play, this shows the other players' hands
face-up (useful for figuring out how they bet). Also
known as "cheat" mode.

Done:
Accepts the current values in the requester and
starts the poker session.


===== Playing A Game =====

Paying The Ante And Dealing:
To deal a new game, click the "Deal" button. Each
player will automatically pay the ante for the game,
and the cards will then be dealt.
The current dealer's name is highlighted in pink.
Note that, even if a player's cards are shown
face-up on the screen, players can NEVER see each
other's cards (except at the end of a game).

Opening Bets:
When the betting comes around to you, you can do
one of the following:
- "Check" (or pass) your bet if no one else has bet
  yet. The "Check" button does not appear if
  someone has made a bet before you.
- "Fold" your hand to get out of the current game
  without matching the current bet. The "Fold"
  button does not appear if no one has made a bet
  yet.
- "Call" the current bet by paying enough to match
  it.
- "Raise" the current bet by matching it and then
  increasing it by a certain amount.
  To raise, click the "Raise" button and choose
  from one of the three fixed amounts in the Raise
  window.
  These amounts are determined by the preferences
  that you set for the session - see "Setting
  Preferences".
  The "Raise" button does not appear if the
  maximum number of raises has already been
  reached - see "Setting Preferences".

Discarding Cards:
To drop UP TO THREE cards from your hand, click the
"X"-shaped discard pointer on the unwanted cards,
then click the "Discard" button. The new cards are
dealt from the deck and automatically sorted into
your hand.
To "stand pat" (that is, to keep all of your cards),
make sure that no cards are selected, then click the
"Discard None" button.

Closing Bets:
Betting in the closing round is done exactly like it
is in the opening round, except that it starts with
the player who last raised in the opening round.

The Showdown:
When all players reveal their hands, the winner of
the hand is outlined in gold (the colour of money)
and collects the money in the pot.
At this point, if a simulated player is out of
money, they leave the session. If you are the last
player left, you win the session. If YOU run out of
money, the session ends.


===== Baby Hands =====

As a convenience, in the opening round of betting
(before you discard), Smoke'em Poker will check your
cards for "baby" hands - four-card straights
(without gaps), four-card flushes, and four-card
straight flushes. These hands, while worth nothing
in themselves, need only one card to make them into
killer hands.

Smoke'em Poker points out these promising hands as
an aid to people who might not otherwise spot them.
Naturally, Smoke'em Poker only points out baby hands
BEFORE the discard (while you still have a chance to
complete them).

For example, suppose that you started with a hand of
3-4-4-5-6. Before you discarded anything, Smoke'em
Poker would tell you that you have a baby straight,
since this is POTENTIALLY worth more than your pair.
If you had this same hand AFTER the discard,
however, the baby straight has no chance of becoming
a real (five-card) straight, so Smoke'em Poker would
announce it only as a pair.


===== Running Out Of Money =====

A player can keep playing until they run out of
money. More precisely, a player can play a round if
they can afford the ante. This means that they might
go into debt (showing negative cash) while betting
on a hand.

When one of your simulated opponents doesn't have
enough money left to ante up for the next game, they
leave the table. If you bankrupt ALL of your
opponents, the session ends with you as the poker
champion (for now, anyway).

The session also ends if YOU run out of money. At
this point, you can either crawl into a hole and die
(quit, that is), or start a new poker session.


===== The Other Players =====

In this initial release, the simulated opponents
that Smoke'em Poker provides for you are all equally
skilled (or equally unskilled, depending on what you
think of my betting algorithms). They bet based on:

- the value (real or potential) of their hands, and
- how much has been bet by other players so far in
  the round.

They do not take into account their position in the
betting, how many cards have been drawn by
opponents, or other common indicators.

In later releases of Smoke'em Poker, I hope to add
varying skill levels and more sophisticated betting
algorithms - see "Future Enhancements".


===== Controlling Sound =====

To turn sound on or off, click the Sound checkbox at
the upper left corner of the screen. (duh)

In this initial release, sound is implemented as
synthesized speech. For example, your opponents will
speak up when betting ("I call", etc.).

To get speech, you must have the AmigaDOS 2.0x
speech software. For more information, see "System
Requirements".

Sound is another part of Smoke'em Poker that I plan
to improve in the next release - see "Future
Enhancements".


===== Getting Help =====

At any time during the game, you can summon on-line
help by either:
- clicking the Help button, or
- pressing the Help key (what a concept!)

On-line help consists of a list of topics with a
chunk o' text for each topic. To exit from on-line
help, click the close box at the upper left of the
help window.

Smoke'em Poker's on-line help is the same content as
the text file (Smoke'emPoker.doc) included with this
distribution - in fact, the on-line help is
generated from the text file at run-time.


===== Restarting The Game =====

To end the current poker session and start a new
poker session, click the Restart button. This opens
the preferences requester again and lets you set
your preferences for the next session. It also
resets each player's cash to the starting cash
amount.

Note that you can't restart the game while in the
middle of a hand. The Restart button is only
available after a hand is finished.


===== Quitting The Game =====

To quit Smoke'em Poker and return to Workbench,
click the Quit button. A confirmation requester will
double-check that you really want to quit. If you
cancel the Quit operation, you are returned to your
previous spot in the game.

The Quit button is always available, regardless of
what stage you are in the game.


===== Future Enhancements =====

There are lots of enhancements that I'm itching to
make to Smoke'em Poker. But if I just kept adding
them, I'd never get around to releasing it at all
(can you say "creeping featurism"?). So, I've shut
the door for release 1.0 just so that you can play
with it and maybe have a little fun WHILE I work on
that next feature or two.

Here's what I'd like to add to future releases (in
no particular order):

- An option for digitized sound for each player.
  I like the idea of playing sound files from
  external directories, so you could supply your
  buddies' voices and make Smoke'em Poker feel more
  like your own Saturday-night poker game.

- Selectable skill levels and playing styles for
  the computer players, including a "random" option
  to keep you from initially knowing who's strong
  or weak (it's like sitting down to play with
  five strangers).
  Also, computer players that learn about your
  betting tendencies and adjust their play
  accordingly.
  Eventually, I'd like to open up Smoke'em Poker
  to external players that play via ARexx. This
  would allow you to program your own computer
  players and hook them into the game. This would
  make for an interesting my-player-is-better-than-
  your-player "tournament".

- More poker variations, of course, starting with
  the more common games like five-card stud, seven-
  card stud, hold'em, high/low splits, etc. This
  would also open the door for dealer's choice.
  I'm not a big fan of wild-card games, so don't
  hold your breath for "pregnant threes"... ;^)

- An option for modem (or direct-connect) play,
  so that one of those other spots at the table
  can be filled by another live person with an
  Amiga hooked into yours.

- An auto-play feature that lets you sit out for
  a few hands and watch the game carry on with
  just the computer players. Actually, this feature
  will be more for my benefit when I add (and
  therefore have to test) selectable skill levels.

- An Odds button that shows you the odds of
  improving your hand vs. the odds offered by the
  pot.

- An Ask button that shows you what the various
  levels of computer players would do if they had
  your hand. Useful when you're just learning a
  new variation of poker.

- A Stats button that summarizes the current poker
  session in terms of: total hands played; time
  elapsed; player-by-player breakdowns of # of
  hands drawn, # of hands in at the showdown,
  biggest pot won/lost, etc.
  Statistics are very useful in computer poker,
  since you typically play many more hands in a
  given time that you would in normal poker, and
  this can help point out weaknesses in your play
  (for example, discovering that you are in almost
  every showdown, which is a losing habit in the
  long run).

- Better graphics and animation, perhaps including
  a graphic pot that grows as more money is bet,
  animated dealing and discarding, player graphics
  (with an option to supply your own), choice of
  cardback graphics, etc.

- A more robust user interface, including key
  shortcuts for common functions (pressing "F" to
  fold, etc.), and voice control using a sound
  digitizer.

- Hooks to David Braben's Frontier. Just imagine
  cruising the galaxy, docking your Cobra Mark III
  at the nearest orbiter, and challenging those
  Imperial scum to a fast-and-loose game of
  Follow-the-Emperor, no limit. Hmmm. Maybe in
  release 8...  ;^)

Any other enhancements or changes that you'd like to
see? Let me know - see "About The Author".


===== Acknowledgements =====

Here's the section where I admit who I've ripped off
for ideas  ;^)

Namely:

- "Poker Pete" on my old TRS-80 Model III.
  When you had beaten Pete out of all his money, he
  got up, pulled out his six-gun, and plugged you.
  Now THERE'S a way to end a computer game!

- "Vegas Johnny Draw Poker" by Top Score Software
  on MS-DOS (boo, hiss!).
  Pretty it ain't, but the keyboard interface is
  simple and the play is easy to follow. Some
  good betting algorithms, too.
  This is the game I was looking for on the Amiga,
  but the existing Amiga poker games either had
  brain-dead interfaces or were just "video" poker.
  Smoke'em Poker owes a lot to Vegas Johnny.

- The book "Poker According To Maverick" (from the
  original TV series with James Garner). This is
  the best how-to poker book that I've come across.
  Lots of entertaining anecdotes written in that
  easy-going cowpoke style, plus a practical list
  of ten poker "commandments" to help you improve
  your play.

- The players in my local Saturday-night game
  (Gina, Paul, Rob, Karen, and Lou) who play-
  tested Smoke'em Poker, and without whom it
  would have taken half the time to program.  ;^D
  Thanks to Rob, especially, for losing some
  huge real-life pots and thereby providing me
  with a name for my program ("What a smoke! What
  an incredible burn!"). Sorry that I couldn't
  include an animation of the famed Dance-Of-
  The-Unbelievably-Smoked in this first release.

- Finally, thanks to INOVAtronics for CanDo, an
  easy-to-use authoring system that made it
  possible for a C-hater like me to produce
  Amiga programs.


===== Version History =====

1.0 - July 30, 1994
    - tested on my 3000 (WB 2.04, 6 megs)
      and Lou's 2000 (WB 2.x?, 3 megs)


===== About BeerWare =====

Smoke'em Poker is BeerWare:
if you like it, have a beer!

BeerWare is absolutely free, and freely
redistributable too.

(A long time ago, a games programmer remarked that
he and his rivals were competing for the user's
beer-money. Hence the happy concept of BeerWare -
you can play this game AND still afford beer.)

Distributors: don't be wankers and try to charge
anything for this, except for nominal copying
fees.

Fred Fish: feel free to include this on an upcoming
Fish disk, and thanks for all the great software
you've supplied us with for so many years.

BTW, this documentation is also BeerWare: if you've
read this far, have another beer!


===== About The Author =====

I'm a technical writer by trade (paid by the word -
can you tell?), and I do my work on Macs and PCs,
but the Amiga is still my favourite for having fun.

I've been fooling with Amigas for a long time now,
but only recently tried programming them (thanks to
CanDo for making this part easier).

My two other favorite things to do are playing poker
and riding recumbent bikes (usually not at the same
time).

If you have suggestions for Smoke'em Poker, or ideas
for other games that you'd like to see (but, um, not
the high-speed arcade sort - remember, I use CanDo,
not AMOS), send me mail at one of the following
addresses:

 Canada Remote Systems: "dave obrien"
              Internet: "dave.obrien@sybase.com"
            Snail-mail: Dave O'Brien
                        13 Homewood Ave.
                        Kitchener, Ontario
                        Canada, N2M 1X1