Jump to content

FFXIV Discord RP Event Notification Bot


Recommended Posts

**NOTE** I FORGOT THESE INSTRUCTIONS EXISTED AND WILL REWRITE THEM SHORTLY, COMMANDS ARE ABOUT 4 YEARS OUT OF DATE 

Use the invite link at htps://xiv.page.link/discordbot  and use the /configure-channel slash command to set the bot up.

 

I apologize for the inconvience.

 

~ Erah'sae

 

 

 

I figured since I mentioned it in another thread I'd just bite the bullet and post it here instead of replying to the pm's about it. Guess this makes it 'quasi-official public alpha release time'.

 

Note: this is still running on a development server, expect some outages, screwiness, and bugs.

 

To add the discord bot to a channel you must have "Manage Channel" permissions and follow the below link. 

htps://xiv.page.link/discordbot

 

Once it's there, give it a roll to prevent it from talking in channels you don't want it interacting with.

 

Use the !help command for more information about the bot. It is suggested to pick a channel and use the following commands:

 

!alerts add notifications
!alerts add daily
 

 

Please note setting your time zone is fidgety, it requires the 'exact' name of the timezone.Here are some standard ones:

 

● GMT Standard Time           - TZ Offset: 1   - Time Now: 5:11 PM
● Pacific Standard Time       - TZ Offset: -7  - Time Now: 9:11 AM
● US Mountain Standard Time   - TZ Offset: -7  - Time Now: 9:11 AM
● Central Standard Time       - TZ Offset: -5  - Time Now: 11:11 AM
● US Eastern Standard Time    - TZ Offset: -4  - Time Now: 12:11 PM
 

 

So to set the bot in your channel to Pacific time you would use:

!setTZ Pacific Standard Time
 

To get a look at the bot before inviting it to your discord a test bed discord can be joined by following the below link:

https://discord.gg/Rd6jJvA

 

It is also the easiest place to get in touch with me for help.

Edited by Erah'sae
Link to comment

I've been using this for a while and it is WONDERFUL. Can strongly recommend.

 

The one thing I will say is that (at time of posting!) for daily blasts, you really want it set to a timezone that is UTC-5 or behind, because I had mine set to UTC+0 for a while and it kept missing events from the daily blast because they were after midnight UTC+0, therefore "the next day", but the "next day"'s blast didn't go out until 5am UTC+0... after the events had already ended.

 

Took me a while to work out what was going on there - I figure it's an artefact of the already-fiddly timezone setting method - so I thought I'd pass on my recommendation of setting it / keeping it set to UTC-5 or behind!

Link to comment

I've been using this for a while and it is WONDERFUL. Can strongly recommend.

 

The one thing I will say is that (at time of posting!) for daily blasts, you really want it set to a timezone that is UTC-5 or behind, because I had mine set to UTC+0 for a while and it kept missing events from the daily blast because they were after midnight UTC+0, therefore "the next day", but the "next day"'s blast didn't go out until 5am UTC+0... after the events had already ended.

 

Took me a while to work out what was going on there - I figure it's an artefact of the already-fiddly timezone setting method - so I thought I'd pass on my recommendation of setting it / keeping it set to UTC-5 or behind!

 

Hrm, that's something I didn't think of...

 

It currently runs on a US Central Time clock (I'm lazy and it's running on a dev box set to us central local time.)

I should change it to do the daily notifications at midnight on the server time zone...

 

I'm glad you noticed this before I moved it to a UTC+0 production server.  That would have been hilarious.

Link to comment

This is really cool. I'll be implementing it to my Discord friends' channel immediately. Thanks for the time and work put into making this handy tool!

Link to comment
  • 2 months later...

Figured I'd start pushing the change logs to this as well:

 

Balmung RP Bot Change Log v0.9.27:

 

- Added fudge dice to the !roll command. Use !roll #f to roll # fudge dice.

- Experimenting with some new timer / event generation code to better handle issues with non-US TZs

- Hardened the bot against discord related hiccups causing malformed messages to be received.

- Several other memory optimizations and channel message relay optimizations have been put into place.

Link to comment

Fudge, Timezones are Hard

or Balmung RP Discord Bot version 0.9.5

 

No really, they’re a pain in the tail.

 

