A future version of Pokétwo

Overview

poketwo-next

Build Crowdin Dependencies

Pokétwo brings the Pokémon experience to Discord. Catch randomly-spawning pokémon in your servers, trade them to expand your collection, battle with your friends to win rewards, and more.

This repository hosts the code for Pokétwo's rewrite, which is still in progress, expected to be released in August 2022. Looking for the stable version of Pokétwo? Click here.

Components

Pokétwo is a collection of smaller components:

Supporting Services

These services handle important tasks and are relied on by other modules.

  • database — handles database operations, accepts GRPC requests
  • gateway — handles connections to Discord Gateway, sends events to RabbitMQ
  • imgen — handles image generation, accepts GRPC requests

Command Modules

These services consume Discord events from RabbitMQ, including commands and messages.

  • module-pokedex — Pokédex and Pokémon inventory-related commands
  • module-catching — spawning and catching of Pokémon
  • module-general — miscellaneous commands not belonging to any other category
  • module-market — the global Pokémon marketplace
  • module-auctions — (not yet implemented) Pokémon auction functionality
  • module-battling — (not yet implemented) battles between trainers
  • module-shop — (not yet implemented) the in-game item shop
  • module-quests — (not yet implemented) daily and weekly quests

Libraries

These components are shared code used by other services.

Deploying

Deploying Pokétwo is not simple, and is not meant to be. We do not recommend attempting to build or host Pokétwo by yourself. Instead, use this link to add the production Pokétwo instance to your Discord server.

If you would still like to run your own instance, perhaps for development purposes, and you know what you are doing, a sample docker-compose.yml is provided. As of now, however, there is no other documentation or instructions for building, and no support whatsoever will be provided.

License

This repository is licensed under the Mozilla Public License, version 2.0. If you wish to use or distribute this code, you may do so under the terms of the MPL. The full license can be found here.

You might also like...
Wrapped ICP (WICP) - A composable and interoperable wrapped version of ICP.
Wrapped ICP (WICP) - A composable and interoperable wrapped version of ICP.

Wrapped ICP - WICP Wrapped ICP (WICP) is a wrapped version of the IC's native token, ICP. Each WICP will be backed 1:1 with ICP, meaning that 1 WICP w

A rust-based version of the popular dnsgen python utility

ripgen A rust-based version of the popular dnsgen python utility. ripgen is split into two main parts: ripgen: A CLI utility that calls into ripgen_li

Verbump - A simple utility written in rust to bump and manage git semantic version tags.

Verbump - A simple utility written in rust to bump and manage git semantic version tags.

Ferris has to escape the creepers using a modified version of Dijkstra called A*
Ferris has to escape the creepers using a modified version of Dijkstra called A*

Ferris has to escape the creepers using a modified version of Dijkstra called A*

Rc version `tokio-rs/bytes`

RcBytes The aim for this crate is to implement a Rc version bytes, which means that the structs in this crate does not implement the Sync and Send. Th

🌌⭐ Git tooling of the future.

❯ Glitter Git tooling of the future. ❯ 👀 Features Config files Fast Easy to use Friendly errors ❯ 📚 Documentation For proper docs, see here ❯ ✋ What

Cassette A simple, single-future, non-blocking executor intended for building state machines.

Cassette A simple, single-future, non-blocking executor intended for building state machines. Designed to be no-std and embedded friendly. This execut

WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies.
WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies.

WebAssembly Tour WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies. We spend a lot of ti

Concurrency extensions for Future

futures-concurrency Concurrency extensions for Future API Docs | Releases | Contributing Installation $ cargo add futures-concurrency Contributing Wan

Argument parsing for the future 🚀

argi Argument parsing for the future 🚀 Features Macro-based approach, providing an intuitive way to layout a cli Rich auto-help generation, styling b

async-alloc-counter measures max allocations in a future invocation

async-alloc-counter measures max allocations in a future invocation see examples/ for usage This allocator can be used as follows: use async_alloc_cou

The protocol are designed and made for the future of cross-IP, cross-chain metaverse.

Avatar-protocol 化身协议 This project demonstrates how to use the Solana Javascript API to interact with programs on the Solana blockchain. The project co

Single-future, #![no_std] executor based on event bitmasks

Single-future, #![no_std] executor based on event bitmasks

Lupus is a utility to administer backups with future integration with rsync

Lupus is a utility to administer backups with future integration with rsync. Many other features are either included or planned such as chat bridges using rcon and or parsing the pipe output from programs/games.

A developer environment manager with a nice future

Motive A developer environment manager with a nice future. But first let's just make a simple task runner that takes advantage of a special version of

You can name anonymous Future from async fn without dyn or Box!

rename-future You can name anonymous Future from async fn without dyn or Box! PLEASE READ THIS THIS PROJECT NOT YET WELL TESTED! DON'T USE THIS IN PRO

An iterator adapter to peek at future elements without advancing the cursor of the underlying iterator.

multipeek An iterator adapter to peek at future elements without advancing the cursor of the underlying iterator. Check out the documentation for more

AniTUI is a CLI (and in the future a TUI) app for searching and wathching anime in MPV.

AniTUI is a CLI (and in the future a TUI) app for searching and wathching anime in MPV. This is a Rust rewrite (quite literally a rewrite) of Pystardu

The new, performant, and simplified version of Holochain on Rust (sometimes called Holochain RSM for Refactored State Model)

Holochain License: This repository contains the core Holochain libraries and binaries. This is the most recent and well maintained version of Holochai

Owner
Pokétwo
The Pokémon experience, on Discord.
Pokétwo
async-alloc-counter measures max allocations in a future invocation

async-alloc-counter measures max allocations in a future invocation see examples/ for usage This allocator can be used as follows: use async_alloc_cou

Geoffroy Couprie 2 Dec 3, 2021
Lupus is a utility to administer backups with future integration with rsync

Lupus is a utility to administer backups with future integration with rsync. Many other features are either included or planned such as chat bridges using rcon and or parsing the pipe output from programs/games.

null 3 Sep 19, 2022
You can name anonymous Future from async fn without dyn or Box!

rename-future You can name anonymous Future from async fn without dyn or Box! PLEASE READ THIS THIS PROJECT NOT YET WELL TESTED! DON'T USE THIS IN PRO

Jun Ryung Ju 54 Sep 17, 2022
An iterator adapter to peek at future elements without advancing the cursor of the underlying iterator.

multipeek An iterator adapter to peek at future elements without advancing the cursor of the underlying iterator. Check out the documentation for more

Luca Palmieri 20 Jul 16, 2022
A lightning fast version of tmux-fingers written in Rust, copy/pasting tmux like vimium/vimperator

tmux-thumbs A lightning fast version of tmux-fingers written in Rust for copy pasting with vimium/vimperator like hints. Usage Press ( prefix + Space

Ferran Basora 558 Sep 21, 2022
A simplified but faster version of Routerify

Routerify lite Routerify-lite is a simplified but faster version of Routerify. It only provides below functions: path matching error handling Why not

jinhua luo 6 Aug 24, 2021
🦸‍♂️ Recast migrates your old extensions to AndroidX, making them compatible with the latest version of Kodular.

Recast Recast helps make your old extensions compatible with Kodular Creator version 1.5.0 or above. Prerequisites To use Recast, you need to have Jav

Shreyash Saitwal 12 Jun 2, 2022
Rust version of tomnomnom/waybackurls

wayback-rs Rust version of tomnomnom/waybackurls Command line interface for fetching url from Wayback Machine, CommonCrawl, VirusTotal.

null 3 Oct 22, 2021
Incremental, multi-version remote backup tool for block devices.

bsync Incremental, multi-version remote backup tool for block devices. The on-disk backup format is a SQLite database and I've been dogfooding this on

Heyang Zhou 7 Aug 21, 2022
Convert Hygea calendar to an iCal file to easily import it to Google Calendar (Rust version)

Hygea to iCal Goal Hygea provides a calendar via PDF and an application called Recycle. I just wanted to use an iCal file to import it in my calendar.

Guillaume Quittet 2 Oct 28, 2021