I couldn't find a working tutorial for this, and i just kept on trying to fix it and i found it! 
I'm not very good at coding, so i saw this as my chance to contribute to rune-server 
What you will be fixing:
Code:
[1/09/13 17:06]: java.lang.ArrayIndexOutOfBoundsException: -1
[1/09/13 17:06]: at server.clip.region.Region.getClip(Region.java:21)
[1/09/13 17:06]: at server.clip.region.Region.getClipping(Region.java:251)
[1/09/13 17:06]: at server.model.npcs.NPCHandler.handleClipping(NPCHandler.java:1661)
[1/09/13 17:06]: at server.model.npcs.NPCHandler.followPlayer(NPCHandler.java:1644)
[1/09/13 17:06]: at server.model.npcs.NPCHandler.process(NPCHandler.java:970)
[1/09/13 17:06]: at server.Server.main(Server.java:190)
[1/09/13 17:06]: A fatal exception has been thrown!
Open ActionHandler class.
Search for case 6707:
You should see something like this:
Code:
//coffins
case 6707: // verac
c.getPA().movePlayer(3556, 3298, 0);
break;
case 6823:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[0][1] == 0) {
Server.npcHandler.spawnNpc(c, 2030, c.getX(), c.getY()-1, -1, 0, 120, 25, 200, 200, true, true);
c.barrowsNpcs[0][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6706: // torag
c.getPA().movePlayer(3553, 3283, 0);
break;
case 6772:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[1][1] == 0) {
Server.npcHandler.spawnNpc(c, 2029, c.getX()+1, c.getY(), -1, 0, 120, 20, 200, 200, true, true);
c.barrowsNpcs[1][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6705: // karil stairs
c.getPA().movePlayer(3565, 3276, 0);
break;
case 6822:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[2][1] == 0) {
Server.npcHandler.spawnNpc(c, 2028, c.getX(), c.getY()-1, -1, 0, 90, 17, 200, 200, true, true);
c.barrowsNpcs[2][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6704: // guthan stairs
c.getPA().movePlayer(3578, 3284, 0);
break;
case 6773:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[3][1] == 0) {
Server.npcHandler.spawnNpc(c, 2027, c.getX(), c.getY()-1, -1, 0, 120, 23, 200, 200, true, true);
c.barrowsNpcs[3][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6703: // dharok stairs
c.getPA().movePlayer(3574, 3298, 0);
break;
case 6771:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[4][1] == 0) {
Server.npcHandler.spawnNpc(c, 2026, c.getX(), c.getY()-1, -1, 0, 120, 45, 250, 250, true, true);
c.barrowsNpcs[4][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6702: // ahrim stairs
c.getPA().movePlayer(3565, 3290, 0);
break;
case 6821:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[5][1] == 0) {
Server.npcHandler.spawnNpc(c, 2025, c.getX(), c.getY()-1, -1, 0, 90, 19, 200, 200, true, true);
c.barrowsNpcs[5][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
Replace all of it with this:
Code:
case 6707: // verac
c.getPA().movePlayer(3556, 3298, 0);
break;
case 6823:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[0][1] == 0) {
Server.npcHandler.spawnNpc(c, 2030, c.getX(), c.getY()-1, 3, 0, 120, 25, 200, 200, true, true);
c.barrowsNpcs[0][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6706: // torag
c.getPA().movePlayer(3553, 3283, 0);
break;
case 6772:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[1][1] == 0) {
Server.npcHandler.spawnNpc(c, 2029, c.getX()+1, c.getY()-1, 3, 0, 120, 20, 200, 200, true, true);
c.barrowsNpcs[1][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6705: // karil stairs
c.getPA().movePlayer(3565, 3276, 0);
break;
case 6822:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[2][1] == 0) {
Server.npcHandler.spawnNpc(c, 2028, c.getX(), c.getY()-1, 3, 0, 90, 17, 200, 200, true, true);
c.barrowsNpcs[2][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6704: // guthan stairs
c.getPA().movePlayer(3578, 3284, 0);
break;
case 6773:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[3][1] == 0) {
Server.npcHandler.spawnNpc(c, 2027, c.getX(), c.getY()-1, 3, 0, 120, 23, 200, 200, true, true);
c.barrowsNpcs[3][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6703: // dharok stairs
c.getPA().movePlayer(3574, 3298, 0);
break;
case 6771:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[4][1] == 0) {
Server.npcHandler.spawnNpc(c, 2026, c.getX(), c.getY()-1, 3, 0, 120, 45, 250, 250, true, true);
c.barrowsNpcs[4][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
case 6702: // ahrim stairs
c.getPA().movePlayer(3565, 3290, 0);
break;
case 6821:
if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
return;
}
if(c.barrowsNpcs[5][1] == 0) {
Server.npcHandler.spawnNpc(c, 2025, c.getX(), c.getY()-1, 3, 0, 90, 19, 200, 200, true, true);
c.barrowsNpcs[5][1] = 1;
} else {
c.sendMessage("You have already searched in this sarcophagus.");
}
break;
Open playerAssistant class.
Search for public void changeLocation() {
And you should see something like this:
Code:
public void changeLocation() {
switch(c.newLocation) {
case 1:
sendFrame99(2);
movePlayer(3578,9706,-1);
break;
case 2:
sendFrame99(2);
movePlayer(3568,9683,-1);
break;
case 3:
sendFrame99(2);
movePlayer(3557,9703,-1);
break;
case 4:
sendFrame99(2);
movePlayer(3556,9718,-1);
break;
case 5:
sendFrame99(2);
movePlayer(3534,9704,-1);
break;
case 6:
sendFrame99(2);
movePlayer(3546,9684,-1);
break;
}
c.newLocation = 0;
}
Replace everything with this:
Code:
public void changeLocation() {
switch(c.newLocation) {
case 1:
sendFrame99(2);
movePlayer(3578,9706,3);
break;
case 2:
sendFrame99(2);
movePlayer(3568,9683,3);
break;
case 3:
sendFrame99(2);
movePlayer(3557,9703,3);
break;
case 4:
sendFrame99(2);
movePlayer(3556,9718,3);
break;
case 5:
sendFrame99(2);
movePlayer(3534,9704,3);
break;
case 6:
sendFrame99(2);
movePlayer(3546,9684,3);
break;
}
c.newLocation = 0;
}
Save, compile and its fixed!
If it helped you, click the thanks button and/or rep++