The discord bot should now properly give a full 24 hours of events reguardless of your timezone and respecting daylights savings time borders for anywhere in Microsoft’s TimeZoneInfo database.

 

In addition the ‘daily’ notifications (set by !adddaily and !removedaily) will now broadcast at midnight local time to a channel instead of midnight at US Central.   This will include events happening at 'midnight’ of the next day just to make sure you don’t miss anything.

 

In other news, !roll feature has been updated to support 'Fudge’ dice used in the Fate based systems (like Fate-14).

 

Use !roll #f to roll # number of fudge dice. 

 

Ex: 

[12:18 PM] erroch: !roll 4f 

[12:18 PM] BalmungRPBot: @erroch, rolling 4f: Value: 1 Dice:  [-1] [1] [0] [1]

 

If you like what we’re doing with this stuff, feel free to support future work on our Patreon.

 

Enjoy! 

~ Erah’sae

 

PS: Yeah, the fudge dice were in for the last update, but I've improved them enough to mention this time. 1's happen with the same frequency as -1's now. Tested over near 20 million iterations with a deviation of about 1.5% between the +1, -1, and 0.

Link to comment
  • 3 weeks later...

I am not saying it was legacy code...

Balmung RP Discord Bot version 0.9.7

 

But it was legacy code.

So, I started writing the bot back in earlier days of Discord.  The platform’s grown and changed as lot and since a lot of stuff kept working, I hadn’t really gotten around to changing a lot of the underlying code.  Well, something broke in my dealing with deleted channels, and that in turn broke other things like the daily event feed, etc.

 

Long and short, the bot’s been updated to handle this (and other unforeseen eventualities)

 

Along with this, I’ve robustified the thread handling on the bot so it should better handler larger volumes of messages with fewer slowdowns.  Dealing with the Google Calendar API is still ‘slow’ until it’s cached, but everything else is a bit snappier.

Link to comment

Minor Discord Bot Update (0.9.8.1)

 

Added an “&purge x” command which removed then last x messages from the current channel.  Both the bot and the user need the Manage Messages permissions in the channel for this to work.

Link to comment
  • 2 weeks later...

Discord broke the bot if you use categories.

 

 

Discord broke how the bot iterates channels with it’s ‘categories’ update.  If you have channels in categories, the bot won’t be able to find them to send it’s messages until I can sort out something.

 

Fun.

 

I’ll try and get it fixed this weekend.

Link to comment

The bot now supports categories

 

I just rolled out an update for the discord bot that now supports channel categories and should now be a little bit more sound against discord meddling with the channel types / hierarchy in the future.

 

tumblr_njixhd1uKx1suekw5o1_500.gif

 

Carry on and enjoy!

~ Erah’sae / Erroch

Link to comment
  • 5 months later...
  • 10 months later...

I added embedded message support for the event lists with the FFXIV RP Event Bot.  Use the following to turn it on:

 !setembed on 

 

Previously I was using fixed width (and by default this is still the case) to get some reasonable attempt at formatting as Discord cut out every semblance of proper text organization from it’s implementation of Markdown.


This made the daily event postings look something like this:
 

tumblr_inline_plnzcpZxkn1rvez8u_1280.png

This is great! 
This is awesome...
... until you look at it on a mobile device. 
Then it ends up looking something like this:
 

tumblr_inline_plnzfscHpw1rvez8u_1280.png

(Common tumblr, don’t zoom in on this... it looks bad enough... crummy platform...)

Now I’ve added the !setembed command.  What this does is let you turn on the use of embedded messages for the event lists.  This, on mobile ends up looking more like this instead:

tumblr_inline_plnzl4tt9L1rvez8u_1280.png

As a warning, because Discord is a hodgepodge of half and strangely implemented ideas, if a user turns off “Link Preview” in the Text & Images part of their settings, They won’t see a thing other than the top line outside of the box.
It will look like this:

 

tumblr_inline_plnzqnedpB1rvez8u_1280.png

Why discord does this? I have no idea.  Probably because they just reused the embedded objects for previewing links for the embedded messages that users and bots can use, and unlinking them was too hard so they haven’t bothered to give them separate permissions. 

Probably the same reason they removed three quarters of basic markdown syntax that would have resulted in not needing to do any of this tomfoolery in the first place.

