<tetrinet-server host="[ALL]" port="31457">
  <name>JetriX TetriNET Server</name>

  <!-- Server default language (using an ISO-639 two-letter language code) -->
  <language>en</language>

  <!-- How many seconds of no activity before timeout occurs -->
  <timeout>1000</timeout>

  <!-- How many channels should be available on server -->
  <max-channels>8</max-channels>

  <!-- Maximum number or players on server -->
  <max-players>50</max-players>

  <!-- Maximum number of simultaneous connections allowed from the same IP -->
  <max-connections>3</max-connections>

  <!-- Typing /op <thispassword> will give player op status -->
  <op-password>jetrixpass</op-password>

  <!-- Access Log, where requests are logged to -->
  <access-log path="log/access%g.log"/>

  <!-- Error Log, where errors are logged to -->
  <error-log path="log/error%g.log"/>

  <!-- Message Of The Day -->
  <motd>
<b>
Welcome to <b>JetriX TetriNET Server</b>!
<u><blue>http://jetrix.sourceforge.net/</blue></u>
<b>
  </motd>

  <!-- Channel filters -->
  <filter-definitions>
    <alias name="flood" class="net.jetrix.filter.FloodFilter"/>
    <alias name="start" class="net.jetrix.filter.StartFilter"/>
    <alias name="amplifier" class="net.jetrix.filter.AmplifierFilter"/>
    <alias name="ping" class="net.jetrix.filter.PingFilter"/>
    <alias name="7tetris" class="net.jetrix.filter.TetrisFilter"/>
    <alias name="stats" class="net.jetrix.filter.StatsFilter"/>
  </filter-definitions>

  <!-- Global filters -->
  <default-filters>
    <filter name="flood">
      <param name="capacity" value="8"/>
      <param name="delay" value="5000"/>
    </filter>
    <filter name="start">
      <param name="delay" value="10000"/>
    </filter>
    <filter name="ping"/>
    <filter name="stats"/>
  </default-filters>

  <!-- Winlists -->
  <winlists>
    <winlist name="default" class="net.jetrix.winlist.SimpleWinlist"/>
  </winlists>

  <!-- Default game settings -->
  <default-settings>
    <!-- What level each player starts at -->
    <starting-level>1</starting-level>

    <!-- How many lines to make before player level increases -->
    <lines-per-level>2</lines-per-level>

    <!-- Number of levels to increase each time -->
    <level-increase>1</level-increase>

    <!-- Lines to make to get a special block -->
    <lines-per-special>2</lines-per-special>

    <!-- Number of special blocks added each time -->
    <special-added>1</special-added>

    <!-- Capacity of Special block inventory -->
    <special-capacity>18</special-capacity>

    <!-- Play by classic rules? -->
    <classic-rules>true</classic-rules>

    <!-- Average together all player's game level? -->
    <average-levels>true</average-levels>

    <block-occurancy>
      <leftl>14</leftl>
      <leftz>14</leftz>
      <square>15</square>
      <rightl>14</rightl>
      <rightz>14</rightz>
      <halfcross>14</halfcross>
      <line>15</line>
    </block-occurancy>

    <special-occurancy>
      <addline>32</addline>
      <clearline>18</clearline>
      <nukefield>1</nukefield>
      <randomclear>11</randomclear>
      <switchfield>3</switchfield>
      <clearspecial>14</clearspecial>
      <gravity>1</gravity>
      <quakefield>6</quakefield>
      <blockbomb>14</blockbomb>
    </special-occurancy>

  </default-settings>


  <channels>
    <channel name="tetrinet1">
      <description>2:1</description>
      <winlist name="default"/>
    </channel>

    <channel name="tetrinet2">
      <description>2:1</description>
      <winlist name="default"/>
    </channel>

    <channel name="tetrinet3">
      <description>2:1</description>
      <winlist name="default"/>
    </channel>

    <channel name="pure">
      <description>Pure</description>
      <winlist name="pure"/>
      <settings>
        <special-added>0</special-added>
      </settings>
    </channel>

    <channel name="pure2">
      <description>Pure</description>
      <winlist name="pure"/>
      <settings>
        <special-added>0</special-added>
      </settings>
    </channel>

    <channel name="duel1">
      <description>Duel 2:1</description>
      <max-players>2</max-players>
      <winlist name="duel"/>
    </channel>

    <channel name="duel2">
      <description>Duel 2:1</description>
      <max-players>2</max-players>
      <winlist name="duel"/>
    </channel>

    <channel name="pureduel">
      <description>Pure - No Specials</description>
      <max-players>2</max-players>
      <winlist name="default"/>
      <settings>
        <special-added>0</special-added>
      </settings>
    </channel>

    <channel name="sticks">
      <description>Sticks Only</description>
      <settings>
        <special-added>0</special-added>
        <block-occurancy>
          <line>100</line>
        </block-occurancy>
      </settings>
    </channel>

    <channel name="SnS">
      <description>Sticks <i>and</i> Squares</description>
      <settings>
        <special-added>0</special-added>
        <block-occurancy>
          <line>50</line>
          <square>50</square>
        </block-occurancy>
      </settings>
    </channel>

    <channel name="7Tetris">
      <description>7 tetris to win!</description>
      <settings>
        <special-added>0</special-added>
      </settings>
      <filters>
        <filter name="7tetris"/>
      </filters>
    </channel>

    <channel name="admins">
      <description>Administrators' Lair</description>
      <access-level>1</access-level>
    </channel>

  </channels>

  <!-- Server commands -->
  <commands>
    <command class="net.jetrix.commands.BroadcastCommand"/>
    <command class="net.jetrix.commands.ConfigCommand"/>
    <command class="net.jetrix.commands.EmoteCommand"/>
    <command class="net.jetrix.commands.GotoCommand"/>
    <command class="net.jetrix.commands.HelpCommand"/>
    <command class="net.jetrix.commands.IpCommand"/>
    <command class="net.jetrix.commands.JoinCommand"/>
    <command class="net.jetrix.commands.KickCommand"/>
    <command class="net.jetrix.commands.LanguageCommand"/>
    <command class="net.jetrix.commands.ListCommand"/>
    <command class="net.jetrix.commands.MotdCommand"/>
    <command class="net.jetrix.commands.MoveCommand"/>
    <command class="net.jetrix.commands.OperatorCommand"/>
    <command class="net.jetrix.commands.PauseCommand"/>
    <command class="net.jetrix.commands.PetitionCommand"/>
    <command class="net.jetrix.commands.PingCommand"/>
    <command class="net.jetrix.commands.RandomCommand"/>
    <command class="net.jetrix.commands.ReplyCommand"/>
    <command class="net.jetrix.commands.SpecListCommand"/>
    <command class="net.jetrix.commands.StartCommand"/>
    <command class="net.jetrix.commands.StopCommand"/>
    <command class="net.jetrix.commands.SummonCommand"/>
    <command class="net.jetrix.commands.TeamMessageCommand"/>
    <command class="net.jetrix.commands.TeleportCommand"/>
    <command class="net.jetrix.commands.TellCommand"/>
    <command class="net.jetrix.commands.TimeCommand"/>
    <command class="net.jetrix.commands.VersionCommand"/>
    <command class="net.jetrix.commands.WhoCommand"/>
  </commands>

  <!-- Client listeners -->
  <listeners>
    <listener class="net.jetrix.listeners.TetrinetListener"/>
    <listener class="net.jetrix.listeners.TSpecListener"/>
    <listener class="net.jetrix.listeners.IRCListener"/>
    <listener class="net.jetrix.listeners.HttpListener"/>
  </listeners>

  <ban>
    <!-- Cheating from host 1cust007.tnt2.billgates.da.uu.net -->
    <host>*.tnt*.billgates.da.uu.net</host>

    <!-- Flooding from 192.168.33.200. Ban all C class IP block -->
    <host>192.168.33.*</host>

    <!-- Ban all hostname contain the word foobar -->
    <host>*foobar*</host>

    <!-- Ban IP block from 192.168.10.0 to 192.168.19.255 -->
    <host>192.168.1?.*</host>

    <!-- Ban nickname -->
    <nick>billgates</nick>

    <!-- Ban team -->
    <team>Flying Cucumbers</team>
  </ban>

</tetrinet-server>