retro-aim-server icon indicating copy to clipboard operation
retro-aim-server copied to clipboard

Add roll dice chatroom support

Open jgknight opened this issue 1 year ago • 0 comments

Description of the feature

On the original AIM servers, you could send a //roll command in a chatroom to make the server roll dice for you. The user 'OnlineHost' would respond with the result.

  • Normal: //roll
  • More dice: //roll-dice #
  • More sides: //roll-sides #
  • More sides and dice: //roll-dice # - sides #

Use case

It's just a fun feature to have, a gimmick for anyone who stumbles across this or remembers.

Potential challenges

As far as I can tell the server does not currently inspect or make any changes to chatroom messages, it just relays the contents of a message out to each user. We'd need to add some logic/parsing of chat messages. I'm unsure how this feature worked with stylized fonts etc, presumably you had to have //roll without bold or other html tags getting in the way of parsing.

Additional information

From searching online I came across some forum posts that described the limitations, mechanics and output format

http://forums.dumpshock.com/lofiversion/index.php/f20.html/t3181.html

Detailed explaination of AIM dieroller mechanics: the dieroller is activated with "//roll", and defaults to 2d6. It takes the arguments -dice# and -sides#; for -dice# # tops out at 15 and for -sides# # tops out at 999. Thus, for 2d6 you'd type

//roll (or //roll-dice2 or //roll-sides6 or //roll-dice2-sides6; they're all equivalent)

For 6d6

//roll-dice6

For 2d100

//roll-sides100

And for 15d999

//roll-dice15-sides999

Note that //roll and its arguments has to be the first thing on the line, and has to be the only thing on the line. Saying "My character casts a spell. //roll-dice12" will result in that text and nothing more. Also, curiously, this does not work in IM windows, only chats.

https://justinakapaste.com/aol-roll-dice/

For example, I sent the line //roll-dice15-sides999 to the chat and it displayed this: OnlineHost: ScreenNameHere rolled 15 999-sided dice: 865 428 352 744 577 485 171 738 315 278 599 533 172 983 731

Finally, as that page says, if a user has ignored the dice roller in the chatroom then Online Host will not show you their dice rolls.

jgknight avatar May 18 '24 16:05 jgknight