|
Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo. Caso seja registrado, efetue login. Esqueceu sua senha? Clique aqui Recomendamos o uso do Mozilla Firefox para uma melhor visualização. |
|
| Início | Postados Hoje | Marcar Fóruns Como Lidos | Álbums | Banidos | SE Team | Medalhas |
|
|||||||
| Registrar | Loteria VIP | Staff SE | Regras do fórum | Membros | Arcade | Pesquisar | Postados Hoje | Marcar Fóruns Como Lidos | Experience |
|
|
|
||||||||||||||||||||||||||||||||||||||||
|
|
|
|
LinkBack | Ferramentas do Tópico | Modos de Exibição |
|
|
#1 (permalink) |
|
É NoiZ x)
![]() Registrado em: Aug 2009
Posts: 540
Agradeceu: 194
Agradecido 672 Vezes em 205 Posts
Nome Real: Anthony Nichols
|
O que nós precisamos: Eclipse Classic 3.4.2 (152MB) - [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] Aplicando os patches: • Em primeiro lugar, precisamos saber o que é um Patch. Um patch é arquivo de texto simples que contém dados sobre as diferenças entre duas versões do mesmo arquivo. • Como aplicar o patch para o nosso código fonte? - Abra seu Eclipse - Vá para o marcador Project Explorer - Se você não veja o mesmo , vá em: Window -> Show View -> Project Explorer - Clique com botão direito em sua origem, clique em Equipe e depois aplly Patch - Assim como nesta tela: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] - Em seguida, coloquea localização do patch e pressione Concluir • Mas em algum momento nosso patch pode não corresponder à sua versão actual fonte. Então o que devemos fazer? Devemos adicioná-lo manualmente. • Como ler as alterações do patch? É simples, aqui está o código de exemplo: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Index: C:/workspace/L2_GameServer/java/net/sf/l2j/Config.java =================================================================== --- C:/workspace/L2_GameServer/java/net/sf/l2j/Config.java (revision 3148) +++ C:/workspace/L2_GameServer/java/net/sf/l2j/Config.java (working copy) @@ -507,8 +507,21 @@ - public static boolean CUSTOM_TELEPORT_TABLE; - public static boolean CUSTOM_DROPLIST_TABLE; - public static boolean CUSTOM_MERCHANT_TABLES; + public static boolean CHARTITLESTART; + public static String CHARTITLE; Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Index: C:/workspace/L2_GameServer/java/net/sf/l2j/Config.java - Esta é a informação sobre qual arquivo foi modificado. Neste caso Config.java Assim, devemos abrir este arquivo. Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
(revision 3148) - Revisão para que o patch foi criado Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
@@ -507,8 +507,21 @@ Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
- public static boolean CUSTOM_TELEPORT_TABLE; - public static boolean CUSTOM_DROPLIST_TABLE; - public static boolean CUSTOM_MERCHANT_TABLES; Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
+ public static boolean CHARTITLESTART; + public static String CHARTITLE; - Mais significa que devemos adicionar estas linhas. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Principais Configurações • Antes de tudo, antes de adicionar novas Propriedades do arquivo devemos saber como adicionar novas opções de configuração já existente. Arquivos de propriedades. • Por exemplo, vamos criar uma nova opção de configuração permitirá (ou não) ir automaticamente para o level 75 todos os novos characters - Em primeiro lugar, você deve abrir Config.java , arquivo situa-se em: (Java \ net \ sf \ l2j) pasta. - Olhe onde a Class Config começa, você deve olhar que: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public final class Config
{
protected static final Logger _log = Logger.getLogger(Config.class.getName());
...etc
- Nós o chamamos: ALLOW_CREATE_LVL; - Então você deve adicionar essa linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public static boolean ALLOW_CREATE_LVL; Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public final class Config
{
// Custom Starting Level
public static boolean ALLOW_CREATE_LVL;
protected static final Logger _log = Logger.getLogger(Config.class.getName());
...etc
- Agora vamos acrescentar esta configuração, por exemplo, em Other.properties assim Você deve encontrar isso: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
// other
try
{
Properties otherSettings = new Properties();
InputStream is = new FileInputStream(new File(OTHER_CONFIG_FILE));
otherSettings.load(is);
is.close();
DEEPBLUE_DROP_RULES=Boolean.parseBoolean(otherSettings.getProperty("UseDeepBlueDropRules","True"));
...etc
- Aqui podemos acrescentar coisas que pertencem à configuração (neste caso Other.properties) - Agora você deve adicionar essa linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
ALLOW_CREATE_LVL = Boolean.parseBoolean(otherSettings.getProperty("CostumStartLvl", "False"));
- Deve ficar assim: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
// other
try
{
Properties otherSettings = new Properties();
InputStream is = new FileInputStream(new File(OTHER_CONFIG_FILE));
otherSettings.load(is);
is.close();
ALLOW_CREATE_LVL = Boolean.parseBoolean(otherSettings.getProperty("CostumStartLvl", "False"));
DEEPBLUE_DROP_RULES = Boolean.parseBoolean(otherSettings.getProperty("UseDeepBlueDropRules", "True"));
... etc
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
("CostumStartLvl", "False"));
CostumStartLvl = False - Este é um exemplo. Você pode colocar como quiser. (Neste caso, False é o padrão) - Agora você deve abrir CharacterCreate.java arquivo e adicionar algumas linhas de código: - Encontre estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
// cSdddddddddddd private String _name; private int _race; private byte _sex; private int _classId; private int _int; private int _str; private int _con; private int _men; private int _dex; private int _wit; private byte _hairStyle; private byte _hairColor; private byte _face; - E adicionar uma nova entrada sobre a experiência Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
private long _exp; - Agora temos que definir _exp; (neste caso, quantidade de experiência para o nível 75) - Encontre estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
@Override
protected void readImpl()
{
_name = readS();
_race = readD();
_sex = (byte)readD();
_classId = readD();
_int = readD();
_str = readD();
_con = readD();
_men = readD();
_dex = readD();
_wit = readD();
_hairStyle = (byte)readD();
_hairColor = (byte)readD();
_face = (byte)readD();
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
_exp = 804219972; } - Ok agora encontrar estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
newChar.setXYZInvisible(template.spawnX, template.spawnY, template.spawnZ); Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
if(Config.ALLOW_CREATE_LVL)
{
newChar.removeExpAndSp(newChar.getExp(), 0);
newChar.addExpAndSp(_exp, 0);
}
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
f(Config.ALLOW_CREATE_LVL) - Significa que irá se checar se a config vai permitir a criação de nível (deve ser apenas executado pelo código) - Então, se a config permitir (TRUE) ele vai adicionar instant level 75 para cada novo personagem. É simples, certo? ---------------------------------------------------------------------------------------------------------------------------- Novo arquivo de configuração: Ok, Você deve saber como adicionar a nova opção de configuração , propriedades de arquivos etc Então agora eu vou mostrar como criar novas propriedades do arquivo. Por exemplo: TryZ.properties - Ok, em primeiro lugar, vamos criar novas propriedades chamado TryZ.java (este é o exemplo) em java / configfolder. - Agora abra o arquivo Config.java. Ok, em primeiro lugar vamos registrar nossa nova config, encontre estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
//-------------------------------------------------- // L2J Property File Definitions //-------------------------------------------------- public static final String CHARACTER_CONFIG_FILE = "./config/Character.properties"; public static final String EXTENSIONS_CONFIG_FILE = "./config/extensions.properties"; public static final String FEATURE_CONFIG_FILE = "./config/Feature.properties"; public static final String FORTSIEGE_CONFIGURATION_FILE = "./config/fortsiege.properties"; public static final String GENERAL_CONFIG_FILE = "./config/General.properties"; public static final String HEXID_FILE = "./config/hexid.txt"; public static final String ID_CONFIG_FILE = "./config/idfactory.properties"; public static final String SERVER_VERSION_FILE = "./config/l2j-version.properties"; public static final String DATAPACK_VERSION_FILE = "./config/l2jdp-version.properties"; public static final String L2JMOD_CONFIG_FILE = "./config/l2jmods.properties"; public static final String LOGIN_CONFIGURATION_FILE = "./config/loginserver.properties"; public static final String NPC_CONFIG_FILE = "./config/NPC.properties"; public static final String PVP_CONFIG_FILE = "./config/pvp.properties"; public static final String RATES_CONFIG_FILE = "./config/rates.properties"; public static final String CONFIGURATION_FILE = "./config/server.properties"; public static final String SIEGE_CONFIGURATION_FILE = "./config/siege.properties"; public static final String TELNET_FILE = "./config/telnet.properties"; public static final String FLOOD_PROTECTOR_FILE = "./config/floodprotector.properties"; public static final String MMO_CONFIG_FILE = "./config/mmo.properties"; Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public static final String TryZ_CONFIG_FILE = "./config/TryZ.properties"; - Ok, nosso arquivo de configuração já está registrado agora. Agora devemos acrescentar algumas coisas na parte que inicializa todas as variáveis globais para a configuração. - Encontre estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
}
catch (Exception e)
{
e.printStackTrace();
throw new Error("Failed to Load "+L2JMOD_CONFIG_FILE+" File.");
}
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
// Load PvP Properties file (if exists)
try
{
Properties TryZSettings = new Properties();
is = new FileInputStream(new File(TryZ_CONFIG_FILE));
TryZSettings.load(is);
/** Here You can put Your configs (look at "Your Own Config") This is sample:
ALLOW_CREATE_LVL = Boolean.parseBoolean(TryZSettings.getProperty("CostumStartLvl", "False"));
*/
}
catch (Exception e)
{
e.printStackTrace();
throw new Error("Failed to Load " + TryZ_CONFIGURATION_FILE + " File.");
}
--------------------------------------------------------------------------------------------------------------------- Inovando os enchants: Geralmente, um enchant bem sucedido nos dá +1 nos itens. Como mudar isso? é otimo para servidores de PVP que tem um enchant max ALTO. - Abra esta pasta: \ Java \ net sf \ \ l2j \ gameserver \ clientpackets - Agora, localize o arquivo: RequestEnchantItem.java - Encontre estas linhas: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
else
{
sm = new SystemMessage(SystemMessageId.S1_S2_SUCCESSFULLY_ENCHANTED);
sm.addNumber(item.getEnchantLevel());
sm.addItemName(item.getItemId());
activeChar.sendPacket(sm);
}
item.setEnchantLevel(item.getEnchantLevel()+1);
item.updateDatabase();
}
}
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
item.setEnchantLevel(item.getEnchantLevel()+1); - Salve este arquivo e é isso! Agora compile seu servidor. E Pronto. --------------------------------------------------------------------------------------------------------------------- Novos Comandos: • Primeiro você tem que saber alguma coisa sobre comandos em L2J: Mas você tem que saber os seus contras (Você tem que editar osystem) Assim a melhor maneira é criar um comando como. Comando • Você pode criar esses comandos, as básicas são: - Voicedcommandhandlers (Comandos para todos) - Admincommandhandlers (Comandos para Admins / Gm 's) • Se você quer criar novo comando (por exemplo voicedcommand, Você tem que criar novos arquivos java chamado como seu comando. Por exemplo, se o comando for: Online, o seu novo arquivo java deve ser chamado online.java) • Então você tem que registrar o seu novo comando. Mas lembre-se que nas versões mais recentes dos emuladores L2J foi transferido para DataPack, então você tem que adicioná-los em data / scripts / handlers / e registrá-los em arquivo MasterHandlers . Mas se você estiver usando por exemplo client Interlude, Você tem que adicioná-los no core (e, em seguida, compilação) e também registrá-los no core. --------------------------------------------------------------------------------------------------------------------- Códigos de documentação • Ok, acho que você tem que saber algumas coisas sobre o código de documentação • E agora pouco uma explicação sobre os comentários (distingue dois tipos de comentários) - Em primeiro lugar, estendendo-se para uma linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
// Custom Starting Level - Em segundo lugar, estendendo-se sobre uma linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/** Custom Starting Level */ • Outra coisa ESSENCIAL: - Você tem que saber sobre uma ferramenta útil chamado javadoc. Esta ferramenta ler os comentários do código, resultado do programa é um arquivo no formato HTML - Também você pode colocar em seu arquivo html java (para javadoc) Seu html para javadoc deve ser contido assim: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/** * <ol> * <li>Something * <li>Again * <li>Once Again * </ol> */ @ version - Informações sobre a versão @ autor - informações sobre o autor @ param - parâmetro desctription • Provavelmente você já viu quando alguém usa algo parecido com isso no início do código: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/** * * @author TryZ * */ @Créditos: Matim [Tutorial] Tryz [Tradução e post] obs: Nao vi nenhum tutorial em relação a isso aqui no forum , caso ja tenha , perdão . Por favor agradece ai se o tutorial serviu de alguma coisa pra vocês :D |
|
|
| Os Seguintes 27 Usuários disseram Obrigado(a) para AnthonyNichols~ por gostarem deste post : |
|
| Links Patrocinados |
| Ferramentas do Tópico | |
| Modos de Exibição | |
|
|