It is beyond the realm of mortal thinkers like myself to even properly ponder at the minds behind these decisions.

Link to comment
  • 2 weeks later...

I've been asked for the public URL's for the google calendars powering the FFXIV RP Event Calendar. 
As I get submissions for other servers of any datacenter, I'll build out the Google Calendar for those servers.  Many of the Crystal ones are still dormant.

Datacenter Server Public URL
Crystal Balmung https://calendar.google.com/calendar/embed?src=m4pv4lq9tp8nsjqn0tjdpvck1g%40group.calendar.google.com
Crystal Brynhildr https://calendar.google.com/calendar/embed?src=8vg1o5bu7jev3nj8culf8jonr0%40group.calendar.google.com
Crystal Coeurl https://calendar.google.com/calendar/embed?src=dhej0n159rbi7f6ei2fd7bj66c%40group.calendar.google.com
Crystal Diablos https://calendar.google.com/calendar/embed?src=dcqi9bt9jdhqekmc8itujf56c4%40group.calendar.google.com
Crystal Goblin https://calendar.google.com/calendar/embed?src=050hq6l8m7jf2pnsk1bj5n4udk%40group.calendar.google.com
Crystal Malboro https://calendar.google.com/calendar/embed?src=0ok3plvvrdrhnv2gdj2a9npmlg%40group.calendar.google.com
Crystal Mateus https://calendar.google.com/calendar/embed?src=n6pfpcqimka1nn8581hai3h6j4%40group.calendar.google.com
Crystal Zalera https://calendar.google.com/calendar/embed?src=27rje0jpj8he1l8h7e0qdvtn9o%40group.calendar.google.com
Primal Hyperion https://calendar.google.com/calendar/embed?src=prgv4tl4t5lrpb0i5onlhf95ro%40group.calendar.google.com

In the next update to the Discord Bot this information will be available via the command: !calendarURL [Server|Datacenter]

Edited by Erah'sae
Link to comment
  • 4 months later...

Evening folks,

I’ve been dealing some some interesting things, and need to make some changes to how the calendar functions on a few levels.   I realize some of these may be an unpopular decision, but due to current circumstances, these changes are required for the calendar to continue operation.

For a detailed look at what’s changing, please check here: http://ffxiv-rp.org/devblog/

Until these changes are done, the event list will be maintained at http://ffxiv-rp.org/ this site will be updated as I process changes instead of only at the end of the week.  

So a tl;dr; version:
- Events will be self-rated by submitter to ESRB standards.
- Adults Only rated events WILL NOT appear in the Tumblr, RPC, or patron posts.
- Adults Only rated events WILL be available at the above link, behind an over 18 confirmation.
- Mature rated events will continue to be displayed on all static pages / posts for the time being.
- The Discord bot will default to showing Mature and below rated events with separate filter settings to toggle availability for for adult only content, and mature content.
- Advertisements are required to be on PG-13 sites regardless of event rating.

I’ll start on the necessary code / form changes as soon as I get done the Shadowbringer MSQ. 

If there are any questions / comments please feel free to send them to [email protected].  Tumblr sends me alerts only once in a blue moon for messages that get sent to me here.

Thanks for reading,
~ erroch / Erah’sae
[email protected] 

Link to comment
  • 2 months later...

Sorry for missing many updates over the last week and change.  I was out at the Dragon Con convention and couldn't get a secure connection running for anything.  Then con crud set in, but we're back at full steam now.  
 

Some of you may have noticed some instability with the discord bot.  I've made some extra updates to the current version to try and address some of the capacity issues it is having.  When I designed this thing I figured about 25-50 discord channels at most would want to use this thing.  We're close to cresting 2000 active channels the bot reports.  Along with that, we have crested 60 events a week at times the daily bursts are getting larger to boot.
 

Please expect a major update to the discord bot soon (tm).  By update I mean complete overhaul.  It's about 70% done coding and then will be unleashed to a few sites for load testing.  When it's out of testing there will be a seamless (I hope) update and all existing channels will have the new version in place.

 

Thanks!

~ Erahsae

Link to comment
  • 2 weeks later...

Copyleft, CC, etc, and the event calendar

