Coder Social home page Coder Social logo

werewolves-of-cairo's People

Contributors

akhercha avatar

Watchers

 avatar  avatar

werewolves-of-cairo's Issues

feat: Implement dojo entities for lobby / player logic

Feature description

Now that the design are roughly documented, let's implement them.
We will start by implementing the overall models & the Lobby system so players can join/leave/create lobbies & create a new game.

Acceptance criteria

  • Models created in `src/models/,
  • System created in src/systems,

feat: Assign random roles on game creation

Blocking: #12

Feature description

As soon as the compositions are created, we can assign random roles to players using the Randomizer entity.

Acceptance criteria

  • the src/systems/game.cairo file has been updated & assign random roles for each player.

docs: Start thinking how the real game loop will work

Feature description

After the implementation of the Lobby & the main Game models / systems, we will have to work on the game loops. There's stil uncertainty on how it will exactly works so we have to figure this out.

Acceptance criteria

  • A solution have been found + documented for the game loops & we have a list of things to do next.

feat: Game system & tests

Feature description

The lobby system have been included & tested.
We can then now implement the Game system & test it.

Acceptance criteria

  • Game system in src/systems/game.cairo
  • Related unit tests in tests/systems/test_game.cairo

feat: Design the dojo components

Feature description

Learn more about Dojo and create a document with every components needed (Models etc...)

Acceptance criteria

  • A PR introducing a new docs/ folder with the design
  • New tasks describing the components to create.

feat: Re-add the unit tests in the CI

Feature description

Currently the CI only runs sozo build without sozo test (because we have 0 tests basically).
Once the unit tests have been created, we need to re-add them in the CI.

Acceptance criteria

  • The CI have been updated with the tests.

feat: Investigate if we can use new cairo components

Feature description

Cairo released components not so far ago.
We should check if they work with dojo contracts, if yes we should start by creating a component to access the .world() parameter.

Acceptance criteria

Checked + Added in code if possible.

bug: `sozo tests` runs tests two times

Bug Report

Werewolves of Cairo version: 0.0.1

Current behavior: sozo test runs two times the same tests

Expected behavior: Tests should run only once

Steps to reproduce: Run sozo test

Related code: N/A

Other information: Probably a bug with sozo, need to investigate

feat: Add roles compositions per number of players

Feature description

Depending on the number of players, we should have certain compositions possibles.
For example, for only 3 players, the composition might be:

  • 2 Townfolks,
  • 1 Werewolf

It must be done for every number between 3 & 12. We can probably add multiple compositions possibles sometimes (or do it later).

Acceptance criteria

  • Compositions have been added in src/data/compositions.cairo

feat: Set up a Figma & design an overview of the pages needed

Feature description

Create a Figma for the team & start thinking about which pages would be needed for the game (for example: login, home, lobby creation etc...)

Acceptance criteria

  • Figma created
  • We have an idea of what pages we will need (either on the figma or in a docs/ folder)

feat: Add names for players

Feature description

Multiplayer game so we need names for players.

Acceptance criteria

  • An abstraction have been added, now we would have:
    Profile => profile of a player wallet with avatar, name etc...
    Waiter => player waiting in lobby,
    Player => player in game.

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.