AugustinAndroid Public Release

Bug reports, general help, ideas for improvements, and questions about how things are meant to work.
User avatar
Posts: 111
Founded: Oct 07, 2011

AugustinAndroid Public Release

Postby August » Tue Sep 10, 2019 8:13 pm


Delayed for half a year by my own unannounced departure from the game, it is finally here: the AugustinAndroid NS-based Discord bot. It is significantly lighter on features than I had originally hoped, but perhaps I will eventually find time to add the rest. Anyway, enjoy.

Invite the bot to your server
Join the support server
Dispatch version

On to the FAQ...

Why should I invite this bot to my server?

Because this is the only NS-based bot you will ever need. For one, it has some marquee features that you cannot find anywhere else. It also has the standard set of tools that any good server needs, but fully-integrated and improved. It is powerful, flexible, and if it were any smarter, it would take your day job so you could play NS full-time. Not that you would. Let me elaborate a bit: Anyone can set up a few crude functions with Dyno. Almost anyone can download Red, stick it on some cheap hardware, find a couple cogs online, and call it a "custom bot." That is not what you are looking at here. AugustinAndroid (AAbot for short) is the first-ever complete and publicly-available Discord bot created exclusively for this game, and it requires no technical expertise to use. Read on!

What can this bot do?

You mean, what can it not do? The full documentation is too long to include here, but the >help command provides information on all available commands. Notable features include:
  1. NSVerify. This one is the crown jewel, the most important of the bot's onboard systems. In a nutshell, NSV ties a player's Discord account to their nation(s). With its database of nation records, it automatically assigns Discord roles to unverified accounts, region residents, organization members, visitors, and CTE players, depending on your server's settings. For maximum security, unverified accounts can be prevented from seeing your public channels and memberlist. Residency and CTE status, along with the corresponding roles, are updated daily. The more servers the bot runs on, the easier NSV will be to use, because many users will be pre-verified from other servers when they enter a new one. Rejoin a server you left previously, and you will not have to re-verify. (Relax, spies and R/Ders: privacy is important to us too. The bot will never leak your identity on one server to another server, and you can remove your identity from the database at any time.)
  2. Join/leave/ban messages. Technically this is part of NSV, but it is worth mentioning separately. If you have ever wondered about the mysterious @invalid-user who just left your server, or found the built-in join notification inadequate, this is for you. Sure, other bots offer join/leave messages... but not like this.
  3. Power User tools. This group contains everything you want to give your trusted officials, but keep out of reach of ordinary players. That means command scheduling, DM alerts, polls/surveys, and a lot more. One of Discord's more frustrating limitations is that roles can be @mentioned by anyone or no one, with no settings in between. With AAbot, Power Users and above can ping roles that are not set to mentionable.
  4. Moderation tools. All the usual warn/kick/ban commands are here, plus a few other handy features. The mod system is tied to the same user database as NSV, simplifying the backend and enabling server moderators to more effectively monitor users. Trying to check someone's warning record, but they keep changing their Discord username? Just enter their nation name instead.
  5. Administration tools. Sometimes the power of a Discord admin role is not enough for you, and you feel the need to benevolently address everyone with a certain role via DM, or just kick everyone with that role out of the server. Mass Actions let you handle a batch of users or roles in a single command. You can also automate admin actions by placing commands on a schedule. For example, a particular channel could be automatically opened on Saturdays only and hidden the rest of the week. (This feature is incomplete, but is a high priority and will be finished soon.)
  6. Backups and logging. Admin went rogue and deleted all your roles and channels? A user under investigation went back and edited all their incriminating posts? Missing timestamps for an event that did not show up in the Audit Log? The bot can recover everything with a single command. (This feature is incomplete, but is a high priority and will be finished soon.)
  7. NationStates data. Request real-time information about a nation, a region, the world, or the WA. The >swap command, which shows you a list of nations you have not endorsed, is especially popular.
  8. General-purpose commands. This one is a catch-all: "general-purpose" refers to reminders, user profiles, a random number generator, and more.
  9. Developer support. A support ticket command allows servers to report issues as they arise, and I will personally troubleshoot them as fast as possible. In addition, all users have access to commands showing the ping response, uptime percentage, server information, and bot documentation.
  10. What, was nine not enough for you? You really need a tenth set of features?
Can this bot spy on my conversations or damage my server?

Excellent question. Yes it can, and you use this software at your own risk. Due to the quantity and scope of all the complicated features on board, it requires the Administrator permission to function. However, I am the sole developer and retain 100% control of the code, and I promise unconditionally that I will not use it for malicious purposes. The owner of each Discord server, and any administrators they designate, will be the only people controlling this bot on their own server.

Can it steal my nation?

No. The verification feature uses the NS API, with token authentication. It is not possible for a third party to impersonate you or steal your nation using this system.

Why should I trust you?

Another fair question. There are a few reasons.
  1. The bot has been running on a number of major servers for over half a year as part of a closed beta test. Its predecessor was fully public for over a year before that. We have never had a security incident.
  2. I no longer play this game. I have absolutely no in-game ambitions or motivations anymore, political or personal. Nothing the bot can do or see on NS-related Discord servers has any value to me. I am only releasing it because people keep asking me and it seems like a shame to waste all the effort of building it.
  3. I have nearly a decade of clean history and a Commendation, for whatever that is worth.
  4. Let me get real for a second, as the person who wrote this bot. I am an engineer who does this sort of thing for fun, not a twelve-year-old troll. I just want people to get some use out of this.
Is it legal by NS rules?