So a few things have come up in the last few days.  Questions of who can publish what, and how, etc.  Normally, I don’t care much because it’s really just an aggregation of information. But I’ve had questions about if I’m sponsoring, endorsing, etc. of certain other groups out there that may re-post or re-blog the the event lists whole or in part.

 

As an aside, this is part of running a thing that I hate.

 

Officially speaking, The FFXIV RP Event Calendar does not endorse any other group, organization, discord, website, or what have you beyond the FFXIV RP Event Bot’s discord (here) and the http://ffxiv-rp.org.  

 

Unofficially I endorse all of you buggers.  Go out have fun, do whatever.

 

But to put an end to people bothering me about it.  I’m going to sort out what sort of copyright license the bot’s output and the event posts on here. 

 

TLDR:  Re-post / re-blog away, I don’t care, just give attribution and don’t stop others from doing the same. 

Long Version:

Now I’d like to use copyleft, but copyleft is one of those weird things where you make everyone the rights-holder for the piece of work, and every derivative work.  It’s also viral in that everything a piece of copyleft licensed work also has to be copyleft licensed.  This is a viral license in that way.  I love it in theory, but in practice it’s a bit of a pain in the tail for everyone else, especially if you want to just use a bit of the output on your own website.

So I’m eyeballing the Creative Commons.  Particularly CC-BY-SA-4.0 License the https://creativecommons.org/licenses/by-sa/4.0/.

 

What this will mean for you is thus:  We’ll work through the letters of the license name: 

 

CC:
- Anyone is free to copy, share, and redistribute any of the RP Event Calendar’s work in any medium or format, even ones that don’t exist today.  (I love that last part)
- Feel free to adapt, change, remix, reformat, or otherwise build upon these event lists.  Go wild.  Do whatever with these lists for any purpose what so ever, even commercial ones.  (Yes, posting things on an add driven system is a commercial use, that’s important for other things but not this.) 

 

BY:
- You have to attribute the work.  Say where it’s from, even better, provide a link.  But don’t say that I’m backing you or the like. 

 

SA:  Share Alike:
- If you change up, adapt, remix, reformat, or otherwise alter the lists, your changed version, it has to be shareable too.  Use the same license for the resulting copy/derivative of the event lists.   This stops someone from copying the event list and going “This is mine.  Don’t copy it.  Don’t re-post it.” 

 

So everyone asking if another group can re-post the event lists:
Sure, why not.  So long as credit is given and you let others copy your version of the event list too.

 

Link to comment
  • 4 months later...

FFXIV RP Event Bot v2.0 Progress Update

Work is finally coming along on the next evolution of the Event Bot.   I'll probably try to tie these to a 'prompt' / 'reaction' system at some point but for now I'm sticking with the command line style of configuration.

Two of the largest complaints about the bots are a.)  that bar/tavern events drown out everything else on the calendar. and b.) we do not list / broadcast adult only content

 

Category Filtering

 

Every time we turn around it seems someone's complaining about 'not another tavern event'  or 'Where are the unique events' or 'I can't find anything I like to do'.

Well, if you don't like the tavern events, you won't have to have them broadcast in your discord anymore...

 

20200215_categoryfiltering.png

 

Adult Only Content

Part A.) Rating Filtering

 

We're adding rating filtering that works like the above Category filtering.  Beyond enabling Adult Only content, you'll also be able to filter out 'Mature' content if you only want to see the Teen safe events on the calendar.

20200215_ratingfiltering.png

 

Part B.) Adult Only Content

 

I've decided to relax the 'adult only' content stance a little, but it will require some user interaction to enable.   Some of the same rules on advertisements will still apply:

 Things that are explicitly forbidden to reference in your advertisement:
- Real world drug references
- Events revolving around real world illegal activity.
- Selling of sexual related services
- Selling of slaves, sexual or otherwise
- Real money trading (RMT) 
 

This will be in the form of, more or less, a digital consent form that the channel is populated by only member 18 and older.   I'm still working out the details of how this will be done, but I'm currently thinking of at the minimum requiring FFXIV character validation or email validation before the guild 'owner' can validate this.   This will also break from my stance of recording nothing tangible that can be mapped back to the users, as this will need to be stored for future reference.  (A warning of this will appear during the age validation process) 


For the foreseeable future adult only content will not be shown here, on the http://ffxiv-rp.org site, nor in the global broadcasts /calendar view.

