Giter VIP home page Giter VIP logo

Comments (6)

ArtemGr avatar ArtemGr commented on June 12, 2024 1

It's not just the effort, it's that treating the non-parsable parts of the expression as comments will make the bot's behaviour flacky and unpredictable. I see a lot of typos in the bot. People would mistype the roll modifiers and get an error. If we treat anything we can't parse as comments, then they'll get a wrong roll instead. I think that getting a wrong roll, where we misinterpreted a part of the expression as a comment, will be much more confusing than an explicit error.

So I really don't think that treating just about anything as a comment is a right way to go for the bot's default behaviour.

On the other hand, it's possible to implement a tunable configuration that on a particular channel would switch the bot into a simpler D&D only mode or something, were the syntax is fixed and anything else can be treated as comments. I think I will consider this with enough support from the backers.

Thanks for your input. I'm glad we shed some light on the subject.

from sidekick.

ArtemGr avatar ArtemGr commented on June 12, 2024

I did this initially but then reconsidered. There's a lot of dice systems out there besides D&D and the syntax might be quite unpredictable for all I know. Here's an example from just a day before: #37 (comment). I'd like a clear separation between the comment and the expression proper in order not to be dancing around guessing whether something is an expression or a comment.

What you might try to do instead is memorize your initiative roll with "/r $initiative = 1d20+7".
Rolling "/r $initiative" is both descriptive and faster.

from sidekick.

ArtemGr avatar ArtemGr commented on June 12, 2024

What I'd rather do is the "/r $initiative all" syntax. It will get the stored initiative rolls of all the active players on the channel, roll them and print a sorted list. How does that sound?

And I've just thought of the "/r $initiative all desc" and "/r $initiative all shuffle" options to control the sorting.

from sidekick.

Taelia avatar Taelia commented on June 12, 2024

Hmn, Roll20 has the syntax to just display any text, or even display inline dice rolls. I was just so used to that system that it took me much too long to figure out why I was getting errors all the time. (I love the error messages, though.)

The most important thing, at any rate, is to make clear what the roll was for. If I type "rolling spot check", and then two other people talk while I finish writing up "/roll 1d20 + 7" and press enter, then the GM has to process which roll was for what again. It's a little bit messy; adding what a roll was for in the bot response makes it a lot cleaner.

We can do without, obviously, but its minor inconveniences adding up all the time.

In my own simple python bot, I checked for the character | and printed out anything that came after as plain text. It's not as sexy, but it works.

from sidekick.

ArtemGr avatar ArtemGr commented on June 12, 2024

In my own simple python bot, I checked for the character | and printed out anything that came after as plain text. It's not as sexy, but it works.

How is that different from the "#" comment character used by Sidekick?
Have you missed it in the docs? It's in the second example.

from sidekick.

Taelia avatar Taelia commented on June 12, 2024

It... isn't D: sorry for the confusion, that was just to make sure I explained the 'print text'-thing correctly. I could've used # as an example too. It was more to convey that $initiative isn't quite what I'm looking for.

If it's too much effort for too little gain, don't worry about it!

from sidekick.

Related Issues (20)

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.