Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Leaderms

Initiate Mage
Joined
Nov 10, 2018
Messages
4
Reaction score
0
Hey guys im using leaderms and when a player dies and i click ok to revive it first revives me with 50 hp and then warps me to town but the thing is when when revived and then warp to nearest town in a splitt second i can be hitt by another mob can anybody tell me where can i find this being handled so i can adjust it properly i have been searching by my own but coudnt find it!
 
Junior Spellweaver
Joined
Sep 16, 2017
Messages
156
Reaction score
36
That would be ChangeMapHandler.java (in path src/net/channel/handler). The behavior for player revive spawn begins with the check:
PHP:
if (targetid != -1 && !c.getPlayer().isAlive())

From there, you can modify the map changing behavior for a player reviving after death. Keep in mind that, if you're dealing with an event revive scenario, the "double rewarp" could be due to the event script already respawning the player in the same map, upon revival (you'll need to check the function playerRevive of your event script, for this), before the handler operates its rewarp.
 
Upvote 0
Initiate Mage
Joined
Nov 10, 2018
Messages
4
Reaction score
0
Thank you very much ive seen to fixed it and about the double respawn in the event i have to check that later and btw do u have any idea how i could disable Jump Down?
 
Upvote 0
Junior Spellweaver
Joined
Sep 16, 2017
Messages
156
Reaction score
36
Hmm, I believe that'd require some client editing; I'm not sure if you're familiar with it, but if you're interested, I'll take a look into it during this weekend. c:

You said you're using LeaderMS, so I assume your server is v62, right?
 
Upvote 0
Initiate Mage
Joined
Nov 10, 2018
Messages
4
Reaction score
0
yeah thats true v62 oh i never done anything with client unless change the IP :blink: thanks tho and i got another thingy the drops of the mobs seems to drop with a delay any location for this too?
 
Upvote 0
Junior Spellweaver
Joined
Sep 16, 2017
Messages
156
Reaction score
36
Monster drops are scheduled to be dropped on the ground after the whole monster death animation has finished; if you wish to change this, you'll need to search in MapleMap.java, in the function dropFromMonster.

Around the end of the function, you'll find the following:

PHP:
int dropTime = monster.getAnimationTime("die1");
if (monster.isHT()) {
    dropTime = 500;
}
mdrop.setFfa(ffa);
tMan.schedule(new Runnable() {
    public void run() {
        spawnAndAddRangedMapObject(mdrop, new DelayedPacketCreation() {
            public void sendPackets(MapleClient c) {
                c.getSession().write(MaplePacketCreator.dropItemFromMapObject(drop, mdrop.getObjectId(), dropMonster.getObjectId(), isBoss ? 0 : dropChar.getId(), dropMonster.getPosition(), dropPos, (byte) 1));
            }
        });

        tMan.schedule(new ExpireMapItemJob(mdrop), 180000);
    }
}, dropTime);
dropTime is the delay (in milliseconds) between the hit that kills the monster and the moment the drops will show up.
As I said, it's normally set as the duration of the death animation of the monster (apart from Horntail), but you can change it to any time you want.

While we're at it, note that the 180000 you see in that code portion is the lifetime of the drops on the ground (again in milliseconds): if you change that, you can alter how long the drops will stay on ground before disappearing. c:
 
Last edited:
Upvote 0
Back
Top