Link to comment
  • 1 year later...

As the above has stalled out a little (ok a lot) due to many issues, RL, and otherwise, this is what we've been working on laterly.

 


http://beta.ffxiv-rp.org

 

Please note this is highly unstable at the moment as I'm changing code and the API that drives it a good bit. This is a rework of https://ffxiv-rp.org but api driven so there won't be any much latency between calendar updates and the page refresh. This is -far- from it's final form and the tooltips are frankly trash at the moment, but wanted to let folks know that some changes were in the works. The plan is for this to be a more seamless view of the event details, including the descriptions, categories, etc, and to make this fully filterable in the future.


Event Reporting Form

 

Having the event submission form and the dead event reporting form was causing a bit of an issue for some people, so now they're split up. The new form can be found at https://xiv.page.link/report

 

Event Validation Guidelines

There are a number of people who assist in validating the events as they're on going to help minimize the dead events on the calendar. This, however, has caused some confusion into who is staff on the calendar and at times some disruption of events. Verification has been codified in the following document: https://xiv.page.link/validation

Enjoy,

 

~Erah'sae

Link to comment

FFXIV Locations/Venue Listing Interest Check
We're doing some interest checking on if a venue search function would be useful as part of the FFXIV RP Event Discord Bot and Website.   What this is for is to provide a method of finding housing that people have created for others to use as RP set pieces. Example: A warehouse, a back alley, an business office, or anything else.  This is not for events, but just always (mostly) open locales.

 

If you're interested in having a location listed, please fill out the form at https://xiv.page.link/newvenue.

 

The new [Meta] tag
 

We've had from time to time folks wanting to list things like "role-play tutorials"  Traditionally we've skipped these because they're not technically a role-play event.  However since it's come up again, we think that there is room for these on the calendar, so we're trying the waters out.  If this is favorably received, we may add a new filterable category for 'Meta' events.  Though I don't expect we'll have all that many of them.

As always, if you have comments, suggestions, or just need a hand finding your place in the world we tell stories in, we can be reached at calendar's support discord or at [email protected].

FFXIV RP Event Bot Update
The FFXIV RP Event Bot has added support for Discord's localized times.   To enabled these use the !setlocaltime on command.   This will show the date and time stamps in the event lists converted to the viewers localization / timezone.  Ex:  Someone from US regions may see 08/04/2021 09:00 AM someone from the EU might see 04/08/2021 15:00.

Discord's support for this is not perfect and it looks rather weird in the non-embedded version of the event lists.  (to turn those on use !setembed on) but for some of our more diverse communities, I thought this might help.

Enjoy,
~ erroch / Erah'sae Zhwan @ Balmung

Update to the Update
If you're seeing things like <t:stuffhere> instead of dates and times when using the new setlocaltime feature, you may have a pending update for discord on your device.

Epoch Time Tokens

There is now a !getepochtoken (or just !epoch) function which will return the current epoch time token for 'now'. You can pass it a date/time to get a token for the future or the past. The system will try first to translate the provided date as yyyy/mm/dd hh:mm:ss failing that it'll do it's best to sort out what it's been provided but no promises. Dates and times are weird.

 

The timezone the bot will translate the provided date from to epoc time is the timezone set on the discord channel (US Eastern if you haven't changed it)

Edited by Erah'sae
Link to comment
  • 2 weeks later...

Website / API
Information is now cached about within about a year.  The website will now allow looking forward / backwards by the week.  This will be iterated on in the future to give a better way to look forward. 

The website https://ffxiv-rp.org has also received  *slightly* updated look, though it's still holding to it's minimalist roots.

That said, if you want to make a prettier version and flex web/development muscles there is an integration guide to the API up on the calendar's support discord.


Event Bot Updates
Slash commands continue to be iterated on.  A new /search-events command has been added that does exactly what it states.   It will only look within a couple of months for the time being until the other changes have time to cook a little.

If you don't see the slash commands re-invite the bot to your discord via https://xiv.page.link/discordbot it needs new scopes for them.  (You will need to do this by 04/22 anyway, because that's when discord kills off the old ! commands).   Help for Slash Commands should be around sometime this/next week(?).  

Edited by Erah'sae
Link to comment

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...