Index: C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/SelectorThread.java =================================================================== --- C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/SelectorThread.java (revision 1998) +++ C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/SelectorThread.java (working copy) @@ -437,7 +437,14 @@ return; } catch (IOException e) { - _log.info("Error on network read, player disconnected? "+e.toString()); + try + { + _log.info("Error on network read, player "+con.getClient().getActiveChar().getName()+" disconnected?"); + } + catch(NullPointerException npe) + { + _log.info("Error on network read, player disconnected? (nullpointer, couldn't get player name)"); + } if(con != null) closeClient(con); } catch (Throwable t) { @@ -636,15 +643,6 @@ if(player != null) { player.setConnected(false); - if(!Forced) - { - //check if player is fighthing - if(GameTimeController.getGameTicks() - player.getAttackEndTime() < 15 * GameTimeController.TICKS_PER_SECOND || player.isAttacked()) - { - c.onlyClose(); - return; - } - } } try { c.close(); } catch (Exception dummy) {} } @@ -658,17 +656,11 @@ releaseBuffer(c.writeBuffer); c.writeBuffer = null; } - //check if player is fighting + L2PcInstance player = c.getClient().getActiveChar(); if(player != null) { player.setConnected(false); - if(GameTimeController.getGameTicks() - player.getAttackEndTime() < 15 * GameTimeController.TICKS_PER_SECOND || player.isAttacked()) - { - c.onlyClose(); - ClientScheduler.getInstance().scheduleLow(new DisconnectionTask(c), 15000); - return; - } } try { c.close(); } catch (Exception dummy) {} }