-
Posts
99 -
Credits
0 -
Joined
-
Last visited
Never -
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by SlyWhiteSheep
-
Looking For Coyote Faction System?
SlyWhiteSheep replied to SlyWhiteSheep's question in Request Server Development Help [L2J]
Bump -
Get all the ID's of the buffs you want to edit, and set the time of buffs in configs. If your pack doesn't have it try to import it from l2j.
-
from pvp players drop equpied items
SlyWhiteSheep replied to Laidev's question in Request Server Development Help [L2J]
use the control+h command to find the config in the source. For the karma drop. -
[Question] L2Jsaver
SlyWhiteSheep replied to raimonbrinks's question in Request Server Development Help [L2J]
Do you own it? -
[HELP]An npc gives u hero for 3GBS
SlyWhiteSheep replied to tolkien's question in Request Server Development Help [L2J]
What pack was the One from the link? And What pack do you want to make it for? The current one is set to sell hero status for 10gbs so just change the amount of gb's from 10 to 3 in the java or python file. -
Setting a Custom Animation on enterworld.java
SlyWhiteSheep replied to SlyWhiteSheep's question in Request Server Development Help [L2J]
Must have missed it :( sorry -
Setting a Custom Animation on enterworld.java
SlyWhiteSheep replied to SlyWhiteSheep's question in Request Server Development Help [L2J]
I mean like when you level up Id like to play that animation on login or an animation like that. -
I like all the custom stuff you added but how is the gameplay?
-
How many people ingame?
-
[QUESTION/HELP]Auto Say in Freya
SlyWhiteSheep replied to jossoo's question in Request Server Development Help [L2J]
Depends what server you are using but you can if you want to make a stationary npc say things you might have to make your own instance or add/look at l2npcinstance.java You could take the code from the l2walkerinstance.java and paste it into l2npcinstance.java and have it load the auto announce from the db at an interval you designate in the database. -
Class dagger can't use heavy armor
SlyWhiteSheep replied to conheonit's question in Request Server Development Help [L2J]
Look around the forum i know something like this was shared in the past. But it was only for java mod. Something about multipliers for stats by class by weapon equipped. -
[Help] Lag with 60 ppls
SlyWhiteSheep replied to l2phanton's question in Request Server Development Help [L2J]
What server pack are you using? -
Set Character Noblesse In Charactercreate.java
SlyWhiteSheep replied to SlyWhiteSheep's question in Request Server Development Help [L2J]
I solved this you can lock it. -
Is this server still live?
-
Source aCis - another CRAPPY interlude server
SlyWhiteSheep replied to Tryskell's topic in Server Shares & Files [L2J]
Is there even a protection for l2net? -
Ok well as the title says I am trying to set characters noblesse from the moment they are created. I don't want to just do a simple enterworld check so I am trying to set them noblesse from creation. Here is what I have coded so far: In charactercreate.java: //SWS FACTION MOD if (Config.FACTION_SYSTEM_NEW_CHAR_NOBLE) { newChar.setNoble(true); } So its just a simple config check and execute parameter. About as simple as code gets. So i went ingame to test if it worked and it set my character noblesse. I checked from the database there is a 1 in the noblesse column But i got this error at gameserver when i created the new character: storeSkill() couldn't store new skill. It's null type. Here is my whole charactercreate.java: /* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package net.sf.l2j.gameserver.network.clientpackets; import java.util.logging.Logger; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; import net.sf.l2j.Config; import net.sf.l2j.gameserver.datatables.CharNameTable; import net.sf.l2j.gameserver.datatables.CharTemplateTable; import net.sf.l2j.gameserver.datatables.SkillTable; import net.sf.l2j.gameserver.datatables.SkillTreeTable; import net.sf.l2j.gameserver.idfactory.IdFactory; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.L2ShortCut; import net.sf.l2j.gameserver.model.L2SkillLearn; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.L2GameClient; import net.sf.l2j.gameserver.network.serverpackets.CharCreateFail; import net.sf.l2j.gameserver.network.serverpackets.CharCreateOk; import net.sf.l2j.gameserver.network.serverpackets.CharSelectInfo; import net.sf.l2j.gameserver.templates.chars.L2PcTemplate; import net.sf.l2j.gameserver.templates.item.L2Item; import net.sf.l2j.gameserver.util.Util; public final class CharacterCreate extends L2GameClientPacket { private static final String _C__0B_CHARACTERCREATE = "[C] 0B CharacterCreate"; private static Logger _log = Logger.getLogger(CharacterCreate.class.getName()); // 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; @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(); } @Override protected void runImpl() { if ((_name.length() < 1) || (_name.length() > 16) || !Util.isAlphaNumeric(_name) || !isValidName(_name)) { if (Config.DEBUG) _log.fine("Character Creation Failure: name " + _name + " is invalid. Creation have failed."); sendPacket(new CharCreateFail(CharCreateFail.REASON_16_ENG_CHARS)); return; } if (_face > 2 || _face < 0) { _log.warning("Character Creation Failure: Character face " + _face + " is invalid. Possible client hack: "+getClient()); sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED)); return; } if (_hairStyle < 0 || (_sex == 0 && _hairStyle > 4) || (_sex != 0 && _hairStyle > 6)) { _log.warning("Character Creation Failure: Character hair style " + _hairStyle + " is invalid. Possible client hack: "+getClient()); sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED)); return; } if (_hairColor > 3 || _hairColor < 0) { _log.warning("Character Creation Failure: Character hair color " + _hairColor + " is invalid. Possible client hack: "+getClient()); sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED)); return; } L2PcInstance newChar = null; L2PcTemplate template = null; /* * DrHouse: Since checks for duplicate names are done using SQL, lock must be held until data is written to DB as well. */ synchronized (CharNameTable.getInstance()) { if (CharNameTable.getInstance().accountCharNumber(getClient().getAccountName()) >= 7) { if (Config.DEBUG) _log.fine("Max number of characters reached. Creation failed."); sendPacket(new CharCreateFail(CharCreateFail.REASON_TOO_MANY_CHARACTERS)); return; } else if (CharNameTable.getInstance().doesCharNameExist(_name)) { if (Config.DEBUG) _log.fine("Character Creation Failure: "+ _name + " already exists. Creation have failed."); sendPacket(new CharCreateFail(CharCreateFail.REASON_NAME_ALREADY_EXISTS)); return; } template = CharTemplateTable.getInstance().getTemplate(_classId); if (template == null || template.classBaseLevel > 1) { sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED)); return; } int objectId = IdFactory.getInstance().getNextId(); newChar = L2PcInstance.create(objectId, template, getClient().getAccountName(), _name, _hairStyle, _hairColor, _face, _sex!=0); } newChar.setCurrentHp(template.baseHpMax); newChar.setCurrentCp(template.baseCpMax); newChar.setCurrentMp(template.baseMpMax); // send acknowledgement sendPacket(new CharCreateOk()); initNewChar(getClient(), newChar); } private boolean isValidName(String text) { boolean result = true; String test = text; Pattern pattern; try { pattern = Pattern.compile(Config.CNAME_TEMPLATE); } catch (PatternSyntaxException e) // case of illegal pattern { _log.warning("ERROR : Character name pattern of config is wrong!"); pattern = Pattern.compile(".*"); } Matcher regexp = pattern.matcher(test); if (!regexp.matches()) result = false; return result; } private void initNewChar(L2GameClient client, L2PcInstance newChar) { if (Config.DEBUG) _log.fine("Character init start"); L2World.getInstance().storeObject(newChar); L2PcTemplate template = newChar.getTemplate(); newChar.addAdena("Init", Config.STARTING_ADENA, null, false); //SWS FACTION MOD if (Config.FACTION_SYSTEM_NEW_CHAR_ALLOW_ALT_SPAWN) { newChar.setXYZInvisible(Config.FACTION_SYSTEM_NEW_CHAR_SPAWN_X, Config.FACTION_SYSTEM_NEW_CHAR_SPAWN_Y , Config.FACTION_SYSTEM_NEW_CHAR_SPAWN_Z); } //SWS FACTION MOD if (Config.FACTION_SYSTEM_ENABLE_NEW_CHAR_TITLE) { newChar.setTitle(Config.FACTION_SYSTEM_SET_NEW_CHAR_TITLE); } //SWS FACTION MOD if (Config.FACTION_SYSTEM_NEW_CHAR_NOBLE) { newChar.setNoble(true); } //SWS FACTION MOD if (Config.FACTION_SYSTEM_ENABLE_SET_NEW_CHAR_LEVEL) { newChar.getStat().addLevel((byte)(Config.FACTION_SYSTEM_SET_NEW_CHAR_LEVEL-1)); } newChar.registerShortCut(new L2ShortCut(0,0,3,2,-1,1)); // attack shortcut newChar.registerShortCut(new L2ShortCut(3,0,3,5,-1,1)); // take shortcut newChar.registerShortCut(new L2ShortCut(10,0,3,0,-1,1)); // sit shortcut L2Item[] items = template.getItems(); for (int i = 0; i < items.length; i++) { L2ItemInstance item = newChar.getInventory().addItem("Init", items[i].getItemId(), 1, newChar, null); // tutbook shortcut if (item.getItemId()==5588) newChar.registerShortCut(new L2ShortCut(11,0,1,item.getObjectId(),-1,1)); if (item.isEquipable()) { if (newChar.getActiveWeaponItem() == null || !(item.getItem().getType2() != L2Item.TYPE2_WEAPON)) newChar.getInventory().equipItemAndRecord(item); } } for (L2SkillLearn skill : SkillTreeTable.getInstance().getAvailableSkills(newChar, newChar.getClassId())) { newChar.addSkill(SkillTable.getInstance().getInfo(skill.getId(), skill.getLevel()), true); if (skill.getId() == 1001 || skill.getId() == 1177) newChar.registerShortCut(new L2ShortCut(1,0,2,skill.getId(),1,1)); if (skill.getId()==1216) newChar.registerShortCut(new L2ShortCut(10,0,2,skill.getId(),1,1)); if (Config.DEBUG) _log.fine("adding starter skill:" + skill.getId()+ " / "+ skill.getLevel()); } newChar.setOnlineStatus(true, false); newChar.deleteMe(); CharSelectInfo cl = new CharSelectInfo(client.getAccountName(), client.getSessionId().playOkID1); client.getConnection().sendPacket(cl); client.setCharSelection(cl.getCharInfo()); if (Config.DEBUG) _log.fine("Character init end"); } @Override public String getType() { return _C__0B_CHARACTERCREATE; } }
-
Set Character Level in charactercreate.java?
SlyWhiteSheep replied to SlyWhiteSheep's question in Request Server Development Help [L2J]
Wow that was really helpful Matim thanks worked like a charm. -
Ok well as the title says I would like to set the character level from the configs: Here is what I have coded so far: //SWS FACTION MOD if (Config.FACTION_SYSTEM_ENABLE_SET_NEW_CHAR_LEVEL;) { newChar. } So from my code you can see that I have a boolean config to enable the function and inside the function at: newChar. I don't know what to code to add in order to be able to specify from the configs that i want to set the level ingame. Anyway I want it to look something like this: //SWS FACTION MOD if (Config.FACTION_SYSTEM_ENABLE_SET_NEW_CHAR_LEVEL;) { newChar.SetLevel(Config.FACTION_SYSTEM_SET_NEW_CHAR_LEVEL;) }
-
How does this work?
-
[Share] Mitrael Armor for Gracia Final
SlyWhiteSheep replied to En3rgik's topic in Client Development Discussion
what program are you using in the video? -
[Share]ice vesper armor + ice helmet (2.3)
SlyWhiteSheep replied to NexusElite's topic in Client Development Discussion
awesome. Wish i knew more about client editing this is so sik! -
[share]Online players status
SlyWhiteSheep replied to WhiteFace's topic in Server Shares & Files [L2J]
Thanks for the share really helpul -
[Share]Custom Shift+Click on character
SlyWhiteSheep replied to vampir's topic in Server Shares & Files [L2J]
so sick Going to add this to my pvp server for sure.