euchre card
Euchre 0.7
Euchre project is an Euchre game. more>>
Euchre is a spades or bridge-like card game played with four players (3 computer players and 1 human).
The game is played via a GTK+ interface and allows customization of the computer skill level, aggression level, and many of the other game parameters. There are three levels of AI skill (easy, medium, and hard).
The medium and hard levels are good enough to give you a decent challenge.
Enhancements:
- Fixed bug where pass markers are not cleared after an all-pass event (thanks to an unknown euchre lover on sourceforge...)
- Added previous tricks dialog and the view menu items to access it
Nebula Cards 0.7
Nebula Cards project is a card game engine. more>>
Nebula Cards is a networked, modular card game engine written in pure Java.
The game rules, user interfaces, and computer players all take the form of pluggable Java classes, and most four-player, trick-taking games can be implemented.
It currently includes Spades and Hearts, with a computer player for Spades.
Enhancements:
- last release before a major restructuring.
- added Game class in a backward-compatible way.
- added util.proc to house the new GameProcedure library.
- added util.ui.GraphicalCardSelector (untested).
Games::Euchre 1.02
Games::Euchre is an Euchre card game for humans and computers. more>>
SYNOPSIS
Simply run my game wrapper:
% euchre.pl
or write your own:
use Games::Euchre;
use Games::Euchre::AI::Simple;
use Games::Euchre::AI::Human;
my $game = Games::Euchre->new();
foreach my $i (1..3) {
$game->setAI($i, Games::Euchre::AI::Simple->new());
}
$game->setAI(4, Games::Euchre::AI::Human->new());
$game->playGame();
my @scores = sort {$b $a} $game->getScores();
print("The winner is " . $game->getWinner()->getName() . " with a score of " .
"$scores[0] to $scores[1]n");
This software implements the card game of Euchre. The game is played with four players composing two teams. Any of the four players can be human or computer players, but more than one human is not well supported yet.
The Games::Euchre::AI module implements a simple framework for adding new classes of human interfaces or computer opponents. I recomment that AI writers use Games::Euchre::AI::Simple (a REALLY dumb computer opponent) as starting point.
Aside from the ::AI class and its descendents, this package also implements the following classes: Games::Euchre::Team, Games::Euchre::Player and Games::Euchre::Trick.
Penguin Cards 1.0
Penguin Cards project is a card game. more>>
PenguinCards is a two-player card game. The aim is to find the pairs of cards on the board. The one who finds out more card pairs is the winner.
PenguinCards is a java-based game.
If you are unhappy with images on the cards, then simply copy your cards into images/pictures/penguins directory. That is it!
Enhancements:
- Initial release
bibEC Process Card 1.3.12
bibEC Process Card is a multiple gateway credit card payment processor. more>>
This class is meant to process credit card payments via one of multiple payment gateways that are supported.
Currently the class supports the following payment gateways: Plug and Pay, Authorize.net, ViaKlix, and paynet . Changing between payment gateways is mostly a matter of changing the class constructor parameter.
The class provides a payment gateway independent API with functions for:
- Logging the payment activity
- Set the payment gateway authentication credentials
- Set the paying customer details
- Set the ship to details
- Set the credit card details
- Set the valuta
- Specify the order details
- Submit the payment processing request and retrieving the results
The payment submission is done securely when possible using PHP SSL socket connections or the Curl extension for PHP or the Curl command line.
PHPMyEcards 1.0
PHPMyEcards is a set of PHP pages that provides you with an e-card-sending service for your Web site. more>>
The main features are automatic installation and an admin section to manage your e-cards and to set the site presentation
Games::Euchre::Player 1.02
Games::Euchre::Player is a player class for Euchre card game. more>>
The four Player objects are used to interact with the humand and computer players, as well as to keep the state of the players hand, whether he bid and whether he went alone.
CLASS METHODS
new GAME NUMBER NAME
Create and initialize a new Euchre player. The number is 1-4.
INSTANCE METHODS
getGame
Return the Euchre game instance to which this player belongs.
setTeam TEAM
Record the Team instance that this player belongs to.
getTeam
Return the Team instance to which this player belongs.
setAI AI
Record the AI instance for this player.
getAI
Return the AI instance for this player.
setAlone
Indicate that this player has chosen to go alone in the current hand.
setBid
Indicate that this player has chosen to choose trump in the current hand.
wentAlone
Returns a boolean indicating whether this player chose to go alone on a bid.
isBidder
Returns a boolean indicating whether this player called the trump suit during bidding.
getName
Return this players name
getNumber
Return this players number, between 1 and 4
getHand
Return the Games::Cards::Hand object representing this players current hand.
getCards
Return an array of the Games::Cards::Card objects held in the players hand.
resetGame
Clear all of the state for the current game and get ready for the next one.
resetHand
Clear all of the state for the current hand and get ready for the next one.
bid TURN
Allow the player to choose trump or pass. Returns one of: H, C, D, S, N, HA, CA, DA, SA, NA, or undef. If the player has an AI instance set, that is invoked. Otherwise a pathetically simple AI decides the bid.
pickItUp
Allow the player, as dealer, to select which card to trade for the turned up card. This method performs the actual trade. If the player has an AI instance set, that is invoked. Otherwise a pathetically simple AI chooses the card.
playCard TRICK
Allow the player to select which card to play on the current trick. This method performs the actual play. If the player has an AI instance set, that is invoked. Otherwise a pathetically simple AI chooses the card.
isLegalBid TURNNUMBER BID
Given a bid, return a boolean indicating the validity of that bid. The bid is tested for structure (one of H, C, D, S, N, HA, CA, DA, SA, NA, or undef), tested against the bidding round (only the turned-up card suit can be called in round 1 , and may not be called in round 2), against the game options (hang-the-dealer, no-trump).
This is called from the bid() method.
Games::Euchre::AI 1.02
Games::Euchre::AI is a Player API for Euchre card game. more>>
This class implements a skeletal Euchre player programming interface. Subclasses can be created quite easily as interactive interfaces or AI computer players.
If you wish to write your own computer player, I recommend you start with Games::Euchre::AI::Simple. If you wish to write your own human interface, I recommend you start with Games::Euchre::AI::Human.
CLASS METHODS
new
Create and initialize a new Euchre AI. This object is implemented as an empty hash. Subclasses may wish to use this hash for state storage.
INSTANCE METHODS
Actions
The following methods are called in the course of the game where the AI (or human) has to make a decision. The state of the game is always passed in a hashreference. The following fields are always available:
name is the name of the current player. This is useful for output messages.
names is a hash relating player number to player name for all four players.
debug is a boolean indicating if we are debugging game or the AIs. Your AI may wish to provide verbose output if debugging is going on.
bid STATEHASH
Choose trump or pass. The relevent details of the current state of the game are provided in a hash reference. Here is an example of that data structure:
{
name => Player 1,
names => {1 => Player 1, 2 => P2, 3 => P3, 4 => Fred},
number => 1,
turnedUp => KH,
passes => 1,
ourScore => 2,
theirScore => 4,
winScore => 10,
hangdealer => false,
notrump => false,
hand => [JS, QH, 9S, KC, AD],
debug => false,
}
turnedUp is the suit and value of the card on the top of the blind. This will be undef on the second round of bidding.
passes says how many people have passed so far
hangdealer is a boolean saying whether the hang-the-dealer optional rule is in effect
notrump is a boolean saying whether the no trump optional rule is in effect
This function must return one of: H, D, C, S, N, HA, DA, CA, SA, NA, or undef
N means no trump, A means alone, undef means pass. Not all of these are legal at any given round! Use the isLegalBid() method below if you are unsure.
pickItUp STATEHASH
If this is called, you are the dealer and someone called trump. Choose which card from your hand to discard in exchange for the top card of the blind. The relevent details of the current state of the game are provided in a hash reference. Here is an example of that data structure:
{
name => Player 1,
names => {1 => Player 1, 2 => P2, 3 => P3, 4 => Fred},
number => 1,
turnedUp => KH,
trump => H,
bidder => 2,
weBid => false,
usAlone => false,
themAlone => false,
hand => [JS, QH, 9S, KC, AD],
debug => false,
}
This method should return the 0-based index of the card to trade for the turnedUp card. Namely, this in the index of the hand array for the card that you choose.
playCard STATEHASH
Choose which card from your hand to play on this trick. The relevent details of the current state of the game are provided in a hash reference. Here is an example of that data structure:
{
name => Player 1,
names => {1 => Player 1, 2 => P2, 3 => P3, 4 => Fred},
number => 1,
trump => H,
bidder => 2,
weBid => true,
usAlone => false,
themAlone => false,
trick => 2,
ourTricks => 0,
theirTricks => 1,
ourScore => 2,
theirScore => 4,
winScore => 10,
played => [10H, 9H, QC],
playedBy => [2, 3, 4, 1],
hand => [JH, AH, AS, KS],
debug => false,
}
playedBy is an arrayref of numbers of the players in the order they will play. Without this, the alone possibility makes it hard to tell who played what.
Any needed information not stored here (like who was the dealer, what was the turn-up card, what happened in the first trick) is YOUR responsibility to collect and store in your instance.
This method should return the 0-based index of the card to play. Namely, this in the index of the hand array for the card that you choose.
Asterisk Live CF card b-01
Asterisk Live CF card is, clearly, a compact flash install of asterisk. more>>
Indeed most things are the same although there have been some additions and changes.
To install the CF you will need some way of getting the image onto the card. Generally this can be done with a USB CF card reader using
dd if=asterisk-cf-b01 of=/dev/sda bs=1k count=64000
Useful things to know
1. The cf install currently assumes its hda (1 2 and 3) so youll need to put it in as your primary master using your CF->IDE adaptor, this will be more automagical in the future
2. example configs are stored on hda3 along with a new feature script called remoteconfig. This will allow you to update the configuration/OS automatically on boot from a remote webserver. More detail on how to use this feature will appear at http://www.automated.it/asterisk be sure to read any notes there first.
3. At the minimum youll need a 64mb CF card but you can use a larger one if you wish and create futher partitions. Currenly when you create the CF from the image the following partitions exist
Disk /dev/hda: 8 heads, 32 sectors, 490 cylinders
Units = cylinders of 256 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 33 4208 83 Linux
/dev/hda2 34 354 41088 83 Linux
/dev/hda3 355 490 17408 83 Linux
4. Once booted you will need to make changes to the files in /dev/hda3/astlive-example, particularly networking and the zapata/zaptel configs. Note, if you rename the astlive-example directory to astlive then on the next boot the files will be copied and activated on the running system automatically. Using the example astlive directory includes a PASSWORD CHANGE for root from EPPING to epping (without quotes) as a demonstration. At the minimum you MUST change the networking to suit your environment, since they will change to what is in this directory too.
5. All partitions on the CF are unmounted after boot so if you need to work on them, you will need to specifically mount them.
6. Ive tested E100P, X100P and TDM40B cards using this install, and would be interested to hear of other cards proven to be working.
PHP Greeting card class 1.1
PHP Greeting card class can be used to compose and send greeting cards by email. more>>
PHP Greeting card class can compose and send an email message with a greeting either in text, in HTML with an image, or in HTML with Flash content.
The HTML version of the card may include a greeting picture.
Games::Euchre::Trick 1.02
Games::Euchre::Trick is a trick class for Euchre card game. more>>
Only one Trick instance is alive at one time per Euchre game. The Trick keeps track of which cards have been played, and provides useful functions to determine which cards are legal plays, as well as who is the winner of the trick.
The trick class makes the determination of which card beats which card, given the current trump and lead. The trick class knows how to handle an alone hand and it calls the playCard() method for each player in turn in its play() method, usually called from the Games::Euchre->playHand() method.
Khalkhi cards 0.2.2
Khalkhi cards allows you to have cards of the entries in your addressbook floating on the desktop. more>>
A card lists all properties of an addressbook entry. Are status services installed for a property, the status is displayed below the property item. Actions services are available by the context menu (right click on a property item), and so called data action services by the drop menu (drag a file/url onto the card or an item).
The program is based upon the Khalkhi framework, thus endlessly extendable by plugins. It cannot be used directly, is only available by a service within the framework. So install also the framework and the Khalkhi applet for Kicker:
http://www.kde-apps.org/content/show.php?content=54450
http://www.kde-apps.org/content/show.php?content=54451
Needs 0.2.2 of the Khalkhi framework (see link above).
Enhancements:
- adaption to rename of Contacts framework to Khalkhi framework
CreditCard Validator 1.8
The CreditCard Validator will help you tell: (1) if a credit card number is valid (2) which credit card vendor handles that number. It validates the prefix and the checkdigit. It does *not* contact the credit card company to ensure that number has actually been issued and that the account is in good standing. It will also tell you which of the following credit card companies issued the card: Amex, Diners Club, Carte Blanche,Discover... more>>
CreditCard Validator - The CreditCard Validator will help you tell:
1. if a credit card number is valid,
2. which credit card vendor handles that number.
It is a simple Applet to demonstrate the use of the ValidateCreditCard class.
It validates the prefix and the checkdigit. It does *not* contact the credit card company to ensure that number has actually been issued and that the account is in good standing.
It will also tell you which of the following credit card companies issued the card: Amex, Diners Club, Carte Blanche, Discover, enRoute, JCB, MasterCard or Visa.
ATM cards use a different secret scheme which this program does not handle. Unfortunately, there is not even a reliable way to tell an ATM card from a credit card just by the number.
It is primarily designed to be included in your own Java program, though it can be used standalone or as an Applet.
To install, Extract the zip download with Winzip, available from http://www.winzip.com (or similar unzip utility) into any directory you please, often C: -- ticking off the (user folder names) option. To run as an application, type:
java -jar C:commindprodcreditcardcreditcard.jar
adjusting as necessary to account for where the jar file is.
You must have Java version 1.1 or later installed to use this package.
See http://mindprod.com/jgloss/installingjava.html for details.
Enhancements:
Version 1.8
convert to JDK 1.5. simplify code using enum.
System Requirements:<<less
Games::Cards 1.45
Games::Cards is a Perl module for writing and playing card games. more>>
SYNOPSIS
use Games::Cards;
my $Rummy = new Games::Cards::Game;
# Create the correct deck for a game of Rummy.
my $Deck = new Games::Cards::Deck ($Rummy, "Deck");
# shuffle the deck and create the discard pile
$Deck->shuffle;
my $Discard = new Games::Cards::Queue "Discard Pile";
# Deal out the hands
foreach my $i (1 .. 3) {
my $hand = new Games::Cards::Hand "Player $i" ;
$Deck->give_cards($hand, 7);
$hand->sort_by_value;
push @Hands, $hand;
}
# print hands (e.g. "Player 1: AS 2C 3C 3H 10D QS KH")
foreach (@Hands) { print ($_->print("short"), "n") }
$Hands[1]->give_a_card ($Discard, "8D"); # discard 8 of diamonds
This module creates objects and methods to allow easier programming of card games in Perl. It allows you to do things like create decks of cards, have piles of cards, hands, and other sets of cards, turn cards face-up or face-down, and move cards from one set to another. Which is pretty much all you need for most card games.
Card 304 0.6
Card 304 project is a software version of the 304 card game. more>>
304 is a very popular card game in Northern parts of Sri Lanka. I am building a software version of it, so people can play it online!