Coder Social home page Coder Social logo

gryffon / eggofpanku Goto Github PK

View Code? Open in Web Editor NEW
3.0 6.0 2.0 6.41 MB

Egg of P'an Ku is a tabletop application for playing Legend of the Five Rings either in solitary mode, or over the internet with an opponent.

License: GNU General Public License v2.0

Python 100.00%

eggofpanku's Introduction


                    EGG OF P'AN KU 

          an unofficial Legend of the Five Rings online tabletop


Table of Contents

  - Overview
  - License
  - Quickstart
  - Playing the Game
  - Communicating
  - Card Database
  - Using Image Packs
  - Technical Details
  - News & Changes



Overview

  Latest Release: 1.0.0 (2014-Jan-29)

  Egg of P'an Ku is a program for playing the Legend of the Five Rings collectible card game online. It acts as a virtual tabletop to which people can connect and play the game using digital representations of cards.

  Egg of P'an Ku does not enforce any game rules, but merely takes care of the tabletop itself, cards in and out of play, tokens, and players. Other programs that function similarly are The Game or Gempukku for Legend of the Five Rings, and Apprentice for Magic: the Gathering.

  This product is not in any way endorsed by or otherwise associated with the Alderac Entertainment Group or any of their affiliates.

License

  Egg of P'an Ku is copyright (C) 2008 Peter C O Johansson.
  Paige Watson has been updating the source code from release version 0.8.0 onward. 
  Ryan Karetas has forked the code as of Dec 2013.

  Source code is currently available at https://github.com/gryffon/eggofpanku

  It is Free Software, licensed under the GNU General Public License (version 2). You are free to use, copy and modify this program subject to certain restrictions. For more information, see LICENSE.

  

Installation

Developers ONLY - Please see /docs/Developer Installation Guide.txt for instructions on how to install the source and deveopment resources.

Download the installation executable file

  Latest stable release is still available from the Egg of P'an Ku github site (https://github.com/gryffon/eggofpanku).
  

  The Egg of P'an Ku application is currently only supported on MS Windows.

You need to install a card database (cards.xml). You can download the latest version from the downloads page at Kamisasori (http://www.kamisasori.net)
  
  There are currently two versions, a "Emperor only" version and a "complete" version. "Emperor only" is the reccomended version unless you are playing with legacy cards.

  Unzip the cards.zip into a folder that you can find later.

  **To update your local database (when new cards are released, say), simply replace cards.xml and delete cards.db from the installation directory. The next time you run Egg of P'an Ku, the database will be reloaded.
  

Run the installer

  After the installer runs, it will ask you to start the application. When you first start the application, it will ask you to point to the cards.xml file.


(optional)Download the image packs

  You will probably also want to download the image packs, at least for the edition that you are playing, You can find these on the
  Kamisasori (http://www.kamisasori.net) web site. These image packs should be unzipped into the images/cards directory after installing the application.

  For more on the image packs, see "Using Image Packs" below.


--------------------------------------------------------------------------------
 

Setting up the application

Settings and Properties

  One you've installed the application and started it up, you'll want to look at the Settings dialog to configure the application to suit your play style. You can find this by going to the File\Preferences menu item.

  There are three tabs that will let you customize your game table and play style.

  General

  This tab allows you to change the Player Name. The player name is the name that will appear in the chat box and in the player list, when playing against another person.

  Database/Images

  Database Settings will tell you when the database was made, where it came from and the file path on your computer. You can choose to "Reload" it, if you have downloaded a newer version, or you can choose to change the file you're using by choosing the "Change Database" button. 

  Image Pack is where the application looks for the card images.
  
  Change the directory path by editing the text box.  The path should be relative to the application.

  Playfield

  Canvas (or table top) background can be changed by choosing the background setting along with the color.
  You can also choose a background image by checking the box and choosing the file.

  Attachments allows you to select which cards can have other cards attached. By default, only Personalities can have attached card, but for ease of use, you may want to allow holdings and/or strongholds to have other cards attached. 

  **Don't confuse the ability to attach cards as a rules change. 
  I attach holdings to other holdings and events to strongholds to save space on the table top.

 Once you are done with setting up the application, you're ready to begin playing.


Hosting a table

  To play a game, you must first start a table server.

  Go to the File menu and click "Host Table".

  You will automatically connect to your own table (and so can others if you give them your hostname).

  If you wish to connect to another player hosted game, go to the File 
  Menu and click "Connect".

  Notice that when you start the host server, the chat area shows your IP address. This is the address that you want to give to any opponent that is trying to connect to your host.  Note that the port is included at the end of the IP address.  You must be on the same port, which by default is set to 18072.

  No game has been started yet, and there are no players; only connected clients.
  **This is like your local playgroup sitting around the table, but no one has gotten their decks out of their bags yet.


--------------------------------------------------------------------------------

 

Starting a game
  To start a game, clients must first join the game. Go to the File menu again, and select "Join Game". 
  
  You will be prompted to select a deck to play (a few are shipped with Egg of P'an Ku, but of course you'll want to compose your own).

  If you want to test your deck by playing solo, you can just start the game. If not, once all clients interested in joining have done so, the host can start the game.

  Again in the File menu, select "Start Game".
  
  The server will set up the game, fetch each player's stronghold, and set starting honor as appropriate.


--------------------------------------------------------------------------------

 

Setting up the Playfield
  As mentioned above, your stronghold should be on the playfield, but not much else.

  Do these in any order:

  - Go to the Fate Deck menu and select "Draw Serveral" (<ctrl> + <shift> + D) or use the icon and draw 5 cards.

  - If you are going second, right click on your Dynasty Deck and choose "Look Through" (or select "Search" from the Dynasty Deck menu) and drag a legacy holding onto the playfield. Double click it to bow it.

  - Drag 4 Dynasty cards from your Dynasty Deck pile to the playfield for your provinces.

Now your ready to start....

Enjoy!


Other helpful items:

Communicating

  Below the chat log is an entry box. You can use that to talk to your fellow players at the table.
  
  You can also use it to change your name; type '/name desiredname' to change your name. This change is persistent and saved to your settings, so you will not need to do it again next time you play.



Using Image Packs

  Egg of P'an Ku supports the same kind of image databases used by The Game and Gempukku v3 (although it also provides generic card images for any missing card images).
  
  To use image packs, simply extract them into the images/cards/ subdirectory in your installation directory, making sure to preserve their own directory names. In the end, the structure should look like this:
  
  Installation directory
  - EoPK.exe
  - readme.txt
  - images/
    - cards/
      - STS/
        - STS001.jpg
        - STS002.jpg
          ...
        HV/
        - HV001.jpg
        - HV002.jpg
          ...
        SE/
        - SE001.jpg
        - SE002.jpg
          ...

  And so forth, for any editions for which you have image packs. They will be automatically used by the program as appropriate.

  A good place to get image packs is Kamisasori no Kaisho, located at http://www.kamisasori.net/



Technical details

  Egg of P'an Ku is written in Python 2.7. 
    Additional Libraries:
      wxPython - 2.8 For user interface management 
      simplejson - 3.3.0  For network message serialization
      pyOpenGL -  3.0.2  (through wx) For playfield rendering 
      PIL - 1.1.7  For image loading,
  
  If you are using a Win32 executable version of Egg of P'an Ku, it was packaged using py2exe.
  
  The default server port is 18072, so if you are behind a firewall and want to host games, that's the port you need to forward/open.

eggofpanku's People

Contributors

gryffon avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

p4thos theanine

eggofpanku's Issues

Switch to pyinstaller from py2exe

py2exe will create windows packages, however pyinstaller will create packages for windows, mac, and linux. Look at using this instead of multiple tools to do the same thing for each platform.

How to report about jigoku online ?

Hi,

Sorry Guy to flood this repository with a question about jigoku online, but that one is archived.
Where can I report at this time?

Thanks for your help.

Chiller

Remove usage of odict.py

odict.py provides an ordered dictionary object. This is currently only use to store the list of card sets. Seems extraneous to keep around. Look for ways to remove this.

Import from Clipboard not working

Trying to import from clipboard ends up with this error:

Traceback (most recent call last):
File "C:\Users\Gryffon\Documents\GitHub\eggofpanku\src\gui\deckedit.py", line
965, in OnMenuImportClipboard
self.OpenDeckFromClipboard()
File "C:\Users\Gryffon\Documents\GitHub\eggofpanku\src\gui\deckedit.py", line
858, in OpenDeckFromClipboard
win32clipboard.OpenClipboard()
NameError: global name 'win32clipboard' is not defined

Add created cards in the database and a menu to add them

Why not include created cards in the database? With proper filters, it would accelerate EopK games, since players wouldn't have to create cards on the spot every time they play New Cavalry Tactics, Bo of Water and so on. We would need to have a directory for their images in the images/cards dir (the images are on Oracle for some, but not all I think. I don't lmind creating new ones if need be). We would also need a menu to add them.

Sensei cards need to display stat mods

Sensei card type needs to display stat modifications (even better if it would actually modify the Stronghold's stats or display the modification next to it's stats)

Clear all markers at end of turn

t would be nice to have an end turn system which would trigger the removal of all markers, unlike currently when they are removed automatically when you straighten all your cards. Maybe trigger it on when your opponent straighten all his cards instead?

Remove usage of markers.dat and tokens.dat

Currently Egg of P'an Ku is using a couple of different methods of storing data. It would be nice to minimize this. Getting rid of dat files sitting around is probably low hanging fruit in this regard.

markers.dat and tokens.dat can either be converted to an xml file, or just be included as data from an import.

Remove hard-coded directory references

Locations to things such as xml files and images all refer to hard-coded locations(generally the directory it's in, because all the files used to be in one directory). Change this to be able to specify the directory to look in.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.