Jump to content

wongerlt

Members
  • Posts

    522
  • Credits

  • Joined

  • Last visited

  • Days Won

    4
  • Feedback

    0%

Everything posted by wongerlt

  1. /** MMO settings */ public static int MMO_SELECTOR_SLEEP_TIME = 20; // default 20 public static int MMO_MAX_SEND_PER_PASS = 22; // default 12 public static int MMO_MAX_READ_PER_PASS = 22; // default 12 public static int MMO_HELPER_BUFFER_COUNT = 20; // default 20 Is good?
  2. i say same situation on vps and on local pc, same delay..
  3. Hello, Im using aCis. Now example when i click on ground i need to wait maybe 0.4~0.5 sec. when start run where i click.. And with all actions same situation. Im tested on vps and on local pc where ping [0], on vps ping maybe ~60-100. How i can increase it, that work faster? Thanks ;)
  4. hmm i think java is java just changed function name and make little different from other packs :D i will fixed it self if i know how to start this bug in game to see :D
  5. You mean when function call self or call other function who call 1# function and it make while?
  6. To much work to move all server to new aCis version... Maybe anyone can tell me more about this movement system bug. Thanks :) Example about bug that need target self to can move at start, but not all time.
  7. Fixed by self. :) If any one need it can be made in one line: ServerList.java else if (gsi.getStatus() != ServerStatus.STATUS_GM_ONLY) { // Server is not GM-Only + addServer("78.78.78.78", gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), false, true, gsi.getStatus(), gsi.getId()); + addServer("79.79.79.79", gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), false, true, gsi.getStatus(), gsi.getId()+1); } and in RequestServerLogin.java public boolean readImpl() { if (super._buf.remaining() >= 9) { _skey1 = readD(); _skey2 = readD(); _serverId = readC(); + if(_serverId==2) + _serverId=1; return true; } return false; } It work for me :)
  8. Hello, Me server have 2 ip with different country. First ip i registered in game server list, now i need register and second ip to same server. How i can do it on aCis?
  9. Oh why on latest version material, crystal_type, weapon_type are upercase? :D
  10. Im use only notepad++ and ant (to compile). Im try to use eclipse but its very uncomfortable for me :/ And i see on latest version many changes, so i need rework all me codes to adapt ;) Will be a lot of work from ~300 to ~360 :D
  11. Little? I'm many things changed in server core , so move all changes is hard :D
  12. Yes.. i read all chagelog from me revision to latest and see many chages... Time to move all features to latest version, will be hard..
  13. L2J aCis. Error: Exception in thread "AISTPool-5" java.lang.StackOverflowError at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.startWaterTask(L2PcInstance.java:9109) at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.checkWaterState(L2PcInstance.java:9122) at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.revalidateZone(L2PcInstance.java:1540) at net.sf.l2j.gameserver.ai.L2CharacterAI.onEvtArrived(L2CharacterAI.java:626) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:373) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:296) at net.sf.l2j.gameserver.model.actor.L2Character.moveToLocation(L2Character.java:3586) at net.sf.l2j.gameserver.model.actor.L2Character$AIAccessor.moveTo(L2Character.java:2819) at net.sf.l2j.gameserver.ai.AbstractAI.moveTo(AbstractAI.java:538) at net.sf.l2j.gameserver.ai.AbstractAI.moveToPawn(AbstractAI.java:494) at net.sf.l2j.gameserver.ai.L2CharacterAI.maybeMoveToPawn(L2CharacterAI.java:877) at net.sf.l2j.gameserver.ai.L2PlayerAI.thinkCast(L2PlayerAI.java:235) at net.sf.l2j.gameserver.ai.L2PlayerAI.onEvtThink(L2PlayerAI.java:312) at net.sf.l2j.gameserver.ai.L2CharacterAI.onEvtArrived(L2CharacterAI.java:641) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:373) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:296) at net.sf.l2j.gameserver.model.actor.L2Character.moveToLocation(L2Character.java:3586) at net.sf.l2j.gameserver.model.actor.L2Character$AIAccessor.moveTo(L2Character.java:2819) at net.sf.l2j.gameserver.ai.AbstractAI.moveTo(AbstractAI.java:538) at net.sf.l2j.gameserver.ai.AbstractAI.moveToPawn(AbstractAI.java:494) at net.sf.l2j.gameserver.ai.L2CharacterAI.maybeMoveToPawn(L2CharacterAI.java:877) at net.sf.l2j.gameserver.ai.L2PlayerAI.thinkCast(L2PlayerAI.java:235) at net.sf.l2j.gameserver.ai.L2PlayerAI.onEvtThink(L2PlayerAI.java:312) at net.sf.l2j.gameserver.ai.L2CharacterAI.onEvtArrived(L2CharacterAI.java:641) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:373) at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:296) and 100 same error like last block L2Character.java:3586 i marked it with plus "+" .... if (offset > 0 || distance < 1) { // approximation for moving closer when z coordinates are different // TODO: handle Z axis movement better offset -= Math.abs(dz); if (offset < 5) offset = 5; // If no distance to go through, the movement is canceled if (distance < 1 || distance - offset <= 0) { if (Config.DEBUG) _log.fine("already in range, no movement needed."); // Notify the AI that the L2Character is arrived at destination + getAI().notifyEvent(CtrlEvent.EVT_ARRIVED); return; } .... L2Character.java:2819 public void moveTo(int x, int y, int z, int offset) { + moveToLocation(x, y, z, offset); } AbstractAI.java:538 protected void moveTo(int x, int y, int z, int offset) { // Check if actor can move if (_actor.isMovementDisabled()) { _actor.sendPacket(ActionFailed.STATIC_PACKET); return; } // Set AI movement data _clientMoving = true; if (_accessor == null) return; // Calculate movement data for a move to location action and add the actor to + _accessor.moveTo(x, y, z, offset); if (!_actor.isMoving()) { _actor.sendPacket(ActionFailed.STATIC_PACKET); return; } // Send a Server->Client packet CharMoveToLocation to the actor and all L2PcInstance in _actor.broadcastPacket(new MoveToLocation(_actor)); } AbstractAI.java:494 protected void moveToPawn(L2Object pawn, int offset) { if (_clientMoving && _target == pawn && _actor.isOnGeodataPath() && GameTimeController.getGameTicks() < _moveToPawnTimeout) return; _target = pawn; if (_target == null) return; _moveToPawnTimeout = GameTimeController.getGameTicks() + 20; + moveTo(_target.getX(), _target.getY(), _target.getZ(), offset = offset < 10 ? 10 : offset); } L2CharacterAI.java:877 protected boolean maybeMoveToPawn(L2Object target, int offset) { if (target == null || offset < 0) // skill radius -1 return false; offset += _actor.getTemplate().getCollisionRadius(); if (target instanceof L2Character) offset += ((L2Character) target).getTemplate().getCollisionRadius(); if (!_actor.isInsideRadius(target, offset, false, false)) { if (getFollowTarget() != null) { int foffset = offset + (((L2Character) target).isMoving() ? 100 : 0); // allow larger hit range when the target is moving (check is run only once per second) if (!_actor.isInsideRadius(target, foffset, false, false)) { if (!_actor.isAttackingNow() || _actor instanceof L2Summon) + moveToPawn(target, offset); return true; } stopFollow(); return false; } if (_actor.isMovementDisabled() && !(_actor instanceof L2Attackable)) { if (getIntention() == CtrlIntention.ATTACK) setIntention(CtrlIntention.IDLE); return true; } // If not running, set the L2Character movement type to run and send Server->Client packet ChangeMoveType to all others L2PcInstance if (!(this instanceof L2PlayerAI) && !(this instanceof L2SummonAI)) _actor.setRunning(); if ((target instanceof L2Character) && !(target instanceof L2DoorInstance)) startFollow((L2Character) target, offset); else { // Move the actor to Pawn server side AND client side by sending Server->Client packet MoveToPawn (broadcast) moveToPawn(target, offset); } return true; } stopFollow(); return false; } L2PlayerAI.java:235 private void thinkCast() { L2Character target = (L2Character) getTarget(); if (Config.DEBUG) _log.warning("L2PlayerAI: thinkCast -> Start"); if (_skill.getTargetType() == SkillTargetType.TARGET_GROUND && _actor instanceof L2PcInstance) { if (maybeMoveToPosition(((L2PcInstance) _actor).getCurrentSkillWorldPosition(), _skill.getCastRange())) { _actor.setIsCastingNow(false); return; } } else { if (checkTargetLost(target)) { // Notify the target if (_skill.isOffensive() && getTarget() != null) setTarget(null); _actor.setIsCastingNow(false); return; } + if (target != null && maybeMoveToPawn(target, _skill.getCastRange())) { _actor.setIsCastingNow(false); return; } } L2PlayerAI.java:312 protected void onEvtThink() { // Check if the actor can't use skills and if a thinking action isn't already in progress if (_thinking && getIntention() != CtrlIntention.CAST) // casting must always continue return; // Start thinking action _thinking = true; try { // Manage AI thoughts switch (getIntention()) { case ATTACK: thinkAttack(); break; case CAST: + thinkCast(); break; case PICK_UP: thinkPickUp(); break; case INTERACT: thinkInteract(); break; } } finally { // Stop thinking action _thinking = false; } } L2CharacterAI.java:641 protected void onEvtArrived() { _accessor.getActor().revalidateZone(true); if (_accessor.getActor().moveToNextRoutePoint()) return; if (_accessor.getActor() instanceof L2Attackable) ((L2Attackable) _accessor.getActor()).setIsReturningToSpawnPoint(false); clientStoppedMoving(); // If the Intention was MOVE_TO, set the Intention to ACTIVE if (getIntention() == CtrlIntention.MOVE_TO) setIntention(CtrlIntention.ACTIVE); // Launch actions corresponding to the Event Think + onEvtThink(); } AbstractAI.java:373 ... case EVT_ARRIVED: if (!_actor.isCastingNow() && !_actor.isCastingSimultaneouslyNow()) + onEvtArrived(); break; ... AbstractAI.java:296 public final void notifyEvent(CtrlEvent evt) { + notifyEvent(evt, null, null); } i get this error not only with startWaterTask i get and with others, and same error 14000 lines... one time per day. Maybe anyone know how to solve this problem?
  14. I'm creating to antibot for interlude. i do this with dsetup.dll * Mix packets id's. [with this all OOG bots stop working.] * Search in processes. * Seatch in titles * Search in windows texts. * Search in l2.exe threads. * Search for hooks in l2.exe * Query GG with strong random hash every time to client and back every 15. sec. It stop many bots. ~80%-100%.
  15. I see all servers have own balance. reworked again:
  16. So its bad? i dont have more ideas.. I get this idea from http://www.maxcheaters.com/topic/176348-class-balance-with-config/ just reworked :)
  17. Just finished creating balance system >:D <class mean attacker class id <weapon what damage make with weapon type if i set DAGGER to 2 then with dagger make damage/2 , if 0.5 then damage*2 <vs damage to other class if i make at class="16" damage="2" then duelist to bishop make damage/2. it change fighter damage, mage damage, skill damage. and command: //reload balance so you can change all without server restarts and test fast. All interlude classes. If anyone interesed to it please pm, it work great :)
  18. Hello, Im using old acis rev. now im looking balanced formulas java and skills/classes xml files. Im trying to balance it self but is to much skills and stats. Now i got ~20% balance in olympiad with a grade items (10+ arrmors, 16+ weaps.), no customs. it does not matter if xml difference i will addapt it on me pack but all information must be in xml not 50% in sql. Anyone can recommend any pack with at least ~70% balance? Maybe in last free acis rev good balance?
  19. Yes it shared code. Any other can help with it? :)
  20. Hello, How to send packet back when get it? int __fastcall new_AddNetworkQueue(unsigned int This, unsigned int EDX, TNetworkPacket *NetworkPacket) { if (NetworkPacket->subid == 0xFFFF) { switch (NetworkPacket->id) { case 0x2E: decodeKey(NetworkPacket->data + 1); break; case 0x74: // reply ? Logger("Get from server."); break; default: Logger("Get from server other"); break; } } return true_AddNetworkQueue(This, EDX, NetworkPacket); } Packet i get from server, now i want reply to server, how to do it? i want reply to 0x74 packet. If need more code tell me :) Thanks for help.
  21. how to verify? i tryng emulator verify server but not work
×
×
  • Create New...