a discord-based monster catching game engine, used for Lozpekamon on our Discord server

Overview

discord-monster-catching-game

a discord-based monster catching game engine, used for Lozpekamon on our Discord server

How to Use

Requirements

Installation

  • clone this repo to your computer or server
  • open command line from the root of the folder and run npm install
  • create the environment variable DISCORD_BOT_TOKEN and set it to your bots token (easiest way to to add it to the .env file)
  • run npm start

Development

Commands

To add a command, create a new javascript file in the ./commands folder. This file should export a config object and a execute function.

Command Config

An object (json) containing the information used to create the command.

Properties:
  • name - the name of the command, that the user will type in
  • description - the description text shown to the user when selecting a command
  • type - the type of command, stored in the global ApplicationCommandType, either ChatInput, User, or Message
  • options - an array of additional inputs for your command (optional)

The options also have a type which describe what kind of data the user can submit. list of ApplicationCommandOptionTypes

Example:
module.exports.config = {
	name: 'my-command',
	description: 'what my command does',
	type: ApplicationCommandType.ChatInput,
	options: [
		name: 'input name',
		type: ApplicationCommandOptionType.String,
		description: 'description of input shown to user',
		required: true 
	]
}

More info: Discord API Docs - Application Command Object

Command Execute Function

A function that should be run when this command is run. Recieves interaction as the first argument.

Example:
module.exports.execute = async function (interaction) {
	await interaction.reply('you used a command! good for you!');
}

Reactions

To add a reaction, create a new javascript file in the ./reactions folder. This file should export a config object and a execute function.

Reaction Config

An object (json) containing the information used to listen for the reaction

Reaction Execute Function

A function that should be run when this reaction is used. Recieves reaction and user as arguments.

Example:
module.exports.execute = function (reaction, user) {
	console.log('the test reaction was triggered');
}
Properties:
  • emojiId - the discord id # for the emoji

Goals:

Main goal is to rewrite the legacy code into the newer version, running on discord.js 14.

  • create new discord.js v14 bot
  • implement real discord commands
  • implement reaction system
  • transfer over all old commands
  • transfer over all old reactions
  • transfer over wild monster appeared system
  • separate functions into different files
  • separate config data, monster data and user data into separate json files

commands to add:

  • new monster command, with image upload (popup?)
  • change emoji server

future goals:

  • individual monster owning system
  • monster level up system
  • monster battle system
  • additional data storage options (database)
  • high scores list(s) with top trainers/monsters
  • economy plugin
You might also like...

The project integrates workflow engine, report engine and organization authority management background, which can be applied to the development of OA, HR, CRM, PM and other systems. With tlv8 IDE, business system development, testing and deployment can be realized quickly.

The project integrates workflow engine, report engine and organization authority management background, which can be applied to the development of OA, HR, CRM, PM and other systems. With tlv8 IDE, business system development, testing and deployment can be realized quickly.

介绍 项目集成了工作流引擎、报表引擎和组织机构权限管理后台,可以应用于OA、HR、CRM、PM等系统开发。配合使用tlv8 ide可以快速实现业务系统开发、测试、部署。 后台采用Spring MVC架构简单方便,前端使用流行的layui界面美观大方。 采用组件开发技术,提高系统的灵活性和可扩展性;采

Dec 27, 2022

Monolithic repo for api server, image server, web server

Onsecondary Market Deployed at https://market.onsecondary.com Monolithic repo for api server, image server, web server TODO -use a script to cull expi

Jan 11, 2022

Free, open source game engine online

microStudio is a free, open source game engine online. It is also a platform to learn and practise programming. microStudio can be used for free at ht

Dec 30, 2022

Trying to make a game engine apparently.

Clockwork - a game engine from scratch The goal of this project is to build a game engine, I still don't know what it needs to do, but will update thi

Oct 31, 2021

Melon.js game engine bindings for Solid

Melon Solid This project fuses the awesome frameworks Melon.js (for game development) and Solid.js (for making websites). By combining them together y

Oct 4, 2022

An ASCII (technically PETSCII :)) "Game Engine" for JavaScript

Announcement! I'm putting this project on hold, because I remembered how much I hate JavaScript. (Please don't take offense, it's just my preference.)

Nov 12, 2022

The 2D Game Engine written on JavaScript.

CherryEngine The 2D Game Engine written in JavaScript. NEW UPDATE Version 1.2 Added: TypeObjectError.js Changed: static methods are not static now, yo

Oct 26, 2022

Attempt #2 at creating a game engine with Sciter.

Attempt #2 at creating a game engine with Sciter.

JogoMaker Attempt #2 at creating a game engine with Sciter, with love and care. For Attempt #1, see this project, which was hastily thrown together as

Sep 5, 2022
Owner
Lospec
A website dedicated to free tools and resources for people making Pixel Art and other restrictive digital arts.
Lospec
Kyrillos Hany 14 Aug 10, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
BMI Calculator can give us the bmi result of our bmi on the basis of our corresponding height and weight.

BMI means body mass index. Body Mass Index (BMI) is a person's weight in kilograms divided by the square of height in meters.

Bipronath Saha 1 Jan 20, 2022
MUI Core is a collection of React UI libraries for shipping new features faster. Start with Material UI, our fully-loaded component library, or bring your own design system to our production-ready components.

MUI Core MUI Core contains foundational React UI component libraries for shipping new features faster. Material UI is a comprehensive library of compo

MUI 83.6k Dec 30, 2022
Generate link preview using our app, API or our NPM package.

get-link-preview ?? View the link preview using our App. Use the API to generate link preview in your app or use the NPM package to use the custom hoo

Siddhi Gate 25 Dec 21, 2022
This package includes the sensible ESLint configuration used by our team

TypeScript + Prettier ESLint configuration for CasterlyApp team (and others)

Casterly 2 Jan 26, 2022
An ESLint shareable configuration that used in our projects.

eslint-config An ESLint shareable configuration that used in our projects. Install npm install -D @rahagia/eslint-config or with yarn yarn add -D @rah

Organisasi Bahagia 5 Apr 18, 2022
An ESLint shareable configuration that used in our projects.

eslint-config An ESLint shareable configuration that used in our projects. Install npm install -D @clytage-pkg/eslint-config or with yarn yarn add -D

Clytage 6 Nov 17, 2022