GithubHelp home page GithubHelp logo

dlvalentine / fate Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 61 KB

A dice roller bot for discord with GM mode!

License: MIT License

JavaScript 100.00%
dnd pathfinder pathfinder-rpg dice dice-roller dnd-tools pathfinder-game pathfinder-tools discord discord-bot javascript

fate's Introduction

fate

A dice roller bot for discord!

Adding fate to your Discord Server

Click here to do that.

I run this on a little raspberry pi out of my basement... so... if there's a ton of traffic I imagine it won't be pretty. Maybe one day I'll move it to AWS or something.

NOTE: My pi running Fate died a while back, so consider the above link dead for now. I'll probably spin it back up soonβ„’

So you forked it? Now what?

You can create an app/bot via Discord for Developers

fate (or, I guess your new fork) requires NodeJS to run. All other dependences can be installed via npm once you have NodeJS installed.

Be sure to open auth.json and include the secret token that Discord will use to login as that bot. You can also include specific channels on your server in channels.json to be able to send messages strictly to a specificed channel.

  1. clone/download repo
  2. cd to directory*
  3. npm install
  4. node fate.js

* 2.5 See above note for updating auth.json and (optionally) channels.json

~ let fate (or your fork!) decide ~

Contributing

Seeing as you'd need to create your own app/bot to make changes, feel free to re-release this as your own flavor of a dice roller. They're a dime a dozen, anyway. MIT license, so just gimmie a shoutout and I'm happy.

But if you'd like to improve this project, make a PR :) I'm happy to accept changes.

Commands

!fate : Print the commands.... y'know. This.

!r [argument] : Given a dice string, like 3d6, roll a specified number of dice of a type. No need to include 1 for single die. You can add bonuses or penalties with - and + after the quantity/type string.

!gr [argument] : the same as !r, but will be whispered to the author for a "hidden" roll. Typically used for GMs

!srd : Posts a link to the online SRD for Pathfinder.... maybe one day configurable to go to other SRDs

!e [argument] : Sends a formatted "ENCOUNTER" text block to the log, in order to help break up text between encounters in your server

!g [argument] : The same as !e , but for "GRANTED" - as in, granting items or experience

!motd : Will repeat the Message of the Day, as configured in motd.txt

Examples

!r d20: roll 1 d20.

!r 2d20: roll 2 d20s.

!r 1d6+2: roll 1d6, adding a bonus of 2.

And so on. It works similar to the Roll20 Dice Roll system.

Depending on your argument, it will return the expected messages, complete with a reference to who rolled!

example output

fate's People

Contributors

dlvalentine avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

camillescott

fate's Issues

[Release] auth.json and channels.json

Before publicly releasing, do the following:

  1. Remove token from auth.js
  2. commit
  3. Add auth.js to .gitignore, and rewrite README
  4. commit

This is so that server secret tokens are kept... secret. But allows users to use the safe auth infrastructure.

If this gets enough traction, I'll just host fate somewhere. But it is also nice to have this visible πŸ‘

[BUG?] Incorrect user name

In Fate's response, the name used is the account name, not the nick used in the channel where Fate is deployed. Fix it. thx.

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.