Git Product home page Git Product logo

ultimateownsz / pyseasgame Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 3.0 654 KB

Welcome to PySeas, an open-source project to create an exciting and engaging board game in Pygame, inspired by the popular game Sea of Thieves! This project is perfect for anyone interested in game development, Python programming, and creative collaboration.

License: GNU Affero General Public License v3.0

Python 100.00%
boardgame pygame pygame-games python

pyseasgame's Introduction

PySeas - Open Source Pirate (Adventure) Board Game

Discord PRs Welcome License

Project Description

Welcome to PySeas, an open-source project to create an exciting and engaging board game in Python, inspired by the popular game Sea of Thieves! This project is perfect for anyone interested in game development, Python programming, and creative collaboration.

About the Project

PySeas {working title} a tiled based adventure game Python/Pygame-CE project. It is based on a former school project, a board game made in Python.

Get notified about project updates

For organising the project we mainly use Codecks. Codecks is a management tool made for indie game developers, it is based on a card game and has a lot of similarities like Trello. The main thing what we liked about this is, we can show you how we make the game via open decks. Decks make it possible to share contens of any projects we are working on publicly on the web. You can create a account to get notified for updates or you can vote on cards.

Discord server

We also made a dedicated Discord server where you can engage in conversations about how to improve, add or give feedback to the developers. It also has the option to construct a message to send to Codecks to directly see it on the deck what is being worked on or being fixed.

Project Goals

  • Pygame version: We aim to create a pygame version, everything we wanted to do in Python wasn't possible so we decided to remake the game in Pygame: bringing enhanced graphics and more dynamic interactions.

For all new goals we refer to see Codecks to vote on cards with implementing features/goals. We also made improvements to give feedback within the Discord directly to Codecks..

Goals for later

  • Refactor the Python version: The project started out as an Python boardgame inspired by Sea of Thieves and is now changed to a bigger project and scope. We intend to first remake the game in Pygame first and later on refactor the game to Python's version too but with an ASCII look.
  • Unified Launcher: Our final goal is to provide a Pygame-based launcher that offers players the option to choose between the Python version and the Pygame version of the game, making it easy to play either version from a single interface.

Why Join PySeas?

  • Learn and improve your Python and Pygame skills through practical, hands-on development.
  • Collaborate with a community of like-minded enthusiasts and contribute to a shared goal.
  • Create something fun and engaging that others can enjoy and build upon.
  • Explore the world of game development and design, gaining valuable experience along the way.
  • Contributing to an open-source project can be a great addition to your resume or portfolio, showcasing your skills to potential employers or collaborators.
  • As an open-source contributor, you have the opportunity to influence the development and future features of the game. Your ideas and feedback are valued and can directly impact the project.

Whether you're a seasoned developer or just starting, your contributions are valuable. Let's create an amazing board game together!

How to Get Involved

This project requires Python 3.12 or above. Luckily you can set up a virtual machine to run the project with.

  1. Clone the Repository: Start by cloning the PySeas repository from GitHub.
  git clone https://github.com/ultimateownsz/pyseas.git
  1. Set up a virtual machine:

    Linux/MacOS

    python3 -m venv venv
    source venv/bin/activate
    

    Windows

    python -m venv venv
    venv\Scripts\activate
    
  2. Install dependencies:

pip install -r requirements.txt # For running the game (runtime dependencies)
pip install -r requirements_dev.txt # For local development
  1. Run this project:
python main.py

Local Development

See how to contribute: contribute

Linting and Formatting

We chose to use Ruff to automatically lint and format the code. Run pip install -r requirements_dev.txt to install Ruff and other relevant dependencies.

Important

Before you open a Pull Request, please run this bash commands to format your code properly and doesn't upset our linter:

ruff format . && ruff check --include I --fix . # this formats code and sort imports
ruff check . # run linting and perform fixes
mypy main.py

If you use powershell, run these commands:

ruff format .;
ruff check --include I --fix .;
ruff check .;
mypy main.py

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.