Skip to content

hobson/ggpy

 
 

Repository files navigation

General Game Playing pYthon

Under construction! Not ready for habitation. Apply here for volunteer construction work...

Open Source!

Anything by Hobson (the ggpy folder) is MIT License

Other bits (like Sam Schreiber's ggp-base folder) have separate FOSS licenses

Branches

  • j2py: Some of Sam's GGP-Base java packages ported to nonworking python.
  • master: From-scratch python player server (under construction)
  • sam: Most of Sam's java packages still in tact and working

Python Code Layout (plan)

  • reader: A GDL parser/interpretter/lexer
  • player: A GGP game playing service (socket server)
    • get_initial_state(): retrieve the starting game state
    • get_legal_moves(state, role): retrieve legal moves for (player) in
    • is_terminal(state): indicates whether a state is terminal.
    • get_goal(state, role): is the goal value for in .
    • get_next_state(state, moves): where moves are legal for in
  • viewer: An html5 viewer/logger/UX for players
  • util: Utilities
    • StateMachine(gdl): a state-machine instance generated from the GDL string using a parser and prover
    • PropNet(gdl): a propagation-net instance generated by parsing and processing the GDL string

See Sam Schreiber's GGP-Base code and documentation for the canonical implementation and to check my logic.

About

The General Game Playing Base Package

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 56.9%
  • Python 42.6%
  • XSLT 0.5%
  • Clojure 0.0%
  • Perl 0.0%
  • JavaScript 0.0%