100%. An internal rate-limiter keeps the bot well under the 100/min ceiling for API calls. Our quota of over 130k calls per day should be more than sufficient, even when distributed across a large number of servers. Much of the heavy lifting is done by the daily dumps anyway.

Can you add a feature that posts memes whenever I @ my friend???

If you have a suggestion for a new feature, please post it in this thread. If you send me a telegram or Discord DM, it may get lost. I will consider all reasonable suggestions for features that would benefit most or all servers using this bot. I am not likely to custom-build something for a single server, because this has backfired in the past and cost me significant time and effort.

I am a nerd. Can I get more details?

Absolutely. The program is written in Python 3.7, with user and configuration data stored in an instance of MongoDB. Everything is hosted on my local server, which is on a UPS and has 99.9% uptime. The underlying library is 1.2.3. Cutting edge, baby. Other than that library and a small handful of dependencies, everything under the hood is original. The source code will not be released, as I put a great deal of work into it and I would like it to remain proprietary. However, if you have any questions, concerns, or curiosities over the way it works, I am very happy to discuss the details with you.

Current Stats

  • Users: 1438
  • Servers: 12
  • Nations verified: 2118
  • Three-month uptime: >99.7%
  • Top five NS servers: Augustin Alliance (473), Anteria (398), Lazarus (214), Queen Yuno's Embassy (128), Union of Democratic States (99)
Planned Features

  • Expansions to the Administration and Moderation suites. Mass message deletion and precise role/channel control are at the top of the list.
  • Audio. This includes voice chat recording and music streaming.
  • Games. There are a number of classic forum-compatible games (such as Resistance and trivia) that I would like to implement when I have time.
  • Other mysterious things that I do not want to tease you with in case I never get around to making them.

Important addendum: While watching the rollout, I have noticed some common issues. If you adjust a setting and things do not change instantly, please keep in mind that NS-based roles update daily at 3:45 AM, US Eastern time. Also, try to avoid running the server setup process several times at once. This will happen if you use the >setup command while setup is ongoing, if you try to set up multiple servers simultaneously, or if you have the bot join and leave your server multiple times in short succession. The bot can handle it, but it will probably be confusing to you and result in unexpected behavior.
Last edited by August on Wed Sep 11, 2019 3:47 pm, edited 1 time in total.
|| AA Founder - Retired.

Other Links: AugustinAndroid | Augustin Alliance | AA server | NS Founders | Tech suggestions | About me
I heard it was you / talkin' 'bout a world where all is free / it just couldn't be / and only a fool would say that...

User avatar
Posts: 30
Founded: Mar 27, 2017
Capitalist Paradise

Postby DiRito-Opolis » Tue Sep 10, 2019 8:21 pm

Glad to see that other people will finally be able to use this bot. I can attest that it is a really helpful tool for NS. And, as usual, awesome stuff, August.
Last edited by DiRito-Opolis on Tue Sep 10, 2019 8:22 pm, edited 1 time in total.
Augustin Alliance

|| AA Administrator and Media Officer of the Augustin Alliance

User avatar
Posts: 185
Founded: Aug 29, 2016
Inoffensive Centrist Democracy

Postby Tulov » Tue Sep 10, 2019 8:37 pm

DiRito-Opolis wrote:Glad to see that other people will finally be able to use this bot. I can attest that it is a really helpful tool for NS. And, as usual, awesome stuff, August.

Everything DiRIto said, but with extra emphasis on the "really helpful tool" part. AugustinAndroid is to die for.

User avatar
Queen Yuno
Posts: 604
Founded: Dec 30, 2015
Psychotic Dictatorship

Postby Queen Yuno » Wed Sep 11, 2019 4:12 am

best bot in existance
Supreme Loligarchy
I do free grammar checks! Telegram me for Discord!

"Vote early, vote often." -Pallaith
Sierra Lyricalia wrote:
Galiantus III wrote: there a reason the logo for the anti-NPO New Year's jumpers looks like the butt and legs of a kneeling naked lady? :unsure:

Imperium Anglorum wrote:Lol badge hunting accusations against people who already have the badge. You don't get your whole page covered in badges when you pass more resolutions, you know.

Vancouvia wrote:
Vancouvia wrote:

Alright my bad I guess I'll check back in December 21st

No way

User avatar
The Noble Thatcherites
Chargé d'Affaires
Posts: 469
Founded: Dec 03, 2015
New York Times Democracy

Postby The Noble Thatcherites » Wed Sep 11, 2019 5:27 am

DiRito-Opolis wrote:Glad to see that other people will finally be able to use this bot. I can attest that it is a really helpful tool for NS. And, as usual, awesome stuff, August.
—Thatcher Whitehall
Kanglia wrote:Thatcher. Wants. As. Little. To. Do. With. You. All. As. Possible.
The Union of Democratic States
Citizen and Founder
Prime Minister (x1)
Motion(s) Passed (x15)
Ambassador (x21)
Publisher for The Union Post (x5)
Constitutional Framer (x4)
The Free Nations Region
Citizen and Legislator
Justice (x1)
Motion(s) Passed (1x)
The Allied States
Senator (x1)
Representative (x4)
Chancellor (x1)
Representative (x1)
Secretary General (x1)
Charter Author (x2)
Court of International Law and Justice
Foreign Affairs Justice (x1)
Citizen and Assemblyman (x1)
The South Pacific
SPSF Recruit (x1)

The Union of Democratic States

Return to Technical

Who is online

Users browsing this forum: No registered users


Remove ads