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...
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

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.

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

Original Version Management System based on Git
Original Version Management System based on Git

nss (noshishi) Original Version Management System based on Git. Learning git and rust for good developer. Usage Install cargo install nssi how to nss

Github mirror of codeberg repo. Monitor live bandwidth usage/ network speed on PC. Native version also available for Android, separately.
Github mirror of codeberg repo. Monitor live bandwidth usage/ network speed on PC. Native version also available for Android, separately.

Netspeed Monitor Netspeed is a cross-platform desktop application that shows the live upload speed, download speed and day's usage as an overlay. Feat

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
Rust Stream::buffer_unordered where each future can have a different weight.

buffer-unordered-weighted buffer_unordered_weighted is a variant of buffer_unordered, where each future can be assigned a different weight. This crate

null 15 Dec 28, 2022
Alternative future adapters that provide cancel safety.

cancel-safe-futures Alternative futures adapters that are more cancel-safe. What is this crate? The futures library contains many adapters that make w

Oxide Computer Company 12 Jul 2, 2023
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 598 Jan 2, 2023
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 7 Dec 30, 2022
🦸‍♂️ 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 13 Dec 28, 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