Advertisement
Guest User

Untitled

a guest
Apr 8th, 2017
620
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.05 KB | None | 0 0
  1. 'use strict';
  2.  
  3. // The server port - the port to run Pokemon Showdown under
  4. exports.port = 8000;
  5.  
  6. // proxyip - proxy IPs with trusted X-Forwarded-For headers
  7. // This can be either false (meaning not to trust any proxies) or an array
  8. // of strings. Each string should be either an IP address or a subnet given
  9. // in CIDR notation. You should usually leave this as `false` unless you
  10. // know what you are doing.
  11. exports.proxyip = false;
  12.  
  13. // Pokemon of the Day - put a pokemon's name here to make it Pokemon of the Day
  14. // The PotD will always be in the #2 slot (not #1 so it won't be a lead)
  15. // in every Random Battle team.
  16. exports.potd = '';
  17.  
  18. // crash guard - write errors to log file instead of crashing
  19. // This is normally not recommended - if Node wants to crash, the
  20. // server needs to be restarted
  21. // However, most people want the server to stay online even if there is a
  22. // crash, so this option is provided
  23. exports.crashguard = true;
  24.  
  25. // login server data - don't forget the http:// and the trailing slash
  26. // This is the URL of the user database and ladder mentioned earlier.
  27. // Don't change this setting - there aren't any other login servers right now
  28. exports.loginserver = 'http://play.pokemonshowdown.com/';
  29. exports.loginserverkeyalgo = "RSA-SHA1";
  30. exports.loginserverpublickeyid = 4;
  31. exports.loginserverpublickey = `-----BEGIN PUBLIC KEY-----
  32. MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAzfWKQXg2k8c92aiTyN37
  33. dl76iW0aeAighgzeesdar4xZT1A9yzLpj2DgR8F8rh4R32/EVOPmX7DCf0bYWeh3
  34. QttP0HVKKKfsncJZ9DdNtKj1vWdUTklH8oeoIZKs54dwWgnEFKzb9gxqu+z+FJoQ
  35. vPnvfjCRUPA84O4kqKSuZT2qiWMFMWNQPXl87v+8Atb+br/WXvZRyiLqIFSG+ySn
  36. Nwx6V1C8CA1lYqcPcTfmQs+2b4SzUa8Qwkr9c1tZnXlWIWj8dVvdYtlo0sZZBfAm
  37. X71Rsp2vwEleSFKV69jj+IzAfNHRRw+SADe3z6xONtrJOrp+uC/qnLNuuCfuOAgL
  38. dnUVFLX2aGH0Wb7ZkriVvarRd+3otV33A8ilNPIoPb8XyFylImYEnoviIQuv+0VW
  39. RMmQlQ6RMZNr6sf9pYMDhh2UjU11++8aUxBaso8zeSXC9hhp7mAa7OTxts1t3X57
  40. 72LqtHHEzxoyLj/QDJAsIfDmUNAq0hpkiRaXb96wTh3IyfI/Lqh+XmyJuo+S5GSs
  41. RhlSYTL4lXnj/eOa23yaqxRihS2MT9EZ7jNd3WVWlWgExIS2kVyZhL48VA6rXDqr
  42. Ko0LaPAMhcfETxlFQFutoWBRcH415A/EMXJa4FqYa9oeXWABNtKkUW0zrQ194btg
  43. Y929lRybWEiKUr+4Yw2O1W0CAwEAAQ==
  44. -----END PUBLIC KEY-----
  45. `;
  46.  
  47. // crashguardemail - if the server has been running for more than an hour
  48. // and crashes, send an email using these settings, rather than locking down
  49. // the server. Uncomment this definition if you want to use this feature;
  50. // otherwise, all crashes will lock down the server.
  51. /**exports.crashguardemail = {
  52. options: {
  53. host: 'mail.example.com',
  54. port: 465,
  55. secure: true,
  56. auth: {
  57. user: 'example@domain.com',
  58. pass: 'password'
  59. }
  60. },
  61. from: 'crashlogger@example.com',
  62. to: 'admin@example.com',
  63. subject: 'Pokemon Showdown has crashed!'
  64. };**/
  65.  
  66. // basic name filter - removes characters used for impersonation
  67. // The basic name filter removes Unicode characters that can be used for impersonation,
  68. // like the upside-down exclamation mark (looks like an i), the Greek omicron (looks
  69. // like an o), etc. Disable only if you need one of the alphabets it disables, such as
  70. // Greek or Cyrillic.
  71. exports.disablebasicnamefilter = false;
  72.  
  73. // report joins and leaves - shows messages like "<USERNAME> joined"
  74. // Join and leave messages are small and consolidated, so there will never
  75. // be more than one line of messages.
  76. // If this setting is set to `true`, it will override the client-side
  77. // /hidejoins configuration for users.
  78. // This feature can lag larger servers - turn this off if your server is
  79. // getting more than 80 or so users.
  80. exports.reportjoins = true;
  81.  
  82. // report joins and leaves periodically - sends silent join and leave messages in batches
  83. // This setting will only be effective if `reportjoins` is set to false, and users will
  84. // only be able to see the messages if they have the /showjoins client-side setting enabled.
  85. // Set this to a positive amount of milliseconds if you want to enable this feature.
  86. exports.reportjoinsperiod = 0;
  87.  
  88. // report battles - shows messages like "OU battle started" in the lobby
  89. // This feature can lag larger servers - turn this off if your server is
  90. // getting more than 160 or so users.
  91. exports.reportbattles = true;
  92.  
  93. // report joins and leaves in battle - shows messages like "<USERNAME> joined" in battle
  94. // Set this to false on large tournament servers where battles get a lot of joins and leaves.
  95. // Note that the feature of turning this off is deprecated.
  96. exports.reportbattlejoins = true;
  97.  
  98. // notify staff when users have a certain amount of room punishments.
  99. // Setting this to a number greater than zero will notify staff for everyone with
  100. // the required amount of room punishments.
  101. // Set this to 0 to turn the monitor off.
  102. exports.monitorminpunishments = 3;
  103.  
  104. // allow punishmentmonitor to lock users with multiple roombans.
  105. // When set to `true`, this feature will automatically lock any users with three or more
  106. // active roombans, and notify the staff room.
  107. // Note that this requires punishmentmonitor to be enabled, and therefore requires the `monitorminpunishments`
  108. // option to be set to a number greater than zero. If `monitorminpunishments` is set to a value greater than 3,
  109. // the autolock will only apply to people who pass this threshold.
  110. exports.punishmentautolock = false;
  111.  
  112. // whitelist - prevent users below a certain group from doing things
  113. // For the modchat settings, false will allow any user to participate, while a string
  114. // with a group symbol will restrict it to that group and above. The string
  115. // 'autoconfirmed' is also supported for chatmodchat and battlemodchat, to restrict
  116. // chat to autoconfirmed users.
  117. // This is usually intended to be used as a whitelist feature - set these to '+' and
  118. // voice every user you want whitelisted on the server.
  119.  
  120. // chat modchat - default minimum group for speaking in chatrooms; changeable with /modchat
  121. exports.chatmodchat = false;
  122. // battle modchat - default minimum group for speaking in battles; changeable with /modchat
  123. exports.battlemodchat = false;
  124. // pm modchat - minimum group for PMing other users, challenging other users, and laddering
  125. exports.pmmodchat = false;
  126.  
  127. // forced timer - force the timer on for all battles
  128. // Players will be unable to turn it off.
  129. // This setting can also be turned on with the command /forcetimer.
  130. exports.forcetimer = false;
  131.  
  132. // backdoor - allows Pokemon Showdown system operators to provide technical
  133. // support for your server
  134. // This backdoor gives system operators (such as Zarel) console admin
  135. // access to your server, which allow them to provide tech support. This
  136. // can be useful in a variety of situations: if an attacker attacks your
  137. // server and you are not online, if you need help setting up your server,
  138. // etc. If you do not trust Pokemon Showdown with admin access, you should
  139. // disable this feature.
  140. exports.backdoor = true;
  141.  
  142. // List of IPs and user IDs with dev console (>> and >>>) access.
  143. // The console is incredibly powerful because it allows the execution of
  144. // arbitrary commands on the local computer (as the user running the
  145. // server). If an account with the console permission were compromised,
  146. // it could possibly be used to take over the server computer. As such,
  147. // you should only specify a small range of trusted IPs and users here,
  148. // or none at all. By default, only localhost can use the dev console.
  149. // In addition to connecting from a valid IP, a user must *also* have
  150. // the `console` permission in order to use the dev console.
  151. // Setting this to an empty array ([]) will disable the dev console.
  152. exports.consoleips = ['127.0.0.1'];
  153.  
  154. // Whether to watch the config file for changes. If this is enabled,
  155. // then the config.js file will be reloaded when it is changed.
  156. // This can be used to change some settings using a text editor on
  157. // the server.
  158. exports.watchconfig = true;
  159.  
  160. // logchat - whether to log chat rooms.
  161. exports.logchat = false;
  162.  
  163. // logchallenges - whether to log challenge battles. Useful for tournament servers.
  164. exports.logchallenges = false;
  165.  
  166. // loguserstats - how often (in milliseconds) to write user stats to the
  167. // lobby log. This has no effect if `logchat` is disabled.
  168. exports.loguserstats = 1000 * 60 * 10; // 10 minutes
  169.  
  170. // validatorprocesses - the number of processes to use for validating teams
  171. // simulatorprocesses - the number of processes to use for handling battles
  172. // You should leave both of these at 1 unless your server has a very large
  173. // amount of traffic (i.e. hundreds of concurrent battles).
  174. exports.validatorprocesses = 1;
  175. exports.simulatorprocesses = 1;
  176.  
  177. // inactiveuserthreshold - how long a user must be inactive before being pruned
  178. // from the `users` array. The default is 1 hour.
  179. exports.inactiveuserthreshold = 1000 * 60 * 60;
  180.  
  181. // Custom avatars.
  182. // This allows you to specify custom avatar images for users on your server.
  183. // Place custom avatar files under the /config/avatars/ directory.
  184. // Users must be specified as userids -- that is, you must make the name all
  185. // lowercase and remove non-alphanumeric characters.
  186. //
  187. // Your server *must* be registered in order for your custom avatars to be
  188. // displayed in the client.
  189. exports.customavatars = {
  190. //'userid': 'customavatar.png'
  191. };
  192.  
  193. // tourroom - specify a room to receive tournament announcements (defaults to
  194. // the room 'tournaments').
  195. // tourannouncements - announcements are only allowed in these rooms
  196. // tourdefaultplayercap - a set cap of how many players can be in a tournament
  197. // ratedtours - toggles tournaments being ladder rated (true) or not (false)
  198. exports.tourroom = '';
  199. exports.tourannouncements = [/* roomids */];
  200. exports.tourdefaultplayercap = 0;
  201. exports.ratedtours = false;
  202.  
  203. // appealurl - specify a URL containing information on how users can appeal
  204. // disciplinary actions on your section. You can also leave this blank, in
  205. // which case users won't be given any information on how to appeal.
  206. exports.appealurl = '';
  207.  
  208. // replsocketprefix - the prefix for the repl sockets to be listening on
  209. // replsocketmode - the file mode bits to use for the repl sockets
  210. exports.replsocketprefix = './logs/repl/';
  211. exports.replsocketmode = 0o600;
  212.  
  213. // permissions and groups:
  214. // Each entry in `grouplist' is a seperate group. Some of the members are "special"
  215. // while the rest is just a normal permission.
  216. // The order of the groups determines their ranking.
  217. // The special members are as follows:
  218. // - symbol: Specifies the symbol of the group (as shown in front of the username)
  219. // - id: Specifies an id for the group.
  220. // - name: Specifies the human-readable name for the group.
  221. // - root: If this is true, the group can do anything.
  222. // - inherit: The group uses the group specified's permissions if it cannot
  223. // find the permission in the current group. Never make the graph
  224. // produced using this member have any cycles, or the server won't run.
  225. // - jurisdiction: The default jurisdiction for targeted permissions where one isn't
  226. // explictly specified. "Targeted permissions" are permissions
  227. // that might affect another user, such as `ban' or `promote'.
  228. // 's' is a special group where it means the user itself only
  229. // and 'u' is another special group where it means all groups
  230. // lower in rank than the current group.
  231. // - roomonly: forces the group to be a per-room moderation rank only.
  232. // - globalonly: forces the group to be a global rank only.
  233. // All the possible permissions are as follows:
  234. // - console: Developer console (>>).
  235. // - lockdown: /lockdown and /endlockdown commands.
  236. // - hotpatch: /hotpatch, /crashfixed and /savelearnsets commands.
  237. // - ignorelimits: Ignore limits such as chat message length.
  238. // - promote: Promoting and demoting. Will only work if the target user's current
  239. // group and target group are both in jurisdiction.
  240. // - room<rank>: /roompromote to <rank> (eg. roomvoice)
  241. // - makeroom: Create/delete chatrooms, and set modjoin/roomdesc/privacy
  242. // - editroom: Set modjoin/privacy only for battles/groupchats
  243. // - ban: Banning and unbanning.
  244. // - mute: Muting and unmuting.
  245. // - lock: locking (ipmute) and unlocking.
  246. // - receivemutedpms: Receive PMs from muted users.
  247. // - forcerename: /fr command.
  248. // - ip: IP checking.
  249. // - alts: Alt checking.
  250. // - modlog: view the moderator logs.
  251. // - broadcast: Broadcast informational commands.
  252. // - declare: /declare command.
  253. // - announce: /announce command.
  254. // - modchat: Set modchat.
  255. // - potd: Set PotD.
  256. // - forcewin: /forcewin command.
  257. // - battlemessage: /a command.
  258. // - tournaments: creating tournaments (/tour new, settype etc.)
  259. // - tournamentsmoderation: /tour dq, autodq, end etc.
  260. // - tournamentsmanagement: enable/disable tournaments.
  261. // - minigame: make minigames (hangman, polls, etc.).
  262. // - game: make games.
  263. // - gamemanagement: enable/disable games and minigames.
  264. exports.grouplist = [
  265. {
  266. symbol: '~',
  267. id: "admin",
  268. name: "Administrator",
  269. root: true,
  270. globalonly: true,
  271. },
  272. {
  273. symbol: '&',
  274. id: "leader",
  275. name: "Leader",
  276. inherit: '@',
  277. jurisdiction: '@u',
  278. promote: 'u',
  279. roomowner: true,
  280. roombot: true,
  281. roommod: true,
  282. roomdriver: true,
  283. forcewin: true,
  284. declare: true,
  285. modchatall: true,
  286. rangeban: true,
  287. makeroom: true,
  288. editroom: true,
  289. potd: true,
  290. disableladder: true,
  291. globalonly: true,
  292. tournamentsmanagement: true,
  293. gamemanagement: true,
  294. },
  295. {
  296. symbol: '#',
  297. id: "owner",
  298. name: "Room Owner",
  299. inherit: '@',
  300. jurisdiction: 'u',
  301. roombot: true,
  302. roommod: true,
  303. roomdriver: true,
  304. editroom: true,
  305. declare: true,
  306. modchatall: true,
  307. roomonly: true,
  308. tournamentsmanagement: true,
  309. gamemanagement: true,
  310. },
  311. {
  312. symbol: '\u2606',
  313. id: "player",
  314. name: "Player",
  315. inherit: '+',
  316. roomvoice: true,
  317. modchat: true,
  318. roomonly: true,
  319. editroom: true,
  320. joinbattle: true,
  321. nooverride: true,
  322. },
  323. {
  324. symbol: '*',
  325. id: "bot",
  326. name: "Bot",
  327. inherit: '@',
  328. jurisdiction: 'u',
  329. declare: true,
  330. addhtml: true,
  331. },
  332. {
  333. symbol: '@',
  334. id: "mod",
  335. name: "Moderator",
  336. inherit: '%',
  337. jurisdiction: 'u',
  338. ban: true,
  339. modchat: true,
  340. roomvoice: true,
  341. forcerename: true,
  342. ip: true,
  343. alts: '@u',
  344. tournaments: true,
  345. game: true,
  346. },
  347. {
  348. symbol: '%',
  349. id: "driver",
  350. name: "Driver",
  351. inherit: '+',
  352. jurisdiction: 'u',
  353. announce: true,
  354. warn: '\u2606u',
  355. kick: true,
  356. mute: '\u2606u',
  357. lock: true,
  358. forcerename: true,
  359. timer: true,
  360. modlog: true,
  361. alts: '%u',
  362. bypassblocks: 'u%@&~',
  363. receiveauthmessages: true,
  364. tournamentsmoderation: true,
  365. jeopardy: true,
  366. joinbattle: true,
  367. minigame: true,
  368. },
  369. {
  370. symbol: '+',
  371. id: "voice",
  372. name: "Voice",
  373. inherit: ' ',
  374. alts: 's',
  375. broadcast: true,
  376. },
  377. {
  378. symbol: '※',
  379. id: "bot commander",
  380. name: "bot commander",
  381. root: true,
  382. globalonly: true,
  383. },
  384. {
  385. symbol: ' ',
  386. ip: 's',
  387. },
  388. ];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement