Como todos sabem, para colocar auto-criação de contas no L2 é só ir no arquivo: "loginserver/config/loginserver.properties", e alterar esta linha:

# Useable values: "True" - "False", use this option to choose whether accounts will be created
# automatically or not.
AutoCreateAccounts= True (Se estiver False é só mudar para True)
Além disso, geralmente quando fizemos o backup do server, ao criar a tabela "accounts", ela vem com estas linhas:

login , password , lastactive , accessLevel , lastServerId e lastIP


Logo, quando vc dumpar a tabela ficara assim:
/*
MySQL Data Transfer
Source Host: localhost
Source Database: l2jdb
Target Host: localhost
Target Database: l2jdb
Date: 13/1/2009 20:54:26
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for accounts
-- ----------------------------
DROP TABLE IF EXISTS `accounts`;
CREATE TABLE `accounts` (
`login` varchar(45) NOT NULL default '',
`password` varchar(45) default NULL,
`lastactive` decimal(20,0) default NULL,
`accessLevel` int(11) NOT NULL default '0',
`lastServerId` int(11) NOT NULL default '0',
`lastIP` varchar(20) default NULL,
PRIMARY KEY (`login`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `accounts` VALUES ('admin', 'vfoKzEAJOYGbmvwjv0YtZuV7BQA=', '1231725019875', '0', '1', '10.1.1.16');
Mas alguns sites (disponíveis para download), tem script de criação de conta por e-mail, e junto com o site vem uma sql que adiciona a linha "e-mail" na tabela "accounts", alterando a tabela, que ficará assim:

/*
MySQL Data Transfer
Source Host: localhost
Source Database: l2jdb
Target Host: localhost
Target Database: l2jdb
Date: 13/1/2009 21:43:53
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for accounts
-- ----------------------------
CREATE TABLE `accounts` (
`login` varchar(45) NOT NULL default '',
`password` varchar(45) default NULL,
`lastactive` decimal(20,0) default NULL,
`accessLevel` int(11) NOT NULL default '0',
`lastServerId` int(11) NOT NULL default '0',
`lastIP` varchar(20) default NULL,
`email` varchar(150) NOT NULL,
PRIMARY KEY (`login`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `accounts` VALUES ('admin', 'vfoKzEAJOYGbmvwjv0YtZuV7BQA=', '1231725019875', '0', '1', '10.1.1.16', 'AKI É O E-MAIL DA CONTA');
Essa tabela "email" nao irá deixar o player criar conta automática, mesmo se no arquivo "loginserver/config/loginserver.properties" estiver configurado certo.

Para arrumar faça o seguinte:

1 - Dumpe tabela account.
2 - Faça uma cópia dela (caso algo saia errado)
3 - Abra a tabela "accounts" que voce acabou de dumpar, e substitua esse código:

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for accounts
-- ----------------------------
CREATE TABLE `accounts` (
`login` varchar(45) NOT NULL default '',
`password` varchar(45) default NULL,
`lastactive` decimal(20,0) default NULL,
`accessLevel` int(11) NOT NULL default '0',
`lastServerId` int(11) NOT NULL default '0',
`lastIP` varchar(20) default NULL,
`email` varchar(150) NOT NULL,
PRIMARY KEY (`login`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- ----------------------------
-- Records
-- ----------------------------
Por este
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for accounts
-- ----------------------------
DROP TABLE IF EXISTS `accounts`;
CREATE TABLE `accounts` (
`login` varchar(45) NOT NULL default '',
`password` varchar(45) default NULL,
`lastactive` decimal(20,0) default NULL,
`accessLevel` int(11) NOT NULL default '0',
`lastServerId` int(11) NOT NULL default '0',
`lastIP` varchar(20) default NULL,
PRIMARY KEY (`login`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records
-- ----------------------------
Embaixo de :

-- ----------------------------
-- Records
-- ----------------------------

vc vai colocar as contas, mas agora vc ira deletar a ultima linha das querys das contas:

A tabela "accounts" com 'email' estava com as contas assim:

INSERT INTO `accounts` VALUES ('('admin', 'vfoKzEAJOYGbmvwjv0YtZuV7BQA=', '1231725019875', '0', '1', '10.1.1.16', 'AKI ESTAVA O EMAIL');


VC VAI DELETAR A LINHA DO EMAIL, DEIXANDO ASSIM:

INSERT INTO `accounts` VALUES ('admin', 'vfoKzEAJOYGbmvwjv0YtZuV7BQA=', '1231725019875', '0', '1', '10.1.1.16');


Pronto

Se voce seguir os passos corretamente, no final vai dar certinho.