Jump to content

Horus

Members
  • Posts

    888
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by Horus

  1. Leeroy that is about the dumbest thing you've ever said. Anyway the problem is that they forgot to wrap the IF Clause with { } hence, only the first String is read by the if making no sense at all.
  2. You have been warned. Reason: Posting useless messages (Spamming behavior);
  3. Oh and I added that Penalty thing you asked. Should work, I didn't test it but it all makes sense ^^
  4. Alright. So I'm guessing most of you know I don't comply with Interlude Projects and I don't offer them help at all. But this time I decided to open an exception and give help to an old friend. Here's the result: Gracia Final: @Override protected void onForcedDisconnection() { if (_log.isDebugEnabled()) _log.info("Client " + toString() + " disconnected abnormally."); if(_activeChar.isInOlympiadMode()) { final String POINTS = "olympiad_points"; final int charId = _activeChar.getObjectId(); OlympiadGame game = Olympiad.getInstance().getOlympiadGames().get(_activeChar.getOlympiadGameId()); L2PcInstance _opponent = L2World.getInstance().getPlayer(_activeChar.getOlympiadOpponentId()); final StatsSet playerStat = Olympiad.getNobleStats(charId); final int playerPoints = playerStat.getInteger(POINTS); final int lostPoints = playerPoints / 3; playerStat.set(POINTS, playerPoints - lostPoints); Olympiad.updateNobleStats(charId, playerStat); SystemMessage sm = new SystemMessage(SystemMessageId.C1_HAS_LOST_S2_OLYMPIAD_POINTS); sm.addString(_activeChar.getName()); sm.addNumber(lostPoints); _opponent.sendPacket(sm); _log.info("Olympiad Fighter " + _activeChar.getName() + " has been Punished and Lost " + lostPoints + " Points."); } } Interlude: Well just click here since I made that lool. What does it do ? Basically if the player disconnects from Olympiad (Ctrl + Alt + Del) his Olympiad Points are reduced to 1 / 3 and displays the information to his opponent. The thing is you'll have to change the visibility of some methods however, if you don't want to do this the best way is to make a new method on OlympiadGame and just call it from L2GameClient. Hope you find it useful.
  5. lool of course. Just modify it to suit your needs, you can do it with armors, weapons, jewels, accessories ,etc. Or use it to make other restrictions such as skill using, pvp diminishing, and so on. Use your imagination.
  6. Shut and start reworking ActionFailed lool. Btw for your Oly thingie, check L2GameClient and just modify the protected void onForcedDisconnection().
  7. Alright, I'm sure you all seen Rizel's share on how to Forbid to equip some kind of items. Well don't take me wrong Rizel, it was a good share, but a certain forum user requested me to make something smarter and much faster. So I did, its a simple change, the code is pretty simple and clean - thats whats so good about it. So here's an example of the code: int _noLightlist[] = {93 ,108,101}; int _noHeavylist[] = {94 }; int _noRobeList[] = { 98 }; if(item.getItemType() == L2ArmorType.LIGHT) for(int i =0; i < _noLightlist.length ; i++) { if(activeChar.getActiveClass() == _noLightlist[i]) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_CANNOT_BE_USED); sm.addItemName(item); getClient().getActiveChar().sendPacket(sm); sm = null; return; } continue; } if(item.getItemType() == L2ArmorType.HEAVY) for(int i =0; i < _noLightlist.length ; i++) { if(activeChar.getActiveClass() == _noHeavytlist[i]) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_CANNOT_BE_USED); sm.addItemName(item); getClient().getActiveChar().sendPacket(sm); sm = null; return; } continue; } if(item.getItemType() == L2ArmorType.ROBE) for(int i =0; i < _noRobelist.length ; i++) { if(activeChar.getActiveClass() == _noLightlist[i]) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_CANNOT_BE_USED); sm.addItemName(item); getClient().getActiveChar().sendPacket(sm); sm = null; return; } continue; } It only requires 5 minutes of your time and works like a charm (I hope, I didn't actually test it lool). Just insert the class's Index on the array and you're off. Well Stef just suggested I made something like if a Dagger user wears a Heavy Armor, he would get a penalty (Skill Effect) and a big head. The Skill level deppends on wether the character is above or below level 40 (to make sure that the penalty isn't too big) and the Skill ,obviously, deppends on whether the Character is a Mage or not (Different penalties for Mages & Fighters). So here it is: int _daggerPenalty[] = { 78 } ; if(item.getItemType() == L2WeaponrType.DAGGER) for(int i =0; i < _daggerPenalty.length ; i++) { if(activeChar.getActiveClass() == _daggerPenalty[i]) { activeChar.startAbnormalEffect(L2Character.ABNORMAL_EFFECT_BIG_HEAD); // give player a Big Head // lets recycle the sevensigns debuffs int skillId; int skillLevel = 1; if (activeChar.getLevel() > 40) skillLevel = 2; if (activeChar.isMageClass()) skillId = 4361; else skillId = 4362; L2Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); if (activeChar.getFirstEffect(skill) == null) { skill.getEffects(activeChar, activeChar); SystemMessage sm = new SystemMessage(SystemMessageId.YOU_FEEL_S1_EFFECT); sm.addSkillName(skill); activeChar.sendPacket(sm); } } continue; } In case you haven't noticed the base is always the same, you just have to spread wings to your imagination.
  8. Thread Closed. Reason: The answer to this question has already been supplied; Please use the Search Button;
  9. Use the Member's List button ;) My advice: go through all the L2j Dev Group Members.
  10. Gameplay Designer ? As in... Client Modifier ? -.-'
  11. Dunno Leeroy. The only way I can know if its a project worth investing my time on is if you explain me the Server's Concept & Ideals.
  12. Guess I can help if ya need, deppends on what I'll get in return obviously.
  13. Not this one I guess, I use one that savor made. Love him, he always shares everything (Except for my work from our SVN :o).
  14. House would you mind attaching some Screenies to it ? Haven't actually tested it nor read its source, but based on your Features List and our Member's feedback seems to be a great buffer.
  15. Please refrain from doing such posts just to increase your post count. Either say something decent or just keep it to yourself.
  16. I'm a Java Dev for NCSoft (Although they work with C++) !! Thats the power of scamming for you my Israelite friend. Thread Closed. Reason: Attempt to Scam by the Thread Starter;
  17. Leeroy do you know if they have changed everything from Arrays to FasLists ? I dun have Eclipse here and I'm curious. Its just dumb to use Arrays.
  18. Each event has a method to register a player, usually used by NPCs. Should be something like public void registerplayer(L2PcInstance p) or (int p) where in this case p stands for the player's objectId. Either you call that method from the voiced command or you just remove it from the FastList which contains the Player List. Usually, since most Events have a registration period the players are put in an Array (which is just stupid honestly) but I'm guessing that they have updated it to FastLists or HashMaps (FastMaps) so you should have no problem adding the player to the registration list. Just make sure you put a few checks to prevent double registrations.
  19. Good luck trine. You better get your Dev working fast cus I don't think that Xieno can pay the Dev role whilst being a Web Designer ;)
  20. See ? Like I said, if you had looked at the darn console you would have realised what the problem was. Just make sure you pay attention to everything before asking for help 50 times. Thread Closed. Solution to the Problem has been Supplied;
  21. I'm not saying you're 12 years old, its just emphasise the attitude. About your Post Scriptum, we are to speak English only in this Section, you can PM me or contact me through MSN if you wish, but please refrain from posting in any language other than English. And once again, the Game Server's Log (Window) Shows no errors ?
  22. I'm guessing this only works on Interlude obviously. Anyway it seems to be a nice script.
  23. abdc you can't just keep making Threads everytime you run into a problem, this is why we don't recommend a 12 year old person to make a Server. If you run into a problem first,try to fix it by yourself, second of all use the Search button, for most of the times the answer has already been given somewhere else. And third, I'm pretty sure the problem is written on the GameServer's (GS) Log, so just read it carefully.
  24. There is clearly a problem establishing a Client Connection from the Login Server to the Game Server. This can be due to 2 problems: - Client Side Problems (In this case you should make sure all your files are updated); - LS <-> GS Connection Cannot be Established, in this case, you are to check your LS & GS Configs (LoginServer.proprieties and GameServer.proprieties). See if the LoginServer's Console recognizes the GS ,should be something like "New Server Logged in through Port 1: Bartz" or something like that, I don't remember the exact sentence.
  25. Thread Closed. Reason: Solution to the Problem has been Found;
×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..