-
Notifications
You must be signed in to change notification settings - Fork 5
Commands
-
<arg>
- A required parameter -
[arg]
- An optional parameter -
<arg1|arg2>
- Multiple parameters options -
<arg=value>
- Default or suggested value -
[-f flag]
- A optional command argument flag
For who <nations> [-l list]
Slash: /who nations:Rose list:True
Message: $who Rose -l
Remove deleted alliances or guilds from a coalition Note: Do not remove deleted offshores or banks if you want to use their previous transactions in deposit calculations
Arguments:
<coalition>
- Coalition
One of the default Bot coalition names
Permission:
Import all emojis from another guild
Arguments:
<guild>
- Guild
A discord guild id. See: https://en.wikipedia.org/wiki/Template:Discord_server#Getting_Guild_ID
Permission:
No description provided
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-e listExpired]
- boolean
[-f forceUpdate]
- boolean
Permission:
This command is public
Generate a sheet of recorded login times for a set of nations within a time range
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<cutoff>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
View a list of reactions on a message sent by or mentioning the bot
Arguments:
<message>
- Message
A discord message url
[-i useIds]
- boolean
List the ids of users who reacted
Permission:
Force an update of all interview channels and print the results
This command has no arguments
Permission:
Sync and debug war rooms
Arguments:
[-f force]
- boolean
Permission:
Opt out of audit alerts
This command has no arguments
Permission:
Set the required transfer market value required for automatic bank alerts Defaults to $100m, minimum value of 100m
Arguments:
<requiredValue>
- double
Require the bank transfer to be worth this much
Resources are valued at weekly market average prices
(A decimal number)
Permission:
Set a reminder for when a nation leaves beige or VM
Arguments:
<targets>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[requiredLoot]
- Double
Require targets to have at least this much loot
Resources are valued at weekly market average prices
(A decimal number)
[-s allowOutOfScore]
- boolean
Allow targets this much ns below your score range
Permission:
Set the types of nations to receive automatic beige alerts for
Arguments:
<mode>
- BeigeAlertMode
A mode for receiving alerts when a nation leaves beige
Permission:
- Whitelist
- Role(BEIGE_ALERT/BEIGE_ALERT_OPT_OUT, any)
- Coalition(RAIDPERMS:
Root coalition- for allowing access to raid tools
)
Opt out of beige alerts
This command has no arguments
Permission:
Set the required amount of loot for automatic beige alerts Defaults to $15m
Arguments:
<requiredLoot>
- double
Require the target to have at least this much estimated loot
Resources are valued at weekly market average prices
(A decimal number)
Permission:
Only get the automatic beige alerts if you have the online status on discord
Note: You will still receive alerts for targets you have subscribed to via /alerts beige beigereminders
Arguments:
<status>
- BeigeAlertRequiredStatus
A discord status for receiving alerts when a nation leaves beige
Permission:
List your current beige reminders
This command has no arguments
Permission:
This command is public
Remove your beige reminders
Arguments:
<nationsToRemove>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Allow receiving automatic beige alerts a certain nation score below your current war range
Arguments:
<scoreLeeway>
- double
A decimal number
Permission:
This command is public
No description provided
This command has no arguments
This command is public
Get an alert on discord when a target logs in within the next 5 days Useful if you want to know when they might defeat you in war or perform an attack
Arguments:
<target>
- DBNation
nation id, name or url
[-w doNotRequireWar]
- boolean
Create an alert for specific differences between buy and sell prices for in-game resource trades
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<aboveOrBelow>
- String
A single line of text
<ppu>
- int
Price per unit
(A whole number)
<duration>
- long[Timediff]
How long to subscribe for
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Create an alert when an in-game trade for a resource is past the top price point of the opposite buy or sell offer
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<aboveOrBelow>
- String
A single line of text
<ppu>
- int
Price per unit
(A whole number)
<duration>
- long[Timediff]
How long to subscribe for
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Create an alert when there are no standing offers for resources in-game
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<duration>
- long[Timediff]
How long to subscribe for
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Create an alert when an in-game trade for a resource at an absolute price point
Arguments:
<resource>
- ResourceType
The name of a resource
<buyOrSell>
- String
A single line of text
<aboveOrBelow>
- String
<ppu>
- int
Price per unit
(A whole number)
<duration>
- long[Timediff]
How long to subscribe for
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Create an alert when a top offer you have in-game is undercut by another nation
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<buyOrSell>
- String
A single line of text
<duration>
- long[Timediff]
How long to subscribe for
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
This command is public
Get the value of nations including their cities, projects and units
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-u update]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
List the alliance rank changes of a nation or alliance members
Arguments:
<nationOrAlliance>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
[time]
- Long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[filter]
- NationList
Only include these nations
(A comma separated list of nations, alliances and filters)
[-a ignoreInactives]
- boolean
Ignore inactive nations (7 days)
[-v ignoreVM]
- boolean
Ignore nations in vacation mode
[-m ignoreMembers]
- boolean
Ignore nations currently a member of an alliance
[-i listIds]
- boolean
Attach a list of all nation ids found
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Edit an attribute of your in-game alliance Attributes match the in-game fields and are case sensitive Run the command without arguments to get a list of attributes
Arguments:
<alliance>
- DBAlliance
An alliance name id or url
[attribute]
- String
A single line of text
[value]
- String[TextArea]
Permission:
List all in-game alliance members
Arguments:
<page>
- int
A whole number
Permission:
This command is public
Mark an alliance as the offshore of another
Arguments:
<offshore>
- DBAlliance
An alliance name id or url
<parent>
- DBAlliance
This command is public
Get the revenue of nations or alliances Equilibrium taxrate is where the value of raws consumed matches the value taxed
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-t includeUntaxable]
- boolean
Include the revenue of nations unable to be taxed
[-b excludeNationBonus]
- boolean
Exclude the new nation bonus
[-r rads]
- Double
A decimal number
[-w forceAtWar]
- boolean
[-p forceAtPeace]
- boolean
[-c includeWarCosts]
- Long[Timediff]
The amount of time to use to add average DAILY war cost
This includes raid profit
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Create a sheet of alliances with customized columns See https://github.com/xdnw/locutus/wiki/nation_placeholders for a list of placeholders
Arguments:
<nations>
- Set<DBNation>
The nations to include in each alliance
(A comma separated list of nations, alliances and filters)
<columns>
- List<String>[TextArea]
The columns to use in the sheet
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
List all nations in the alliance and their in-game resource stockpile
Arguments:
Optional: Specify Nations:
[nationFilter]
- NationList Only include stockpiles from these nations (A comma separated list of nations, alliances and filters) Display Options:[-n normalize]
- boolean Divide stockpiles by city count[-e onlyShowExcess]
- boolean Only show the resources well above warchest and city operation requirements
[-f forceUpdate]
- boolean
Permission:
Get a sheet of members and their saved up warchest (can include deposits and potential revenue)
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-c perCityWarchest]
- Map<ResourceType, Double>
The required warchest per city. Else uses the guild default
(A comma separated list of resources and their amounts)
[-g includeGrants]
- boolean
Count current grants against warchest totals
[-n doNotNormalizeDeposits]
- boolean
If negative deposits are NOT normalized (to ignore negatives)
[-d ignoreDeposits]
- boolean
If deposits are NOT included in warchest totals
[-e ignoreStockpileInExcess]
- boolean
Do not count resources above the required amount toward total warchest value
[-r includeRevenueDays]
- Integer
Include days of potential revenue toward warchest resources
(A whole number)
[-f forceUpdate]
- boolean
Permission:
This command is public
Graph an alliance metric over time for two coalitions
Arguments:
<metric>
- AllianceMetric
A Bot metric for alliances
<coalition1>
- Set<DBAlliance>
A comma separated list of alliances
<coalition2>
- Set<DBAlliance>
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Compare the metric over time between multiple alliances
Arguments:
<metric>
- AllianceMetric
A Bot metric for alliances
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Create a google sheet of nations, grouped by alliance, with the specified columns
Prefix a column with avg:
to force an average
Prefix a column with total:
to force a total
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<columns>
- List<String>[TextArea]
The columns to have. See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t useTotal]
- boolean
Use the sum of each nation's attributes instead of the average
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
Permission:
View the percent times an alliance counters in-game wars
Arguments:
<alliance>
- DBAlliance
An alliance name id or url
Permission:
No description provided
Arguments:
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t threshold]
- Double
Required percent of departures percent(between 0 and 1)
Default: 0.3
(A decimal number)
[-w dayWindow]
- Integer
Number of days to check the departures over
Default: 30
(A whole number)
[-m minMembers]
- Integer
Minimum number of starting members per alliance
Default: 10
(A whole number)
Permission:
This command is public
Graph the metric over time for a coalition
Arguments:
<metric>
- AllianceMetric
A Bot metric for alliances
<coalition>
- Set<DBAlliance>
A comma separated list of alliances
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Get the militirization levels of top 80 alliances. Each bar is segmented into four sections, from bottom to top: (soldiers, tanks, planes, ships) Each alliance is grouped by sphere and color coded.
Arguments:
[nations2]
- NationList
A comma separated list of nations, alliances and filters
[-n top_n_alliances]
- Integer
A whole number
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t removeUntaxable]
- boolean
[-i removeInactive]
- boolean
[-a includeApplicants]
- boolean
[-l snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
Rank alliances by a metric
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
<metric>
- AllianceMetric
A Bot metric for alliances
[-r reverseOrder]
- boolean
[-f uploadFile]
- boolean
This command is public
Rank alliances by a metric over a specified time period
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
<metric>
- AllianceMetric
A Bot metric for alliances
<timeStart>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
<timeEnd>
- long[Timestamp]
[-r reverseOrder]
- boolean
[-f uploadFile]
- boolean
View the resources in a nation or alliance
Arguments:
<nationOrAlliance>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
Permission:
Approve a pending treaty from an alliance
Arguments:
<senders>
- Set<DBAlliance>
Alliance that sent the treaty
(A comma separated list of alliances)
Permission:
Cancel a treaty in-game
Arguments:
<senders>
- Set<DBAlliance>
The other alliance the treaty is with
(A comma separated list of alliances)
Permission:
This command is public
List the treaties of the provided alliances Note: If you have the FORIEGN_AFFAIRS role you can view the pending treaties of your own alliance from its guild
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
[treatyFilter]
- Predicate<Treaty>
TODO CM REF
Send a treaty to an alliance
Arguments:
<receiver>
- DBAlliance
Alliance to send treaty to
(An alliance name id or url)
<type>
- TreatyType
An in-game treaty type
<days>
- int
A whole number
[message]
- String
A single line of text
Permission:
Set the archive status of the bot's announcement
Arguments:
<announcementId>
- int
A whole number
[archive]
- Boolean
Permission:
Send an announcement to multiple nations, with random variations for each receiver
Arguments:
<sendTo>
- NationList
A comma separated list of nations, alliances and filters
<subject>
- String
The subject used for sending an in-game mail if a discord direct message fails
(A single line of text)
<announcement>
- String[TextArea]
The message you want to send
(A single line of text)
<replacements>
- String[TextArea]
Lines of replacement words or phrases, separated by |
for each variation
Add multiple lines for each replacement you want
(A single line of text)
[-c channel]
- MessageChannel
The channel to post the announcement to (must be same server)
(A discord channel name or mention)
[-b bottomText]
- String
The text to post in the channel below the hidden announcement (e.g. mentions)
(A single line of text)
[-v requiredVariation=0]
- Integer
The required number of differences between each message
(A whole number)
[-r requiredDepth=0]
- Integer
The required depth of changes from the original message
(A whole number)
[-s seed]
- Long
Variation seed. The same seed will produce the same variations, otherwise results are random
(A whole number)
[-m sendMail]
- boolean
If messages are sent in-game
[-d sendDM]
- boolean
If messages are sent via discord direct message
[-f force]
- boolean
Permission:
Create an embed to view a google document for multiple nations, with random variations for each receiver
Arguments:
<original>
- GoogleDoc
A google document id or url
<sendTo>
- NationList
A comma separated list of nations, alliances and filters
<replacements>
- String[TextArea]
Lines of replacement words or phrases, separated by |
for each variation
Add multiple lines for each replacement you want
(A single line of text)
Permission:
Find the announcement closest matching a message
Arguments:
<announcementId>
- int
A whole number
<message>
- String
A single line of text
Permission:
Find the announcement for the closest matching invite
Arguments:
<invite>
- String
A single line of text
Permission:
Create, send and record unique invites to a set of nations
The invite can be sent via discord direct message, mail, viewed from an embed, or command
If allowCreation
is not enabled, only a single invite will be created per nation; invites may expire and no new invites are permitted.
Arguments:
<message>
- String
A single line of text
<inviteTo>
- Guild
A discord guild id. See: https://en.wikipedia.org/wiki/Template:Discord_server#Getting_Guild_ID
[sendTo]
- NationList
A comma separated list of nations, alliances and filters
[-e expire]
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[-u maxUsesEach]
- Integer
A whole number
[-d sendDM]
- boolean
Send the invite via discord direct message
[-m sendMail]
- boolean
[-c allowCreation]
- boolean
Allow creating an invite when any nation matches sendTo
, when they don't already have an invite, or theirs has expired
Invites can be created by using viewing the announcement embed or running the announcement view command
Defaults to false
[-f force]
- boolean
Permission:
This command is public
Get the text from a discord image It is recommended to crop the image first
Arguments:
<discordImageUrl>
- String
A single line of text
Mark an announcement by the bot as read/unread
Arguments:
<ann_id>
- int
A whole number
[markRead]
- Boolean
Permission:
View an announcement you have access to
Arguments:
<ann_id>
- int
A whole number
[-d document]
- boolean
[-n nation]
- DBNation
nation id, name or url
Permission:
This command is public
Add a watermark to a discord image
Use \n to add a new line
Default color will be light gray if image is dark and dark gray if image is light
Set repeat: True
to repeat the watermark down the entire image
Arguments:
<imageUrl>
- String
A single line of text
<watermarkText>
- String
[color]
- Color
A color name or hex code
[opacity=0.05]
- double
A decimal number
[font=Arial]
- Font
A font name
[-r repeat]
- boolean
Returns the audit excerpt and lists nations who have not bought spies
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Permission:
Generate an audit report of a list of nations
Arguments:
<nationList>
- NationList
Nations to audit
(A comma separated list of nations, alliances and filters)
[audits]
- Set<AuditType>
Only perform these audits (default: all)
(A comma separated list of audit types)
[-u pingUser]
- boolean
Ping the user on discord with their audit
[-m mailResults]
- boolean
Mail the audit to each nation in-game
[-c postInInterviewChannels]
- boolean
Post the audit in the interview channels (if exists)
[-s skipUpdate]
- boolean
Skip updating nation info from the game
Permission:
Run audits on member nations and generate a google sheet of the results
Arguments:
[nations]
- Set<DBNation>
The nations to audit
Must be in your alliance
(A comma separated list of nations, alliances and filters)
[-i includeAudits]
- Set<AuditType>
The audits to include in the sheet
Defaults to all audits
(A comma separated list of audit types)
[-e excludeAudits]
- Set<AuditType>
The audits to exclude from the sheet
Defaults to none
(A comma separated list of audit types)
[-u forceUpdate]
- boolean
Update nation information before running the audit
Otherwise the audit will be run on the last fetched info
[-v verbose]
- boolean
Include full descriptions in the audit sheet results
Otherwise only raw data will be included
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Instruct nations to deposit resources into the alliance bank If multiple calculation options are set the largest values will be used
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Mode 1: Using a Sheet:
[-s sheetAmounts]
- TransferSheet A spreadsheet of nations and amounts to deposit Columns must be named after the resource names (A google spreadsheet id or url. Must have anation
orleader
column as well as the names of each resource) Mode 2: Specify an Amount:[-a amount]
- Map<ResourceType, Double> Exact amount of resources to deposit (capped at resources on nation) Cannot be used with other deposit modes are set (A comma separated list of resources and their amounts) Mode 3: Calculate an Amount:[-r rawsDays]
- Double Number of days of city raw resource consumption to keep Recommended value: 5 (A decimal number)[-d rawsNoDailyCash]
- boolean Do not keep money above the daily login bonus RequiresrawsDays
to be set[-c rawsNoCash]
- boolean Do not keep any money RequiresrawsDays
to be set[-wcf keepWarchestFactor]
- Double Number of default warchests to keep per city Recommended value: 1 Default warchest is is set via the settings command (A decimal number)[-pc keepPerCity]
- Map<ResourceType, Double> Amount of resources to keep per city (A comma separated list of resources and their amounts)[-kt keepTotal]
- Map<ResourceType, Double> Amount of resources to keep in total (A comma separated list of resources and their amounts)[-ur unitResources]
- Map<MilitaryUnit, Long> Keep resources for purchasing specific units (A comma separated list of units and their amounts) Message Settings:[-n note]
- DepositTypeInfo Note to add to the deposit Defaults to deposits (A DepositType optionally with a value and a city tag See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes) Deposit Via Api:[-cm customMessage]
- String The message to append to the mail or dm message You must specify eithermailResults
ordm
if this is set (A single line of text)[-m mailResults]
- boolean Send deposit urls to nations via in-game mail[-dm dm]
- boolean Send deposit urls to nations in discord direct messages (dm)[-u useApi]
- boolean Use the API to do a deposit instead of sending a message
[-f force]
- boolean
Permission:
Set the withdrawal limit (per interval) of a banker
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<limit>
- double
A decimal number
Permission:
Get a sheet of a nation or alliances transactions (excluding taxes)
Arguments:
<nationOrAllianceOrGuild>
- NationOrAllianceOrGuildOrTaxid
A nation or alliance name, url or id, or a guild id, or a tax id or url
Optional: Specify timeframe:
[timeframe=%epoch%]
- long[Timestamp] Only show transactions after this time (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date) Display Options:[useTaxBase=false]
- boolean Do NOT include the tax record resources below the internal tax rate Default: False[useOffset=true]
- boolean Include balance offset records (i.e. from commands) Default: True
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-o onlyOffshoreTransfers]
- boolean
Permission:
This command is public
List the public resource imports or exports of a nation or alliance to other nations or alliances over a period of time
Arguments:
<nationOrAlliances>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<cutoffMs>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-i hideInflows]
- boolean
Do not show inflows
[-o hideOutflows]
- boolean
Do not show outflows
This command is public
Calculate weekly interest payments for a loan
Arguments:
<amount>
- double
Principle amount
(A decimal number)
<pct>
- double
Percent weekly interest
(A decimal number)
<weeks>
- int
Number of weeks to loan for
(A whole number)
Unlock transfers for an alliance or guild using this guild as an offshore Accounts are automatically locked if there is an error accessing the api, a game captcha, or if an admin of the account is banned in-game Only locks from game bans persist across restarts
Arguments:
[nationOrAllianceOrGuild]
- NationOrAllianceOrGuild
A nation or alliance name, url or id, or a guild id
[-a unlockAll]
- boolean
Permission:
This command is public
List the baseball wager inflows for a nation id
Arguments:
<nationId>
- int
A whole number
[dateSince=timestamp:0]
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-u uploadFile]
- boolean
This command is public
Rank of nations by challenge baseball challenge earnings
Arguments:
[-f uploadFile]
- boolean
[-a byAlliance]
- boolean
Group the rankings by alliance instead of nations
This command is public
Rank of nations by number of challenge baseball games
Arguments:
[-f uploadFile]
- boolean
[-a byAlliance]
- boolean
Group the rankings by alliance instead of nations
This command is public
Rank of nations by challenge baseball game earnings
Arguments:
<date>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-f uploadFile]
- boolean
[-a byAlliance]
- boolean
Group the rankings by alliance instead of nations
This command is public
Rank of nations by number of challenge baseball games from a specified date
Arguments:
<date>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-f uploadFile]
- boolean
[-a byAlliance]
- boolean
Add a build to a category with the specified city ranges
Arguments:
<category>
- String
A single line of text
<ranges>
- CityRanges
A range of city counts (inclusive)
<build>
- CityBuild
City build json or url
Permission:
Have the bot provide a pre set build based on city count
Arguments:
<category>
- String
A single line of text
[nation=%user%]
- DBNation
nation id, name or url
[cities]
- Integer
A whole number
Permission:
Delete a build registered in a specific category with the provided min-cities
Arguments:
<category>
- String
A single line of text
<minCities>
- int
A whole number
Permission:
Print the current city builds being used by a nation
Arguments:
<nation>
- DBNation
nation id, name or url
Permission:
List the currently set build categories
This command has no arguments
Permission:
This command is public
Get the cost a specific amount of buildings
Arguments:
<build>
- CityBuild
City build json or url
List members who can see a discord channel
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Close a war room, interview or embassy discord channel
Arguments:
[-f forceDelete]
- boolean
Permission:
Close inactive channels in a category
Arguments:
<category>
- Category
A discord category name or mention
<age>
- long[Timediff]
Close channels older than age
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-f force]
- boolean
Permission:
list channels
This command has no arguments
Permission:
This command is public
Create a channel with name in a specified category and ping the specified roles upon creation.
Arguments:
<channelName>
- String
A single line of text
<category>
- Category
A discord category name or mention
[copypasta]
- String
[-i addInternalAffairsRole]
- boolean
[-m addMilcom]
- boolean
[-f addForeignAffairs]
- boolean
[-e addEcon]
- boolean
[-p pingRoles]
- boolean
[-a pingAuthor]
- boolean
Delete a discord channel
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Purge a category's channels older than the time specified
Arguments:
<category>
- Category
A discord category name or mention
<cutoff>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
List discord channels a member has access to
Arguments:
<member>
- Member
A discord user mention, or if a nation name, id or url if they are registered
Permission:
List all guild channels and what members have access to each
This command has no arguments
Permission:
Move a discord channel down 1 position
This command has no arguments
Permission:
Move a discord channel up 1 position
This command has no arguments
Permission:
Move an interview channel from the interview-archive
category
Arguments:
[category]
- Category
A discord category name or mention
Permission:
Modify the permissions for a list of nations in a channel.
Arguments:
<channel>
- TextChannel
A discord guild channel name or mention
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<permission>
- Permission
A discord role permission
[-n negate]
- boolean
Negate the permission
[-r removeOthers]
- boolean
Remove the permission from all other users
[-l listChanges]
- boolean
Log the changes to user permissions that are made
[-p pingAddedUsers]
- boolean
Permission:
Bulk rename channels using a google sheet or AI generated emojis
The sheet expects columns id
, name
and optionally description
If you do not provide a sheet, emojis and descriptions will be generated from the channel names
Arguments:
[sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-e excludeCategories]
- Set<Category>
A comma separated list of discord categories
[-c includeCategories]
- Set<Category>
[-f force]
- boolean
[-j popCultureQuotes]
- boolean
Permission:
Set the category for a discord channel
Arguments:
<category>
- Category
A discord category name or mention
Permission:
Delete a conversion task for a google document to a chat dataset
Arguments:
<source>
- EmbeddingSource
The name of an data set
Permission:
Show the documents currently converting to a dataset Datasets are a list of information that can be used to generate chat responses
Arguments:
[-r showRoot]
- boolean
[-a showOtherGuilds]
- boolean
Permission:
Pause conversion for a google document to a chat dataset Conversion can be resumed later
Arguments:
<source>
- EmbeddingSource
The name of an data set
Permission:
Resume conversion for a google document to a chat dataset
Arguments:
<source>
- EmbeddingSource
The name of an data set
Permission:
Delete your custom datasets. Default datasets cannot be deleted, and if a custom dataset is deleted, tasks will fall back to using the base datasets.
Arguments:
<source>
- EmbeddingSource
The name of an data set
[-f force]
- boolean
Permission:
Save Google spreadsheet contents to a named embedding dataset. Requires two columns labeled "fact" or "question" and "answer" for vectors. Search finds nearest fact, or searches questions and returns corresponding answers if two columns.
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
<document_name>
- String
A single line of text
[-f force]
- boolean
Permission:
This command provides a list of accessible embedding datasets used for prompting GPT. Embedding datasets consist of vectors representing text strings, allowing for comparison between different strings. See: https://github.com/xdnw/locutus/wiki or https://politicsandwar.fandom.com/wiki/Politics_and_War_Wiki To view a specific dataset see: /chat embedding view
Arguments:
[-r listRoot]
- boolean
Permission:
This command is public
Set the data sources you want to use to generate natural language responses for chat queries
Arguments:
<excludeTypes>
- Set<EmbeddingType>
A comma separated list of embedding types
[-w includeWikiCategories]
- Set<String>[WikiCategory]
A comma separated list of wiki categories
[-n excludeWikiCategories]
- Set<String>[WikiCategory]
[-e excludeSources]
- Set<EmbeddingSource>
A comma separated list of data sets
[-a addSources]
- Set<EmbeddingSource>
Save Google spreadsheet contents to a named embedding dataset. Requires two columns labeled "fact" or "question" and "answer" for vectors. Search finds nearest fact, or searches questions and returns corresponding answers if two columns.
Arguments:
<source>
- EmbeddingSource
The name of an data set
[-a getAnswers]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Customize options for a chat provider. Defaults apply if not set. Configurations for all new messages. Refer to API docs for details: https://platform.openai.com/docs/api-reference/chat/create
Arguments:
<provider>
- GPTProvider
<options>
- Map<String, String>
Permission:
List available chat providers, and their information. This includes status, rate limits, execution time, model, permissions, options.
This command has no arguments
Permission:
Pause a chat provider. Other providers will not be paused. Halts document conversion using this provider. Providers may be resumed.
Arguments:
<provider>
- GPTProvider
Permission:
Resume paused chat provider (i.e. manual/error). Check provider status with list command.
Arguments:
<provider>
- GPTProvider
Permission:
Configure chat provider types used for conversations. Settings applies to all new messages. Use provider list command to view types.
Arguments:
<providerTypes>
- Set<ProviderType>
A comma separated list of provider types
Permission:
This command is public
Calculate the costs of purchasing cities (from current to max)
Arguments:
<currentCity>
- int
A whole number
<maxCity>
- int
[manifestDestiny=false]
- boolean
[urbanPlanning=false]
- boolean
[advancedUrbanPlanning=false]
- boolean
[metropolitanPlanning=false]
- boolean
[governmentSupportAgency=false]
- boolean
This command is public
Generate an optimal build json for a city
Arguments:
<build>
- CityBuild
A city url or build json to optimize
(City build json or url)
Optional: City Build Parameters:
[days]
- Integer Set the days the build is expected to last before replacement (or destruction) This factors in the cost to switch builds Defaults to None (A whole number)[-x buildMMR]
- String Set the MMR (military building counts) of the city to optimize Defaults to the current MMR of the build provided, else0000
(A single line of text)[-a age]
- Integer Set the age of the city to optimize Defaults to the current city age, else0
You can also specifyage: 1234
in the city json (A whole number)[-i infra]
- Integer Set the infrastructure level of buildings in the city to optimize Defaults to the current infrastructure level You can also specifyinfra:1234
in the city json (A whole number)[-b baseReducedInfra]
- Integer Set the damaged infrastructure level of the city to optimize i.e. To simulate a city with a infra level required for its buildings Defaults to the infra level (A whole number)[-l land]
- Integer Set the land level of the city to optimize Defaults to the current land level, else the infra level You can specifyland: 1234
in the city json (A whole number)[-r radiation]
- Double Set the radiation level Defaults to the cities current radiation, or your nation's radiation level (A decimal number) Optional: Optimization restrictions:[-d diseaseCap]
- Double Set the maximum disease allowed (A decimal number)[-c crimeCap]
- Double Set the maximum crime allowed (A decimal number)[-p minPopulation]
- Double Set the minimum population allowed (A decimal number)[-u useRawsForManu]
- boolean Require the city to produce all raw resources it uses for manufacturing[-m moneyPositive]
- boolean Require the city build to be cash positive Optional: Nation Setting (Continent, Projects, Tax Rate):[-n nationalProjects]
- Set<Project> Set the projects a city has access to Defaults to the projects of the nation (A comma separated list of nation projects)[-g geographicContinent]
- Continent Set the continent the city is in Defaults the the continent of the nation (Continent name)[-t taxRate]
- TaxRate Maximize untaxed revenue for a tax rate Defaults to 0/0 (A tax rate in the form ofmoney/rss
) Display Options:[-w writePlaintext]
- boolean Return a result on discord in plain text
This command is public
Get the revenue of a city or build json
Accepts land
and age
as json attributes
Arguments:
<city>
- CityBuild
The city url or build json
(City build json or url)
[nation=%user%]
- DBNation
The nation to calculate the revenue for
i.e. Projects, radiation, continent
(nation id, name or url)
[-b excludeNationBonus]
- boolean
Exclude the new nation bonus
[-l land]
- Double
A decimal number
[-a age]
- Integer
A whole number
Add alliances to an existing coalition
Note: Use /coalition create
to use a nonstandard coalition
Arguments:
<alliances>
- Set<NationOrAllianceOrGuild>
A comma separated list of nations, alliances and guild ids
<coalitionName>
- String[GuildCoalition]
A name for a default or custom Bot coalition
Permission:
Create a new coalition with the provided alliances
Arguments:
<alliances>
- Set<NationOrAllianceOrGuild>
A comma separated list of nations, alliances and guild ids
<coalitionName>
- String
A single line of text
Permission:
Delete an entire coalition
Arguments:
<coalitionName>
- String[GuildCoalition]
A name for a default or custom Bot coalition
Permission:
Generate a named coalition by the treaty web of an alliance
Arguments:
<coalition>
- String
A single line of text
<rootAlliance>
- DBAlliance
An alliance name id or url
[topX=80]
- int
Include only the top alliances
(A whole number)
Permission:
List the bot coalitions
Arguments:
[filter]
- String
Only list alliances or guilds containing this filter
(A single line of text)
[-i listIds]
- boolean
List the alliance and guild ids instead of names
[-d ignoreDeleted]
- boolean
Ignore deleted alliances
Permission:
Remove alliances to a coalition
Note: Use /coalition delete
to delete an entire coalition
Arguments:
<alliances>
- Set<NationOrAllianceOrGuild>
A comma separated list of nations, alliances and guild ids
<coalitionName>
- String[GuildCoalition]
A name for a default or custom Bot coalition
Permission:
This command is public
List the color blocs and their revenue Optionally switch nations or alliances to a color to view potential revenue changes
Arguments:
[set_aqua]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[set_black]
- Set<DBNation>
[set_blue]
- Set<DBNation>
[set_brown]
- Set<DBNation>
[set_green]
- Set<DBNation>
[set_lime]
- Set<DBNation>
[set_maroon]
- Set<DBNation>
[set_olive]
- Set<DBNation>
[set_orange]
- Set<DBNation>
[set_pink]
- Set<DBNation>
[set_purple]
- Set<DBNation>
[set_red]
- Set<DBNation>
[set_white]
- Set<DBNation>
[set_yellow]
- Set<DBNation>
[set_gray_or_beige]
- Set<DBNation>
This command is public
No description provided
Arguments:
<conflict>
- Conflict
The name of a stored conflict between two coalitions
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
[-col1 isCoalition1]
- boolean
[-col2 isCoalition2]
- boolean
This command is public
No description provided
Arguments:
[-i includeInactive]
- boolean
This command is public
List resources available and radiation level in each continent
This command has no arguments
This command is public
List the radiation in each continent
This command has no arguments
Save or paste a stored message
Arguments:
[key]
- String
What to name the saved message
(A single line of text)
[message]
- String[TextArea]
A single line of text
[requiredRolesAny]
- Set<Role>
Require roles to paste the message
(A comma separated list of discord role names or mentions)
[-n formatNation]
- DBNation
nation id, name or url
Permission:
This command is public
Set your api and bot key for the bot Your API key can be found on the account page: https://politicsandwar.com/account/ See: https://forms.gle/KbszjAfPVVz3DX9A7 and DM <@258298021266063360> to get a bot key
Arguments:
<apiKey>
- String
A single line of text
[verifiedBotKey]
- String
Login to allow the bot to run scripts through your account (Avoid using this if possible)
Arguments:
<username>
- String
Your username (i.e. email) for Politics And War
(A single line of text)
<password>
- String
A single line of text
Permission:
This command is public
Remove your login details from the bot
This command has no arguments
Add or subtract from a nation, alliance, guild or tax bracket's account balance
note: Mutated alliance deposits are only valid if your server is a bank/offshore
Use #expire=30d
to have the amount expire after X days
Arguments:
<accounts>
- Set<NationOrAllianceOrGuildOrTaxid>
A comma separated list of nations, alliances, guild ids and tax ids or urls
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
<note>
- String
A single line of text
[-f force]
- boolean
Permission:
Add account balance using a google sheet of nation's and resource amounts The google sheet must have a column for nation (name, id or url) and a column named for each in-game resource
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
<note>
- String
The transaction note to use
(A single line of text)
[-f force]
- boolean
[-n negative]
- boolean
Subtract the amounts instead of add
Permission:
Displays the account balance for a nation, alliance or guild Balance info includes deposits, loans, grants, taxes and escrow
Arguments:
<nationOrAllianceOrGuild>
- NationOrAllianceOrGuildOrTaxid
Account to check holdings for
(A nation or alliance name, url or id, or a guild id, or a tax id or url)
[-a offshores]
- Set<DBAlliance>
The alliances to check transfers from
Otherwise the guild configured ones will be used
(A comma separated list of alliances)
[-c timeCutoff]
- Long[Timestamp]
Only include transfers after this time
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-b includeBaseTaxes]
- boolean
Include all taxes in account balance
[-o ignoreInternalOffsets]
- boolean
Do NOT include manual offsets in account balance
[-t showCategories]
- Boolean
Show separate sections for taxes and deposits
[-d replyInDMs]
- boolean
[-e includeExpired]
- boolean
Include expired transfers
[-i includeIgnored]
- boolean
Include transfers marked as ignore
[-z allowCheckDeleted]
- boolean
[-h hideEscrowed]
- boolean
Hide the escrow balance
Permission:
Adjust nation's holdings by converting negative resource values of a specific note to a different resource or money
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Optional: Resources to convert:
If no resources are specified, all negative resources are converted to money
[negativeResources=manu,raws,food]
- List<ResourceType> The resources to convert (A comma separated list of resource types)[convertTo=money]
- ResourceType What resource to convert to Conversion uses weekly market average prices (The name of a resource) Optional (max 1): Specify the deposit notes to convert:Defaults to all types, except grants
[-g includeGrants]
- boolean If grants are also converted[-t depositType]
- DepositTypeInfo Convert transfers of this note category (A DepositType optionally with a value and a city tag See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes) Conversion Options:[-f conversionFactor]
- Double What factor to multiple the converted resources by e.g. Use a value below 1.0 to incur a fee (A decimal number)[-n note]
- String The transfer note to use for the adjustment (A single line of text)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Check the flow for a specific transaction note, showing the net by internal addbalance, withdrawals, and deposits
Arguments:
<nation>
- DBNation
nation id, name or url
<note>
- DepositType
A note to use for a bank transfer
Permission:
Add or subtract interest to a nation's balance based on their current balance
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<interestPositivePercent>
- double
A percent (out of 100) to apply to POSITIVE resources counts in their account balance
(A decimal number)
<interestNegativePercent>
- double
A percent (out of 100) to apply to NEGATIVE resources counts in their account balance
(A decimal number)
Permission:
Resets a nations deposits to net zero (of the specific note categories)
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
Reset Options:
[-g ignoreGrants]
- boolean Do NOT reset grants[-l ignoreLoans]
- boolean Do NOT reset loans[-t ignoreTaxes]
- boolean Do NOT reset taxes[-d ignoreBankDeposits]
- boolean Do NOT reset deposits[-e ignoreEscrow]
- boolean Do NOT reset escrow
[-f force]
- boolean
Permission:
Get a sheet with member nations and their deposits
Each nation's safekeep should match the total balance given by deposits commandAdd -b
to
Add -o
to not include any manual deposit offsets
Add -d
to not include deposits
Add -t
to not include taxes
Add -l
to not include loans
Add -g
to not include grants
Add -p
to include past depositors
Add -f
to force an update
Arguments:
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[offshores]
- Set<DBAlliance>
The alliances to track transfers from
(A comma separated list of alliances)
[-b ignoreTaxBase]
- boolean
use 0/0 as the tax base
[-o ignoreOffsets]
- boolean
Do NOT include any manual deposit offsets
[-t noTaxes]
- boolean
Do NOT include taxes
[-l noLoans]
- boolean
Do NOT include loans
[-g noGrants]
- boolean
Do NOT include grants
[-d noDeposits]
- boolean
Do NOT include deposits
[-p includePastDepositors]
- Set<Integer>
Include past depositors
[-e noEscrowSheet]
- boolean
Do NOT include escrow sheet
[-n useFlowNote]
- DepositType
Only show the flow for this note
i.e. To only see funds marked as #TRADE
This is for transfer flow breakdown internal, withdrawal, and deposit
(A note to use for a bank transfer)
[-f force]
- boolean
Permission:
Bulk shift resources in a nations holdings to another note category
Arguments:
<nation>
- DBNation
nation id, name or url
<from>
- DepositType
The note to change FROM
(A note to use for a bank transfer)
<to>
- DepositType
The new note to use
(A note to use for a bank transfer)
[expireTime]
- Long[Timestamp]
Make the funds expire
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[decayTime]
- Long[Timestamp]
Make the funds decay
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
Permission:
Shift the transfer note notegory flows for a nation.
For adjusting whether amounts are internal, withdrawn or deposited.
Does not change overall or note balance unless it is shifted to #ignore
Arguments:
<nation>
- DBNation
nation id, name or url
<noteFrom>
- DepositType
A note to use for a bank transfer
<flowType>
- FlowType
Bank transaction flow type (internal, withdrawal, depost)
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[noteTo]
- DepositType
[-a alliance]
- DBAlliance
An alliance name id or url
[-f force]
- boolean
Permission:
This command is public
Create an embassy channel in the embassy category
Arguments:
[nation=%user%]
- DBNation
The nation to create an embassy for
(nation id, name or url)
Add a button to a discord embed from this bot which runs a command
Arguments:
<message>
- Message
A discord message url
<label>
- String
A single line of text
<behavior>
- CommandBehavior
The behavior for a command button
<command>
- ICommand
A discord slash command reference for the bot
[arguments]
- String
The arguments and values you want to submit to the command
Example: myarg1:myvalue1 myarg2:myvalue2
For placeholders: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A single line of text)
[-c channel]
- MessageChannel
A discord channel name or mention
[-f force]
- boolean
Permission:
Add a modal button to a discord embed from this bot, which creates a prompt for a command
Arguments:
<message>
- Message
A discord message url
<label>
- String
A single line of text
<behavior>
- CommandBehavior
The behavior for a command button
<command>
- ICommand
A discord slash command reference for the bot
<arguments>
- String
A comma separated list of the command arguments to prompt for
Arguments can be one of the named arguments for the command, or the name of any {placeholder}
you have for defaults
(A single line of text)
[defaults]
- String
The default arguments and values you want to submit to the command
Example: myarg1:myvalue1 myarg2:myvalue2
For placeholders: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A single line of text)
[-c channel]
- MessageChannel
A discord channel name or mention
Permission:
Add a button to a discord embed from this bot which runs a command
Supports legacy commands and user command syntax.
Unlike embed add button
, this does not parse and validate command input.
Arguments:
<message>
- Message
A discord message url
<label>
- String
A single line of text
<behavior>
- CommandBehavior
The behavior for a command button
<command>
- String
[-c channel]
- MessageChannel
A discord channel name or mention
[-f force]
- boolean
Permission:
Generate a card which runs a command when users react to it.
Put commands inside "quotes".
Prefix a command with a #channel e.g. "#channel /embedcommand"
to have the command output go there
Prefix the command with:~/command
to remove the user's reaction upon use and keep the card
_/command
to remove ALL reactions upon use and keep the card
./command
to keep the card upon use
Example:
/embed 'Some Title' 'My First Embed' '~/fun say Hello {nation}' '/fun say "Goodbye {nation}"'
Arguments:
<title>
- String
A single line of text
<body>
- String
<commands>
- List<String>[TextArea]
Multiple words or text separated by spaces
Use quotes for multi-word arguments
Permission:
Create a simple embed with a title and description
Arguments:
<title>
- String
A single line of text
<description>
- String
Permission:
Set the description of an embed from this bot
Arguments:
<discMessage>
- Message
A discord message url
<description>
- String
A single line of text
Permission:
Show the title, description and commands for a bot embed
Arguments:
<embedMessage>
- Message
A discord message url
[copyToMessage]
- Message
Show commands to updatecopyToMessage
with the info from the embedMessage
(A discord message url)
Permission:
Remove a button from an embed from this bot
Arguments:
<message>
- Message
A discord message url
<labels>
- List<String>[TextArea]
A comma separated list of button labels
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
Permission:
Generates sheets for a coalition war:- All enemies
- Priority enemies
- All allies
- Underutilized allies
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
[allEnemiesSheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[priorityEnemiesSheet]
- SpreadSheet
[allAlliesSheet]
- SpreadSheet
[underutilizedAlliesSheet]
- SpreadSheet
Permission:
Discord embed for checking deposits, withdrawing funds, viewing your stockpile, depositing resources and offshoring funds
Arguments:
[bankerNation]
- DBNation
Only applicable to corporate servers. The nation accepting trades for bank deposits. Defaults to the bot owner's nation
(nation id, name or url)
[-c outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Discord embed for Econ Staff to view deposits, stockpiles, revenue, tax brackets, tax income, warchest and offshore funds
Arguments:
[-c outputChannel]
- MessageChannel
A discord channel name or mention
[-n useFlowNote]
- DepositType
A note to use for a bank transfer
[-p includePastDepositors]
- Set<Integer>
Include past depositors in deposits sheet
Permission:
High infra targets where you are losing To find contestable range, see: strengthTierGraph
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Discord embed for Internal Affairs Staff to auto-assign roles and view member activity, audit results, daychange, spy purchase, mmr
Arguments:
[-c outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Econ panel for members
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
[-d showDepositsInDms]
- boolean
Permission:
Makes a raid panel, which is a discord embed with buttons for different options for finding raid targets
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Enemy espionage finder discord embed template
Arguments:
[coalition]
- String[GuildCoalition]
A name for a default or custom Bot coalition
[outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Discord embed for sheet to update ally and enemy spy counts, generate and send spy blitz targets
Arguments:
[allies=spyops]
- String[GuildCoalition]
A name for a default or custom Bot coalition
[outputChannel]
- MessageChannel
A discord channel name or mention
[spySheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Blockader Target & Requests discord embed template
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
Permission:
Enemy war targets where a score range is not contestable To find contestable range, see: strengthTierGraph
Arguments:
<greaterOrLess>
- Operation
If the cutoff is greater or less than the score
(Math comparison operation)
<score>
- double
The score at which the conflict is not contestable
(A decimal number)
[outputChannel]
- MessageChannel
A discord channel name or mention
[-d resultsInDm]
- boolean
Permission:
Enemy war targets when you are winning Prioritizes down declares To find contestable range, see: strengthTierGraph
Arguments:
[outputChannel]
- MessageChannel
A discord channel name or mention
[-d resultsInDm]
- boolean
Permission:
Set the title of an embed from this bot
Arguments:
<discMessage>
- Message
A discord message url
<title>
- String
A single line of text
Permission:
Update a bot embed
Arguments:
[-r requiredRole]
- Roles
A discord role name, mention or id
[-c color]
- Color
A color name or hex code
[-t title]
- String
A single line of text
[-d desc]
- String
Permission:
Add funds to the escrow account for a set of nations Escrow funds can be withdrawn at a later date by the receiver, such as when a blockade ends To transfer funds from a nation's deposits into their escrow, see the transfer command
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-b amountBase]
- Map<ResourceType, Double>
The base amount of resources to escrow
If per city is set, the highest value of each resource is chosen
(A comma separated list of resources and their amounts)
[-p amountPerCity]
- Map<ResourceType, Double>
Amount of resources to escrow for each city the receiver has
If base is set, the highest value of each resource is chosen
This uses the city count now, not when the funds are withdrawn later
(A comma separated list of resources and their amounts)
[-e amountExtra]
- Map<ResourceType, Double>
Additional resources to escrow
If a base or per city are set, this adds to what is calculated for that
(A comma separated list of resources and their amounts)
[-s subtractStockpile]
- boolean
Don't add escrow resources that the nation has in their stockpile
[-m subtractNationsUnits]
- Set<MilitaryUnit>
When the nation has these units, don't add the resources equivalent to their cost
Useful to only give resources to those missing units
(A comma separated list of military units)
[-d subtractDeposits]
- boolean
Do not add escrow resources that the nation has in their deposits
[expireAfter]
- Long[Timediff]
Delete all receiver escrow after a time period
Recommended: 5d
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-f force]
- boolean
Permission:
Set the escrow account balances for a set of nations Escrow funds can be withdrawn at a later date by the receiver, such as when a blockade ends To transfer funds from a nation's deposits into their escrow, see the transfer command
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-b amountBase]
- Map<ResourceType, Double>
The base amount of resources to escrow
If per city is set, the highest value of each resource is chosen
(A comma separated list of resources and their amounts)
[-p amountPerCity]
- Map<ResourceType, Double>
Amount of resources to escrow for each city the receiver has
If base is set, the highest value of each resource is chosen
This uses the city count now, not when the funds are withdrawn later
(A comma separated list of resources and their amounts)
[-e amountExtra]
- Map<ResourceType, Double>
Additional resources to escrow
If a base or per city are set, this adds to what is calculated for that
(A comma separated list of resources and their amounts)
[-s subtractStockpile]
- boolean
Don't add escrow resources that the nation has in their stockpile
[-m subtractNationsUnits]
- Set<MilitaryUnit>
When the nation has these units, don't add the resources equivalent to their cost
Useful to only give resources to those missing units
(A comma separated list of military units)
[-d subtractDeposits]
- boolean
Do not add escrow resources that the nation has in their deposits
[expireAfter]
- Long[Timediff]
Delete all receiver escrow after a time period
Recommended: 5d
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-f force]
- boolean
Permission:
Set the escrow account balances for nation to the values in a spreadshet
The sheet must have a nation
column, and then a column for each resource type
Escrow funds can be withdrawn at a later date by the receiver, such as when a blockade ends
Use the deposits sheet command to get a spreadsheet of the current escrow balances
Arguments:
<sheet>
- TransferSheet
A google spreadsheet id or url. Must have a nation
or leader
column as well as the names of each resource
[expireAfter]
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[-f force]
- boolean
Permission:
Create a google sheet of escrowed resources amounts for a set of nations
Arguments:
Optional 1: Specific Nations:
[nations]
- Set<DBNation> Specify the nations to include in the sheet Defaults to current members (A comma separated list of nations, alliances and filters) Optional 2: Include past members:[-p includePastDepositors]
- Set<Integer> Include all nations that have deposited in the past
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
No description provided
Arguments:
<receiver>
- DBNation
nation id, name or url
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[-f force]
- boolean
Permission:
This command is public
We are the borg
Arguments:
[msg]
- String
A single line of text
This command is public
Making a list, checking it twice; Gonna find out whos naughty or nice. St Borgolas is coming to town
This command has no arguments
This command is public
Get a random joke from the joke file
This command has no arguments
This command is public
Have the bot say the provided message, with placeholders replaced.
Arguments:
<msg>
- String[TextArea]
A single line of text
This command is public
Steal one of borgs cities
This command has no arguments
Create a new build grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
[-c build]
- CityBuild
Only grant this specific city build
Defaults to allow any city build
(City build json or url)
[-m mmr]
- MMRInt
The MMR required for grants via this template
(4 whole numbers representing barracks,factory,hangar,drydock)
[-o only_new_cities]
- boolean
Only allow granting builds for new cities
(Past 10 days)
[-t allow_after_days]
- Integer
Allow grants to cities that have not received a build in the past X days
Defaults to no limit
(A whole number)
[-a allow_after_offensive]
- boolean
Allow sending to cities after the receiver has had an offensive war
e.g. For for switching builds after a counter
Defaults to False
[-i allow_after_infra]
- boolean
Allow sending to cities where infrastructure has been damaged
Defaults to False
[-aa allow_all]
- boolean
Always allow granting (even if they have received another city build grant)
[-lp allow_after_land_or_project]
- boolean
Allow granting after purchasing land or a project
Defaults to False
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-repeat repeatable]
- boolean
If the template can be sent to the same receiver multiple times
[-f force]
- boolean
Permission:
Create a new city grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
<minCity>
- Integer
The minimum city range allowed to receive grants
(A whole number)
<maxCity>
- Integer
The maximum city allowed to grant up to
(A whole number)
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-f force]
- boolean
Permission:
Create a new infra grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
<level>
- Integer
The infra level allowed to grant to
(A whole number)
[-n onlyNewCities]
- boolean
Only allow grants to new cities (past 10 days)
Defaults to false
[-o requireNOffensives]
- Integer
Require N offensive wars before allowing infra grants
(A whole number)
[-a allowRebuild]
- boolean
Allow granting infra to cities that have received a grant in the past provided it has received damage
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-repeat repeatable]
- boolean
If the template can be sent to the same receiver multiple times
[-f force]
- boolean
Permission:
Create a new land grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
<level>
- Integer
The land level to grant up to (inclusive)
(A whole number)
[-n onlyNewCities]
- boolean
Only allow grants to new cities (past 10 days)
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-repeat repeatable]
- boolean
If the template can be sent to the same receiver multiple times
[-f force]
- boolean
Permission:
Create a new project grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
<project>
- Project
The project to grant
(A project name. Replace spaces with _
. See: https://politicsandwar.com/nation/projects/)
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-f force]
- boolean
Permission:
Create a new raws grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
<days>
- long
Allow disbursing raw resources to run cities for up to a number of days
(A whole number)
[-o overdrawPercent]
- Long
Allow oversupply of resources by a certain percent
Defaults to: 20 (percent)
(A whole number)
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-repeat nonRepeatable]
- boolean
If the template can only sent to the same receiver once
[-f force]
- boolean
Permission:
Create a new warchest grant template
Arguments:
<name>
- String
The name of the template
Alphanumerical
(A single line of text)
<allowedRecipients>
- NationFilter
A filter for nations allowed to receive this grant
Use your alliance link for all nations
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(A comma separated list of filters (can include nations and alliances))
[-a allowancePerCity]
- Map<ResourceType, Double>
The warchest allowed to grant (per city)
Defaults to the guild setting: WARCHEST_PER_CITY
(A comma separated list of resources and their amounts)
[-t trackDays]
- long
Allow granting warchest if they have not received it in the past number of days
(A whole number)
[-c subtractExpenditure]
- boolean
Allow granting warchest that has been consumed in war
[-o overdrawPercent]
- long
Allow granting a certain percent above the allowance to account for unintended losses (e.g. looting)
Defaults to 0 (percent)
(A whole number)
[-e econRole]
- Role
The role that can grant this template to others
Defaults to the ECON role (see {prefix}role setalias
)
(A discord role name or mention)
[-s selfRole]
- Role
The role that can grant this template to itself
Defaults to disabled
(A discord role name or mention)
[-b bracket]
- TaxBracket
The tax bracket account to use for withdrawals
e.g. For a growth circle
Defaults to None
See: https://github.com/xdnw/locutus/wiki/tax_automation#tax-bracket-accounts
(A tax id or url)
[-r useReceiverBracket]
- boolean
If the receiver's tax bracket is used as the tax bracket account
Defaults to false
Alternative to bracket
[-mt maxTotal]
- Integer
Global grants allowed for this template
Defaults to unlimited
(A whole number)
[-md maxDay]
- Integer
Grants allowed for this template per day
Defaults to unlimited
(A whole number)
[-mgd maxGranterDay]
- Integer
Grants allowed for this template per day by the same sender
Defaults to unlimited
(A whole number)
[-mgt maxGranterTotal]
- Integer
Grants allowed for this template by the same sender
Defaults to unlimited
(A whole number)
[-expire expireTime]
- Long[Timediff]
Add a default expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-decay decayTime]
- Long[Timediff]
Add a default decaying expiry time to grants sent via this template
e.g. 60d
The granter can specify an expiry shorter than this value
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-ignore allowIgnore]
- boolean
Do not include grants in member balances by default
Defaults to false
[-repeat nonRepeatable]
- boolean
If the template can be sent to the same receiver multiple times
[-f force]
- boolean
Permission:
Delete a grant template
Arguments:
<template>
- AGrantTemplate
The name of a created grant template
[-f force]
- boolean
Permission:
Set an active grant template as disabled
Arguments:
<template>
- AGrantTemplate
The name of a created grant template
[-f force]
- boolean
Permission:
Set a disabled grant template as enabled
Arguments:
<template>
- AGrantTemplate
The name of a created grant template
Permission:
Full information about a grant template
Arguments:
<template>
- AGrantTemplate
The name of a created grant template
[receiver]
- DBNation
View additional info related to granting the template to this nation
Such as cost/eligability
(nation id, name or url)
[value]
- String
The value to provide to the grant template
Such as:
- Number (infra, land, grant, city, raws)
- City build json (build)
- Resources (warchest)
(A single line of text)
[-e show_command]
- boolean Show the command used to create this template i.e. If you want to copy or recreate the template
Permission:
List all grant templates for the specified category
Arguments:
[category]
- TemplateTypes
The category of templates to list
Defaults to all categories
(A category for a grant template)
[-d listDisabled]
- boolean
List the disabled grant templates
Permission:
No description provided
Arguments:
<template>
- AGrantTemplate
The name of a created grant template
<receiver>
- DBNation
nation id, name or url
[-e expire]
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[-d decay]
- Long[Timediff]
[-i ignore]
- Boolean
[-p customValue]
- String
A single line of text
[-em escrowMode]
- EscrowMode
The mode for escrowing funds for a transfer, such as when a receiver is blockaded
[-f force]
- boolean
Permission:
This command is public
No description provided
Arguments:
<argument>
- Parser
[-s skipOptionalArgs]
- boolean
This command is public
Show the description, usage information and permissions for a command
Arguments:
<command>
- ICommand
A discord slash command reference for the bot
Locate a nation placeholder you are looking for. Use keywords for relevant results, or ask a question.
Arguments:
<search>
- String
A single line of text
[instructions]
- String
[-g useGPT]
- boolean
[-n numResults]
- Integer
A whole number
Permission:
Locate a command you are looking for. Use keywords for relevant results, or ask a question.
Arguments:
<search>
- String
A single line of text
[instructions]
- String
[-g useGPT]
- boolean
[-n numResults]
- Integer
A whole number
Permission:
Locate a nation placeholder you are looking for. Use keywords for relevant results, or ask a question.
Arguments:
<search>
- String
A single line of text
[instructions]
- String
[-g useGPT]
- boolean
[-n numResults]
- Integer
A whole number
Permission:
This command is public
Locate a setting you are looking for. Use keywords for relevant results, or ask a question.
Arguments:
<query>
- String
A single line of text
[num_results=5]
- int
A whole number
This command is public
No description provided
Arguments:
<input>
- String
A single line of text
This command is public
Show the description, usage information and permissions for a nation placeholder
Arguments:
<command>
- ParametricCallable[NationAttributeCallable]
The name of a nation attribute
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
This command is public
No description provided
Arguments:
<input>
- String
A single line of text
This command is public
Calculate the costs of purchasing infra (from current to max)
Arguments:
<currentInfra>
- int
A whole number
<maxInfra>
- int
[urbanization=false]
- boolean
[center_for_civil_engineering=false]
- boolean
[advanced_engineering_corps=false]
- boolean
[government_support_agency=false]
- boolean
[-c cities=1]
- int
This command is public
Calculate how many days it takes to ROI on the last improvement slot for a specified infra level
Arguments:
<city>
- DBCity
City url
<infraLevel>
- int
A whole number
[-c continent]
- Continent
Continent name
[-r rads]
- Double
A decimal number
[-p forceProjects]
- Set<Project>
A comma separated list of nation projects
[-d openMarkets]
- boolean
[-m mmr]
- MMRInt
4 whole numbers representing barracks,factory,hangar,drydock
[-l land]
- Double
Ranking of nations by how many advertisements they have registered (WIP)
Arguments:
[-u uploadFile]
- boolean
Permission:
This command is public
Create an interview channel
Arguments:
[user=%user%]
- User
A discord user mention, or if a nation name, id or url if they are registered
Set the discord category for an interview channel
Arguments:
<category>
- Category
A discord category name or mention
Permission:
List the interview channels, by category + activity
Arguments:
<filter>
- String
A single line of text
[time=1d]
- long[Timediff]
Highlight channels inactive for longer than the time specified
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Ranking of nations by how many incentives they have received
Settings: REWARD_MENTOR
and REWARD_REFERRAL
Arguments:
<timestamp>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
Send a message to the interview channels of the nations specified
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<message>
- String
A single line of text
[-p pingMentee]
- boolean
Permission:
List mentors, grouped by their respective mentees
Arguments:
[mentors=*]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[mentees=*]
- Set<DBNation>
[timediff=2w]
- long[Timediff]
Activity requirements for mentors
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-a includeAudit]
- boolean
Include an audit summary with the list
[-u ignoreUnallocatedMembers]
- boolean
Do NOT list members without a mentor
[-i listIdleMentors]
- boolean
List mentors without any active mentees
Permission:
Assign yourself as someone's mentor
Arguments:
<mentee>
- DBNation
nation id, name or url
[-f force]
- boolean
Permission:
Assign a mentor to a mentee
Arguments:
<mentor>
- DBNation
nation id, name or url
<mentee>
- DBNation
[-f force]
- boolean
Permission:
List mentees, grouped by their respective mentors
Arguments:
[mentees=*]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[timediff=2w]
- long[Timediff]
Activity requirements for mentors
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
Set the interview message
Arguments:
<message>
- String
A single line of text
Permission:
View the interview message
This command has no arguments
Permission:
This command is public
Rank alliances by their new members over a timeframe
Arguments:
<cutoff>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[topX=80]
- int
Top X alliances to show in the ranking
(A whole number)
[-u uploadFile]
- boolean
Set yourself as the referrer for a user
Arguments:
<user>
- User
A discord user mention, or if a nation name, id or url if they are registered
Permission:
Sort the interview channels to an audit category
An appropriate discord category must exist in the form: interview-CATEGORY
Allowed categories: INACTIVE,ENTRY,RAIDS,BANK,SPIES,BUILD,COUNTERS,TEST,ARCHIVE
Arguments:
[sortCategorized=true]
- boolean
Sort channels already in a category
Permission:
Force an update of all interview channels and print the results
This command has no arguments
Permission:
Unassign a mentee from all mentors
Arguments:
<mentee>
- DBNation
nation id, name or url
Permission:
This command is public
Return the discord invite link for the bot
This command has no arguments
This command is public
Calculate the costs of purchasing land (from current to max)
Arguments:
<currentLand>
- int
A whole number
<maxLand>
- int
[rapidExpansion=false]
- boolean
[arable_land_agency=false]
- boolean
[advanced_engineering_corps=false]
- boolean
[government_support_agency=false]
- boolean
[-c cities=1]
- int
This command is public
Calculate how many days it takes to ROI on the last 50 land for a specified level
Arguments:
<city>
- DBCity
City url
<landLevel>
- double
A decimal number
[-c continent]
- Continent
Continent name
[-r rads]
- Double
[-p forceProjects]
- Set<Project>
A comma separated list of nation projects
[-d openMarkets]
- boolean
[-m mmr]
- MMRInt
4 whole numbers representing barracks,factory,hangar,drydock
[-l infra]
- Double
Bulk send the result of a bot command to a list of nations in your alliance The command will run as each user Nations which are not registered or lack permission to use a command will result in an error It is recommended to review the output sheet before confirming and sending the results
Arguments:
<nations>
- Set<DBNation>
Nations to mail command results to
(A comma separated list of nations, alliances and filters)
<subject>
- String
A single line of text
<command>
- String
The locutus command to run
(A single line of text)
<body>
- String[TextArea]
Message to send along with the command result
(A single line of text)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-d sendDM]
- boolean
Send as a discord direct message
[-m skipMail]
- boolean
Skip sending in-game mail
(only valid if sendDM
is true)
Permission:
Test your alliance recruitment message by sending it to the bot creator's nation
This command has no arguments
Permission:
Reply to an in-game mail message Supports subject and body nation placeholders See: https://github.com/xdnw/locutus/wiki/nation_placeholders
Arguments:
<receiver>
- DBNation
The nation you are replying to
(nation id, name or url)
<url>
- String
The url of the mail
(A single line of text)
<message>
- String
A single line of text
[-s sender]
- DBNation
The account to reply with
Must be the same account that received the mail
(nation id, name or url)
Permission:
This command is public
Send in-game mail to a list of nations
Supports subject and body nation placeholders
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
Append the channel id to the subject to direct responses there:
Hello Nation/12345678910
(Note: DM Borg to setup mail responses)
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<subject>
- String
A single line of text
<message>
- String[TextArea]
[-f confirm]
- boolean
[-l sendFromGuildAccount]
- boolean
Send from the api key registered to the guild
[-a apiKey]
- String
The api key to use to send the mail
(A single line of text)
Bulk send in-game mail from a google sheet
Columns: nation
, subject
, body
Other bulk mail commands forward to this command
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-f force]
- boolean
[-d dm]
- boolean
[-m skipMail]
- boolean
Permission:
Send spy or war blitz sheets to individual nations
Blitz Sheet Columns: nation
, attacker 1
, attacker 2
, attacker 3
Arguments:
[blitzSheet]
- SpreadSheet
Url of the war blitz sheet to send
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
[spySheet]
- SpreadSheet
Url of the spy sheet to send
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
[allowedNations=*]
- Set<DBNation>
What attacker nations to send to
(A comma separated list of nations, alliances and filters)
[allowedEnemies]
- Set<DBNation>
What defender nations to include (default: all)
(A comma separated list of nations, alliances and filters)
[header=]
- String
Text to prepend to the target instructions being sent
(A single line of text)
[-g sendFromGuildAccount]
- boolean
Send from the api key registered to the guild
[-a apiKey]
- String
The api key to use to send the mail
(A single line of text)
[-b hideDefaultBlurb]
- boolean
Hide the default blurb from the message
[-f force]
- boolean
[-l useLeader]
- boolean
Parse nation leader instead of nation name
[-d dm]
- boolean
Send instructions as direct message on discord
Permission:
This command is public
Get info about your own nation
Arguments:
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
Create a discord modal for a bot command This will make a popup prompting for the command arguments you specify and submit any defaults you provide Note: This is intended to be used in conjuction with the card command
Arguments:
<command>
- ICommand
A discord slash command reference for the bot
<arguments>
- String
A comma separated list of the command arguments to prompt for
(A single line of text)
[defaults]
- String
The default arguments and values you want to submit to the command
Example: myarg1:myvalue1 myarg2:myvalue2
(A single line of text)
This command is public
Check how many turns are left in the city/project timer
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Return number of turns a nation has left of beige color bloc
Arguments:
<nation>
- DBNation
nation id, name or url
List your wars you are allowed to beige
As set by this guild's configured beige policy: ALLOWED_BEIGE_REASONS
Arguments:
[nation]
- DBNation
The nation which is beiging
Defaults to your own nation
(nation id, name or url)
Permission:
This command is public
List the alliance rank changes of a nation or alliance members
Arguments:
<nationOrAlliance>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
[time]
- Long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[filter]
- NationList
Only include these nations
(A comma separated list of nations, alliances and filters)
[-a ignoreInactives]
- boolean
Ignore inactive nations (7 days)
[-v ignoreVM]
- boolean
Ignore nations in vacation mode
[-m ignoreMembers]
- boolean
Ignore nations currently a member of an alliance
[-i listIds]
- boolean
Attach a list of all nation ids found
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
This command is public
View the list of bans for a nation id
Arguments:
<nationId>
- int
A whole number
This command is public
Get the top inactive players
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[days=7]
- int
Required days inactive
(A whole number)
[-a includeApplicants]
- boolean
[-v includeVacationMode]
- boolean
[-p page]
- int
A whole number
This command is public
Check if a nation shares networks with others Notes:
- Sharing networks does not mean they are the same person (mobile networks, schools, public wifi, vpns, dynamic ips
- A network not shared 'concurrently' or within a short timeframe may be a false positive
- Having many networks, but only a few shared may be a sign of a VPN being used (there are legitimate reasons for using a VPN)
- It is against game rules to use evidence to threaten or coerce others See: https://politicsandwar.com/rules/
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Estimate a nation's rebuy time based on unit purchase history
Arguments:
<nation>
- DBNation
nation id, name or url
Get nation or bank loot history Shows how much you will receive if you defeat a nation
Arguments:
<nationOrAlliance>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
[nationScore]
- Double
Score of the defeated nation
i.e. For determining bank loot percent
(A decimal number)
[-p pirate]
- boolean
Loot with pirate war policy
Else: Uses your war policy
Permission:
This command is public
View an accumulation of all the net money trades a nation made, grouped by nation Money trades are selling resources for close to $0 or buying for very large money amounts
Arguments:
<nation>
- DBNation
nation id, name or url
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-f forceUpdate]
- boolean
[-a addBalance]
- boolean
Return a deposits add command for each grouping
This command is public
Check if a nation is a reroll and print their reroll date
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Get the revenue of nations or alliances Equilibrium taxrate is where the value of raws consumed matches the value taxed
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-t includeUntaxable]
- boolean
Include the revenue of nations unable to be taxed
[-b excludeNationBonus]
- boolean
Exclude the new nation bonus
[-r rads]
- Double
A decimal number
[-w forceAtWar]
- boolean
[-p forceAtPeace]
- boolean
[-c includeWarCosts]
- Long[Timediff]
The amount of time to use to add average DAILY war cost
This includes raid profit
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Get a sheet of members and their revenue (compared to optimal city builds)
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
This command is public
Calculate the score of various things. Each argument is option, and can go in any order
Arguments:
[nation]
- DBNation
nation id, name or url
[-c cities]
- Integer
A whole number
[-b soldiers]
- Integer
[-f tanks]
- Integer
[-h aircraft]
- Integer
[-d ships]
- Integer
[-m missiles]
- Integer
[-n nukes]
- Integer
[-p projects]
- Integer
[-a avg_infra]
- Integer
[-i infraTotal]
- Integer
[-mmr builtMMR]
- MMRDouble
4 decimal numbers representing barracks, factory, hangar, drydock
Set the in-game position of a player in the alliance.
Arguments:
<nation>
- DBNation
nation id, name or url
<position>
- DBAlliancePosition
An in-game position
[-f force]
- boolean
[-d doNotUpdateDiscord]
- boolean
Do NOT add/remove the corresponding locutus role
Permission:
List or set your tax bracket. Notes:
- Internal tax rate affects what portion of taxes are not included in
/deposits check
(typically used when 100/100 taxes) - Set the alliance internal tax rate with:
/settings key:TAX_BASE
(retroactive) - This command is not retroactive and overrides the alliance internal taxrate
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[bracket]
- TaxBracket
A tax id or url
[internalTaxRate]
- TaxRate
A tax rate in the form of money/rss
Permission:
Bulk set nation tax brackets as configured in the guild setting: REQUIRED_TAX_BRACKET
Arguments:
[nations]
- Set<DBNation>
The nations to set tax brackets for
If not specified, all nations in the alliance will be used
(A comma separated list of nations, alliances and filters)
[-p ping]
- boolean
Ping users if their brackets are modified
Permission:
Set nation's internal taxrate
See also: /nation set taxbracket
and /settings key:TAX_BASE
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<taxRate>
- TaxRate
A tax rate in the form of money/rss
Permission:
Bulk set nation internal taxrates as configured in the guild setting: REQUIRED_INTERNAL_TAXRATE
Arguments:
[nations]
- Set<DBNation>
The nations to set internal taxrates for
If not specified, all nations in the alliance will be used
(A comma separated list of nations, alliances and filters)
[-p ping]
- boolean
Ping users if their rates are modified
Permission:
A sheet of nations stats with customizable columns See https://github.com/xdnw/locutus/wiki/nation_placeholders for a list of placeholders
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
<columns>
- List<String>[TextArea]
A space separated list of columns to use in the sheet
Can include NationAttribute as placeholders in columns
All NationAttribute placeholders must be surrounded by {} e.g. {nation}
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-e updateSpies]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
This command is public
Check how many projects slots a nation has
Arguments:
<nation>
- DBNation
nation id, name or url
Calculate spies for a nation.
Nation argument can be nation name, id, link, or discord tag
If spies-used
is provided, it will cap the odds at using that number of spies
safety
defaults to what has the best net. Options: quick, normal, covert
Arguments:
<nation>
- DBNation
nation id, name or url
[spiesUsed=60]
- int
Show odds for this spy count
(A whole number)
[requiredSafety]
- Safety
Show odds for at least this safety level
(Spy safety level)
Permission:
This command is public
List the public resource imports or exports of a nation or alliance to other nations or alliances over a period of time
Arguments:
<nationOrAlliances>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<cutoffMs>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-i hideInflows]
- boolean
Do not show inflows
[-o hideOutflows]
- boolean
Do not show outflows
This command is public
Rank nations by an attribute
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
<attribute>
- NationAttributeDouble
A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
[-a groupByAlliance]
- boolean
[-r reverseOrder]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-t total]
- boolean
Total value instead of average per nation
This command is public
Generate ranking of war status by Nation
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<defenders>
- Set<DBNation>
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
View the resources in a nation or alliance
Arguments:
<nationOrAlliance>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
Permission:
This command is public
Get the military unit count history (dates/times) for a nation
Arguments:
<nation>
- DBNation
nation id, name or url
<unit>
- MilitaryUnit
Military unit name
[-p page]
- Integer
A whole number
This command is public
Show war info for a nation
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Get detailed information about a nation
Nation argument can be nation name, id, link, or discord tag
e.g. /who @borg
Arguments:
<nationOrAlliances>
- Set<NationOrAlliance>
The nations to get info about
(A comma separated list of nations and alliances)
[sortBy]
- NationAttributeDouble
Sort any listed nations by this attribute
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
[-l list]
- boolean
List the nations instead of just providing a summary
[-a listAlliances]
- boolean
List the alliances of the provided nation
[-r listRawUserIds]
- boolean
List the discord user ids of each nation
[-m listMentions]
- boolean
List the discord user mentions of each nation
[-i listInfo]
- boolean
List paginated info of each nation
[-c listChannels]
- boolean
List all interview channels of each nation
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-p page]
- Integer
A whole number
Setup a reminder to send a newsletter at an interval
Arguments:
<newsletter>
- Newsletter
<interval>
- long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[pingRole]
- Role
A discord role name or mention
Permission:
Add a channel to a newsletter
Arguments:
<newsletter>
- Newsletter
<channel>
- TextChannel
A discord guild channel name or mention
Permission:
Remove a channel from a newsletter
Arguments:
<newsletter>
- Newsletter
<channel>
- TextChannel
A discord guild channel name or mention
Permission:
Create a new newsletter with a name After creating, you need to add channels to the newsletter, and subscribe users
Arguments:
<name>
- String
A single line of text
Permission:
Delete a newsletter
Arguments:
<newsletter>
- Newsletter
[-f force]
- boolean
Permission:
View information about a newsletter
Arguments:
<newsletter>
- Newsletter
[-u listNations]
- boolean
Permission:
List all newsletters
This command has no arguments
Permission:
Compile and send a newsletter to the subscribed nations If no time period is specified, the newsletter will be compiled from the messages since the last compilation If there is no previous compilation, the newsletter creation date will be used
Arguments:
<newsletter>
- Newsletter
[sendSince]
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[-d document]
- GoogleDoc
A google document id or url
[-e endDate]
- Long
A whole number
Permission:
Subscribe yourself or a set of nations to a newsletter
Arguments:
<newsletter>
- Newsletter
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
Permission:
Unsubscribe yourself or a set of nations from a newsletter
Arguments:
[newsletter]
- Newsletter
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
Permission:
Compare the stockpile in the offshore alliance in-game bank to the total account balances of all offshoring alliances/guilds
Arguments:
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Set the bot managed offshore for this guild
The alliance must use a guild with locutus settings ALLIANCE_ID
and API_KEY
set, and the coalitions offshore
and offshoring
set to include the offshore alliance
Arguments:
<offshoreAlliance>
- DBAlliance
An alliance name id or url
[-n newAccount]
- boolean
[-i importAccount]
- boolean
[-f force]
- boolean
Permission:
Return potential offshores for a list of enemy alliances If allies are specified, only offshores that are not allied with any of the allies will be returned
Arguments:
<cutoff>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
<enemiesList>
- Set<DBAlliance>
A comma separated list of alliances
[alliesList]
- Set<DBAlliance>
Permission:
Find potential offshores used by an alliance
Arguments:
<alliance>
- DBAlliance
An alliance name id or url
[cutoffMs]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
This command is public
Mark an alliance as the offshore of another
Arguments:
<offshore>
- DBAlliance
An alliance name id or url
<parent>
- DBAlliance
Send the funds in the alliance bank to an alliance added to the offshore
coalition in the bot
Optionally specify warchest and offshoring account
Arguments:
Account Settings:
[to]
- DBAlliance Specify an alternative Offshore alliance to send funds in-game to Defaults to the currently set offshore coalition (An alliance name id or url)[account]
- NationOrAllianceOrGuild Specify an alternative account to offshore with Defaults to the sender alliance (A nation or alliance name, url or id, or a guild id) Resource Amounts:[keepAmount={}]
- Map<ResourceType, Double> The amount of resources to keep in the bank Defaults to keep nothing (A comma separated list of resources and their amounts)[sendAmount]
- Map<ResourceType, Double> Specify specific resource amounts to offshore Defaults to all resources The send amount is auto capped by the resources available andkeepAmount
(A comma separated list of resources and their amounts)
Permission:
Unlock transfers for an alliance or guild using this guild as an offshore Accounts are automatically locked if there is an error accessing the api, a game captcha, or if an admin of the account is banned in-game Only locks from game bans persist across restarts
Arguments:
[nationOrAllianceOrGuild]
- NationOrAllianceOrGuild
A nation or alliance name, url or id, or a guild id
[-a unlockAll]
- boolean
Permission:
This command is public
Shows the cost of a project
Arguments:
<projects>
- Set<Project>
A comma separated list of nation projects
[technologicalAdvancement=false]
- boolean
[governmentSupportAgency=false]
- boolean
[-n nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-p ignoreProjectSlots]
- boolean
[-r ignoreRequirements]
- boolean
[-c ignoreProjectCity]
- boolean
This command is public
Generate csv file of project costs
This command has no arguments
Sheet of projects each nation has
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
This command is public
Check how many projects slots a nation has
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Register your discord user with your Politics And War nation.
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Report a nation or user's game behavior to the bot for things such as fraud Note: Submitting spam or maliciously false reports may result in being locked out of reporting commands
Arguments:
<type>
- ReportType
<message>
- String[TextArea]
Description of report
(A single line of text)
[nation]
- DBNation
Nation to report
(nation id, name or url)
[discord_user_id]
- Long
Discord user to report
(A whole number)
[-i imageEvidenceUrl]
- String
Image evidence of report
(A single line of text)
[-p forum_post]
- String
Link to relevant forum post
(A single line of text)
[-m news_post]
- String
Link to relevant news post
(A single line of text)
[-u updateReport]
- Report
[-f force]
- boolean
This command is public
Show an analysis of a nation's risk factors including: Reports, loans, discord & game bans, money trades and proximity with blacklisted nations, multi info, user account age, inactivity predictors
Arguments:
<nation>
- DBNation
nation id, name or url
This command is public
Add a short comment to a report
Arguments:
<report>
- Report
<comment>
- String
A single line of text
[-f force]
- boolean
This command is public
Remove a comment on a report
Arguments:
<report>
- Report[ReportPerms]
[nationCommenting]
- DBNation
nation id, name or url
[-f force]
- boolean
Add a loan for a nation or alliance
Arguments:
<receiver>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
[status]
- Status
The status of a nation's loan
[-o overwriteLoan]
- DBLoan[GuildLoan]
[-p principal]
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[-r remaining]
- Map<ResourceType, Double>
[-c amountPaid]
- Map<ResourceType, Double>
[-d dueDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-a allianceLending]
- DBAlliance
An alliance name id or url
[-f force]
- boolean
Permission:
Delete all loan information
Arguments:
[guildOrAllianceId]
- Long
Purge all loans created by this guild or alliance id
(A whole number)
[-f force]
- boolean
Permission:
Delete a loan for a nation or alliance Note: To delete all loans use the loan purge command
Arguments:
<loan>
- DBLoan[GuildLoan]
[-f force]
- boolean
Permission:
Generate a google sheet of all loan information banks and alliances have submitted If no nations are provided, only the loans for this server are returned If no loan status is provided, all loans are returned
Arguments:
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-l loanStatus]
- Set<Status>
A comma separated list of the status of a nation's loan
Permission:
Update a loan for a nation or alliance If no other arguments are provided, only the last updated date will be set
Arguments:
<loan>
- DBLoan[GuildLoan]
[-p principal]
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[-r remaining]
- Map<ResourceType, Double>
[-c amountPaid]
- Map<ResourceType, Double>
[-d dueDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-f force]
- boolean
Permission:
Mark all active loans by this guild as up to date It is useful for loan reporting to remain accurate
Arguments:
[loanStatus]
- Set<Status>
A comma separated list of the status of a nation's loan
[-f force]
- boolean
Permission:
Import loan report data from a google sheet Expects the columns: Receiver, Principal, Remaining, Status, Due Date, Loan Date, Paid, Interest This is not affect member balances and is solely for sharing information with the public
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[defaultStatus]
- Status
The status of a nation's loan
[-o overwriteLoans]
- boolean
[-m overwriteSameNation]
- boolean
[-a addLoans]
- boolean
Permission:
This command is public
Remove a report of a nation or user
Arguments:
<report>
- Report[ReportPerms]
[-f force]
- boolean
This command is public
List all reports about or submitted by a nation or user
Arguments:
[-n nationIdReported]
- Integer
A whole number
[-d userIdReported]
- Long
[-i reportingNation]
- Integer
[-u reportingUser]
- Long
Generate a sheet of all the community reports for players
Arguments:
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
This command is public
View a report and its comments
Arguments:
<report>
- Report
Add a discord role to all users in a server
Arguments:
<role>
- Role
A discord role name or mention
Permission:
Add or remove the configured auto roles to all users in this discord guild
Arguments:
[-f force]
- boolean
Permission:
This command is public
Give the configured bot auto roles to a user on discord
Arguments:
<member>
- Member
A discord user mention, or if a nation name, id or url if they are registered
[-f force]
- boolean
Clear the bot managed alliance roles on discord
UNUSED: Alliance name roles which have no members
ALLIANCE: All alliance name roles
DELETED_ALLIANCES: Alliance name roles with no valid in-game alliance
INACTIVE_ALLIANCES: Alliance name roles with no active members
NOT_ALLOW_LISTED: Alliance name roles not in the allow list (defined by settings:
AUTOROLE_ALLIANCES,AUTOROLE_TOP_X and coalition:
MASKEDALLIANCES``
NON_MEMBERS: Users who are not in the alliance in-game
NON_ALLIES: `Users who are not in the alliance, or the `allies` / `offshore` coalition in-game`
Arguments:
<type>
- ClearRolesEnum
What role types do you want to remove
(Types of users to clear roles of)
Permission:
Clear all nicknames on discord
Arguments:
[undo]
- Boolean
Undo the last recent use of this command
Permission:
Lists the shared servers where a user has a role.
Arguments:
<user>
- User
A discord user mention, or if a nation name, id or url if they are registered
<role>
- Roles
A discord role name, mention or id
Permission:
Add or remove a role from a set of members on discord
Arguments:
<members>
- Set<Member>
A comma separated list of discord user mentions, or if a nation name, id or url if they are registered
<role>
- Role
A discord role name or mention
<value>
- boolean
[-r toggleMaskFromOthers]
- boolean
If the role should be added or removed from all other members
If value
is true, the role will be removed, else added
Permission:
Add or remove a role from a set of members on discord based on a spreadsheet
By default only roles will be added, specify removeRoles
to remove roles from users not assigned the role in the sheet
Specify listMissing
to list nations that are not assigned a role in the sheet
Columns:
-
nation
,leader
,user
,member
(at least one) -
role
,role1
,roleN
(multiple, or use comma separated values in one cell)
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-u removeRoles]
- Set<Role>
Remove these roles from users not assigned the role in the sheet
(A comma separated list of discord role names or mentions)
[-ra removeAll]
- boolean
Remove all roles mentioned in the sheet
[-ln listMissing]
- Set<DBNation>
List nations that are not assigned a role in the sheet
(A comma separated list of nations, alliances and filters)
[-f force]
- boolean
Permission:
This command is public
Opt out of war room relays and ia channel logging
Arguments:
[optOut=true]
- boolean
Remove a role from adding/removing specified roles (having manage roles perm on discord overrides this)
Arguments:
<requireRole>
- Role
A discord role name or mention
<assignableRoles>
- Set<Role>
A comma separated list of discord role names or mentions
Permission:
Set the discord roles the bot uses for command permissions
Arguments:
[locutusRole]
- Roles
A discord role name, mention or id
[discordRole]
- Role
A discord role name or mention
[alliance]
- DBAlliance
If the role mapping is only for a specific alliance (WIP)
(An alliance name id or url)
[-r removeRole]
- boolean
Remove the existing mapping instead of setting it
Permission:
Remove a discord role the bot uses for command permissions
Arguments:
<locutusRole>
- Roles
A discord role name, mention or id
[alliance]
- DBAlliance
Only remove a role mapping for this alliance
(An alliance name id or url)
Permission:
Add an alias for a selection of alliances
Arguments:
<name>
- String
A single line of text
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
Permission:
Add an alias for a selection of attack types
Arguments:
<name>
- String
A single line of text
<attack_types>
- Set<AttackType>
A comma separated list of attack types
Permission:
Add an alias for a selection of Audit Types
Arguments:
<name>
- String
A single line of text
<audit_types>
- Set<AuditType>
A comma separated list of audit types
Permission:
Add an alias for a selection of bans
Arguments:
<name>
- String
A single line of text
<bans>
- Set<DBBan>
TODO CM REF
Permission:
Add an alias for a selection of bounties
Arguments:
<name>
- String
A single line of text
<bounties>
- Set<DBBounty>
TODO CM REF
Permission:
Add an alias for a selection of Buildings
Arguments:
<name>
- String
A single line of text
<Buildings>
- Set<Building>
A comma separated list of building types
Permission:
Add an alias for a selection of cities
Arguments:
<name>
- String
A single line of text
<cities>
- Set<DBCity>
TODO CM REF
Permission:
Add an alias for a selection of continents
Arguments:
<name>
- String
A single line of text
<continents>
- Set<Continent>
A comma separated list of continents, or *
Permission:
Add an alias for a selection of guilds
Arguments:
<name>
- String
A single line of text
<guilds>
- Set<GuildDB>
TODO CM Ref
Permission:
Add an alias for a selection of guild settings
Arguments:
<name>
- String
A single line of text
<settings>
- Set<GuildSetting>
TODO CM REF
Permission:
Add an alias for a selection of attacks
Arguments:
<name>
- String
A single line of text
<attacks>
- Set<IAttack>
TODO CM REF
Permission:
Add an alias for a selection of Military Units
Arguments:
<name>
- String
A single line of text
<military_units>
- Set<MilitaryUnit>
A comma separated list of military units
Permission:
Add an alias for a selection of Nations
Arguments:
<name>
- String
A single line of text
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Permission:
Add an alias for a selection of Nation Colors
Arguments:
<name>
- String
A single line of text
<colors>
- Set<NationColor>
TODO CM REF
Permission:
Add an alias for a selection of nationlists
Arguments:
<name>
- String
A single line of text
<nationlists>
- Set<NationList>
TODO CM REF
Permission:
Add an alias for a selection of NationOrAlliances
Arguments:
<name>
- String
A single line of text
<nationoralliances>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
Permission:
Add an alias for a selection of Projects
Arguments:
<name>
- String
A single line of text
<projects>
- Set<Project>
A comma separated list of nation projects
Permission:
Add an alias for a selection of resources
Arguments:
<name>
- String
A single line of text
<resources>
- Set<ResourceType>
TODO CM REF
Permission:
Add an alias for a selection of tax brackets
Arguments:
<name>
- String
A single line of text
<taxbrackets>
- Set<TaxBracket>
TODO CM REF
Permission:
Add an alias for a selection of tax records
Arguments:
<name>
- String
A single line of text
<taxes>
- Set<TaxDeposit>
TODO CM REF
Permission:
Add an alias for a selection of Treasures
Arguments:
<name>
- String
A single line of text
<treasures>
- Set<DBTreasure>
TODO CM REF
Permission:
Add an alias for a selection of treaties
Arguments:
<name>
- String
A single line of text
<treaties>
- Set<Treaty>
TODO CM REF
Permission:
Add an alias for a selection of Treaty Types
Arguments:
<name>
- String
A single line of text
<treaty_types>
- Set<TreatyType>
TODO CM REF
Permission:
Add an alias for a selection of users
Arguments:
<name>
- String
A single line of text
<users>
- Set<UserWrapper>
TODO CM REF
Permission:
Add an alias for a selection of wars
Arguments:
<name>
- String
A single line of text
<wars>
- Set<DBWar>
TODO CM REF
Permission:
This command is public
List selection aliases for this guild
Arguments:
[type]
- Class[PlaceholderType]
An entity type for a placeholder
Used for sheets or formatted messages
View a custom sheet
Arguments:
<selection>
- SelectionAlias
A selection alias name that has been created in this guild
Used to reference a list of nations or other entities that can be used in commands and sheets
If the command supports it, you can specify a new selection alias inline e.g. nation:*,#cities>10
Permission:
Rename a selection alias
Arguments:
<sheet>
- SelectionAlias
A selection alias name that has been created in this guild
Used to reference a list of nations or other entities that can be used in commands and sheets
If the command supports it, you can specify a new selection alias inline e.g. nation:*,#cities>10
<name>
- String
A single line of text
Permission:
This command is public
Add discord role to a user
See: /self list
Arguments:
<member>
- Member
A discord user mention, or if a nation name, id or url if they are registered
<addRole>
- Role
A discord role name or mention
Allow a role to add/remove roles from users
Arguments:
<requireRole>
- Role
Require this role in order to use the specified self roles
(A discord role name or mention)
<assignableRoles>
- Set<Role>
A comma separated list of discord role names or mentions
Permission:
This command is public
List the self roles that you can assign yourself via the bot
This command has no arguments
Remove a role to a user
See: /self list
Arguments:
<member>
- Member
A discord user mention, or if a nation name, id or url if they are registered
<addRole>
- Role
A discord role name or mention
Permission:
Delete an alliance or guild setting
Arguments:
[key]
- GuildSetting
Bot guild settings
Permission:
Configure any alliance or guild settings
Arguments:
[key]
- GuildSetting
The setting to change or view
(Bot guild settings)
[value]
- String[TextArea]
The value to set the setting to
(A single line of text)
[-a listAll]
- boolean
Permission:
View set or delete alliance or guild google sheets
This command has no arguments
Permission:
Enable GitHub Copilot for generating AI text responses See: https://github.com/features/copilot This is an alternative to an open ai key
Arguments:
<value>
- boolean
Permission:
gpt user and guild usage limits, by turn and day Used to limit costs incurred from excessive usageUsage is only tracked per session, and is reset each time the bot restarts
Arguments:
<userTurnLimit>
- int
A whole number
<userDayLimit>
- int
<guildTurnLimit>
- int
<guildDayLimit>
- int
Permission:
OpenAI API key Used for chat responses and completion Get a key from: https://platform.openai.com/account/api-keys
Arguments:
<apiKey>
- String
A single line of text
Permission:
A comma separated list of audit types to ignore: { GRAY,HIGH_INFRA,UNPROFITABLE_FARMS,UNEVEN_INFRA,WIND_POWER,WAR_TYPE_NOT_RAID,WAR_POLICY,INACTIVE }
Arguments:
<audits>
- Set<AutoAuditType>
A comma separated list of auto audit types
Permission:
The #channel to ping members about audits
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when a member leaves
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when a member buys infra
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Set the required MMR based on nation criteria See: https://github.com/xdnw/locutus/wiki/nation_placeholders Accepts a list of filters to the required MMR. In the form:
#cities<10:505X
#cities>=10:0250
Use *
as the filter to match all nations.
Arguments:
<mmrMap>
- Map<NationFilter, MMRMatcher>
A map of nation filters to MMR
Use X for any military building
All nation filters are supported (e.g. roles)
Priority is first to last (so put defaults at the bottom)
Permission:
Amount of warchest to recommend per city in form {steel=1234,aluminum=5678,gasoline=69,munitions=420}
Arguments:
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
Permission:
Set the required MMR based on nation criteria See: https://github.com/xdnw/locutus/wiki/nation_placeholders Accepts a list of filters to the required MMR. In the form:
#cities<10:505X
#cities>=10:0250
Use *
as the filter to match all nations.
Arguments:
<filter>
- NationFilter
A comma separated list of filters (can include nations and alliances)
<mmr>
- MMRMatcher
An string matching for a nation's military buildings (MMR)
In the form 505X
where X
is any military building
Permission:
Allow unregistered nations to withdraw via a web banking portal
Arguments:
<value>
- boolean
Permission:
The daily withdraw limit (from the offshore) of non admins
Arguments:
<amount>
- long
A whole number
Permission:
The time period the withdraw limit applies to (defaults to 1 day)
Arguments:
<timediff>
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
Permission:
The default account to offshore into via </offshore send:1015168434847363132>
Arguments:
<natOrAA>
- GuildOrAlliance
A guild or alliance name, url or id. Prefix with AA:
or guild:
to avoid ambiguity if there exists both by the same name or id
Permission:
The timeframe the GRANT_TEMPLATE_LIMITS is for, which restricts max funds that a user can grant using templates over this timeframe.
Arguments:
<timediff>
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
Permission:
Whether members can use </offshore send:1015168434847363132> (true/false)
Arguments:
<value>
- boolean
Permission:
Whether members can use </transfer resources:1015168434776051740> or !grant` to access their own funds (true/false)
Arguments:
<enabled>
- boolean
Permission:
Whether members can withdraw during wartime (true/false)
Arguments:
<enabled>
- boolean
Permission:
Whether nations which are not a member of the alliance ingame can use any configured banking functions, such as withdrawals
Arguments:
<enabled>
- boolean
Permission:
Public offshores allow other alliances to see and register to use this alliance as an offshore without approval
Arguments:
<enabled>
- boolean
Permission:
If members can convert resources to cash.
This is done virtually in </deposits check:1015168434776051741>Resources are converted using market average
Use #cash
as the note when depositing or transferring funds
Arguments:
<enabled>
- boolean
Permission:
If true, all transfers from the offshore will send via the alliance bank
Arguments:
<value>
- boolean
Permission:
Whether members's withdraw limit ignores their expiring grants (true/false)
Arguments:
<enabled>
- boolean
Permission:
The global grant template send limits for each role, limiting how much each granter can send per interval.
This applies in addition to any limits set in the individual template.
The ECON role overrides grant template limits. See: </role setalias:1015168434847363134>
The highest value for each resource will be usedFormat: role_id:resource1,resource2,resource3
Arguments:
<role>
- Role
A discord role name or mention
<marketValue>
- Double
A decimal number
Permission:
Set the resource withdrawal channel to the current channel Do not specify an alliance to set the default withdraw channel
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
[alliance]
- DBAlliance
An alliance name id or url
Permission:
The #channel for users to request resources in. For multiple alliances, use the form:
#defaultChannel
alliance1:#channel
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The id of the member you want to add to the blacklist
Arguments:
<nation>
- DBNation
nation id, name or url
Permission:
The #channel to receive alerts when there is a large tranfer in the game or a nation VMs with resources
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for transfers when a nation goes into VM
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when a nation makes a deposit (this will no longer reliably alert)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Display deposits in a condensed format
Arguments:
<enabled>
- boolean
Permission:
Whether members's deposits are displayed by default with a breakdown of each category (true/false)
Arguments:
<enabled>
- boolean
Permission:
The #channel for users to request grants in. No additional functionality is added, you can setup a ticket bot or an embed there
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts e.g. for custom !BankAlerts
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when a nation requests a transfer
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when a raid target leaves beige.
/role setalias locutusrole: BEIGE_ALERT
must also be set and have members in range
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Whether to send a mail to the nation when a beige violation occurs Default: False
Arguments:
<value>
- boolean
Permission:
The #channel to receive alerts when an enemy nation leaves beige
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The mode for the enemy alert channel to determine what alerts are posted and who is pinged Options:
- PING_USERS_IN_RANGE
- PING_ROLE_IN_RANGE
- PING_ROLE_ALL
Arguments:
<mode>
- EnemyAlertChannelMode
An alert mode for the ENEMY_ALERT_CHANNEL when enemies leave beige
Permission:
A filter for enemies to alert on when they leave beige
Defaults to #active_m<7200
(active in the past 5 days)
Arguments:
<filter>
- NationFilter
A comma separated list of filters (can include nations and alliances)
Permission:
The #channel to receive alerts when an enemy gets beiged
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when an enemy gets beiged (without reason)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
A list of city ranges to beige reasons that are permitted. In the form:
c1-9:*
c10+:INACTIVE,VACATION_MODE,APPLICANT
Options:
- VACATION_MODE: You can beige enemies in Vacation Mode
- NOT_AN_ENEMY: Non enemies are not subject to beige/cycle orders
- INACTIVE: Nations who are inactive (2 days)
- APPLICANT: Applicants aren't subject to beige/cycle orders
- UNDER_C10_SLOG: If the enemy has less than 10 cities
- OFFENSIVE_WAR: War is offensive
- ALREADY_BEIGE_STACKED: Enemies already with enough beige to rebuild (6 days)
- NO_ENEMY_OFFENSIVE_WARS: Enemies not declaring any offensive wars
- MISSILE_TURRET: Enemies with high number of missiles
- NUKE_TURRET: Enemies with high numbers of nukes
- NO_RECENT_WARS: Enemy is has not declared a war in the past 20 days
- NO_RECENT_3_CONSECUTIVE_LOGINS: Enemy has not had 3 consecutive logins in the past 120 days
- NO_RECENT_5_CONSECUTIVE_LOGINS: Enemy has not had 5 consecutive logins in the past 120 days
- INCORRECT_ENEMY_MMR: Enemy does not have 5 barracks/factories
- USELESS: Enemy has no recent wars and no recent consecutive logins OR incorrect MMR
- BEIGE_CYCLE: If the enemy does not have beige, and two other strong nations can sit them whilst beige. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_4D: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 4d. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_1: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 2d. DO NOT BEIGE DEFENSIVE WARS
- BLOCKADED: If you are being sat on/blockaded and need to restock on warchest
- LOW_RESISTANCE: Low resistance, at risk of getting beiged (use your best judgement)
- LOW_RESISTANCE_OFFENSIVE: Low resistance, at risk of getting beiged (use your best judgement)
- DO_NOT_RAID: Try to peace nations that are on the Do Not Raid list
- NO_REASON:
Also set: </coalition create:1015168434906071114> with ENEMIES: Enemies
Arguments:
<range>
- CityRanges
A range of city counts (inclusive)
<reasons>
- Set<BeigeReason>
A comma separated list of beige reasons for defeating an enemy in war
Permission:
A list of city ranges to beige reasons that are permitted. In the form:
c1-9:*
c10+:INACTIVE,VACATION_MODE,APPLICANT
Options:
- VACATION_MODE: You can beige enemies in Vacation Mode
- NOT_AN_ENEMY: Non enemies are not subject to beige/cycle orders
- INACTIVE: Nations who are inactive (2 days)
- APPLICANT: Applicants aren't subject to beige/cycle orders
- UNDER_C10_SLOG: If the enemy has less than 10 cities
- OFFENSIVE_WAR: War is offensive
- ALREADY_BEIGE_STACKED: Enemies already with enough beige to rebuild (6 days)
- NO_ENEMY_OFFENSIVE_WARS: Enemies not declaring any offensive wars
- MISSILE_TURRET: Enemies with high number of missiles
- NUKE_TURRET: Enemies with high numbers of nukes
- NO_RECENT_WARS: Enemy is has not declared a war in the past 20 days
- NO_RECENT_3_CONSECUTIVE_LOGINS: Enemy has not had 3 consecutive logins in the past 120 days
- NO_RECENT_5_CONSECUTIVE_LOGINS: Enemy has not had 5 consecutive logins in the past 120 days
- INCORRECT_ENEMY_MMR: Enemy does not have 5 barracks/factories
- USELESS: Enemy has no recent wars and no recent consecutive logins OR incorrect MMR
- BEIGE_CYCLE: If the enemy does not have beige, and two other strong nations can sit them whilst beige. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_4D: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 4d. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_1: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 2d. DO NOT BEIGE DEFENSIVE WARS
- BLOCKADED: If you are being sat on/blockaded and need to restock on warchest
- LOW_RESISTANCE: Low resistance, at risk of getting beiged (use your best judgement)
- LOW_RESISTANCE_OFFENSIVE: Low resistance, at risk of getting beiged (use your best judgement)
- DO_NOT_RAID: Try to peace nations that are on the Do Not Raid list
- NO_REASON:
Also set: </coalition create:1015168434906071114> with ENEMIES: Enemies
Arguments:
<range>
- CityRanges
A range of city counts (inclusive)
Permission:
A list of city ranges to beige reasons that are permitted. In the form:
c1-9:*
c10+:INACTIVE,VACATION_MODE,APPLICANT
Options:
- VACATION_MODE: You can beige enemies in Vacation Mode
- NOT_AN_ENEMY: Non enemies are not subject to beige/cycle orders
- INACTIVE: Nations who are inactive (2 days)
- APPLICANT: Applicants aren't subject to beige/cycle orders
- UNDER_C10_SLOG: If the enemy has less than 10 cities
- OFFENSIVE_WAR: War is offensive
- ALREADY_BEIGE_STACKED: Enemies already with enough beige to rebuild (6 days)
- NO_ENEMY_OFFENSIVE_WARS: Enemies not declaring any offensive wars
- MISSILE_TURRET: Enemies with high number of missiles
- NUKE_TURRET: Enemies with high numbers of nukes
- NO_RECENT_WARS: Enemy is has not declared a war in the past 20 days
- NO_RECENT_3_CONSECUTIVE_LOGINS: Enemy has not had 3 consecutive logins in the past 120 days
- NO_RECENT_5_CONSECUTIVE_LOGINS: Enemy has not had 5 consecutive logins in the past 120 days
- INCORRECT_ENEMY_MMR: Enemy does not have 5 barracks/factories
- USELESS: Enemy has no recent wars and no recent consecutive logins OR incorrect MMR
- BEIGE_CYCLE: If the enemy does not have beige, and two other strong nations can sit them whilst beige. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_4D: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 4d. DO NOT BEIGE DEFENSIVE WARS
- BEIGE_CYCLE_1: If the enemy does not have beige, and one other strong nation can sit them whilst beige for 2d. DO NOT BEIGE DEFENSIVE WARS
- BLOCKADED: If you are being sat on/blockaded and need to restock on warchest
- LOW_RESISTANCE: Low resistance, at risk of getting beiged (use your best judgement)
- LOW_RESISTANCE_OFFENSIVE: Low resistance, at risk of getting beiged (use your best judgement)
- DO_NOT_RAID: Try to peace nations that are on the Do Not Raid list
- NO_REASON:
Also set: </coalition create:1015168434906071114> with ENEMIES: Enemies
Arguments:
<reasons>
- Map<CityRanges, Set<BeigeReason>>
A map of city ranges to a list of beige reasons for defeating an enemy in war
Priority is first to last (so put defaults at the bottom)
Permission:
The channel to receive alerts when a bounty is placed
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when a treasure moves to another nation or is about to reset
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The guild to delegate unset settings to
Arguments:
<guild>
- Guild
A discord guild id. See: https://en.wikipedia.org/wiki/Template:Discord_server#Getting_Guild_ID
Permission:
Your alliance id
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
Permission:
API key found at the bottom of: https://politicsandwar.com/account/ Be sure to enable all access you wish the bot to have, and have a sufficient position in-game (e.g. leader) Needed for alliance functions and information access, such as calculating resource dispersal, sending mail
Arguments:
<apiKeys>
- List<String>[TextArea]
Multiple words or text separated by spaces
Use quotes for multi-word arguments
Permission:
Your alliance id
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
Permission:
The #channel to receive alerts for alliance creation
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The number of top alliances to include in the Do Not Raid (DNR) list
Members are not permitted to declare on members of these alliances or their direct allies
Results in the DNR will be excluded from commands, and will alert Foreign Affairs if violated
Defaults to 0
Arguments:
<topAllianceScore>
- Integer
A whole number
Permission:
The name or id of the CATEGORY you would like embassy channels created in (for </embassy:1015170851873763338>)
Arguments:
<category>
- Category
A discord category name or mention
Permission:
The guild to defer coalitions to
Arguments:
<guild>
- Guild
A discord guild id. See: https://en.wikipedia.org/wiki/Template:Discord_server#Getting_Guild_ID
Permission:
The #channel to receive alerts for treaty changes
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The name or id of the CATEGORY you would like </channel close current:1015168434847363133> to move channels to
Arguments:
<category>
- Category
A discord category name or mention
Permission:
The channel to receive info spam about expired interview channels
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when a member requests an interview
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Only do alliance ground unit alerts for the top X alliances (by active member score)
Arguments:
<topX>
- int
A whole number
Permission:
The channel to send alerts when alliance ground units increase by more than 2.5%
See also setting AA_GROUND_TOP_X
and coalition: GROUND_ALERTS
and role alias: GROUND_MILITARIZE_ALERT
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for activity (e.g. pre blitz)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The rank threshold to post exodus alerts for
Arguments:
<rank>
- int
A whole number
Permission:
The channel to receive alerts when any nation in the game is banned)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when any nation in the game deletes
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for war escalation alerts in orbis
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when multiple 5+ members leave an alliance See also: </settings_orbis_alerts alliance_exodus_top_x:1104571317719670894>
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when a nation is promoted to leader in an alliance (top 80)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when officers leave an alliance (top 50)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when gov members increase MMR (top 80)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to receive alerts when any nation or user is reported to the bot See </report add:1141362798606176256>
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for nation rerolls
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The recruit message body Must also set </settings_recruit recruit_message_output:1104571317719670892>
Arguments:
<message>
- String
A single line of text
Permission:
The amount of time to delay recruitment messages by
Arguments:
<timediff>
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
Permission:
The #channel to receive recruitment message output
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The recruit message subject Must also set </settings_recruit recruit_message_content:1104571317719670892>
Arguments:
<value>
- String
A single line of text
Permission:
Add a timed message to be sent to new members after a delay
- CREATION
- When a nation is created
- Messages will not send to nations that are inactive, or created before the message was created
- MEMBER_DEPARTURE
- When an applicant or member (but not officer) leaves an alliance
- Messages will not send if another message has been sent recently, if the nation is inactive, or it was created recently
- GRAVEYARD_ACTIVE
- When a nation not part of a functioning alliance becomes active
- Nations must be inactive for at least the time specified to be sent the custom messageMessages will not send if another message has been sent recently
Note: If multiple messages qualify, only the last one will be sent. This task runs every 5 minutes
Arguments:
<timeDelay>
- long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
<subject>
- String
A single line of text
<message>
- String
[-t trigger=CREATION]
- MessageTrigger
Permission:
Remove a timed message with a specific time-delay for a trigger
Arguments:
<trigger>
- MessageTrigger
The type of message to remove
The default type is CREATION
<timeDelay>
- long[Timediff]
The time delay of the message to remove
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
Permission:
The reward (resources) for mentoring a nation in the form {food=1,money=3.2}
Arguments:
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
Permission:
The reward (resources) for referring a nation in the form {food=1,money=3.2}
Arguments:
<amount>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
Permission:
Map roles that can be assigned (or removed). See </self create:1015168434847363135> </role removeassignablerole:1015168434847363134> </self add:1015168434847363135> </self remove:1015168434847363135>
Arguments:
<value>
- Map<Role, Set<Role>>
A map of a discord role to a set of roles (comma separated)
Permission:
Options: { FALSE,LEADER,NATION,DISCORD,NICKNAME } See also: </role clearnicks:1015168434847363134>
Arguments:
<mode>
- AutoNickOption
Mode for automatically giving discord nicknames
Permission:
Options: { FALSE,ALL,ALLIES } See also:
/coalition create coalitionname: MASKEDALLIANCES
- </role clearallianceroles:1015168434847363134>
- </settings_role autorole_alliance_rank:1104571317719670888>
- </settings_role autorole_member_apps:1104571317719670888>
- </settings_role autorole_top_x:1104571317719670888>
Arguments:
<mode>
- AutoRoleOption
Mode for automatically giving discord roles
Permission:
The ingame rank required to get an alliance role. Default: member Options: { LEADER,HEIR,OFFICER,MEMBER,APPLICANT,REMOVE,BAN,UNBAN,INVITE,UNINVITE }
Arguments:
<allianceRank>
- Rank
One of the default in-game position levels
Permission:
Whether to give gov/member roles to allies (this is intended for coalition servers), true
or false
Arguments:
<enabled>
- boolean
Permission:
List of roles to autorole from ally servers (this is intended for coalition servers to give gov roles to allies)
Arguments:
<roles>
- Set<Roles>
A comma separated list of bot Roles
Permission:
Whether member and applicant roles are automatically added or removed.
Note: Set WAR_ALERT_FOR_OFFSHORES
to false to not give member roles to offshore nations
Cannot be used in conjuction with AUTOROLE_ALLY_GOV
Arguments:
<enabled>
- boolean
Permission:
The number of top alliances to provide roles for, defaults to 0
Alliances added to MASKEDALLIANCES:
Additional alliances to mask with /role autoassign
(if alliance masking is enabled)`` are still included outside this range
Arguments:
<topScoreRank>
- Integer
A whole number
Permission:
Auto assign roles based on conditions See: https://github.com/xdnw/locutus/wiki/nation_placeholders Accepts a list of filters to a role. In the form:
#cities<10:@someRole
#cities>=10:@otherRole
Use *
as the filter to match all nations.
Only alliance members can be given roles
Use </role autoassign:1015168434847363134> to auto assign
Arguments:
<roleMap>
- Map<NationFilter, Role>
Auto assign roles based on conditions
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
Accepts a list of filters to a role.
In the form:
#cities<10:@someRole
#cities>=10:@otherRole
Use *
as the filter to match all nations.
Only alliance members can be given role
Permission:
Map roles that can be assigned (or removed). See </self create:1015168434847363135> </role removeassignablerole:1015168434847363134> </self add:1015168434847363135> </self remove:1015168434847363135>
Arguments:
<role>
- Role
A discord role name or mention
<roles>
- Set<Role>
A comma separated list of discord role names or mentions
Permission:
Auto assign roles based on conditions See: https://github.com/xdnw/locutus/wiki/nation_placeholders Accepts a list of filters to a role. In the form:
#cities<10:@someRole
#cities>=10:@otherRole
Use *
as the filter to match all nations.
Only alliance members can be given roles
Use </role autoassign:1015168434847363134> to auto assign
Arguments:
<filter>
- NationFilter
A comma separated list of filters (can include nations and alliances)
<role>
- Role
A discord role name or mention
Permission:
List the sheet keys in use
This command has no arguments
Permission:
Set the url used for a sheet key
Arguments:
<key>
- SheetKey
The name of a premade sheet
Premade sheet commands assign a google sheet to a key, so subsequent commands use the same sheet
<sheetId>
- String
A single line of text
[tab]
- String
Permission:
Whether members can use </nation set taxbracket:1015168434776051733>
Arguments:
<value>
- boolean
Permission:
This setting maps nation filters to internal tax rate for bulk automation.
To list nations current rates: </tax listbracketauto:1015168434906071119>
To bulk move nations: </nation set taxinternalauto:1015168434776051733>
Tax rate is in the form: money/rss
In the form:
#cities<10:100/100
#cities>=10:25/25
All nation filters are supported (e.g. roles) Priority is first to last (so put defaults at the bottom)
Arguments:
<value>
- Map<NationFilter, TaxRate>
A map of nation filters to tax rates
All nation filters are supported (e.g. roles)
Priority is first to last (so put defaults at the bottom)
Permission:
This setting maps nation filters to tax bracket for bulk automation. To list nations current rates: </tax listbracketauto:1015168434906071119> To bulk move nations: </nation set taxbracketauto:1015168434776051733> In the form:
#cities<10:1234
#cities>=10:2345
All nation filters are supported (e.g. roles) Priority is first to last (so put defaults at the bottom)
Arguments:
<brackets>
- Map<NationFilter, Integer>
A map of nation filters to tax ids
All nation filters are supported (e.g. roles)
Priority is first to last (so put defaults at the bottom)
Permission:
The internal tax amount ($/rss) in the format e.g. 25/25
to be excluded in deposits.
Defaults to 100/100
(i.e. no taxes are included in depos).
Setting is retroactive. See also: </nation set taxinternal:1015168434776051733>
Arguments:
<taxRate>
- TaxRate
A tax rate in the form of money/rss
Permission:
This setting maps nation filters to tax bracket for bulk automation. To list nations current rates: </tax listbracketauto:1015168434906071119> To bulk move nations: </nation set taxbracketauto:1015168434776051733> In the form:
#cities<10:1234
#cities>=10:2345
All nation filters are supported (e.g. roles) Priority is first to last (so put defaults at the bottom)
Arguments:
<filter>
- NationFilter
A comma separated list of filters (can include nations and alliances)
<bracket>
- TaxBracket
A tax id or url
Permission:
This setting maps nation filters to internal tax rate for bulk automation.
To list nations current rates: </tax listbracketauto:1015168434906071119>
To bulk move nations: </nation set taxinternalauto:1015168434776051733>
Tax rate is in the form: money/rss
In the form:
#cities<10:100/100
#cities>=10:25/25
All nation filters are supported (e.g. roles) Priority is first to last (so put defaults at the bottom)
Arguments:
<filter>
- NationFilter
A comma separated list of filters (can include nations and alliances)
<bracket>
- TaxRate
A tax rate in the form of money/rss
Permission:
The #channel to receive alerts for trades
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for blockades
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for defensive wars
Members and MILCOM
are pinged for defensive wars
To set the MILCOM
role, see: /role setalias locutusrole: MILCOM discordrole:
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts when a member in enemies
coalitions changes MMR
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The channel to get alerts when a member has their units spied successfully
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Whether to hide war alerts for applicants
Arguments:
<value>
- boolean
Permission:
The #channel to post wars when our side loses a war
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
A nation filter to apply to limit what wars milcom gets pinged for.
Arguments:
<value>
- NationFilter
A comma separated list of filters (can include nations and alliances)
Permission:
The #channel to receive alerts for offensive wars
Members and FOREIGN_AFFAIRS
role are pinged for Do Not Raid (DNR) violations
To set the FOREIGN_AFFAIRS
role, see: /role setalias locutusrole: FOREIGN_AFFAIRS discordrole:
Wars against inactive nones do not create alerts
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Whether to show defensive war alerts for allies (true/false)
Arguments:
<enabled>
- boolean
Permission:
Whether to show offensive war alerts for allies (true/false)
Arguments:
<enabled>
- boolean
Permission:
The #channel to receive alerts for unblockades
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
The #channel to receive alerts for unblockade requests
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
Whether to do war alerts for offshore alliances
Arguments:
<enabled>
- boolean
Permission:
The #channel to receive alerts for changes to any war peace offers
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
A an additional filter to limit which nations are allowed for a war room. War rooms are only created and maintained when attacker and defender match this filter
Arguments:
<value>
- NationFilter
A comma separated list of filters (can include nations and alliances)
Permission:
The #channel to post wars when our side wins a war (only includes actives)
Arguments:
<channel>
- MessageChannel
A discord channel name or mention
Permission:
If war rooms should be enabled (i.e. auto generate a channel for wars against active nations) Note: Defensive war channels must be enabled to have auto war room creation
Arguments:
<enabled>
- boolean
Permission:
The guild to defer war rooms to
Arguments:
<guild>
- Guild
A discord guild id. See: https://en.wikipedia.org/wiki/Template:Discord_server#Getting_Guild_ID
Permission:
Add a tab to a custom sheet Tabs are named and are comprised of a selection alias (rows) and a sheet template (columns) You must create a selection alias and sheet template first Sheets must be generated/updated with the update command
Arguments:
<sheet>
- CustomSheet
A custom sheet name that has been created in this guild
Custom sheets have named tabs comprised of template-selection pairs
<tabName>
- String
A single line of text
<select>
- SelectionAlias
A selection alias name that has been created in this guild
Used to reference a list of nations or other entities that can be used in commands and sheets
If the command supports it, you can specify a new selection alias inline e.g. nation:*,#cities>10
<columns>
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[-f force]
- boolean
Permission:
Generate or update a spreadsheet from a url
Each tab must be a valid selection, prefixed by the type e.g. nation:*
The first row must have placeholders in each column, such as {nation}
{cities}
{score}
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s saveSheet]
- boolean
Permission:
List custom sheets for this guild
This command has no arguments
Permission:
Unregister a tab from a custom sheet The tab wont be deleted from the google sheet, but it will no longer be updated. You may manually delete it from the google sheet
Arguments:
<sheet>
- CustomSheet
A custom sheet name that has been created in this guild
Custom sheets have named tabs comprised of template-selection pairs
<tabName>
- String
A single line of text
Permission:
Update the tabs in a custom sheet and return the url A sheet update may produce errors if a selection is no longer valid Tabs in the google sheet which aren't registered will be ignored
Arguments:
<sheet>
- CustomSheet
A custom sheet name that has been created in this guild
Custom sheets have named tabs comprised of template-selection pairs
Permission:
Get the google sheet url and view the tabs for a custom sheet, and their respective selection alias (rows) and sheet template (columns)
Arguments:
<sheet>
- CustomSheet
A custom sheet name that has been created in this guild
Custom sheets have named tabs comprised of template-selection pairs
Permission:
Add columns to a Alliance sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[column1]
- TypedFunction<DBAlliance, String>
https://github.com/xdnw/locutus/wiki/alliance_placeholders
[column2]
- TypedFunction<DBAlliance, String>
[column3]
- TypedFunction<DBAlliance, String>
[column4]
- TypedFunction<DBAlliance, String>
[column5]
- TypedFunction<DBAlliance, String>
[column6]
- TypedFunction<DBAlliance, String>
[column7]
- TypedFunction<DBAlliance, String>
[column8]
- TypedFunction<DBAlliance, String>
[column9]
- TypedFunction<DBAlliance, String>
[column10]
- TypedFunction<DBAlliance, String>
[column11]
- TypedFunction<DBAlliance, String>
[column12]
- TypedFunction<DBAlliance, String>
[column13]
- TypedFunction<DBAlliance, String>
[column14]
- TypedFunction<DBAlliance, String>
[column15]
- TypedFunction<DBAlliance, String>
[column16]
- TypedFunction<DBAlliance, String>
[column17]
- TypedFunction<DBAlliance, String>
[column18]
- TypedFunction<DBAlliance, String>
[column19]
- TypedFunction<DBAlliance, String>
[column20]
- TypedFunction<DBAlliance, String>
[column21]
- TypedFunction<DBAlliance, String>
[column22]
- TypedFunction<DBAlliance, String>
[column23]
- TypedFunction<DBAlliance, String>
[column24]
- TypedFunction<DBAlliance, String>
Permission:
Add columns to a AttackType sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<AttackType, String>
TODO CM REF
[b]
- TypedFunction<AttackType, String>
[c]
- TypedFunction<AttackType, String>
[d]
- TypedFunction<AttackType, String>
[e]
- TypedFunction<AttackType, String>
[f]
- TypedFunction<AttackType, String>
[g]
- TypedFunction<AttackType, String>
[h]
- TypedFunction<AttackType, String>
[i]
- TypedFunction<AttackType, String>
[j]
- TypedFunction<AttackType, String>
[k]
- TypedFunction<AttackType, String>
[l]
- TypedFunction<AttackType, String>
[m]
- TypedFunction<AttackType, String>
[n]
- TypedFunction<AttackType, String>
[o]
- TypedFunction<AttackType, String>
[p]
- TypedFunction<AttackType, String>
[q]
- TypedFunction<AttackType, String>
[r]
- TypedFunction<AttackType, String>
[s]
- TypedFunction<AttackType, String>
[t]
- TypedFunction<AttackType, String>
[u]
- TypedFunction<AttackType, String>
[v]
- TypedFunction<AttackType, String>
[w]
- TypedFunction<AttackType, String>
[x]
- TypedFunction<AttackType, String>
Permission:
Add columns to a Audit Type sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<AuditType, String>
TODO CM REF
[b]
- TypedFunction<AuditType, String>
[c]
- TypedFunction<AuditType, String>
[d]
- TypedFunction<AuditType, String>
[e]
- TypedFunction<AuditType, String>
[f]
- TypedFunction<AuditType, String>
[g]
- TypedFunction<AuditType, String>
[h]
- TypedFunction<AuditType, String>
[i]
- TypedFunction<AuditType, String>
[j]
- TypedFunction<AuditType, String>
[k]
- TypedFunction<AuditType, String>
[l]
- TypedFunction<AuditType, String>
[m]
- TypedFunction<AuditType, String>
[n]
- TypedFunction<AuditType, String>
[o]
- TypedFunction<AuditType, String>
[p]
- TypedFunction<AuditType, String>
[q]
- TypedFunction<AuditType, String>
[r]
- TypedFunction<AuditType, String>
[s]
- TypedFunction<AuditType, String>
[t]
- TypedFunction<AuditType, String>
[u]
- TypedFunction<AuditType, String>
[v]
- TypedFunction<AuditType, String>
[w]
- TypedFunction<AuditType, String>
[x]
- TypedFunction<AuditType, String>
Permission:
Add columns to a Ban sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<DBBan, String>
TODO CM REF
[b]
- TypedFunction<DBBan, String>
[c]
- TypedFunction<DBBan, String>
[d]
- TypedFunction<DBBan, String>
[e]
- TypedFunction<DBBan, String>
[f]
- TypedFunction<DBBan, String>
[g]
- TypedFunction<DBBan, String>
[h]
- TypedFunction<DBBan, String>
[i]
- TypedFunction<DBBan, String>
[j]
- TypedFunction<DBBan, String>
[k]
- TypedFunction<DBBan, String>
[l]
- TypedFunction<DBBan, String>
[m]
- TypedFunction<DBBan, String>
[n]
- TypedFunction<DBBan, String>
[o]
- TypedFunction<DBBan, String>
[p]
- TypedFunction<DBBan, String>
[q]
- TypedFunction<DBBan, String>
[r]
- TypedFunction<DBBan, String>
[s]
- TypedFunction<DBBan, String>
[t]
- TypedFunction<DBBan, String>
[u]
- TypedFunction<DBBan, String>
[v]
- TypedFunction<DBBan, String>
[w]
- TypedFunction<DBBan, String>
[x]
- TypedFunction<DBBan, String>
Permission:
Add columns to a bounty sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<DBBounty, String>
TODO CM REF
[b]
- TypedFunction<DBBounty, String>
[c]
- TypedFunction<DBBounty, String>
[d]
- TypedFunction<DBBounty, String>
[e]
- TypedFunction<DBBounty, String>
[f]
- TypedFunction<DBBounty, String>
[g]
- TypedFunction<DBBounty, String>
[h]
- TypedFunction<DBBounty, String>
[i]
- TypedFunction<DBBounty, String>
[j]
- TypedFunction<DBBounty, String>
[k]
- TypedFunction<DBBounty, String>
[l]
- TypedFunction<DBBounty, String>
[m]
- TypedFunction<DBBounty, String>
[n]
- TypedFunction<DBBounty, String>
[o]
- TypedFunction<DBBounty, String>
[p]
- TypedFunction<DBBounty, String>
[q]
- TypedFunction<DBBounty, String>
[r]
- TypedFunction<DBBounty, String>
[s]
- TypedFunction<DBBounty, String>
[t]
- TypedFunction<DBBounty, String>
[u]
- TypedFunction<DBBounty, String>
[v]
- TypedFunction<DBBounty, String>
[w]
- TypedFunction<DBBounty, String>
[x]
- TypedFunction<DBBounty, String>
Permission:
Add columns to a Building sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<Building, String>
TODO CM REF
[b]
- TypedFunction<Building, String>
[c]
- TypedFunction<Building, String>
[d]
- TypedFunction<Building, String>
[e]
- TypedFunction<Building, String>
[f]
- TypedFunction<Building, String>
[g]
- TypedFunction<Building, String>
[h]
- TypedFunction<Building, String>
[i]
- TypedFunction<Building, String>
[j]
- TypedFunction<Building, String>
[k]
- TypedFunction<Building, String>
[l]
- TypedFunction<Building, String>
[m]
- TypedFunction<Building, String>
[n]
- TypedFunction<Building, String>
[o]
- TypedFunction<Building, String>
[p]
- TypedFunction<Building, String>
[q]
- TypedFunction<Building, String>
[r]
- TypedFunction<Building, String>
[s]
- TypedFunction<Building, String>
[t]
- TypedFunction<Building, String>
[u]
- TypedFunction<Building, String>
[v]
- TypedFunction<Building, String>
[w]
- TypedFunction<Building, String>
[x]
- TypedFunction<Building, String>
Permission:
Add columns to a City sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<DBCity, String>
TODO CM REF
[b]
- TypedFunction<DBCity, String>
[c]
- TypedFunction<DBCity, String>
[d]
- TypedFunction<DBCity, String>
[e]
- TypedFunction<DBCity, String>
[f]
- TypedFunction<DBCity, String>
[g]
- TypedFunction<DBCity, String>
[h]
- TypedFunction<DBCity, String>
[i]
- TypedFunction<DBCity, String>
[j]
- TypedFunction<DBCity, String>
[k]
- TypedFunction<DBCity, String>
[l]
- TypedFunction<DBCity, String>
[m]
- TypedFunction<DBCity, String>
[n]
- TypedFunction<DBCity, String>
[o]
- TypedFunction<DBCity, String>
[p]
- TypedFunction<DBCity, String>
[q]
- TypedFunction<DBCity, String>
[r]
- TypedFunction<DBCity, String>
[s]
- TypedFunction<DBCity, String>
[t]
- TypedFunction<DBCity, String>
[u]
- TypedFunction<DBCity, String>
[v]
- TypedFunction<DBCity, String>
[w]
- TypedFunction<DBCity, String>
[x]
- TypedFunction<DBCity, String>
Permission:
Add columns to a Continent sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<Continent, String>
TODO CM REF
[b]
- TypedFunction<Continent, String>
[c]
- TypedFunction<Continent, String>
[d]
- TypedFunction<Continent, String>
[e]
- TypedFunction<Continent, String>
[f]
- TypedFunction<Continent, String>
[g]
- TypedFunction<Continent, String>
[h]
- TypedFunction<Continent, String>
[i]
- TypedFunction<Continent, String>
[j]
- TypedFunction<Continent, String>
[k]
- TypedFunction<Continent, String>
[l]
- TypedFunction<Continent, String>
[m]
- TypedFunction<Continent, String>
[n]
- TypedFunction<Continent, String>
[o]
- TypedFunction<Continent, String>
[p]
- TypedFunction<Continent, String>
[q]
- TypedFunction<Continent, String>
[r]
- TypedFunction<Continent, String>
[s]
- TypedFunction<Continent, String>
[t]
- TypedFunction<Continent, String>
[u]
- TypedFunction<Continent, String>
[v]
- TypedFunction<Continent, String>
[w]
- TypedFunction<Continent, String>
[x]
- TypedFunction<Continent, String>
Permission:
Add columns to a Guild sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<GuildDB, String>
TODO CM Ref
[b]
- TypedFunction<GuildDB, String>
[c]
- TypedFunction<GuildDB, String>
[d]
- TypedFunction<GuildDB, String>
[e]
- TypedFunction<GuildDB, String>
[f]
- TypedFunction<GuildDB, String>
[g]
- TypedFunction<GuildDB, String>
[h]
- TypedFunction<GuildDB, String>
[i]
- TypedFunction<GuildDB, String>
[j]
- TypedFunction<GuildDB, String>
[k]
- TypedFunction<GuildDB, String>
[l]
- TypedFunction<GuildDB, String>
[m]
- TypedFunction<GuildDB, String>
[n]
- TypedFunction<GuildDB, String>
[o]
- TypedFunction<GuildDB, String>
[p]
- TypedFunction<GuildDB, String>
[q]
- TypedFunction<GuildDB, String>
[r]
- TypedFunction<GuildDB, String>
[s]
- TypedFunction<GuildDB, String>
[t]
- TypedFunction<GuildDB, String>
[u]
- TypedFunction<GuildDB, String>
[v]
- TypedFunction<GuildDB, String>
[w]
- TypedFunction<GuildDB, String>
[x]
- TypedFunction<GuildDB, String>
Permission:
Add columns to a Guild Setting sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<GuildSetting, String>
TODO CM REF
[b]
- TypedFunction<GuildSetting, String>
[c]
- TypedFunction<GuildSetting, String>
[d]
- TypedFunction<GuildSetting, String>
[e]
- TypedFunction<GuildSetting, String>
[f]
- TypedFunction<GuildSetting, String>
[g]
- TypedFunction<GuildSetting, String>
[h]
- TypedFunction<GuildSetting, String>
[i]
- TypedFunction<GuildSetting, String>
[j]
- TypedFunction<GuildSetting, String>
[k]
- TypedFunction<GuildSetting, String>
[l]
- TypedFunction<GuildSetting, String>
[m]
- TypedFunction<GuildSetting, String>
[n]
- TypedFunction<GuildSetting, String>
[o]
- TypedFunction<GuildSetting, String>
[p]
- TypedFunction<GuildSetting, String>
[q]
- TypedFunction<GuildSetting, String>
[r]
- TypedFunction<GuildSetting, String>
[s]
- TypedFunction<GuildSetting, String>
[t]
- TypedFunction<GuildSetting, String>
[u]
- TypedFunction<GuildSetting, String>
[v]
- TypedFunction<GuildSetting, String>
[w]
- TypedFunction<GuildSetting, String>
[x]
- TypedFunction<GuildSetting, String>
Permission:
Add columns to an Attack sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<IAttack, String>
TODO CM REF
[b]
- TypedFunction<IAttack, String>
[c]
- TypedFunction<IAttack, String>
[d]
- TypedFunction<IAttack, String>
[e]
- TypedFunction<IAttack, String>
[f]
- TypedFunction<IAttack, String>
[g]
- TypedFunction<IAttack, String>
[h]
- TypedFunction<IAttack, String>
[i]
- TypedFunction<IAttack, String>
[j]
- TypedFunction<IAttack, String>
[k]
- TypedFunction<IAttack, String>
[l]
- TypedFunction<IAttack, String>
[m]
- TypedFunction<IAttack, String>
[n]
- TypedFunction<IAttack, String>
[o]
- TypedFunction<IAttack, String>
[p]
- TypedFunction<IAttack, String>
[q]
- TypedFunction<IAttack, String>
[r]
- TypedFunction<IAttack, String>
[s]
- TypedFunction<IAttack, String>
[t]
- TypedFunction<IAttack, String>
[u]
- TypedFunction<IAttack, String>
[v]
- TypedFunction<IAttack, String>
[w]
- TypedFunction<IAttack, String>
[x]
- TypedFunction<IAttack, String>
Permission:
Add columns to a Military Unit sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<MilitaryUnit, String>
TODO CM REF
[b]
- TypedFunction<MilitaryUnit, String>
[c]
- TypedFunction<MilitaryUnit, String>
[d]
- TypedFunction<MilitaryUnit, String>
[e]
- TypedFunction<MilitaryUnit, String>
[f]
- TypedFunction<MilitaryUnit, String>
[g]
- TypedFunction<MilitaryUnit, String>
[h]
- TypedFunction<MilitaryUnit, String>
[i]
- TypedFunction<MilitaryUnit, String>
[j]
- TypedFunction<MilitaryUnit, String>
[k]
- TypedFunction<MilitaryUnit, String>
[l]
- TypedFunction<MilitaryUnit, String>
[m]
- TypedFunction<MilitaryUnit, String>
[n]
- TypedFunction<MilitaryUnit, String>
[o]
- TypedFunction<MilitaryUnit, String>
[p]
- TypedFunction<MilitaryUnit, String>
[q]
- TypedFunction<MilitaryUnit, String>
[r]
- TypedFunction<MilitaryUnit, String>
[s]
- TypedFunction<MilitaryUnit, String>
[t]
- TypedFunction<MilitaryUnit, String>
[u]
- TypedFunction<MilitaryUnit, String>
[v]
- TypedFunction<MilitaryUnit, String>
[w]
- TypedFunction<MilitaryUnit, String>
[x]
- TypedFunction<MilitaryUnit, String>
Permission:
Add columns to a Nation sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[column1]
- TypedFunction<DBNation, String>
/help find_nation_placeholder
[column2]
- TypedFunction<DBNation, String>
[column3]
- TypedFunction<DBNation, String>
[column4]
- TypedFunction<DBNation, String>
[column5]
- TypedFunction<DBNation, String>
[column6]
- TypedFunction<DBNation, String>
[column7]
- TypedFunction<DBNation, String>
[column8]
- TypedFunction<DBNation, String>
[column9]
- TypedFunction<DBNation, String>
[column10]
- TypedFunction<DBNation, String>
[column11]
- TypedFunction<DBNation, String>
[column12]
- TypedFunction<DBNation, String>
[column13]
- TypedFunction<DBNation, String>
[column14]
- TypedFunction<DBNation, String>
[column15]
- TypedFunction<DBNation, String>
[column16]
- TypedFunction<DBNation, String>
[column17]
- TypedFunction<DBNation, String>
[column18]
- TypedFunction<DBNation, String>
[column19]
- TypedFunction<DBNation, String>
[column20]
- TypedFunction<DBNation, String>
[column21]
- TypedFunction<DBNation, String>
[column22]
- TypedFunction<DBNation, String>
[column23]
- TypedFunction<DBNation, String>
[column24]
- TypedFunction<DBNation, String>
Permission:
Add columns to a Nation Color sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<NationColor, String>
TODO CM REF
[b]
- TypedFunction<NationColor, String>
[c]
- TypedFunction<NationColor, String>
[d]
- TypedFunction<NationColor, String>
[e]
- TypedFunction<NationColor, String>
[f]
- TypedFunction<NationColor, String>
[g]
- TypedFunction<NationColor, String>
[h]
- TypedFunction<NationColor, String>
[i]
- TypedFunction<NationColor, String>
[j]
- TypedFunction<NationColor, String>
[k]
- TypedFunction<NationColor, String>
[l]
- TypedFunction<NationColor, String>
[m]
- TypedFunction<NationColor, String>
[n]
- TypedFunction<NationColor, String>
[o]
- TypedFunction<NationColor, String>
[p]
- TypedFunction<NationColor, String>
[q]
- TypedFunction<NationColor, String>
[r]
- TypedFunction<NationColor, String>
[s]
- TypedFunction<NationColor, String>
[t]
- TypedFunction<NationColor, String>
[u]
- TypedFunction<NationColor, String>
[v]
- TypedFunction<NationColor, String>
[w]
- TypedFunction<NationColor, String>
[x]
- TypedFunction<NationColor, String>
Permission:
Add columns to a NationList sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<NationList, String>
TODO CM REF
[b]
- TypedFunction<NationList, String>
[c]
- TypedFunction<NationList, String>
[d]
- TypedFunction<NationList, String>
[e]
- TypedFunction<NationList, String>
[f]
- TypedFunction<NationList, String>
[g]
- TypedFunction<NationList, String>
[h]
- TypedFunction<NationList, String>
[i]
- TypedFunction<NationList, String>
[j]
- TypedFunction<NationList, String>
[k]
- TypedFunction<NationList, String>
[l]
- TypedFunction<NationList, String>
[m]
- TypedFunction<NationList, String>
[n]
- TypedFunction<NationList, String>
[o]
- TypedFunction<NationList, String>
[p]
- TypedFunction<NationList, String>
[q]
- TypedFunction<NationList, String>
[r]
- TypedFunction<NationList, String>
[s]
- TypedFunction<NationList, String>
[t]
- TypedFunction<NationList, String>
[u]
- TypedFunction<NationList, String>
[v]
- TypedFunction<NationList, String>
[w]
- TypedFunction<NationList, String>
[x]
- TypedFunction<NationList, String>
Permission:
Add columns to a NationOrAlliance sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<NationOrAlliance, String>
TODO
[b]
- TypedFunction<NationOrAlliance, String>
[c]
- TypedFunction<NationOrAlliance, String>
[d]
- TypedFunction<NationOrAlliance, String>
[e]
- TypedFunction<NationOrAlliance, String>
[f]
- TypedFunction<NationOrAlliance, String>
[g]
- TypedFunction<NationOrAlliance, String>
[h]
- TypedFunction<NationOrAlliance, String>
[i]
- TypedFunction<NationOrAlliance, String>
[j]
- TypedFunction<NationOrAlliance, String>
[k]
- TypedFunction<NationOrAlliance, String>
[l]
- TypedFunction<NationOrAlliance, String>
[m]
- TypedFunction<NationOrAlliance, String>
[n]
- TypedFunction<NationOrAlliance, String>
[o]
- TypedFunction<NationOrAlliance, String>
[p]
- TypedFunction<NationOrAlliance, String>
[q]
- TypedFunction<NationOrAlliance, String>
[r]
- TypedFunction<NationOrAlliance, String>
[s]
- TypedFunction<NationOrAlliance, String>
[t]
- TypedFunction<NationOrAlliance, String>
[u]
- TypedFunction<NationOrAlliance, String>
[v]
- TypedFunction<NationOrAlliance, String>
[w]
- TypedFunction<NationOrAlliance, String>
[x]
- TypedFunction<NationOrAlliance, String>
Permission:
Add columns to a Project sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<Project, String>
TODO CM REF
[b]
- TypedFunction<Project, String>
[c]
- TypedFunction<Project, String>
[d]
- TypedFunction<Project, String>
[e]
- TypedFunction<Project, String>
[f]
- TypedFunction<Project, String>
[g]
- TypedFunction<Project, String>
[h]
- TypedFunction<Project, String>
[i]
- TypedFunction<Project, String>
[j]
- TypedFunction<Project, String>
[k]
- TypedFunction<Project, String>
[l]
- TypedFunction<Project, String>
[m]
- TypedFunction<Project, String>
[n]
- TypedFunction<Project, String>
[o]
- TypedFunction<Project, String>
[p]
- TypedFunction<Project, String>
[q]
- TypedFunction<Project, String>
[r]
- TypedFunction<Project, String>
[s]
- TypedFunction<Project, String>
[t]
- TypedFunction<Project, String>
[u]
- TypedFunction<Project, String>
[v]
- TypedFunction<Project, String>
[w]
- TypedFunction<Project, String>
[x]
- TypedFunction<Project, String>
Permission:
Add columns to a Resource sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<ResourceType, String>
TODO CM REF
[b]
- TypedFunction<ResourceType, String>
[c]
- TypedFunction<ResourceType, String>
[d]
- TypedFunction<ResourceType, String>
[e]
- TypedFunction<ResourceType, String>
[f]
- TypedFunction<ResourceType, String>
[g]
- TypedFunction<ResourceType, String>
[h]
- TypedFunction<ResourceType, String>
[i]
- TypedFunction<ResourceType, String>
[j]
- TypedFunction<ResourceType, String>
[k]
- TypedFunction<ResourceType, String>
[l]
- TypedFunction<ResourceType, String>
[m]
- TypedFunction<ResourceType, String>
[n]
- TypedFunction<ResourceType, String>
[o]
- TypedFunction<ResourceType, String>
[p]
- TypedFunction<ResourceType, String>
[q]
- TypedFunction<ResourceType, String>
[r]
- TypedFunction<ResourceType, String>
[s]
- TypedFunction<ResourceType, String>
[t]
- TypedFunction<ResourceType, String>
[u]
- TypedFunction<ResourceType, String>
[v]
- TypedFunction<ResourceType, String>
[w]
- TypedFunction<ResourceType, String>
[x]
- TypedFunction<ResourceType, String>
Permission:
Add columns to a TaxBracket sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<TaxBracket, String>
TODO CM REF
[b]
- TypedFunction<TaxBracket, String>
[c]
- TypedFunction<TaxBracket, String>
[d]
- TypedFunction<TaxBracket, String>
[e]
- TypedFunction<TaxBracket, String>
[f]
- TypedFunction<TaxBracket, String>
[g]
- TypedFunction<TaxBracket, String>
[h]
- TypedFunction<TaxBracket, String>
[i]
- TypedFunction<TaxBracket, String>
[j]
- TypedFunction<TaxBracket, String>
[k]
- TypedFunction<TaxBracket, String>
[l]
- TypedFunction<TaxBracket, String>
[m]
- TypedFunction<TaxBracket, String>
[n]
- TypedFunction<TaxBracket, String>
[o]
- TypedFunction<TaxBracket, String>
[p]
- TypedFunction<TaxBracket, String>
[q]
- TypedFunction<TaxBracket, String>
[r]
- TypedFunction<TaxBracket, String>
[s]
- TypedFunction<TaxBracket, String>
[t]
- TypedFunction<TaxBracket, String>
[u]
- TypedFunction<TaxBracket, String>
[v]
- TypedFunction<TaxBracket, String>
[w]
- TypedFunction<TaxBracket, String>
[x]
- TypedFunction<TaxBracket, String>
Permission:
Add columns to a Bank TaxDeposit sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<TaxDeposit, String>
TODO CM REF
[b]
- TypedFunction<TaxDeposit, String>
[c]
- TypedFunction<TaxDeposit, String>
[d]
- TypedFunction<TaxDeposit, String>
[e]
- TypedFunction<TaxDeposit, String>
[f]
- TypedFunction<TaxDeposit, String>
[g]
- TypedFunction<TaxDeposit, String>
[h]
- TypedFunction<TaxDeposit, String>
[i]
- TypedFunction<TaxDeposit, String>
[j]
- TypedFunction<TaxDeposit, String>
[k]
- TypedFunction<TaxDeposit, String>
[l]
- TypedFunction<TaxDeposit, String>
[m]
- TypedFunction<TaxDeposit, String>
[n]
- TypedFunction<TaxDeposit, String>
[o]
- TypedFunction<TaxDeposit, String>
[p]
- TypedFunction<TaxDeposit, String>
[q]
- TypedFunction<TaxDeposit, String>
[r]
- TypedFunction<TaxDeposit, String>
[s]
- TypedFunction<TaxDeposit, String>
[t]
- TypedFunction<TaxDeposit, String>
[u]
- TypedFunction<TaxDeposit, String>
[v]
- TypedFunction<TaxDeposit, String>
[w]
- TypedFunction<TaxDeposit, String>
[x]
- TypedFunction<TaxDeposit, String>
Permission:
Add columns to a treasure sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<DBTreasure, String>
TODO CM REF
[b]
- TypedFunction<DBTreasure, String>
[c]
- TypedFunction<DBTreasure, String>
[d]
- TypedFunction<DBTreasure, String>
[e]
- TypedFunction<DBTreasure, String>
[f]
- TypedFunction<DBTreasure, String>
[g]
- TypedFunction<DBTreasure, String>
[h]
- TypedFunction<DBTreasure, String>
[i]
- TypedFunction<DBTreasure, String>
[j]
- TypedFunction<DBTreasure, String>
[k]
- TypedFunction<DBTreasure, String>
[l]
- TypedFunction<DBTreasure, String>
[m]
- TypedFunction<DBTreasure, String>
[n]
- TypedFunction<DBTreasure, String>
[o]
- TypedFunction<DBTreasure, String>
[p]
- TypedFunction<DBTreasure, String>
[q]
- TypedFunction<DBTreasure, String>
[r]
- TypedFunction<DBTreasure, String>
[s]
- TypedFunction<DBTreasure, String>
[t]
- TypedFunction<DBTreasure, String>
[u]
- TypedFunction<DBTreasure, String>
[v]
- TypedFunction<DBTreasure, String>
[w]
- TypedFunction<DBTreasure, String>
[x]
- TypedFunction<DBTreasure, String>
Permission:
Add columns to a Treaty sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<Treaty, String>
TODO CM REF
[b]
- TypedFunction<Treaty, String>
[c]
- TypedFunction<Treaty, String>
[d]
- TypedFunction<Treaty, String>
[e]
- TypedFunction<Treaty, String>
[f]
- TypedFunction<Treaty, String>
[g]
- TypedFunction<Treaty, String>
[h]
- TypedFunction<Treaty, String>
[i]
- TypedFunction<Treaty, String>
[j]
- TypedFunction<Treaty, String>
[k]
- TypedFunction<Treaty, String>
[l]
- TypedFunction<Treaty, String>
[m]
- TypedFunction<Treaty, String>
[n]
- TypedFunction<Treaty, String>
[o]
- TypedFunction<Treaty, String>
[p]
- TypedFunction<Treaty, String>
[q]
- TypedFunction<Treaty, String>
[r]
- TypedFunction<Treaty, String>
[s]
- TypedFunction<Treaty, String>
[t]
- TypedFunction<Treaty, String>
[u]
- TypedFunction<Treaty, String>
[v]
- TypedFunction<Treaty, String>
[w]
- TypedFunction<Treaty, String>
[x]
- TypedFunction<Treaty, String>
Permission:
Add columns to a TreatyType sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<TreatyType, String>
TODO CM REF
[b]
- TypedFunction<TreatyType, String>
[c]
- TypedFunction<TreatyType, String>
[d]
- TypedFunction<TreatyType, String>
[e]
- TypedFunction<TreatyType, String>
[f]
- TypedFunction<TreatyType, String>
[g]
- TypedFunction<TreatyType, String>
[h]
- TypedFunction<TreatyType, String>
[i]
- TypedFunction<TreatyType, String>
[j]
- TypedFunction<TreatyType, String>
[k]
- TypedFunction<TreatyType, String>
[l]
- TypedFunction<TreatyType, String>
[m]
- TypedFunction<TreatyType, String>
[n]
- TypedFunction<TreatyType, String>
[o]
- TypedFunction<TreatyType, String>
[p]
- TypedFunction<TreatyType, String>
[q]
- TypedFunction<TreatyType, String>
[r]
- TypedFunction<TreatyType, String>
[s]
- TypedFunction<TreatyType, String>
[t]
- TypedFunction<TreatyType, String>
[u]
- TypedFunction<TreatyType, String>
[v]
- TypedFunction<TreatyType, String>
[w]
- TypedFunction<TreatyType, String>
[x]
- TypedFunction<TreatyType, String>
Permission:
Add columns to a User sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<UserWrapper, String>
TODO CM REF
[b]
- TypedFunction<UserWrapper, String>
[c]
- TypedFunction<UserWrapper, String>
[d]
- TypedFunction<UserWrapper, String>
[e]
- TypedFunction<UserWrapper, String>
[f]
- TypedFunction<UserWrapper, String>
[g]
- TypedFunction<UserWrapper, String>
[h]
- TypedFunction<UserWrapper, String>
[i]
- TypedFunction<UserWrapper, String>
[j]
- TypedFunction<UserWrapper, String>
[k]
- TypedFunction<UserWrapper, String>
[l]
- TypedFunction<UserWrapper, String>
[m]
- TypedFunction<UserWrapper, String>
[n]
- TypedFunction<UserWrapper, String>
[o]
- TypedFunction<UserWrapper, String>
[p]
- TypedFunction<UserWrapper, String>
[q]
- TypedFunction<UserWrapper, String>
[r]
- TypedFunction<UserWrapper, String>
[s]
- TypedFunction<UserWrapper, String>
[t]
- TypedFunction<UserWrapper, String>
[u]
- TypedFunction<UserWrapper, String>
[v]
- TypedFunction<UserWrapper, String>
[w]
- TypedFunction<UserWrapper, String>
[x]
- TypedFunction<UserWrapper, String>
Permission:
Add columns to a War sheet
Arguments:
[-s sheet]
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
[a]
- TypedFunction<DBWar, String>
TODO CM REF
[b]
- TypedFunction<DBWar, String>
[c]
- TypedFunction<DBWar, String>
[d]
- TypedFunction<DBWar, String>
[e]
- TypedFunction<DBWar, String>
[f]
- TypedFunction<DBWar, String>
[g]
- TypedFunction<DBWar, String>
[h]
- TypedFunction<DBWar, String>
[i]
- TypedFunction<DBWar, String>
[j]
- TypedFunction<DBWar, String>
[k]
- TypedFunction<DBWar, String>
[l]
- TypedFunction<DBWar, String>
[m]
- TypedFunction<DBWar, String>
[n]
- TypedFunction<DBWar, String>
[o]
- TypedFunction<DBWar, String>
[p]
- TypedFunction<DBWar, String>
[q]
- TypedFunction<DBWar, String>
[r]
- TypedFunction<DBWar, String>
[s]
- TypedFunction<DBWar, String>
[t]
- TypedFunction<DBWar, String>
[u]
- TypedFunction<DBWar, String>
[v]
- TypedFunction<DBWar, String>
[w]
- TypedFunction<DBWar, String>
[x]
- TypedFunction<DBWar, String>
Permission:
List sheet templates for this guild
Arguments:
[type]
- Class[PlaceholderType]
An entity type for a placeholder
Used for sheets or formatted messages
Permission:
Delete a sheet template
Arguments:
<sheet>
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
Permission:
Remove columns in a sheet template
Arguments:
<sheet>
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
<columns>
- List<Integer>
A list of whole numbers (comma separated)
Permission:
Rename a sheet template
Arguments:
<sheet>
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
<name>
- String
A single line of text
Permission:
View a sheet template
Arguments:
<sheet>
- SheetTemplate
A sheet template name that has been created in this guild
Sheet templates are column formats for a sheet
Templates, each with a selection can be used to generate multi-tabbed spreadsheets
If the command supports it, you can specify a new template inline
Permission:
Get a sheet of ingame transfers for nations, filtered by the receiver
Arguments:
<receivers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
Optional: Specify timeframe:
[startTime]
- Long[Timestamp] Only list transfers after this time (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[endTime]
- Long[Timestamp] Only list transfers before this time (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Get a sheet of ingame transfers for nations, filtered by the sender
Arguments:
<senders>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
[timeframe=%epoch%]
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Sheet of projects each nation has
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
Get a sheet of in-game transfers for nations
Arguments:
<senders>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<receivers>
- Set<NationOrAlliance>
[timeframe=%epoch%]
- long[Timestamp]
Only transfers after timeframe
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Get a sheet of internal transfers for nations
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
Optional: Specify timeframe:
[startTime]
- Long[Timestamp] Only list transfers after this time (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[endTime]
- Long[Timestamp] Only list transfers before this time (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
This command is public
Generate csv file of project costs
This command has no arguments
Get a sheet of members and their revenue (compared to optimal city builds)
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
List all nations in the alliance and their in-game resource stockpile
Arguments:
Optional: Specify Nations:
[nationFilter]
- NationList Only include stockpiles from these nations (A comma separated list of nations, alliances and filters) Display Options:[-n normalize]
- boolean Divide stockpiles by city count[-e onlyShowExcess]
- boolean Only show the resources well above warchest and city operation requirements
[-f forceUpdate]
- boolean
Permission:
Generate a sheet of member tax brackets and internal tax rates
note: internal tax rate is the TAX_BASE and determines what % of their taxes is excluded from deposits
Arguments:
[-f force]
- boolean
[-a includeApplicants]
- boolean
Permission:
Get a sheet of a nation's in-game tax records and full resource amounts over a period
Arguments:
<nation>
- DBNation
nation id, name or url
[startDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[endDate]
- Long[Timestamp]
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a google sheet of tax revenue for a list of nations
Arguments:
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-f forceUpdate]
- boolean
[-u includeUntaxable]
- boolean
Include the potential revenue of untaxable nations
Assumes 100/100)
Permission:
Generate csv of war cost by nation between alliances (for reimbursement) Filters out wars where nations did not perform actions
Arguments:
<allies>
- Set<DBAlliance>
The alliances with nations you want to reimburse
(A comma separated list of alliances)
<enemies>
- Set<DBAlliance>
The enemies during the conflict
(A comma separated list of alliances)
<cutoff>
- long[Timestamp]
Starting time of the conflict
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
<removeWarsWithNoDefenderActions>
- boolean
If wars with no actions by the defender should NOT be reimbursed
Permission:
Get a sheet of members and their saved up warchest (can include deposits and potential revenue)
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-c perCityWarchest]
- Map<ResourceType, Double>
The required warchest per city. Else uses the guild default
(A comma separated list of resources and their amounts)
[-g includeGrants]
- boolean
Count current grants against warchest totals
[-n doNotNormalizeDeposits]
- boolean
If negative deposits are NOT normalized (to ignore negatives)
[-d ignoreDeposits]
- boolean
If deposits are NOT included in warchest totals
[-e ignoreStockpileInExcess]
- boolean
Do not count resources above the required amount toward total warchest value
[-r includeRevenueDays]
- Integer
Include days of potential revenue toward warchest resources
(A whole number)
[-f forceUpdate]
- boolean
Permission:
Generate a sheet of nation login activity from a nation id over a timeframe Days represent the % of that day a nation logs in (UTC) Numbers represent the % of that turn a nation logs in
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[trackTime=2w]
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of nation login activity from a nation id over a timeframe Note: use the other activity sheet need info of a deleted nation Days represent the % of that day a nation logs in (UTC) Numbers represent the % of that turn a nation logs in
Arguments:
<nationId>
- int
A whole number
[trackTime=2w]
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Create a sheet of alliances with customized columns See https://github.com/xdnw/locutus/wiki/nation_placeholders for a list of placeholders
Arguments:
<nations>
- Set<DBNation>
The nations to include in each alliance
(A comma separated list of nations, alliances and filters)
<columns>
- List<String>[TextArea]
The columns to use in the sheet
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
A sheet of nations stats with customizable columns See https://github.com/xdnw/locutus/wiki/nation_placeholders for a list of placeholders
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
<columns>
- List<String>[TextArea]
A space separated list of columns to use in the sheet
Can include NationAttribute as placeholders in columns
All NationAttribute placeholders must be surrounded by {} e.g. {nation}
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-e updateSpies]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of nations and their day change Nations not in an alliance registered to this guild can only show the public day change estimate based on unit purchases
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of nations who have left the provided alliances over a timeframe
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
<cuttOff>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[filter=*]
- Set<DBNation>
Only check these nations
(A comma separated list of nations, alliances and filters)
[-a ignoreInactive]
- boolean
Ignore inactive nations
[-v ignoreVM]
- boolean
Ignore vacation mode nations
[-n ignoreMembers]
- boolean
Ignore nations that are member in an alliance
Permission:
Generate a list of raidable targets to gather intel on
<time>
- filters out nations we have loot intel on in that period
<attackers>
- The nations to assign to do the ops (i.e. your alliance link)
<ignore-topX>
- filter out top X alliances (e.g. due to DNR), in addition to the set dnr
coalition
Add -l
to remove targets with loot history
Add -d
to list targets currently on the dnr
e.g. /sheets_milcom intelopsheet time:10d attacker:Rose dnrtopx:25
Arguments:
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[dnrTopX]
- Integer
Exclude nations in the top X alliances (or direct allies)
(A whole number)
[-l ignoreWithLootHistory]
- boolean
If nations with loot history are ignored
[-d ignoreDNR]
- boolean
If the alliance Do Not Raid settings are checked
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of alliance/nation/city military unit and building counts (MMR)
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-f forceUpdate]
- boolean
[-c showCities]
- boolean
List the military building count of each city instead of each nation
[-t snapshotTime]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
Permission:
Generate a spy blitz sheet with the defender on the left and attackers on the right
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<defenders>
- Set<DBNation>
[allowedTypes=nuke,missile,ships,aircraft,tanks,spies]
- Set<Operation>
Allowed spy operations
(A comma separated list of spy operation types)
[-f forceUpdate]
- boolean
Force an update of all participant spy count
[-e checkEspionageSlots]
- boolean
Check the defensive spy slots
[-k prioritizeKills]
- boolean
Prioritize unit kills instead of damage
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-d maxDef=3]
- Integer
Max Attackers to assign per defender
(A whole number)
[-o doubleOps]
- boolean
Double the offensive spy ops, e.g. two sets of ops at day change
Note: You should also set maxDef to e.g. 6
[-r removeSheets]
- Set<SpreadSheet>
Remove the available spy ops in another spreadsheet
(A comma separated list of spreadsheets)
[-p prioritizeAlliances]
- Set<DBAlliance>
Prioritize defenders in these alliances
(A comma separated list of alliances)
[-aw attackerWeighting]
- NationAttributeDouble
Fine grained control over attacker priority
e.g. (#warpolicy=ARCANE?1.2:1)*(#active_m<1440?1.2:1)*(#hasProject(SS)?1.2:1)
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
[-dw defenderWeighting]
- NationAttributeDouble
Fine grained control over defender priority
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
Permission:
War cost (for each alliance) broken down Damage columns:
- net damage (unit, infrastructure, loot, consumption, total)
- losses (unit, infrastructure, consumption, total)
- damage inflicted (unit, infrastructure, consumption, total)
- net resources (money, gasoline, munitions, aluminum, steel)
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
Permission:
Transfer sheet of war cost (for each nation) broken down by resource type Useful to see costs incurred by fighting for each nation, to plan for future wars, or to help with reimbursement
Arguments:
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-c excludeConsumption]
- boolean
[-i excludeInfra]
- boolean
[-l excludeLoot]
- boolean
[-u excludeUnitCost]
- boolean
[-g includeGray]
- boolean
Include nations on the gray color bloc
[-d includeDefensives]
- boolean
Include defensive wars
[-n normalizePerCity]
- boolean
Use the average cost per city
[-w normalizePerWar]
- boolean
Use the average cost per war
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
War cost (for each nation) broken down by war type The sheet is divided into groups for:
- Raids: Attacking nations which do not fight back
- Defenses: Attacked by a nation and fighting back
- Offenses: Attacking a nation which fights back
- Wars: Combination of defensive and offensive wars (not raids)
Arguments:
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[endTime]
- Long[Timestamp]
[-c excludeConsumption]
- boolean
[-i excludeInfra]
- boolean
[-l excludeLoot]
- boolean
[-u excludeUnitCost]
- boolean
[-n normalizePerCity]
- boolean
Average the cost by the nation's city count
[-leader useLeader]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of nations and their military units relative to the nations they are fighting
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-i includeInactive]
- boolean
Include inactive nations (2 days)
[-a includeApplicants]
- boolean
Permission:
Convert hidude's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f forceUpdate]
- boolean
Permission:
Convert TKR's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f force]
- boolean
Permission:
Convert dtc's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f forceUpdate]
- boolean
Permission:
Generate a subset of a spy sheet for only certain attackers or defenders
Arguments:
<spySheet>
- SpreadSheet
The current spy sheet
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
<attackers>
- Set<DBNation>
Which attackers to include
(A comma separated list of nations, alliances and filters)
[defenders=*]
- Set<DBNation>
Which defenders to include
Default: All
(A comma separated list of nations, alliances and filters)
[-h headerRow]
- Integer
The row the header is on
Default: 1st row
(A whole number)
[-s output]
- SpreadSheet
Sheet to put the subset in
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
[-a groupByAttacker]
- boolean
Group the spy operations (left column) by attacker
Permission:
Generate a list of nations and their expected raid loot
e.g. /sheets_milcom lootvaluesheet #cities<10,#position>1,#active_m<2880,someAlliance
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Run checks on a spy blitz sheet.
Checks that all nations are in range of their spy blitz targets and that they have no more than the provided number of offensive operations.
Add true
for the day-change argument to double the offensive op limit
Arguments:
[sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[dayChange=false]
- boolean
If the sheet is for attacks at day change
[filter=*]
- Set<DBNation>
Only allow attacking these nations
(A comma separated list of nations, alliances and filters)
[-l useLeader]
- boolean
Parse nation leader instead of nation name
Permission:
Generate a sheet of active wars between two coalitions (allies, enemies)
Add -i
to list concluded wars
Arguments:
<allies>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<enemies>
- Set<DBNation>
Additional War Options:
[cutoff=5d]
- long[Timestamp] Cutoff date for wars (default 5 days ago) (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[-i includeConcludedWars]
- boolean If concluded wars within the timeframe should be included
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Get a sheet of members and their saved up warchest (can include deposits and potential revenue)
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-c perCityWarchest]
- Map<ResourceType, Double>
The required warchest per city. Else uses the guild default
(A comma separated list of resources and their amounts)
[-g includeGrants]
- boolean
Count current grants against warchest totals
[-n doNotNormalizeDeposits]
- boolean
If negative deposits are NOT normalized (to ignore negatives)
[-d ignoreDeposits]
- boolean
If deposits are NOT included in warchest totals
[-e ignoreStockpileInExcess]
- boolean
Do not count resources above the required amount toward total warchest value
[-r includeRevenueDays]
- Integer
Include days of potential revenue toward warchest resources
(A whole number)
[-f forceUpdate]
- boolean
Permission:
This command is public
Simulate an airstrike with the given attacker and defender aircraft
Arguments:
<attAircraft>
- int
A whole number
<defAircraft>
- int
This command is public
Simulate an attack between two nations and return the odds and casualties
Arguments:
<attack>
- AttackType
An attack type
<warType>
- WarType
A war declaration type
<enemy>
- DBNation
nation id, name or url
[me=%user%]
- DBNation
[attackerMilitary]
- Map<MilitaryUnit, Long>
A comma separated list of units and their amounts
[defenderMilitary]
- Map<MilitaryUnit, Long>
[-att_policy attackerPolicy]
- WarPolicy
A war policy
[-def_policy defenderPolicy]
- WarPolicy
[-f defFortified]
- boolean
[-ac attAirControl]
- boolean
[-dac defAirControl]
- boolean
[-s selfIsDefender]
- boolean
[-ua unequipAttackerSoldiers]
- boolean
[-ud unequipDefenderSoldiers]
- boolean
[-ap attackerProjects]
- Set<Project>
A comma separated list of nation projects
[-dp defenderProjects]
- Set<Project>
This command is public
Return quickest attacks to beige an enemy at a resistance level
Arguments:
<resistance>
- int
A whole number
[-g noGround]
- boolean
Don't allow ground attacks
[-s noShip]
- boolean
Don't allow naval attacks
[-a noAir]
- boolean
Don't allow aircraft attacks
[-m noMissile]
- boolean
Don't allow missile attacks
[-n noNuke]
- boolean
Don't allow nuclear attacks
This command is public
Simulate a ground attack with the given attacker and defender troops
Halve the tank number if the opponent has air control
Note: Use math via: 50/2
Arguments:
<attSoldiersUnarmed>
- int
A whole number
<attSoldiers>
- int
<attTanks>
- int
<defSoldiersUnarmed>
- int
<defSoldiers>
- int
<defTanks>
- int
This command is public
Simulate a naval battle with the given attacker and defender ships
Arguments:
<attShips>
- int
A whole number
<defShips>
- int
Find nations to do a spy op against the specified enemy
Op types: (INTEL,NUKE,MISSILE,SHIPS,AIRCRAFT,TANKS,SPIES,SOLDIER) or *
(for all op types)
The alliance argument is optional
Use success>80
to specify a cutoff for spyop success
Arguments:
<enemy>
- DBNation
The enemy to spy
(nation id, name or url)
<operations>
- Set<Operation>
The allowed spy operations
(A comma separated list of spy operation types)
[counterWith]
- Set<DBNation>
The nations doing the spy ops on the enemy
Defaults to nations in the alliance
(A comma separated list of nations, alliances and filters)
[-s minSuccess]
- Integer
Required success rate for the spy op
(A whole number)
Permission:
See who was online at the time of a spy op (UTC)
Arguments:
<times>
- String
A single line of text
<defenderSpies>
- int
A whole number
[defender]
- DBNation
nation id, name or url
Permission:
Find nations to gather intel on (sorted by infra * days since last intel)
Arguments:
[dnrTopX]
- Integer
Exclude nations in the top X alliances (or direct allies)
(A whole number)
[-d ignoreDNR]
- boolean
If the alliance Do Not Raid settings are ignore
[-n attacker]
- DBNation
The nation gathering intel
(nation id, name or url)
[-s score]
- Double
The score range of the nation gathering intel
(A decimal number)
Permission:
List enemies and spy operation by the highest damage:
Use *
for the alliance to target enemies with active wars against allies
Use *
for op type to automatically find the best op type
Use e.g. 80
as the requiredSuccess
to only list operations above 80% success
e.g. /spy find target targets:enemies operations:spies
Arguments:
<targets>
- Set<DBNation>
The allowed targets
(A comma separated list of nations, alliances and filters)
<operations>
- Set<Operation>
The allowed operations
(A comma separated list of spy operation types)
[requiredSuccess=40]
- int
The required chance of success for an operation
(A whole number)
[-d directMesssage]
- boolean
Return results as a discord direct message
[-k prioritizeKills]
- boolean
Sort by unit kills instead of damage
[-n attacker]
- DBNation
The nation doing the spy operation
Defaults to your nation
(nation id, name or url)
Permission:
Convert hidude's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f forceUpdate]
- boolean
Permission:
Convert TKR's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f force]
- boolean
Permission:
Convert dtc's spy sheet format to the bot's format
Arguments:
<input>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-s output]
- SpreadSheet
[-a groupByAttacker]
- boolean
If results (left column) are grouped by the attacker instead of the defender
[-f forceUpdate]
- boolean
Permission:
Generate a subset of a spy sheet for only certain attackers or defenders
Arguments:
<spySheet>
- SpreadSheet
The current spy sheet
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
<attackers>
- Set<DBNation>
Which attackers to include
(A comma separated list of nations, alliances and filters)
[defenders=*]
- Set<DBNation>
Which defenders to include
Default: All
(A comma separated list of nations, alliances and filters)
[-h headerRow]
- Integer
The row the header is on
Default: 1st row
(A whole number)
[-s output]
- SpreadSheet
Sheet to put the subset in
(A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use)
[-a groupByAttacker]
- boolean
Group the spy operations (left column) by attacker
Permission:
Generate a sheet of guild member nations that have free espionage spy operations Useful for finding who can participate in a spy blitz
Arguments:
[nations]
- NationList
Nations to list in the sheet
Defaults to the guild alliance
(A comma separated list of nations, alliances and filters)
[addColumns]
- List<String>[TextArea]
A space separated list of columns to add to the sheet
Can include NationAttribute as placeholders in columns
All NationAttribute placeholders must be surrounded by {} e.g. {nation}
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-r requireXFreeOps]
- Integer
Number of free espionage ops required
(A whole number)
[-s requireSpies]
- Integer
Number of spies required
(A whole number)
[-sheet sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a spy blitz sheet with the defender on the left and attackers on the right
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<defenders>
- Set<DBNation>
[allowedTypes=nuke,missile,ships,aircraft,tanks,spies]
- Set<Operation>
Allowed spy operations
(A comma separated list of spy operation types)
[-f forceUpdate]
- boolean
Force an update of all participant spy count
[-e checkEspionageSlots]
- boolean
Check the defensive spy slots
[-k prioritizeKills]
- boolean
Prioritize unit kills instead of damage
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-d maxDef=3]
- Integer
Max Attackers to assign per defender
(A whole number)
[-o doubleOps]
- boolean
Double the offensive spy ops, e.g. two sets of ops at day change
Note: You should also set maxDef to e.g. 6
[-r removeSheets]
- Set<SpreadSheet>
Remove the available spy ops in another spreadsheet
(A comma separated list of spreadsheets)
[-p prioritizeAlliances]
- Set<DBAlliance>
Prioritize defenders in these alliances
(A comma separated list of alliances)
[-aw attackerWeighting]
- NationAttributeDouble
Fine grained control over attacker priority
e.g. (#warpolicy=ARCANE?1.2:1)*(#active_m<1440?1.2:1)*(#hasProject(SS)?1.2:1)
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
[-dw defenderWeighting]
- NationAttributeDouble
Fine grained control over defender priority
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
Permission:
Generate a list of raidable targets to gather intel on
<time>
- filters out nations we have loot intel on in that period
<attackers>
- The nations to assign to do the ops (i.e. your alliance link)
<ignore-topX>
- filter out top X alliances (e.g. due to DNR), in addition to the set dnr
coalition
Add -l
to remove targets with loot history
Add -d
to list targets currently on the dnr
e.g. /sheets_milcom intelopsheet time:10d attacker:Rose dnrtopx:25
Arguments:
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[dnrTopX]
- Integer
Exclude nations in the top X alliances (or direct allies)
(A whole number)
[-l ignoreWithLootHistory]
- boolean
If nations with loot history are ignored
[-d ignoreDNR]
- boolean
If the alliance Do Not Raid settings are checked
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Run checks on a spy blitz sheet.
Checks that all nations are in range of their spy blitz targets and that they have no more than the provided number of offensive operations.
Add true
for the day-change argument to double the offensive op limit
Arguments:
[sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[dayChange=false]
- boolean
If the sheet is for attacks at day change
[filter=*]
- Set<DBNation>
Only allow attacking these nations
(A comma separated list of nations, alliances and filters)
[-l useLeader]
- boolean
Parse nation leader instead of nation name
Permission:
This command is public
Generate a graph of spy counts by city count between two coalitions Nations which are applicants, in vacation mode or inactive (2 days) are excluded
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-t total]
- boolean
Graph the total spies instead of average per nation
[-b barGraph]
- boolean
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Graph an alliance metric over time for two coalitions
Arguments:
<metric>
- AllianceMetric
A Bot metric for alliances
<coalition1>
- Set<DBAlliance>
A comma separated list of alliances
<coalition2>
- Set<DBAlliance>
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Compare the metric over time between multiple alliances
Arguments:
<metric>
- AllianceMetric
A Bot metric for alliances
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Create a google sheet of nations, grouped by alliance, with the specified columns
Prefix a column with avg:
to force an average
Prefix a column with total:
to force a total
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<columns>
- List<String>[TextArea]
The columns to have. See: https://github.com/xdnw/locutus/wiki/nation_placeholders
(Multiple words or text separated by spaces
Use quotes for multi-word arguments)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-t useTotal]
- boolean
Use the sum of each nation's attributes instead of the average
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
Permission:
This command is public
Get a ranking of alliances or nations by their resource production
Arguments:
<resources>
- List<ResourceType>
The resources to rank production of
(A comma separated list of resource types)
[nationList]
- NationList
Nations to include in the ranking
(A comma separated list of nations, alliances and filters)
[-m ignoreMilitaryUpkeep]
- boolean
[-t ignoreTradeBonus]
- boolean
Exclude color trade bloc bonus
[-b ignoreNationBonus]
- boolean
Exclude the new nation bonus
[-n includeNegative]
- boolean
Include negative resource revenue
[-a listByNation]
- boolean
Rank by nation instead of alliances
[-s listAverage]
- boolean
Rank by average per nation instead of total per alliance
[-u uploadFile]
- boolean
[-i includeInactive]
- boolean
Include inactive nations (2 days)
[-d snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
Get a game graph by day
Arguments:
<metrics>
- Set<OrbisMetric>
A comma separated list of beige reasons for defeating an enemy in war
[start]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[end]
- Long[Timestamp]
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
List the public resource imports or exports of a nation or alliance to other nations or alliances over a period of time
Arguments:
<nationOrAlliances>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<cutoffMs>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-i hideInflows]
- boolean
Do not show inflows
[-o hideOutflows]
- boolean
Do not show outflows
This command is public
Rank nations by an attribute
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
<attribute>
- NationAttributeDouble
A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
[-a groupByAlliance]
- boolean
[-r reverseOrder]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-t total]
- boolean
Total value instead of average per nation
This command is public
Create a graph of the radiation by turn
Arguments:
<continents>
- Set<Continent>
A comma separated list of continents, or *
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Rank alliances by their new members over a timeframe
Arguments:
<cutoff>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[topX=80]
- int
Top X alliances to show in the ranking
(A whole number)
[-u uploadFile]
- boolean
Generate a graph of average buy and sell trade price by day
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<numDays>
- int
A whole number
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Permission:
This command is public
Graph the attributes of the nations of two coalitions by city count e.g. How many nations, soldiers etc. are at each city
Arguments:
<metric>
- NationAttributeDouble
A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-t total]
- boolean
Compare the sum of each nation's attribute in the coalition instead of average
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
Generate a bar char comparing the nation at each city count (tiering) between two coalitions
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-b barGraph]
- boolean
[-a includeApplicants]
- boolean
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
No description provided
Arguments:
<metrics>
- Set<NationAttributeDouble>
A comma separated list of numeric nation attributes
<nations>
- NationList
A comma separated list of nations, alliances and filters
[groupBy=getCities]
- NationAttributeDouble
A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-t total]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Generate a graph of nation military levels by city count between two coalitions
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-b buildings]
- boolean
Graph the average military buildings instead of units
[-t snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
This command is public
Generate a graph of nation counts by score between two coalitions
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Generate a graph of spy counts by city count between two coalitions Nations which are applicants, in vacation mode or inactive (2 days) are excluded
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-a includeApplicants]
- boolean
[-t total]
- boolean
Graph the total spies instead of average per nation
[-b barGraph]
- boolean
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
This command is public
Generate a graph of nation military strength by score between two coalitions
Arguments:
<coalition1>
- NationList
A comma separated list of nations, alliances and filters
<coalition2>
- NationList
[-i includeInactives]
- boolean
[-n includeApplicants]
- boolean
[-a col1MMR]
- MMRDouble
Use the score/strength of coalition 1 nations at specific military unit levels
(4 decimal numbers representing barracks, factory, hangar, drydock)
[-b col2MMR]
- MMRDouble
Use the score/strength of coalition 2 nations at specific military unit levels
(4 decimal numbers representing barracks, factory, hangar, drydock)
[-c col1Infra]
- Double
Use the score of coalition 1 nations at specific average infrastructure levels
(A decimal number)
[-d col2Infra]
- Double
Use the score of coalition 2 nations at specific average infrastructure levels
(A decimal number)
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-j attachJson]
- boolean
[-v attachCsv]
- boolean
This command is public
Create a google sheet of nations and the number of bad attacks they did over a timeframe
Arguments:
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
<start>
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[end]
- Long[Timestamp]
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[-a checkActivity]
- boolean
Also checks defender activity, to provide more fine grained attack information, but takes longer
View the percent times an alliance counters in-game wars
Arguments:
<alliance>
- DBAlliance
An alliance name id or url
Permission:
This command is public
War costs stats between two coalitions
Arguments:
<coalition2>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<timeStart>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[timeEnd]
- Long[Timestamp]
[-u ignoreUnits]
- boolean
[-i ignoreInfra]
- boolean
[-c ignoreConsumption]
- boolean
[-l ignoreLoot]
- boolean
[-b ignoreBuildings]
- boolean
[-id listWarIds]
- boolean
Return a list of war ids
[-t showWarTypes]
- boolean
Return a tally of war types
[-w allowedWarTypes]
- Set<WarType>
A comma separated list of war declaration types
[-s allowedWarStatus]
- Set<WarStatus>
A comma separated list of war statuses
[-a allowedAttackTypes]
- Set<AttackType>
A comma separated list of attack types
[-v allowedVictoryTypes]
- Set<SuccessType>
A comma separated list of attack success types
This command is public
War costs of a single war (use warsCost for multiple wars)
Arguments:
<war>
- DBWar
A war id or url
[-u ignoreUnits]
- boolean
[-i ignoreInfra]
- boolean
[-c ignoreConsumption]
- boolean
[-l ignoreLoot]
- boolean
[-b ignoreBuildings]
- boolean
This command is public
Rank war costs between two parties
Arguments:
Time period:
The time period to rank the wars
[timeStart=7d]
- long[Timestamp] Start time of the period to rank Defaults to 7d (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[timeEnd]
- Long[Timestamp] End time of the period to rank Defaults to now (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date) Nations:The nations/alliances to include
[coalition1=*]
- Set<NationOrAlliance> Nations required to be in the conflicts Defaults to all existing nations (A comma separated list of nations and alliances)[coalition2]
- Set<NationOrAlliance> Nations required to be in the conflicts againstcoalition1
Defaults to all nations (A comma separated list of nations and alliances)[-a onlyRankCoalition1]
- boolean Only rank the nations incoalition1
Defaults to false Ranking Statistic:The statistic and mode to rank by
[-t type]
- WarCostMode Cost Type (The mode for calculating war costs)[-s stat]
- WarCostStat Rank a specific stat, such as soldiers Defaults toDAMAGE
(A war attack statistic) Cost Exclusions:Exclude certain kinds of costs from the ranking
[-i excludeInfra]
- boolean Exclude infrastructure[-c excludeConsumption]
- boolean Exclude consumption[-l excludeLoot]
- boolean Exclude loot[-b excludeBuildings]
- boolean Exclude building losses[-u excludeUnits]
- boolean Exclude unit losses Grouping/Scaling:City, war scaling, and enable ranking by alliance (instead of nation)
[-g groupByAlliance]
- boolean Rank alliances[-w scalePerWar]
- boolean Scale rankings per war[-p scalePerCity]
- boolean Scale rankings by city count War Filtering:Specify the kind of wars to include
[-wartype allowedWarTypes]
- Set<WarType> Filter the war types included (A comma separated list of war declaration types)[-status allowedWarStatuses]
- Set<WarStatus> Filter the war statuses included (A comma separated list of war statuses)[-attacks allowedAttacks]
- Set<AttackType> Filter the attack types included (A comma separated list of attack types)[-off onlyOffensiveWars]
- boolean Only include wars declared by coalition1[-def onlyDefensiveWars]
- boolean Only include wars declared by coalition2
[-f uploadFile]
- boolean
This command is public
Rank the number of wars between two coalitions by nation or alliance Defaults to alliance ranking
Arguments:
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
[-o onlyOffensives]
- boolean
Only include offensive wars in the ranking
[-d onlyDefensives]
- boolean
Only include defensive wars in the ranking
[-n normalizePerMember]
- boolean
Rank the average wars per alliance member
[-i ignore2dInactives]
- boolean
Ignore inactive nations when determining alliance member counts
[-a rankByNation]
- boolean
Rank by nation instead of alliance
[-t warType]
- WarType
Only rank these war types
(A war declaration type)
[-s statuses]
- Set<WarStatus>
Only rank wars with these statuses
(A comma separated list of war statuses)
This command is public
Generate ranking of war status by Alliance
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<defenders>
- Set<DBNation>
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
This command is public
Generate ranking of war status by Nation
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<defenders>
- Set<DBNation>
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
This command is public
Display a graph of the number of attacks by the specified nations per day over a time period
Arguments:
[nations]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[cutoff]
- Long[Timestamp]
Period of time to graph
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[allowedTypes]
- Set<AttackType>
Restrict to a list of attack types
(A comma separated list of attack types)
This command is public
War costs between two coalitions over a time period
Arguments:
The Sides Fighting:
<coalition1>
- Set<NationOrAlliance> Nations required to be in the conflict againstcoalition2
(A comma separated list of nations and alliances)<coalition2>
- Set<NationOrAlliance> Nations required to be in the conflicts againstcoalition1
(A comma separated list of nations and alliances) Time period:<timeStart>
- long[Timestamp] Start time of the period to include (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[timeEnd]
- Long[Timestamp] End time of the period to rank Defaults to now (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date) Cost Exclusions:[-u ignoreUnits]
- boolean Exclude unit costs[-i ignoreInfra]
- boolean Exclude infrastructure costs[-c ignoreConsumption]
- boolean Exclude consumption costs[-l ignoreLoot]
- boolean Exclude loot costs[-b ignoreBuildings]
- boolean Exclude building costs Display Options:[-id listWarIds]
- boolean Attach a list of war ids[-t showWarTypes]
- boolean Attach a tally of war types War and attack type filters:[-w allowedWarTypes]
- Set<WarType> Filter the war types included (A comma separated list of war declaration types)[-s allowedWarStatus]
- Set<WarStatus> Filter the war statuses included (A comma separated list of war statuses)[-a allowedAttackTypes]
- Set<AttackType> Filter the attack types included (A comma separated list of attack types)[-v allowedVictoryTypes]
- Set<SuccessType> Filter the success types included (A comma separated list of attack success types)[-o onlyOffensiveWars]
- boolean Only include wars declared by coalition1[-d onlyDefensiveWars]
- boolean Only include wars declared by coalition2[-oa onlyOffensiveAttacks]
- boolean Only include attacks done by coalition1[-da onlyDefensiveAttacks]
- boolean Only include attacks done by coalition2
Generate a sheet of member tax brackets and internal tax rates
note: internal tax rate is the TAX_BASE and determines what % of their taxes is excluded from deposits
Arguments:
[-f force]
- boolean
[-a includeApplicants]
- boolean
Permission:
Get a sheet of a nation tax deposits over a period If a tax base is set for the nation or alliance then only the portion within member holdings are included by default
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[baseTaxRate]
- TaxRate
Set to 0/0 to include all taxes
(A tax rate in the form of money/rss
)
[startDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[endDate]
- Long[Timestamp]
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
View a nation's taxability, in-game tax rate, and internal tax-rate
Arguments:
<nation>
- DBNation
nation id, name or url
Permission:
List the assigned taxrate if REQUIRED_TAX_BRACKET or REQUIRED_INTERNAL_TAXRATE are set
Note: this command does set nations brackets. See: /tax setNationBracketAuto
and /nation set taxinternalAuto
Arguments:
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Get a sheet of a nation's in-game tax records and full resource amounts over a period
Arguments:
<nation>
- DBNation
nation id, name or url
[startDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[endDate]
- Long[Timestamp]
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Bulk set nation tax brackets as configured in the guild setting: REQUIRED_TAX_BRACKET
Arguments:
[nations]
- Set<DBNation>
The nations to set tax brackets for
If not specified, all nations in the alliance will be used
(A comma separated list of nations, alliances and filters)
[-p ping]
- boolean
Ping users if their brackets are modified
Permission:
This command is public
Dummy command. No output
This command has no arguments
Deposit your pending trades into your nation's holdings for this guild The receiver must be authenticated with the bot and have bank access in an alliance Only resources sold for $0 or food bought for cash are accepted
Arguments:
<receiver>
- DBNation
nation id, name or url
[amount]
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[-a useLogin]
- boolean
[-f force]
- boolean
Permission:
This command is public
Get the average trade price of resources over a period of time
Arguments:
<time>
- long[Timestamp]
Time to average over (from today)
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
Generate a graph comparing market values of two resource amounts by day
Arguments:
<stockpile1>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
<stockpile2>
- Map<ResourceType, Double>
<numDays>
- int
A whole number
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Permission:
This command is public
Get a ranking of alliances or nations by their resource production
Arguments:
<resources>
- List<ResourceType>
The resources to rank production of
(A comma separated list of resource types)
[nationList]
- NationList
Nations to include in the ranking
(A comma separated list of nations, alliances and filters)
[-m ignoreMilitaryUpkeep]
- boolean
[-t ignoreTradeBonus]
- boolean
Exclude color trade bloc bonus
[-b ignoreNationBonus]
- boolean
Exclude the new nation bonus
[-n includeNegative]
- boolean
Include negative resource revenue
[-a listByNation]
- boolean
Rank by nation instead of alliances
[-s listAverage]
- boolean
Rank by average per nation instead of total per alliance
[-u uploadFile]
- boolean
[-i includeInactive]
- boolean
Include inactive nations (2 days)
[-d snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
List nations who have bought and sold the most of a resource over a period
Arguments:
<type>
- ResourceType
The name of a resource
<cutoff>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[buyOrSell]
- String
A single line of text
[-a groupByAlliance]
- boolean
Group rankings by each nation's current alliance
[-p includeMoneyTrades]
- boolean
Include trades done outside of standard market prices
Permission:
This command is public
Get the margin between buy and sell for each resource
Arguments:
[-p usePercent]
- boolean
Display the margin percent instead of absolute difference
Generate a graph of average trade buy and sell margin by day
Arguments:
<numDays>
- int
A whole number
[percent=true]
- boolean
Use the margin percent instead of absolute difference
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Permission:
This command is public
View an accumulation of all the net money trades a nation made, grouped by nation Money trades are selling resources for close to $0 or buying for very large money amounts
Arguments:
<nation>
- DBNation
nation id, name or url
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-f forceUpdate]
- boolean
[-a addBalance]
- boolean
Return a deposits add command for each grouping
Create a bot trade offer on discord for buying a resource
Arguments:
<resource>
- ResourceType
The name of a resource
<quantity>
- Long
The quantity of the resource you are receiving
(A whole number)
[-minPPU minPPU]
- Integer
The minimum price per unit you are exchanging for
(A whole number)
[-maxPPU maxPPU]
- Integer
The maximum price per unit you are exchanging for
(A whole number)
[-n negotiable]
- Boolean
If prices are negotiable
[-e expire]
- Long[Timediff]
When the offer is no longer available
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-x exchangeFor]
- List<ResourceType>
The resources you will exchange for
(A comma separated list of resource types)
[-p exchangePPU]
- Map<ResourceType, Double>
The equivalent price per unit you will accept for each resource
(A comma separated list of resources and their amounts)
[-f force]
- boolean
Permission:
List the bot offers nations have on discord for you buying a given resource
Arguments:
<youBuy>
- ResourceType
The name of a resource
[youProvide=MONEY]
- ResourceType
[allowedTraders]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-l sortByLowestMinPrice]
- boolean
Sort the offers by the lowest minimum offer price
Comparison prices for resources are converted to weekly average cash equivalent
[-h sortByLowestMaxPrice]
- boolean
Sort the offers by the lowest maximum offer price
Comparison prices for resources are converted to weekly average cash equivalent
Permission:
Delete one of your bot trade offers on discord
Arguments:
[deleteResource]
- ResourceType
The resource you want to remove all your offers of
(The name of a resource)
[buyOrSell]
- String
Remove BUYING or SELLING of that resource
(A single line of text)
[-i deleteId]
- Integer
The offer id you want to delete
(A whole number)
Permission:
View the details of a bot trade offer on discord
Arguments:
<offerId>
- int
The id of a trade offer
(A whole number)
Permission:
List the bot trade offers you have on discord
This command has no arguments
Permission:
Create a bot trade offer on discord for selling a resource
Arguments:
<resource>
- ResourceType
The name of a resource
<quantity>
- Long
The quantity of the resource you are sending
(A whole number)
[-minPPU minPPU]
- Integer
The minimum price per unit you are exchanging for
(A whole number)
[-maxPPU maxPPU]
- Integer
The maximum price per unit you are exchanging for
(A whole number)
[-n negotiable]
- Boolean
If prices are negotiable
[-e expire]
- Long[Timediff]
When the offer is no longer available
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-x exchangeFor]
- List<ResourceType>
The resources you will exchange for
(A comma separated list of resource types)
[-p exchangePPU]
- Map<ResourceType, Double>
The equivalent price per unit you will accept for each resource
(A comma separated list of resources and their amounts)
[-f force]
- boolean
Permission:
List the bot offers nations have on discord for you selling a given resource
Arguments:
<youSell>
- ResourceType
The name of a resource
[youReceive=MONEY]
- ResourceType
[allowedTraders]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-l sortByLowestMinPrice]
- boolean
Sort the offers by the lowest minimum offer price
Comparison prices for resources are converted to weekly average cash equivalent
[-h sortByLowestMaxPrice]
- boolean
Sort the offers by the lowest maximum offer price
Comparison prices for resources are converted to weekly average cash equivalent
Permission:
Update one of your bot trade offers on discord
Arguments:
<offerId>
- int
The id of your trade offer
(A whole number)
<quantity>
- Long
The quantity of the resource you are exchanging
(A whole number)
[-minPPU minPPU]
- Integer
The minimum price per unit you are exchanging for
(A whole number)
[-maxPPU maxPPU]
- Integer
The maximum price per unit you are exchanging for
(A whole number)
[-n negotiable]
- Boolean
If prices are negotiable
[-e expire]
- Long[Timediff]
When the offer is no longer available
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-x exchangeFor]
- List<ResourceType>
The resources you will accept in return
(A comma separated list of resource types)
[-p exchangePPU]
- Map<ResourceType, Double>
The equivalent price per unit you will accept for each resource
(A comma separated list of resources and their amounts)
[-f force]
- boolean
Permission:
This command is public
Get the current top buy and sell price of each resource
This command has no arguments
Generate a graph of average buy and sell trade price by day
Arguments:
<resources>
- List<ResourceType>
A comma separated list of resource types
<numDays>
- int
A whole number
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
Permission:
This command is public
View an accumulation of all the net trades nations have made over a time period
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
This command is public
View an accumulation of all the net trades a nation made, grouped by nation.
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
[-a groupByAlliance]
- boolean
Group by alliance instead of nation
[-u uploadFile]
- boolean
Generate a graph of average trade buy and sell total by day
Arguments:
<numDays>
- int
A whole number
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
[-r resources]
- List<ResourceType>
A comma separated list of resource types
Permission:
Generate a google sheet of the amount traded of each resource at each price point over a period of time Credits are grouped by 10,000, food by 10, everything else is actual price
Arguments:
<time>
- long[Timestamp]
Date to start from
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
Permission:
This command is public
Show the total market value of resource amounts
Arguments:
<resources>
- Map<ResourceType, Double>
A comma separated list of resources and their amounts
[-n normalize]
- boolean
Remove negative amounts and return the scaled resource amounts of equivalent value
[-b useBuyPrice]
- boolean
Use the average buying price
[-s useSellPrice]
- boolean
Use the average selling price
[-t convertType]
- ResourceType
Show total value in a resource instead of money
(The name of a resource)
This command is public
Get the change in trade volume of each resource over a period of time
This command has no arguments
Generate a graph of average trade buy and sell volume by day
Arguments:
<numDays>
- int
A whole number
[-j attachJson]
- boolean
[-c attachCsv]
- boolean
[-r resources]
- List<ResourceType>
A comma separated list of resource types
Permission:
Send multiple transfers to nations/alliances according to a sheet
The transfer sheet columns must be nations
(which has the nations or alliance name/id/url)
and then there must be a column named for each resource type you wish to transfer
OR use a column called resources
which has a resource list (e.g. a json object of the resources)
Arguments:
<sheet>
- TransferSheet
A google spreadsheet id or url. Must have a nation
or leader
column as well as the names of each resource
<depositType>
- DepositTypeInfo
A DepositType optionally with a value and a city tag
See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes
[-n depositsAccount]
- DBNation
The nation account to deduct from
(nation id, name or url)
[-a useAllianceBank]
- DBAlliance
The alliance bank to send from
Defaults to the offshore
(An alliance name id or url)
[-o useOffshoreAccount]
- DBAlliance
The alliance account to deduct from
Alliance must be registered to this guild
Defaults to all the alliances of this guild
(An alliance name id or url)
[-t taxAccount]
- TaxBracket
The tax account to deduct from
(A tax id or url)
[-ta existingTaxAccount]
- boolean
Deduct from the receiver's tax bracket account
[-e expire]
- Long[Timediff]
Have the transfer ignored from nation holdings after a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-d decay]
- Long[Timediff]
Have the transfer decrease linearly over a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-m convertToMoney]
- boolean
[-em escrow_mode]
- EscrowMode
The mode for escrowing funds (e.g. if the receiver is blockaded)
Defaults to never
(The mode for escrowing funds for a transfer, such as when a receiver is blockaded)
[-b bypassChecks]
- boolean
[-f force]
- boolean
[-k key]
- UUID
Universally Unique IDentifier
Permission:
Send from your nation's deposits) to another account (internal transfer
Arguments:
Amount to send:
<amount>
- Map<ResourceType, Double>[AllianceDepositLimit] The amount to send (A comma separated list of resources and their amounts, which will be restricted by an alliance's account balance) Required: Send To:Pick a receiver account, nation, or both
[receiver_account]
- GuildOrAlliance The offshore alliance or guild account to send to Defaults to this guild (A guild or alliance name, url or id. Prefix withAA:
orguild:
to avoid ambiguity if there exists both by the same name or id)[receiver_nation]
- DBNation The alliance or guild nation account to send to Defaults to None (nation id, name or url) Optional: Send From:If there are multiple alliances registered to this guild
[sender_alliance]
- DBAlliance The offshore alliance account to send from Defaults to your alliance (if valid) (An alliance name id or url)
[-f force]
- boolean
Permission:
Send from your alliance offshore account to another account (internal transfer)
Arguments:
Amount to send:
<amount>
- Map<ResourceType, Double>[AllianceDepositLimit] The amount to send (A comma separated list of resources and their amounts, which will be restricted by an alliance's account balance) Required: Send To:Pick a receiver account, nation, or both
[receiver_account]
- GuildOrAlliance The offshore alliance or guild account to send to Defaults to this guild (A guild or alliance name, url or id. Prefix withAA:
orguild:
to avoid ambiguity if there exists both by the same name or id)[receiver_nation]
- DBNation The alliance or guild nation account to send to Defaults to None (nation id, name or url) Optional: Send From:If using a different account to send from
[sender_alliance]
- DBAlliance The offshore alliance account to send from Defaults to your alliance (if valid) (An alliance name id or url)[sender_nation]
- DBNation The nation to send from Defaults to your nation (nation id, name or url)
[-f force]
- boolean
Permission:
Send the funds in the alliance bank to an alliance added to the offshore
coalition in the bot
Optionally specify warchest and offshoring account
Arguments:
Account Settings:
[to]
- DBAlliance Specify an alternative Offshore alliance to send funds in-game to Defaults to the currently set offshore coalition (An alliance name id or url)[account]
- NationOrAllianceOrGuild Specify an alternative account to offshore with Defaults to the sender alliance (A nation or alliance name, url or id, or a guild id) Resource Amounts:[keepAmount={}]
- Map<ResourceType, Double> The amount of resources to keep in the bank Defaults to keep nothing (A comma separated list of resources and their amounts)[sendAmount]
- Map<ResourceType, Double> Specify specific resource amounts to offshore Defaults to all resources The send amount is auto capped by the resources available andkeepAmount
(A comma separated list of resources and their amounts)
Permission:
Disburse raw resources needed to operate cities
Arguments:
<nationList>
- NationList
The nations to send to
(A comma separated list of nations, alliances and filters)
Amount Options:
<days>
- double Days of operation to send (A decimal number)[-dc no_daily_cash]
- boolean Do not send money below the daily login bonus[-c no_cash]
- boolean Do not send ANY money Optional: Bank Note:[bank_note=#tax]
- DepositTypeInfo Transfer note Use#IGNORE
to not deduct from deposits (A DepositType optionally with a value and a city tag See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes)[-e expire]
- Long[Timediff] Have the transfer ignored from nation holdings after a timeframe (A time difference or unix timestamp which will resolve as a difference relative to the current date)[-d decay]
- Long[Timediff] Have the transfer decrease linearly from balances over a timeframe (A time difference or unix timestamp which will resolve as a difference relative to the current date)[-m deduct_as_cash]
- boolean Have the transfer valued as cash in nation holdings Optional: Nation Account:[-n nation_account]
- DBNation The guild's nation account to deduct from Defaults to None if bulk disburse, else the receivers account (nation id, name or url)[-em escrow_mode]
- EscrowMode How to handle the transfer if the receiver is blockaded Defaults to never escrow (The mode for escrowing funds for a transfer, such as when a receiver is blockaded) Optional: Specify Offshore/Bank:[-a ingame_bank]
- DBAlliance The in-game alliance bank to send from Defaults to the offshore set (An alliance name id or url)[-o offshore_account]
- DBAlliance The account with the offshore to use The alliance must be registered to this guild Defaults to all the alliances of this guild (An alliance name id or url) Optional: Tax Bracket Account (pick either or none):[-t tax_account]
- TaxBracket The tax account to deduct from (A tax id or url)[-ta use_receiver_tax_account]
- boolean Deduct from the receiver's tax bracket account[-b bypass_checks]
- boolean Skip checking receiver activity, blockade, VM etc.
[-f force]
- boolean
Permission:
Transfer from the alliance bank (alliance deposits)
Arguments:
<receiver>
- NationOrAlliance
A nation or alliance name, url or id. Prefix with AA:
or nation:
to avoid ambiguity if there exists both by the same name or id
<transfer>
- Map<ResourceType, Double>[AllianceDepositLimit]
A comma separated list of resources and their amounts, which will be restricted by an alliance's account balance
<depositType>
- DepositTypeInfo
A DepositType optionally with a value and a city tag
See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes
[-n nationAccount]
- DBNation
The nation account to deduct from
(nation id, name or url)
[-a senderAlliance]
- DBAlliance
The alliance bank to send from
Defaults to the offshore
(An alliance name id or url)
[-o allianceAccount]
- DBAlliance
The alliance account to deduct from
Alliance must be registered to this guild
Defaults to all the alliances of this guild
(An alliance name id or url)
[-t taxAccount]
- TaxBracket
The tax account to deduct from
(A tax id or url)
[-ta existingTaxAccount]
- boolean
Deduct from the receiver's tax bracket account
[-m onlyMissingFunds]
- boolean
Only send funds the receiver is lacking from the amount
[-e expire]
- Long[Timediff]
Have the transfer ignored from nation holdings after a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-d decay]
- Long[Timediff]
Have the transfer decrease linearly to zero for balances over a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-g token]
- UUID
Universally Unique IDentifier
[-c convertCash]
- boolean
Transfer valued at cash equivalent in nation holdings
[-em escrow_mode]
- EscrowMode
The mode for escrowing funds (e.g. if the receiver is blockaded)
Defaults to never
(The mode for escrowing funds for a transfer, such as when a receiver is blockaded)
[-b bypassChecks]
- boolean
[-f force]
- boolean
Permission:
Withdraw from the alliance bank (nation balance)
Arguments:
Amount Options:
<amount>
- Map<ResourceType, Double>[NationDepositLimit] Amount to send (A comma separated list of resources and their amounts, which will be restricted by an nations's account balance)[-m only_send_missing]
- boolean Only send funds the receiver is lacking from the amount Optional: Bank Note:[bank_note=#deposit]
- DepositTypeInfo Transfer note (A DepositType optionally with a value and a city tag See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes)[-e expire]
- Long[Timediff] Have the transfer ignored from nation holdings after a timeframe (A time difference or unix timestamp which will resolve as a difference relative to the current date)[-d decay]
- Long[Timediff] Have the transfer decrease linearly from balances over a timeframe (A time difference or unix timestamp which will resolve as a difference relative to the current date)[-c deduct_as_cash]
- boolean Transfer valued at cash equivalent in nation balance Specify Offshore/Bank:[-a ingame_bank]
- DBAlliance The in-game alliance bank to send from Defaults to the offshore set (An alliance name id or url)[-o offshore_account]
- DBAlliance The account with the offshore to use The alliance must be registered to this guild Defaults to all the alliances of this guild (An alliance name id or url) Optional: Nation Account:[-n nation_account]
- DBNation The guild's nation account to use Defaults to your nation (nation id, name or url)[-em escrow_mode]
- EscrowMode How to handle the transfer if the receiver is blockaded Defaults to never escrow (The mode for escrowing funds for a transfer, such as when a receiver is blockaded) Optional: Tax Bracket Account (pick either or none):[-t tax_account]
- TaxBracket The guild's tax account to deduct from Defaults to None (A tax id or url)[-ta use_receiver_tax_account]
- boolean OR deduct from the receiver's tax bracket account Defaults to false[-b bypass_checks]
- boolean Skip checking receiver activity, blockade, VM etc.
[-f force]
- boolean
Permission:
Transfer the missing resource amounts per city to a list of nations
Arguments:
<nations>
- NationList
A comma separated list of nations, alliances and filters
<resourcesPerCity>
- Map<ResourceType, Double>
The resources each nation needs for each city
Only resources they are missing is sent
(A comma separated list of resources and their amounts)
[note]
- DepositTypeInfo
The transfer note to use
Defaults to #WARCHEST
(A DepositType optionally with a value and a city tag
See: https://github.com/xdnw/locutus/wiki/deposits#transfer-notes)
[-s skipStockpile]
- boolean
Do not check nation stockpile
Sends the full amount of resources to each nation
[-n depositsAccount]
- DBNation
The nation account to deduct from
(nation id, name or url)
[-a useAllianceBank]
- DBAlliance
The alliance bank to send from
Defaults to the offshore
(An alliance name id or url)
[-o useOffshoreAccount]
- DBAlliance
The alliance account to deduct from
Alliance must be registered to this guild
Defaults to all the alliances of this guild
(An alliance name id or url)
[-t taxAccount]
- TaxBracket
The tax account to deduct from
(A tax id or url)
[-ta existingTaxAccount]
- boolean
Deduct from the receiver's tax bracket account
[-e expire]
- Long[Timediff]
Have the transfer ignored from nation holdings after a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-d decay]
- Long[Timediff]
Have the transfer decay linearly in balances over a timeframe
(A time difference or unix timestamp which will resolve as a difference relative to the current date)
[-m convertToMoney]
- boolean
Have the transfer valued as cash in nation holdings
[-em escrow_mode]
- EscrowMode
The mode for escrowing funds (e.g. if the receiver is blockaded)
Defaults to never
(The mode for escrowing funds for a transfer, such as when a receiver is blockaded)
[-b bypassChecks]
- boolean
[-f force]
- boolean
Permission:
Approve a pending treaty from an alliance
Arguments:
<senders>
- Set<DBAlliance>
Alliance that sent the treaty
(A comma separated list of alliances)
Permission:
Cancel a treaty in-game
Arguments:
<senders>
- Set<DBAlliance>
The other alliance the treaty is with
(A comma separated list of alliances)
Permission:
This command is public
No description provided
This command has no arguments
This command is public
List the treaties of the provided alliances Note: If you have the FORIEGN_AFFAIRS role you can view the pending treaties of your own alliance from its guild
Arguments:
<alliances>
- Set<DBAlliance>
A comma separated list of alliances
[treatyFilter]
- Predicate<Treaty>
TODO CM REF
Send a treaty to an alliance
Arguments:
<receiver>
- DBAlliance
Alliance to send treaty to
(An alliance name id or url)
<type>
- TreatyType
An in-game treaty type
<days>
- int
A whole number
[message]
- String
A single line of text
Permission:
This command is public
Get the cost of military units and their upkeep
Arguments:
<units>
- Map<MilitaryUnit, Long>
A comma separated list of units and their amounts
[wartime]
- Boolean
Show the upkeep during war time
This command is public
Get the military unit count history (dates/times) for a nation
Arguments:
<nation>
- DBNation
nation id, name or url
<unit>
- MilitaryUnit
Military unit name
[-p page]
- Integer
A whole number
This command is public
Unregister a nation to a discord user
Arguments:
[nation=%user%]
- DBNation
nation id, name or url
[-f force]
- boolean
Cancel your requests to have your blockades broken
This command has no arguments
Permission:
Find nations blockading your allies Allies with requests to have their blockade lifted are prioritized
Arguments:
[allies]
- Set<DBNation>
The nations to check for blockades
(A comma separated list of nations, alliances and filters)
[targets=*]
- Set<DBNation>
The list of enemies to check blockading
Defaults to all nations
(A comma separated list of nations, alliances and filters)
[-s myShips]
- Integer
The number of ships used to break the blockade
Defaults to your current number of ships
(A whole number)
[-r numResults=5]
- Integer
A whole number
Permission:
Request your blockade be broken within a specific timeframe
e.g. /war blockade request diff:4day note:i am low on warchest
Arguments:
<diff>
- long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
<note>
- String[TextArea]
A single line of text
[-f force]
- boolean
Permission:
List your wars you are allowed to beige
As set by this guild's configured beige policy: ALLOWED_BEIGE_REASONS
Arguments:
[nation]
- DBNation
The nation which is beiging
Defaults to your own nation
(nation id, name or url)
Permission:
This command is public
Show a war card embed on discord for a war by id
Arguments:
<warId>
- int
A whole number
Auto generate counters
Add -p
to ping users that are added
Add -a
to skip adding users
Add -m
to send standard counter messages
Arguments:
<enemy>
- DBNation
nation id, name or url
[attackers]
- Set<DBNation>
Nations to counter with
Default: This guild's alliance nations
(A comma separated list of nations, alliances and filters)
[max=3]
- int
Max number of nations to counter with
(A whole number)
[-p pingMembers]
- boolean
Ping the countering nations on discord
[-a skipAddMembers]
- boolean
Do not add countering nations to a war room for the enemy
[-m sendMail]
- boolean
Send counter message ingame to the nations countering
Permission:
Get a list of nations to counter an enemy
Arguments:
<target>
- DBNation
nation id, name or url
Counter Options:
By default active alliance members with free war slots will be used
[counterWith]
- Set<DBNation> Nations to counter with Default: This guild's alliance nations (A comma separated list of nations, alliances and filters)[-o allowMaxOffensives]
- boolean Show counters from nations at max offensive wars i.e. They can counter when they finish a war[-w filterWeak]
- boolean Remove countering nations weaker than the enemy[-a onlyOnline]
- boolean Remove countering nations that are inactive (2 days)[-d requireDiscord]
- boolean Remove countering nations NOT registered with Locutus[-s allowSameAlliance]
- boolean Don't filter out counters from the same alliance as the defender
[-i includeInactive]
- boolean
[-m includeNonMembers]
- boolean
Display Info:
[-p ping]
- boolean Include the discord mention of countering nations
Permission:
Generate a sheet with a list of nations attacking allies
(Defaults to those attacking allies)
Please still check the war history in case it is not valid to counter (and add a note to the note column indicating such)
Add -a
to filter out applicants
Add -i
to filter out inactive members
Add -e
to include enemies not attacking
Arguments:
[enemyFilter]
- Set<DBNation>
Only include these attackers
(A comma separated list of nations, alliances and filters)
[allies]
- Set<DBAlliance>
Show attackers against these alliances
(A comma separated list of alliances)
[-a excludeApplicants]
- boolean
Exclude applicants
[-i excludeInactives]
- boolean
Exclude inactive nations (3.4 days)
[-e includeAllEnemies]
- boolean
Include enemies not attacking
[-s sheetUrl]
- String
A single line of text
Permission:
View the percent times an alliance counters in-game wars
Arguments:
<alliance>
- DBAlliance
An alliance name id or url
Permission:
Get a list of nations to counter a war
Add -o
to ignore nations with 5 offensive slots
Add -w
to filter out weak attackers
Add -a
to only list active nations (past hour)
Arguments:
<war>
- DBWar
A war id or url
[counterWith]
- Set<DBNation>
Nations to counter with
Default: This guild's alliance nations
(A comma separated list of nations, alliances and filters)
[-o allowAttackersWithMaxOffensives]
- boolean
Show counters from nations at max offensive wars
i.e. They can counter when they finish a war
[-w filterWeak]
- boolean
Remove countering nations weaker than the enemy
[-a onlyActive]
- boolean
Remove countering nations that are inactive (2 days)
[-d requireDiscord]
- boolean
Remove countering nations NOT registered with Locutus
[-s allowSameAlliance]
- boolean
Include counters from the same alliance as the defender
[-i includeInactive]
- boolean
[-m includeNonMembers]
- boolean
[-p ping]
- boolean
Include the discord mention of countering nations
Permission:
This command is public
Check if declaring war on a nation is allowed by the guild's Do Not Raid (DNR) settings
Arguments:
<nation>
- DBNation
nation id, name or url
Generate a list of possible alliance blitz targets (for practice) Target alliances are sorted by free war slots
Arguments:
<topX>
- int
Exclude the top X alliances (by active nation score)
(A whole number)
[-p page]
- Integer
A whole number
Permission:
Find nations with high bounties within your war range
Arguments:
[-r onlyWeaker]
- boolean
Only list enemies with less ground than you
[-d ignoreDNR]
- boolean
Ignore the do not raid settings for this server
[-b bountyTypes]
- Set<WarType>
A comma separated list of war declaration types
[-n numResults=5]
- Integer
A whole number
Permission:
Find a high infrastructure target
optional alliance and sorting (default: active nations, sorted by damage stimate).
To see a list of coalitions, use /coalition list
.
Damage estimate is based on attacks you can perform (i.e. if you are stronger or have the project for missiles/nukes), and chance of success
Arguments:
<nations>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-a includeApps]
- boolean
Include targets which are applicants
[-i includeInactives]
- boolean
Include targets which are inactive
[-w filterWeak]
- boolean
Remove nations with stronger ground than you
[-n noNavy]
- boolean
Only include enemies with no navy
[-m targetMeanInfra]
- boolean
Sort results by average infrastructure instead of damage estimate
[-c targetCityMax]
- boolean
Sort results by top city infrastructure instead of damage estimate
[-b includeBeige]
- boolean
Include targets currently on beige
[-d resultsInDm]
- boolean
[-s warRange]
- Double
Score to search for targets within war range of
Defaults to your score
(A decimal number)
[-r relativeNavalStrength]
- Double
Exclude targets with ships equal to this multiple relative to yours
i.e. 1.0
would be nations with ships equal or less than yours
(A decimal number)
Permission:
Find a war target that you can hit
Defaults to enemies
coalition
Arguments:
[targets=~enemies]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[numResults=8]
- int
A whole number
[-r attackerScore]
- Double
Score to search for targets within war range of
Defaults to your score
(A decimal number)
[-i includeInactives]
- boolean
Include inactive nations in the search
Defaults to false
[-a includeApplicants]
- boolean
Include applicants in the search
Defaults to false
[-p onlyPriority]
- boolean
Only list targets with offensive wars they are winning
[-w onlyWeak]
- boolean
Only list targets weaker than you
[-e onlyEasy]
- boolean
Sort by easiest targets
[-c onlyLessCities]
- boolean
Only list targets with less cities than you
[-d resultsInDm]
- boolean
Return results in direct message
[-s includeStrong]
- boolean
Include nations much stronger than you in the search
Defaults to false
Permission:
Find targets to raid Sorted by best nation loot Defaults to 7d inactive
Arguments:
[targets=*]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-r numResults=5]
- Integer
A whole number
[-a activeTimeCutoff]
- Long[Timediff]
A time difference or unix timestamp which will resolve as a difference relative to the current date
[-w weakground]
- boolean
[-b beigeTurns]
- Integer
[-v vmTurns]
- Integer
[-n nationScore]
- Double
A decimal number
[-s defensiveSlots]
- Integer
[-d ignoreDNR]
- boolean
[-l ignoreBankLoot]
- boolean
[-c ignoreCityRevenue]
- boolean
Permission:
Find nations in war range that have a treasure
Arguments:
[-r onlyWeaker]
- boolean
Only list enemies with less ground than you
[-d ignoreDNR]
- boolean
Ignore the do not raid settings for this server
[-n numResults=5]
- Integer
A whole number
Permission:
Find nations blockading your allies Allies with requests to have their blockade lifted are prioritized
Arguments:
[allies]
- Set<DBNation>
The nations to check for blockades
(A comma separated list of nations, alliances and filters)
[targets=*]
- Set<DBNation>
The list of enemies to check blockading
Defaults to all nations
(A comma separated list of nations, alliances and filters)
[-s myShips]
- Integer
The number of ships used to break the blockade
Defaults to your current number of ships
(A whole number)
[-r numResults=5]
- Integer
A whole number
Permission:
Find nations who aren't protected, or are in an alliance unable to provide suitable counters Not suitable if you have no military
Arguments:
<targets>
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-r numResults=10]
- Integer
A whole number
[-d ignoreDNR]
- boolean
Ignore the configured Do Not Raid list
[-a includeAllies]
- boolean
Include allies for finding suitable counters
[-n nationsToBlitzWith]
- Set<DBNation>
The nations attacking
Defaults to your nation
(A comma separated list of nations, alliances and filters)
[-s maxRelativeTargetStrength=1.2]
- Double
The maximum allowed military strength of the target nation relative to you
(A decimal number)
[-c maxRelativeCounterStrength=1.2]
- Double
The maximum allowed military strength of counters relative to you
(A decimal number)
[-w withinAllAttackersRange]
- boolean
Only list targets within range of ALL attackers
[-o ignoreODP]
- boolean
[-f force]
- boolean
Permission:
This command is public
Show war info for a nation
Arguments:
<nation>
- DBNation
nation id, name or url
Create a war room
Add -p
to ping users that are added
Add -a
to skip adding users
Add -f
to force create channels (if checks fail)
Add -m
to send standard counter messages
Arguments:
<enemy>
- DBNation
nation id, name or url
<attackers>
- Set<DBNation>
Nations to counter with
Default: This guild's alliance nations
(A comma separated list of nations, alliances and filters)
[max=3]
- int
Max number of nations to counter with
(A whole number)
[-f force]
- boolean
[-w excludeWeakAttackers]
- boolean
Remove countering nations weaker than the enemy
[-d requireDiscord]
- boolean
Remove countering nations NOT registered with Locutus
[-o allowAttackersWithMaxOffensives]
- boolean
Show counters from nations at max offensive wars
i.e. They can counter when they finish a war
[-p pingMembers]
- boolean
Ping the countering nations on discord
[-a skipAddMembers]
- boolean
Do not add countering nations to a war room for the enemy
[-m sendMail]
- boolean
Send counter message ingame to the nations countering
Permission:
Create war rooms from a blitz sheet
Arguments:
<blitzSheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[customMessage]
- String
Custom message to send in each created war room
(A single line of text)
[-c addCounterMessage]
- boolean
If the default counter message should be sent
[-p ping]
- boolean
If the added member should be pinged in the channel
[-m addMember]
- boolean
If the member should be added to the war room
[-a allowedNations]
- Set<DBNation>
The nations from the blitz sheet to create war rooms for
Defaults to everyone
(A comma separated list of nations, alliances and filters)
[-h headerRow]
- Integer
The row the blitz sheet header is one
Defaults to first row
(A whole number)
[-l useLeader]
- boolean
Parse nation leader instead of nation name
[-f force]
- boolean
Permission:
This command is public
List war rooms for an ally or enemy
Arguments:
<nation>
- DBNation
nation id, name or url
Update the pin in the current war room channel
This command has no arguments
Permission:
Run this command in a war room to assign it to a category
/war room setcategory category:raid
Arguments:
<category>
- Category
The category to move this channel to
(A discord category name or mention)
Permission:
Sorts the war rooms into the correct discord category
e.g. warcat-c1-10
This command has no arguments
Permission:
Generate csv of war cost by nation between alliances (for reimbursement) Filters out wars where nations did not perform actions
Arguments:
<allies>
- Set<DBAlliance>
The alliances with nations you want to reimburse
(A comma separated list of alliances)
<enemies>
- Set<DBAlliance>
The enemies during the conflict
(A comma separated list of alliances)
<cutoff>
- long[Timestamp]
Starting time of the conflict
(A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)
<removeWarsWithNoDefenderActions>
- boolean
If wars with no actions by the defender should NOT be reimbursed
Permission:
Generates a a blitz sheet A blitz sheet contains a list of defenders (left column) and auto assigns attackers (right columns) Note: If the blitz sheet generated has a lot of city updeclares or unslotted enemies it is recommended to go through and remove low priority defenders
- Low priority could be enemies without a recent offensive war, inactive, low military, or poor activity
- Example defNations:
~enemies,#position>1,#active_m<4880,#dayssincelastoffensive>200,#dayssince3consecutivelogins>120,#aircraftpct<0.8,#tankpct<=0.6
Note: To avoid updeclares enableonlyEasyTargets
Arguments:
<attNations>
- NationList
Nations that should be used for the attackers
It is recommended to use a google sheet of the attackers available
(A comma separated list of nations, alliances and filters)
<defNations>
- NationList
Nations that should be used for the defenders
It is recommended to use a google sheet of the priority defenders (unless you are sure you can hit every nation)
(A comma separated list of nations, alliances and filters)
[maxOff=3]
- int
How many offensive slots a nation can have (defaults to 3)
(A whole number)
[sameAAPriority=0]
- double
Value between 0 and 1 to prioritize assigning a target to nations in the same alliance
Default: 0
(A decimal number)
[sameActivityPriority=0]
- double
Value between 0 and 1 to prioritize assigning targets to nations with similar activity patterns
Recommended not to use if you know who is attacking
(A decimal number)
[turn=-1]
- int
The turn in the day (between 0 and 11) when you expect the blitz to happen
(A whole number)
[attActivity=0]
- double
A value between 0 and 1 to filter out attackers below this level of daily activity (default: 0, which is 0%)
Recommend using if you did not provide a sheet of attackers
(A decimal number)
[defActivity=0]
- double
A value between 0 and 1 to filter out defenders below this level of activity (default: 0)
Recommend using if you did not provide a sheet of defenders
(A decimal number)
[-w processActiveWars=true]
- boolean
Factor in existing wars of attackers and defenders
i.e. To determine slots available and nation strength
[-e onlyEasyTargets]
- boolean
Only assign down declares
[-c maxCityRatio]
- Double
Maximum ratio of defender cities to attacker
e.g. A value of 1.5 means defenders can have 1.5x more cities than the attacker
(A decimal number)
[-g maxGroundRatio]
- Double
Maximum ratio of defender ground strength to attacker
e.g. A value of 1.5 means defenders can have 1.5x more ground strength than the attacker
(A decimal number)
[-a maxAirRatio]
- Double
Maximum ratio of defender aircraft to attacker
e.g. A value of 1.5 means defenders can have 1.5x more aircraft than the attacker
(A decimal number)
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Transfer sheet of war cost (for each nation) broken down by resource type Useful to see costs incurred by fighting for each nation, to plan for future wars, or to help with reimbursement
Arguments:
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-c excludeConsumption]
- boolean
[-i excludeInfra]
- boolean
[-l excludeLoot]
- boolean
[-u excludeUnitCost]
- boolean
[-g includeGray]
- boolean
Include nations on the gray color bloc
[-d includeDefensives]
- boolean
Include defensive wars
[-n normalizePerCity]
- boolean
Use the average cost per city
[-w normalizePerWar]
- boolean
Use the average cost per war
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
War cost (for each nation) broken down by war type The sheet is divided into groups for:
- Raids: Attacking nations which do not fight back
- Defenses: Attacked by a nation and fighting back
- Offenses: Attacking a nation which fights back
- Wars: Combination of defensive and offensive wars (not raids)
Arguments:
<attackers>
- Set<NationOrAlliance>
A comma separated list of nations and alliances
<defenders>
- Set<NationOrAlliance>
<time>
- long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[endTime]
- Long[Timestamp]
[-c excludeConsumption]
- boolean
[-i excludeInfra]
- boolean
[-l excludeLoot]
- boolean
[-u excludeUnitCost]
- boolean
[-n normalizePerCity]
- boolean
Average the cost by the nation's city count
[-leader useLeader]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Generate a sheet of raid targets
Arguments:
<attackers>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<targets>
- Set<DBNation>
[-i includeInactiveAttackers]
- boolean
[-a includeApplicantAttackers]
- boolean
[-b includeBeigeAttackers]
- boolean
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
Run checks on nations in a blitz sheet
- In range of their blitz targets- Still in the alliance- Have no more than the provided number of offensive wars
Sheet columns:
nation
,att1
,att1
,att3
Arguments:
<sheet>
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
[maxWars=3]
- int
Max wars per attacker
(A whole number)
[nationsFilter=*]
- Set<DBNation>
Only allow attacking these nations
(A comma separated list of nations, alliances and filters)
[attackerFilter]
- Set<DBNation>
A comma separated list of nations, alliances and filters
[-l useLeader]
- boolean
Parse nation leader instead of nation name
[-h headerRow]
- Integer
Which row of the sheet has the header
Default: 1st row
(A whole number)
Permission:
Generate a sheet of active wars between two coalitions (allies, enemies)
Add -i
to list concluded wars
Arguments:
<allies>
- Set<DBNation>
A comma separated list of nations, alliances and filters
<enemies>
- Set<DBNation>
Additional War Options:
[cutoff=5d]
- long[Timestamp] Cutoff date for wars (default 5 days ago) (A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date)[-i includeConcludedWars]
- boolean If concluded wars within the timeframe should be included
[-s sheet]
- SpreadSheet
A google spreadsheet id or url
For shorthand, use a comma when specifying the sheet tab e.g. sheet:ID,TAB_NAME
For a url, append #gid=1234
or #tab=tabName
to specify the id of the tab to use
Permission:
No description provided
Arguments:
<nation>
- DBNation
nation id, name or url
Permission:
This command is public
Get detailed information about a nation
Nation argument can be nation name, id, link, or discord tag
e.g. /who @borg
Arguments:
<nationOrAlliances>
- Set<NationOrAlliance>
The nations to get info about
(A comma separated list of nations and alliances)
[sortBy]
- NationAttributeDouble
Sort any listed nations by this attribute
(A completed nation attribute that accepts no arguments and returns a number
To get the attribute for an attribute with arguments, you must provide a value in brackets
See: https://github.com/xdnw/locutus/wiki/nation_placeholders)
[-l list]
- boolean
List the nations instead of just providing a summary
[-a listAlliances]
- boolean
List the alliances of the provided nation
[-r listRawUserIds]
- boolean
List the discord user ids of each nation
[-m listMentions]
- boolean
List the discord user mentions of each nation
[-i listInfo]
- boolean
List paginated info of each nation
[-c listChannels]
- boolean
List all interview channels of each nation
[-s snapshotDate]
- Long[Timestamp]
A unix timestamp, a DMY date or a time difference that will resolve to a timestamp from the current date
[-p page]
- Integer
A whole number