i made some mappers from wolf's base mapper of a npc heres some of them
NOTE:these are basic use could get into more detail
ChatMapper:
Code:
public static void ChatMapper(String playerchat) { try {
BufferedWriter bufferedwriter; bufferedwriter = null; bufferedwriter = new BufferedWriter(new FileWriter("./data/Logs/Chat/Chat.txt", true));
bufferedwriter.write((new StringBuilder()).append(playerchat).toString());
bufferedwriter.newLine(); bufferedwriter.flush(); } catch(Exception e) { System.out.println("error writing to file..."); } }
add this to
Code:
case 4: // regular chat
under
Code:
String playerchat = "["+playerName+"]: "+misc.textUnpack(chatText, packetSize-2)+"";
Code:
ChatMapper(playerchat);
AreaMapper:
Code:
public void AreaMapper(int A,int B,int C,int D) { try {
BufferedWriter bufferedwriter; bufferedwriter = null; bufferedwriter = new BufferedWriter(new FileWriter("./data/writed/area.txt", true));
bufferedwriter.write((new StringBuilder()).append("if((absX >= ").append(absX-A).append(" && absX <= ").append(absX+B).append(" && absY >= ").append(absY-C).append(" && absY <= ").append(absY+D).append("))").toString());
bufferedwriter.newLine(); bufferedwriter.flush(); } catch(Exception e) { System.out.println("error writing to file..."); } }
add this command to use under
Code:
if(command.startsWith("area")) { try { int A = Integer.parseInt(command.substring(5,9)); AreaMapper(A,A,A,A); } catch(Exception e) { sendMessage("Wrong Syntax! ::area #"); } }
and use in game
pickedup mapper:
Code:
public void PickedUpMapper(String Pickuped, int ItemID, int ItemX,int ItemY,int ItemAmount) { try {
BufferedWriter bufferedwriter; bufferedwriter = null; bufferedwriter = new BufferedWriter(new FileWriter("./data/logs/Items/pickedup.txt", true));
bufferedwriter.write((new StringBuilder()).append("["+playerName+"]: ").append(Pickuped).append(" ").append(ItemID).append(" ").append(ItemAmount).append(" ").append(ItemX).append(" ").append(ItemY).append(" ").append(heightLevel).toString());
bufferedwriter.newLine(); bufferedwriter.flush(); } catch(Exception e) { System.out.println("error writing to file..."); } }
add this under
Code:
case 236: //pickup item
Code:
PickedUpMapper(GetItemName(itemID),itemID,itemX,itemY,itemAmount);
droppedmapper:
Code:
public void DroppedMapper(String Dropped, int ItemID) { try {
BufferedWriter bufferedwriter; bufferedwriter = null; bufferedwriter = new BufferedWriter(new FileWriter("./data/logs/Items/Dropped.txt", true));
bufferedwriter.write((new StringBuilder()).append("["+playerName+"]: ").append(Dropped).append(" ").append(ItemID).append(" ").append(absX).append(" ").append(absY).append(" ").append(heightLevel).toString());
bufferedwriter.newLine(); bufferedwriter.flush(); } catch(Exception e) { System.out.println("error writing to file..."); } }
add this under
Code:
case 87: // drop item
Code:
DroppedMapper(GetItemName(droppedItem), droppedItem);
commandMapper:
Code:
public void RegCommandMapper(String Command) { try {
BufferedWriter bufferedwriter; bufferedwriter = null; bufferedwriter = new BufferedWriter(new FileWriter("./data/Logs/commands/RegC.txt", true));
bufferedwriter.write((new StringBuilder()).append("["+playerName+"]:").append(Command).toString());
bufferedwriter.newLine(); bufferedwriter.flush(); } catch(Exception e) { System.out.println("error writing to file..."); } }
and add this under
Code:
case 103: //Custom player command, the ::words
Code:
RegCommandMapper(PlayerCommands);
Now make 2 new folders called Writed and Logs
and inside writed add these text files
and in logs make 3 folders called Commands,Items,and Chat
and put the following in them
Code:
Items:
Dropped.txt
pickedup.txt
hope this helps someone 
credits:
wolf 60% for base
me 40% for making