     serverId: config.get "plugin.Akashic.senka.serverId", 0
     serverSelectedVersion: 0
     downloadingFlag: true
+    downloadingFailFlag: false
 
   updateSenkaList: (showAmount, serverId, serverSelectedVersion) ->
+    if serverId is 0
+      return
     time = dateToString()
     senkalist = {}
     senkaList = glob.sync(path.join(APPDATA_PATH, 'akashic-records', "#{@props.memberId}", 'senkaList', "#{serverId}", "#{showAmount}", "#{time}"))
     if senkaList.length == 0
-      sync @props.memberId, serverId, serverSelectedVersion, isDownloading=(serverSelectedVersion) =>
-        if serverSelectedVersion is @state.serverSelectedVersion
-          @updateSenkaList @state.showAmount, @state.serverId, @state.serverSelectedVersion
+      sync @props.memberId, serverId, serverSelectedVersion, isDownloading=(serverSelectedVersion, isSuccess) =>
+        if isSuccess
+          if serverSelectedVersion is @state.serverSelectedVersion
+            @updateSenkaList @state.showAmount, @state.serverId, @state.serverSelectedVersion
+        else
+          @setState
+            downloadingFailFlag: true
       @setState
         downloadingFlag: true
     else

                                    serverId={@state.serverId}
                                    serverNames={serverNames}/>
          {
            if @state.downloadingFlag
              <Alert className="akashic-senka-alert">
                <h4>downloading...</h4>

               "宿毛湾泊地", "鹿屋基地", "岩川基地", "佐伯湾泊地", "柱岛泊地"]

sync = async (memberId, serverId, serverSelectedVersion, isDownloading) ->
  isSuccess = true
  time = dateToString()
  senkaList = {}
  #serverList 1-100/500/990
