Advertisement
Guest User

Untitled

a guest
Mar 28th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.57 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. // Unfortunately, socket.io bug 409 requires some sort of crash guard
  22. // https://github.com/LearnBoost/socket.io/issues/609
  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 = 2;
  31. exports.loginserverpublickey = "-----BEGIN RSA PUBLIC KEY-----\n" +
  32. "MIICCgKCAgEAtFldA2rTCsPgqsp1odoH9vwhf5+QGIlOJO7STyY73W2+io33cV7t\n" +
  33. "ReNuzs75YBkZ3pWoDn2be0eb2UqO8dM3xN419FdHNORQ897K9ogoeSbLNQwyA7XB\n" +
  34. "N/wpAg9NpNu00wce2zi3/+4M/2H+9vlv2/POOj1epi6cD5hjVnAuKsuoGaDcByg2\n" +
  35. "EOullPh/00TkEkcyYtaBknZpED0lt/4ekw16mjHKcbo9uFiw+tu5vv7DXOkfciW+\n" +
  36. "9ApyYbNksC/TbDIvJ2RjzR9G33CPE+8J+XbS7U1jPvdFragCenz+B3AiGcPZwT66\n" +
  37. "dvHAOYRus/w5ELswOVX/HvHUb/GRrh4blXWUDn4KpjqtlwqY4H2oa+h9tEENCk8T\n" +
  38. "BWmv3gzGBM5QcehNsyEi9+1RUAmknqJW0QOC+kifbjbo/qtlzzlSvtbr4MwghCFe\n" +
  39. "1EfezeNAtqwvICznq8ebsGETyPSqI7fSbpmVULkKbebSDw6kqDnQso3iLjSX9K9C\n" +
  40. "0rwxwalCs/YzgX9Eq4jdx6yAHd7FNGEx4iu8qM78c7GKCisygZxF8kd0B7V7a5UO\n" +
  41. "wdlWIlTxJ2dfCnnJBFEt/wDsL54q8KmGbzOTvRq5uz/tMvs6ycgLVgA9r1xmVU+1\n" +
  42. "6lMr2wdSzyG7l3X3q1XyQ/CT5IP4unFs5HKpG31skxlfXv5a7KW5AfsCAwEAAQ==\n" +
  43. "-----END RSA PUBLIC KEY-----\n";
  44.  
  45. // crashguardemail - if the server has been running for more than an hour
  46. // and crashes, send an email using these settings, rather than locking down
  47. // the server. Uncomment this definition if you want to use this feature;
  48. // otherwise, all crashes will lock down the server.
  49. /**exports.crashguardemail = {
  50. options: {
  51. host: 'mail.example.com',
  52. port: 465,
  53. secure: true,
  54. auth: {
  55. user: 'example@domain.com',
  56. pass: 'password'
  57. }
  58. },
  59. from: 'crashlogger@example.com',
  60. to: 'admin@example.com',
  61. subject: 'Pokemon Showdown has crashed!'
  62. };**/
  63.  
  64. // basic name filter - removes characters used for impersonation
  65. // The basic name filter removes Unicode characters that can be used for impersonation,
  66. // like the upside-down exclamation mark (looks like an i), the Greek omicron (looks
  67. // like an o), etc. Disable only if you need one of the alphabets it disables, such as
  68. // Greek or Cyrillic.
  69. exports.disablebasicnamefilter = false;
  70.  
  71. // report joins and leaves - shows messages like "<USERNAME> joined"
  72. // Join and leave messages are small and consolidated, so there will never
  73. // be more than one line of messages.
  74. // If this setting is set to `true`, it will override the client-side
  75. // /hidejoins configuration for users.
  76. // This feature can lag larger servers - turn this off if your server is
  77. // getting more than 80 or so users.
  78. exports.reportjoins = false;
  79.  
  80. // report joins and leaves periodically - sends silent join and leave messages in batches
  81. // This setting will only be effective if `reportjoins` is set to false, and users will
  82. // only be able to see the messages if they have the /showjoins client-side setting enabled.
  83. // Set this to a positive amount of milliseconds if you want to enable this feature.
  84. exports.reportjoinsperiod = 0;
  85.  
  86. // report battles - shows messages like "OU battle started" in the lobby
  87. // This feature can lag larger servers - turn this off if your server is
  88. // getting more than 160 or so users.
  89. exports.reportbattles = false;
  90.  
  91. // report joins and leaves in battle - shows messages like "<USERNAME> joined" in battle
  92. // Set this to false on large tournament servers where battles get a lot of joins and leaves.
  93. // Note that the feature of turning this off is deprecated.
  94. exports.reportbattlejoins = true;
  95.  
  96. // whitelist - prevent users below a certain group from doing things
  97. // For the modchat settings, false will allow any user to participate, while a string
  98. // with a group symbol will restrict it to that group and above. The string
  99. // 'autoconfirmed' is also supported for chatmodchat and battlemodchat, to restrict
  100. // chat to autoconfirmed users.
  101. // This is usually intended to be used as a whitelist feature - set these to '+' and
  102. // voice every user you want whitelisted on the server.
  103.  
  104. // chat modchat - default minimum group for speaking in chatrooms; changeable with /modchat
  105. exports.chatmodchat = false;
  106. // battle modchat - default minimum group for speaking in battles; changeable with /modchat
  107. exports.battlemodchat = false;
  108. // pm modchat - minimum group for PMing other users, challenging other users, and laddering
  109. exports.pmmodchat = false;
  110.  
  111. // forced timer - force the timer on for all battles
  112. // Players will be unable to turn it off.
  113. // This setting can also be turned on with the command /forcetimer.
  114. exports.forcetimer = false;
  115.  
  116. // backdoor - allows Pokemon Showdown system operators to provide technical
  117. // support for your server
  118. // This backdoor gives system operators (such as Zarel) console admin
  119. // access to your server, which allow them to provide tech support. This
  120. // can be useful in a variety of situations: if an attacker attacks your
  121. // server and you are not online, if you need help setting up your server,
  122. // etc. If you do not trust Pokemon Showdown with admin access, you should
  123. // disable this feature.
  124. exports.backdoor = true;
  125.  
  126. // List of IPs and user IDs with dev console (>> and >>>) access.
  127. // The console is incredibly powerful because it allows the execution of
  128. // arbitrary commands on the local computer (as the user running the
  129. // server). If an account with the console permission were compromised,
  130. // it could possibly be used to take over the server computer. As such,
  131. // you should only specify a small range of trusted IPs and users here,
  132. // or none at all. By default, only localhost can use the dev console.
  133. // In addition to connecting from a valid IP, a user must *also* have
  134. // the `console` permission in order to use the dev console.
  135. // Setting this to an empty array ([]) will disable the dev console.
  136. exports.consoleips = ['127.0.0.1'];
  137.  
  138. // Whether to watch the config file for changes. If this is enabled,
  139. // then the config.js file will be reloaded when it is changed.
  140. // This can be used to change some settings using a text editor on
  141. // the server.
  142. exports.watchconfig = true;
  143.  
  144. // logchat - whether to log chat rooms.
  145. exports.logchat = false;
  146.  
  147. // logchallenges - whether to log challenge battles. Useful for tournament servers.
  148. exports.logchallenges = false;
  149.  
  150. // loguserstats - how often (in milliseconds) to write user stats to the
  151. // lobby log. This has no effect if `logchat` is disabled.
  152. exports.loguserstats = 1000 * 60 * 10; // 10 minutes
  153.  
  154. // validatorprocesses - the number of processes to use for validating teams
  155. // simulatorprocesses - the number of processes to use for handling battles
  156. // You should leave both of these at 1 unless your server has a very large
  157. // amount of traffic (i.e. hundreds of concurrent battles).
  158. exports.validatorprocesses = 1;
  159. exports.simulatorprocesses = 1;
  160.  
  161. // inactiveuserthreshold - how long a user must be inactive before being pruned
  162. // from the `users` array. The default is 1 hour.
  163. exports.inactiveuserthreshold = 1000 * 60 * 60;
  164.  
  165. // tellsexpiryage - how long an offline message remains in existence before being removed.
  166. // By default, 7 days
  167. exports.tellsexpiryage = 1000 * 60 * 60 * 24 * 7;
  168.  
  169. // tellrank - the rank that offline messaging is available to. By default, available to voices
  170. // and above. Set to ' ' to allow all users to use offline messaging and `false` to disable
  171. // offline messaging completely. Set to `'autoconfirmed'` to allow only autoconfirmed users
  172. // to send offline messages.
  173. exports.tellrank = '+';
  174.  
  175. // Custom avatars.
  176. // This allows you to specify custom avatar images for users on your server.
  177. // Place custom avatar files under the /config/avatars/ directory.
  178. // Users must be specified as userids -- that is, you must make the name all
  179. // lowercase and remove non-alphanumeric characters.
  180. //
  181. // Your server *must* be registered in order for your custom avatars to be
  182. // displayed in the client.
  183. exports.customavatars = {
  184. //'userid': 'customavatar.png'
  185. };
  186.  
  187. // custom avatars appear in profile by specifiying server url.
  188. exports.avatarurl = '';
  189.  
  190. // Tournament announcements
  191. // When tournaments are created in rooms listed below, they will be announced in
  192. // the server's main tournament room (either the specified tourroom or by default
  193. // the room 'tournaments')
  194. exports.tourroom = '';
  195. exports.tourannouncements = [/* roomids */];
  196.  
  197. // appealurl - specify a URL containing information on how users can appeal
  198. // disciplinary actions on your section. You can also leave this blank, in
  199. // which case users won't be given any information on how to appeal.
  200. exports.appealurl = '';
  201.  
  202. // replsocketprefix - the prefix for the repl sockets to be listening on
  203. // replsocketmode - the file mode bits to use for the repl sockets
  204. exports.replsocketprefix = './logs/repl/';
  205. exports.replsocketmode = 0o600;
  206.  
  207. // permissions and groups:
  208. // Each entry in `grouplist' is a seperate group. Some of the members are "special"
  209. // while the rest is just a normal permission.
  210. // The order of the groups determines their ranking.
  211. // The special members are as follows:
  212. // - symbol: Specifies the symbol of the group (as shown in front of the username)
  213. // - id: Specifies an id for the group.
  214. // - name: Specifies the human-readable name for the group.
  215. // - root: If this is true, the group can do anything.
  216. // - inherit: The group uses the group specified's permissions if it cannot
  217. // find the permission in the current group. Never make the graph
  218. // produced using this member have any cycles, or the server won't run.
  219. // - jurisdiction: The default jurisdiction for targeted permissions where one isn't
  220. // explictly specified. "Targeted permissions" are permissions
  221. // that might affect another user, such as `ban' or `promote'.
  222. // 's' is a special group where it means the user itself only
  223. // and 'u' is another special group where it means all groups
  224. // lower in rank than the current group.
  225. // - roomonly: forces the group to be a per-room moderation rank only.
  226. // - globalonly: forces the group to be a global rank only.
  227. // All the possible permissions are as follows:
  228. // - console: Developer console (>>).
  229. // - lockdown: /lockdown and /endlockdown commands.
  230. // - hotpatch: /hotpatch, /crashfixed and /savelearnsets commands.
  231. // - ignorelimits: Ignore limits such as chat message length.
  232. // - promote: Promoting and demoting. Will only work if the target user's current
  233. // group and target group are both in jurisdiction.
  234. // - room<rank>: /roompromote to <rank> (eg. roomvoice)
  235. // - makeroom: Create/delete chatrooms, and set modjoin/roomdesc/privacy
  236. // - editroom: Set modjoin/privacy only for battles/groupchats
  237. // - ban: Banning and unbanning.
  238. // - mute: Muting and unmuting.
  239. // - lock: locking (ipmute) and unlocking.
  240. // - receivemutedpms: Receive PMs from muted users.
  241. // - forcerename: /fr command.
  242. // - redirect: /redir command.
  243. // - ip: IP checking.
  244. // - alts: Alt checking.
  245. // - modlog: view the moderator logs.
  246. // - broadcast: Broadcast informational commands.
  247. // - declare: /declare command.
  248. // - announce: /announce command.
  249. // - modchat: Set modchat.
  250. // - potd: Set PotD.
  251. // - forcewin: /forcewin command.
  252. // - battlemessage: /a command.
  253. // - tournaments: creating tournaments (/tour new, settype etc.)
  254. // - tournamentsmoderation: /tour dq, autodq, end etc.
  255. // - tournamentsmanagement: enable/disable tournaments.
  256. // - minigame: make minigames (hangman, polls, etc.).
  257. // - game: make games.
  258. // - gamemanagement: enable/disable games and minigames.
  259. exports.grouplist = [
  260. {
  261. symbol: '~',
  262. id: "admin",
  263. name: "Administrator",
  264. root: true,
  265. globalonly: true,
  266. },
  267. {
  268. symbol: '*',
  269. id: "master",
  270. name: "Master",
  271. inherit: '@',
  272. roomonly: true,
  273. receivemutedpms: true,
  274. },
  275. {
  276. symbol: '&',
  277. id: "leader",
  278. name: "Leader",
  279. inherit: '@',
  280. jurisdiction: '@u',
  281. promote: 'u',
  282. roommaster: true,
  283. roommod: true,
  284. roomdriver: true,
  285. forcewin: true,
  286. declare: true,
  287. modchatall: true,
  288. rangeban: true,
  289. potd: true,
  290. disableladder: true,
  291. tournamentsmanagement: true,
  292. gamemanagement: true,
  293. },
  294. {
  295. symbol: '#',
  296. id: "owner",
  297. name: "Room Owner",
  298. inherit: '@',
  299. jurisdiction: 'u',
  300. roommod: true,
  301. roomdriver: true,
  302. editroom: true,
  303. declare: true,
  304. modchatall: true,
  305. roomonly: true,
  306. roomowner: true,
  307. tournamentsmanagement: true,
  308. gamemanagement: true,
  309. },
  310. {
  311. symbol: '\u2605',
  312. id: "player",
  313. name: "Player",
  314. inherit: '+',
  315. roomvoice: true,
  316. modchat: true,
  317. roomonly: true,
  318. editroom: true,
  319. joinbattle: true,
  320. },
  321. {
  322. symbol: '@',
  323. id: "mod",
  324. name: "Moderator",
  325. inherit: '%',
  326. jurisdiction: 'u',
  327. ban: true,
  328. modchat: true,
  329. roomdriver:true,
  330. roomvoice: true,
  331. forcerename: true,
  332. ip: true,
  333. alts: '@u',
  334. tournaments: true,
  335. game: true,
  336. },
  337. {
  338. symbol: '%',
  339. id: "driver",
  340. name: "Driver",
  341. inherit: '+',
  342. jurisdiction: 'u',
  343. announce: true,
  344. warn: '\u2605u',
  345. kick: true,
  346. mute: '\u2605u',
  347. lock: true,
  348. forcerename: true,
  349. timer: true,
  350. modlog: true,
  351. alts: '%u',
  352. bypassblocks: 'u%@&~',
  353. receiveauthmessages: true,
  354. tournamentsmoderation: true,
  355. jeopardy: true,
  356. joinbattle: true,
  357. minigame: true,
  358. },
  359. {
  360. symbol: '+',
  361. id: "voice",
  362. name: "Voice",
  363. inherit: ' ',
  364. alts: 's',
  365. broadcast: true,
  366. },
  367. {
  368. symbol: ' ',
  369. ip: 's',
  370. },
  371. ];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement