Thread: Playersave cant read file!

Results 1 to 9 of 9
  1. #1 Playersave cant read file! 
    Registered Member
    Mocro's Avatar
    Join Date
    Nov 2007
    Posts
    532
    Thanks given
    28
    Thanks received
    11
    Rep Power
    125
    Code:
    package com.rs2.util;
    
    import java.io.DataInputStream;
    import java.io.DataOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    import com.rs2.Constants;
    import com.rs2.Server;
    import com.rs2.model.World;
    import com.rs2.model.content.combat.effect.impl.PoisonEffect;
    import com.rs2.model.content.combat.hit.Hit;
    import com.rs2.model.content.combat.hit.HitDef;
    import com.rs2.model.content.combat.hit.HitType;
    import com.rs2.model.content.skills.magic.SpellBook;
    import com.rs2.model.players.BankManager;
    import com.rs2.model.players.Player;
    import com.rs2.model.players.item.Item;
    import com.rs2.net.packet.packets.AppearancePacketHandler;
    
    /**
     * Static utility methods for saving and loading players.
     * 
     * @author blakeman8192
     */
    public class PlayerSave {
    
    	/** The directory where players are saved. */
    	public static final String directory = "./data/characters/";
    
    	/**
    	 * Saves the player.
    	 * 
    	 * @param player
    	 *            the player to save
    	 * @return
    	 */
    	public static void save(final Player player) {
    		try {
                @SuppressWarnings("unused")
    			Misc.Stopwatch stopwatch = new Misc.Stopwatch();
    			File file = new File(directory + player.getUsername() + ".txt");
    			if (!file.exists()) {
    				file.createNewFile();
    			}
    			FileOutputStream outFile = new FileOutputStream(file);
    			DataOutputStream write = new DataOutputStream(outFile);
    			write.writeUTF(player.getUsername());
    			write.writeUTF(player.getPassword());
    			write.writeInt(player.getStaffRights());
    			write.writeInt(player.getPosition().getX());
    			write.writeInt(player.getPosition().getY());
    			write.writeInt(player.getPosition().getZ());
    			write.writeInt(player.getGender());
    			write.writeBoolean(player.shouldAutoRetaliate());
    			write.writeInt(player.getFightMode());
    			write.writeInt(player.getScreenBrightness());
    			write.writeInt(player.getMouseButtons());
    			write.writeInt(player.getChatEffects());
    			write.writeInt(player.getSplitPrivateChat());
    			write.writeInt(player.getAcceptAid());
    			write.writeInt(player.getMusicVolume());
    			write.writeInt(player.getEffectVolume());
    			write.writeInt(player.getQuestPoints());
    			write.writeDouble(player.getSpecialAmount());
    			write.writeBoolean(player.getBankPin().isChangingBankPin());
    			write.writeBoolean(player.getBankPin().isDeletingBankPin());
    			write.writeInt(player.getBankPin().getPinAppendYear());
    			write.writeInt(player.getBankPin().getPinAppendDay());
    			write.writeInt(player.getBindingNeckCharge());
    			write.writeInt(player.getRingOfForgingLife());
    			write.writeInt(player.getRingOfRecoilLife());
    			write.writeInt(player.getSkullTimer());
    			write.writeInt(player.getNewComersSide().getTutorialIslandStage());
    			write.writeInt(player.getNewComersSide().getProgressValue());
    			write.writeDouble(player.getEnergy());
    			write.writeBoolean(player.getMovementHandler().isRunToggled());
    
    			for (int i = 0; i < player.getBankPin().getBankPin().length; i++) {
    				write.writeInt(player.getBankPin().getBankPin()[i]);
    			}
    			for (int i = 0; i < player.getBankPin().getPendingBankPin().length; i++) {
    				write.writeInt(player.getBankPin().getPendingBankPin()[i]);
    			}
    			for (Object[] element : player.questData) {
    				write.writeInt((Integer) element[1]);
    			}
    			for (int i = 0; i < 4; i++) {
    				write.writeInt(player.getPouchData(i));
    			}
    			for (int i = 0; i < player.getAppearance().length; i++) {
    				write.writeInt(player.getAppearance()[i]);
    			}
    			for (int i = 0; i < player.getColors().length; i++) {
    				write.writeInt(player.getColors()[i]);
    			}
    			for (int i = 0; i < player.getSkill().getLevel().length; i++) {
    				write.writeInt(player.getSkill().getLevel()[i]);
    			}
    			for (int i = 0; i < player.getSkill().getExp().length; i++) {
    				write.writeInt((int) player.getSkill().getExp()[i]);
    			}
    			for (int i = 0; i < 28; i++) {
    				Item item = player.getInventory().getItemContainer().get(i);
    				if (item == null) {
    					write.writeInt(65535);
    				} else {
    					write.writeInt(item.getId());
    					write.writeInt(item.getCount());
    					write.writeInt(item.getTimer());
    				}
    			}
    			for (int i = 0; i < 14; i++) {
    				Item item = player.getEquipment().getItemContainer().get(i);
    				if (item == null) {
    					write.writeInt(65535);
    				} else {
    					write.writeInt(item.getId());
    					write.writeInt(item.getCount());
    				}
    			}
    			for (int i = 0; i < BankManager.SIZE; i++) {
    				Item item = player.getBank().get(i);
    				if (item == null) {
    					write.writeInt(65535);
    				} else {
    					write.writeInt(item.getId());
    					write.writeInt(item.getCount());
    					write.writeInt(item.getTimer());
    				}
    			}
    			for (int i = 0; i < player.getFriends().length; i++) {
    				write.writeLong(player.getFriends()[i]);
    			}
    			for (int i = 0; i < player.getIgnores().length; i++) {
    				write.writeLong(player.getIgnores()[i]);
    			}
    			for (int i = 0; i < player.getPendingItems().length; i++) {
    				write.writeInt(player.getPendingItems()[i]);
    				write.writeInt(player.getPendingItemsAmount()[i]);
    			}
    			write.writeInt(player.getRunecraftNpc());
                write.writeLong(player.getMuteExpire());
                write.writeLong(player.getBanExpire());
    			write.writeBoolean(player.hasKilledTreeSpirit());
    			write.writeBoolean(player.hasReset());
    			write.writeBoolean(player.hasKilledJungleDemon());
    			for (int i = 0; i < 6; i++) {
    				write.writeBoolean(player.getBarrowsNpcDead(i));
    			}
    			write.writeInt(player.getKillCount());
    			write.writeInt(player.getRandomGrave());
    			write.writeInt(player.getPoisonImmunity().ticksRemaining());
    			write.writeInt(player.getFireImmunity().ticksRemaining());
    			write.writeInt(player.getTeleblockTimer().ticksRemaining());
    			write.writeDouble(player.getPoisonDamage());
    			for (int i = 0; i < player.getAllotment().getFarmingStages().length; i++) {
    				write.writeInt(player.getAllotment().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getAllotment().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getFarmingHarvest().length; i++) {
    				write.writeInt(player.getAllotment().getFarmingHarvest()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getFarmingState().length; i++) {
    				write.writeInt(player.getAllotment().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getFarmingTimer().length; i++) {
    				write.writeLong(player.getAllotment().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getAllotment().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getAllotment().getFarmingWatched().length; i++) {
    				write.writeBoolean(player.getAllotment().getFarmingWatched()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingStages().length; i++) {
    				write.writeInt(player.getBushes().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getBushes().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingState().length; i++) {
    				write.writeInt(player.getBushes().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingTimer().length; i++) {
    				write.writeLong(player.getBushes().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingChance().length; i++) {
    				write.writeDouble(player.getBushes().getFarmingChance()[i]);
    			}
    			for (int i = 0; i < player.getBushes().getFarmingWatched().length; i++) {
    				write.writeBoolean(player.getBushes().getFarmingWatched()[i]);
    			}
    			for (int i = 0; i < player.getFlowers().getFarmingStages().length; i++) {
    				write.writeInt(player.getFlowers().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getFlowers().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getFlowers().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getFlowers().getFarmingState().length; i++) {
    				write.writeInt(player.getFlowers().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getFlowers().getFarmingTimer().length; i++) {
    				write.writeLong(player.getFlowers().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getFlowers().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getFlowers().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getFarmingStages().length; i++) {
    				write.writeInt(player.getFruitTrees().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getFruitTrees().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getFarmingState().length; i++) {
    				write.writeInt(player.getFruitTrees().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getFarmingTimer().length; i++) {
    				write.writeLong(player.getFruitTrees().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getFruitTrees().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getFruitTrees().getFarmingWatched().length; i++) {
    				write.writeBoolean(player.getFruitTrees().getFarmingWatched()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getFarmingStages().length; i++) {
    				write.writeInt(player.getHerbs().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getHerbs().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getFarmingHarvest().length; i++) {
    				write.writeInt(player.getHerbs().getFarmingHarvest()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getFarmingState().length; i++) {
    				write.writeInt(player.getHerbs().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getFarmingTimer().length; i++) {
    				write.writeLong(player.getHerbs().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getHerbs().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getHerbs().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingStages().length; i++) {
    				write.writeInt(player.getHops().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getHops().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingHarvest().length; i++) {
    				write.writeInt(player.getHops().getFarmingHarvest()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingState().length; i++) {
    				write.writeInt(player.getHops().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingTimer().length; i++) {
    				write.writeLong(player.getHops().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getHops().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getHops().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getHops().getFarmingWatched().length; i++) {
    				write.writeBoolean(player.getHops().getFarmingWatched()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantOne().getFarmingStages().length; i++) {
    				write.writeInt(player.getSpecialPlantOne().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantOne().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getSpecialPlantOne().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantOne().getFarmingState().length; i++) {
    				write.writeInt(player.getSpecialPlantOne().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantOne().getFarmingTimer().length; i++) {
    				write.writeLong(player.getSpecialPlantOne().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantOne().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getSpecialPlantOne().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingStages().length; i++) {
    				write.writeInt(player.getSpecialPlantTwo().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getSpecialPlantTwo().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingState().length; i++) {
    				write.writeInt(player.getSpecialPlantTwo().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingTimer().length; i++) {
    				write.writeLong(player.getSpecialPlantTwo().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getSpecialPlantTwo().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getSpecialPlantTwo().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingStages().length; i++) {
    				write.writeInt(player.getTrees().getFarmingStages()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingSeeds().length; i++) {
    				write.writeInt(player.getTrees().getFarmingSeeds()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingHarvest().length; i++) {
    				write.writeInt(player.getTrees().getFarmingHarvest()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingState().length; i++) {
    				write.writeInt(player.getTrees().getFarmingState()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingTimer().length; i++) {
    				write.writeLong(player.getTrees().getFarmingTimer()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getDiseaseChance().length; i++) {
    				write.writeDouble(player.getTrees().getDiseaseChance()[i]);
    			}
    			for (int i = 0; i < player.getTrees().getFarmingWatched().length; i++) {
    				write.writeBoolean(player.getTrees().getFarmingWatched()[i]);
    			}
    			for (int i = 0; i < player.getCompost().getCompostBins().length; i++) {
    				write.writeInt(player.getCompost().getCompostBins()[i]);
    			}
    			for (int i = 0; i < player.getCompost().getCompostBinsTimer().length; i++) {
    				write.writeLong(player.getCompost().getCompostBinsTimer()[i]);
    			}
    			for (int i = 0; i < player.getCompost().getOrganicItemAdded().length; i++) {
    				write.writeInt(player.getCompost().getOrganicItemAdded()[i]);
    			}
    			for (int i = 0; i < player.getFarmingTools().getTools().length; i++) {
    				write.writeInt(player.getFarmingTools().getTools()[i]);
    			}
    			write.writeInt(player.getSlayer().slayerMaster);
    			write.writeUTF(player.getSlayer().slayerTask);
    			write.writeInt(player.getSlayer().taskAmount);
    			write.writeBoolean(player.getMagicBookType() == SpellBook.ANCIENT);
    			write.writeBoolean(player.isBrimhavenDungeonOpen());
    			write.writeBoolean(player.hasKilledClueAttacker());
                write.flush();
    			write.close();
    		} catch (Exception ex) {
    			ex.printStackTrace();
    		}
    	}
    
        public static void load(Player player) {
        	readFile(player);
    	}//try now kk
    
    	public static void saveAllPlayers() {
            synchronized (World.getPlayers()) {
                final Player[] players = World.getPlayers();
                for (Player p : players) {
                    if (p != null && p.getIndex() != -1) {
                        try {
                            PlayerSave.save(p);
                        } catch (Exception e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                }
            }
    	}
        
        static int readFile(Player player) {
            File file = new File(directory + player.getUsername()
                    + ".txt");
            if (!file.exists()) {
                if (Server.getSingleton() != null)
                    Server.getSingleton().queueLogin(player);
                return 0;
            }
            try {
                FileInputStream inFile = new FileInputStream(file);
                DataInputStream load = new DataInputStream(inFile);
                player.setUsername(load.readUTF());
                String password = load.readUTF();
                if (!password.equalsIgnoreCase(player.getPassword())) {
                	System.out.println("Wrong login- "+password+"");
                	player.setReturnCode(Constants.LOGIN_RESPONSE_INVALID_CREDENTIALS);
                	load.close();
                	inFile.close();
                	return 3;
                } else {
                	System.out.println("correct login- "+password+"");//try bthat
                }
                
                player.setPassword(password);
                player.setStaffRights(load.readInt());
                player.getPosition().setX(load.readInt());
                player.getPosition().setLastX(
                        player.getPosition().getX());
                player.getPosition().setY(load.readInt());
                player.getPosition().setLastY(
                        player.getPosition().getY() + 1);
                player.getPosition().setZ(load.readInt());
                player.setGender(load.readInt());
                player.setAutoRetaliate(load.readBoolean());
                player.setFightMode(load.readInt());
                player.setScreenBrightness(load.readInt());
                player.setMouseButtons(load.readInt());
                player.setChatEffects(load.readInt());
                player.setSplitPrivateChat(load.readInt());
                player.setAcceptAid(load.readInt());
                player.setMusicVolume(load.readInt());
                player.setEffectVolume(load.readInt());
                player.setQuestPoints(load.readInt());
                player.setSpecialAmount((int) load.readDouble());
                player.getBankPin().setChangingBankPin(
                        load.readBoolean());
                player.getBankPin().setDeletingBankPin(
                        load.readBoolean());
                player.getBankPin()
                        .setPinAppendYear(load.readInt());
                player.getBankPin().setPinAppendDay(load.readInt());
                player.setBindingNeckCharge(load.readInt());
                player.setRingOfForgingLife(load.readInt());
                player.setRingOfRecoilLife(load.readInt());
            	int skullTimer = load.readInt();
            	if (skullTimer > 0)
            		player.addSkull(player, skullTimer);
                player.getNewComersSide().setTutorialIslandStage(
                        load.readInt(), false);
                player.getNewComersSide().setProgressValue(
                        load.readInt());
                player.setEnergy(load.readDouble());
                player.getMovementHandler().setRunToggled(load.readBoolean());
                for (int i = 0; i < player.getBankPin().getBankPin().length; i++) {
                    player.getBankPin().getBankPin()[i] = load.readInt();
                }
                for (int i = 0; i < player.getBankPin()
                        .getPendingBankPin().length; i++) {
                    player.getBankPin().getPendingBankPin()[i] = load
                            .readInt();
                }
                for (int i = 0; i < player.questData.length; i++) {
                    player.questData[i][1] = load
                            .readInt();
                }
                for (int i = 0; i < 4; i++) {
                    player.setPouchData(i, load.readInt());
                }
                for (int i = 0; i < player.getAppearance().length; i++) {
                    player.getAppearance()[i] = load.readInt();
                }
                for (int i = 0; i < player.getColors().length; i++) {
                    player.getColors()[i] = load.readInt();
                }
                AppearancePacketHandler.checkOutfitRanges(player);
                for (int i = 0; i < player.getSkill().getLevel().length; i++) {
                    player.getSkill().getLevel()[i] = load
                            .readInt();
                }
                for (int i = 0; i < player.getSkill().getExp().length; i++) {
                    player.getSkill().getExp()[i] = load.readInt();
                }
                for (int i = 0; i < 28; i++) {
                    int id = load.readInt();
                    if (id != 65535) {
                        int amount = load.readInt();
                        int timer = load.readInt();
                        if (id < Constants.MAX_ITEMS && amount > 0)  {
                            Item item = new Item(id, amount, timer);
                            if (item.getId() == 2696 || item.getId() == 2699 || item.getId() == 3510) {
                            	item = new Item(id - 1, amount, timer);
                            }
                            player.getInventory().getItemContainer().set(i, item);
                        }
                    }
                }
                for (int i = 0; i < 14; i++) {
                    int id = load.readInt();
                    if (id != 65535) {
                        int amount = load.readInt();
                        if (id < Constants.MAX_ITEMS && amount > 0)  {
                            Item item = new Item(id, amount);
                            player.getEquipment().getItemContainer().set(i, item);
                        }
                    }
                }
                try {
                    for (int i = 0; i < BankManager.SIZE; i++) {
                        int id = load.readInt();
                        if (id != 65535) {
                            int amount = load.readInt();
                            int timer = load.readInt();
                            if (id < Constants.MAX_ITEMS && amount > 0)  {
                                Item item = new Item(id, amount, timer);
                                if (item.getId() == 2696 || item.getId() == 2699 || item.getId() == 3510) {
                                	item = new Item(id - 1, amount, timer);
                                }
                                player.getBank().set(i, item);
                            }
                        }
                    }
    	            for (int i = 0; i < player.getFriends().length; i++) {
    	                player.getFriends()[i] = load.readLong();
    	            }
    	            for (int i = 0; i < player.getIgnores().length; i++) {
    	                player.getIgnores()[i] = load.readLong();
    	            }
    	            for (int i = 0; i < player.getPendingItems().length; i++) {
    	                player.getPendingItems()[i] = load.readInt();
    	                player.getPendingItemsAmount()[i] = load.readInt();
    	            }
                    player.setRunecraftNpc(load.readInt());
                    player.setMuteExpire(load.readLong());
                    player.setBanExpire(load.readLong());
                    player.setKilledTreeSpirit(load.readBoolean());
                    player.setKilledJungleDemon(load.readBoolean());
                    player.setResetBank(load.readBoolean());
                    for (int i = 0; i < 6; i++) {
                    	player.setBarrowsNpcDead(i, load.readBoolean());
                    }
                    player.setKillCount(load.readInt());
                    player.setRandomGrave(load.readInt());
                    player.getPoisonImmunity().setWaitDuration(load.readInt());
                    player.getPoisonImmunity().reset();
                    player.getFireImmunity().setWaitDuration(load.readInt());
                    player.getFireImmunity().reset();
                    player.getTeleblockTimer().setWaitDuration(load.readInt());
                    player.getTeleblockTimer().reset();
                	double poison = load.readDouble();
                    if (poison > 0) {
                    	HitDef hitDef = new HitDef(null, HitType.POISON, Math.ceil(poison)).setStartingHitDelay(30);
        				Hit hit = new Hit(player, player, hitDef);
        				PoisonEffect p = new PoisonEffect(poison, false);
        				p.initialize(hit);
                    }
        			for (int i = 0; i < player.getAllotment().getFarmingStages().length; i++) {
        				player.getAllotment().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getAllotment().getFarmingSeeds().length; i++) {
        				player.getAllotment().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getAllotment().getFarmingHarvest().length; i++) {
        				player.getAllotment().setFarmingHarvest(i, load.readInt());
        			}
        			for (int i = 0; i < player.getAllotment().getFarmingState().length; i++) {
        				player.getAllotment().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getAllotment().getFarmingTimer().length; i++) {
        				player.getAllotment().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getAllotment().getDiseaseChance().length; i++) {
        				player.getAllotment().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getAllotment().getFarmingWatched().length; i++) {
        				player.getAllotment().setFarmingWatched(i, load.readBoolean());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingStages().length; i++) {
        				player.getBushes().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingSeeds().length; i++) {
        				player.getBushes().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingState().length; i++) {
        				player.getBushes().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingTimer().length; i++) {
        				player.getBushes().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingChance().length; i++) {
        				player.getBushes().setFarmingChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getBushes().getFarmingWatched().length; i++) {
        				player.getBushes().setFarmingWatched(i, load.readBoolean());
        			}
        			for (int i = 0; i < player.getFlowers().getFarmingStages().length; i++) {
        				player.getFlowers().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFlowers().getFarmingSeeds().length; i++) {
        				player.getFlowers().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFlowers().getFarmingState().length; i++) {
        				player.getFlowers().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFlowers().getFarmingTimer().length; i++) {
        				player.getFlowers().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getFlowers().getDiseaseChance().length; i++) {
        				player.getFlowers().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getFruitTrees().getFarmingStages().length; i++) {
        				player.getFruitTrees().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFruitTrees().getFarmingSeeds().length; i++) {
        				player.getFruitTrees().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFruitTrees().getFarmingState().length; i++) {
        				player.getFruitTrees().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFruitTrees().getFarmingTimer().length; i++) {
        				player.getFruitTrees().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getFruitTrees().getDiseaseChance().length; i++) {
        				player.getFruitTrees().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getFruitTrees().getFarmingWatched().length; i++) {
        				player.getFruitTrees().setFarmingWatched(i, load.readBoolean());
        			}
        			for (int i = 0; i < player.getHerbs().getFarmingStages().length; i++) {
        				player.getHerbs().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHerbs().getFarmingSeeds().length; i++) {
        				player.getHerbs().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHerbs().getFarmingHarvest().length; i++) {
        				player.getHerbs().setFarmingHarvest(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHerbs().getFarmingState().length; i++) {
        				player.getHerbs().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHerbs().getFarmingTimer().length; i++) {
        				player.getHerbs().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getHerbs().getDiseaseChance().length; i++) {
        				player.getHerbs().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getHops().getFarmingStages().length; i++) {
        				player.getHops().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHops().getFarmingSeeds().length; i++) {
        				player.getHops().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHops().getFarmingHarvest().length; i++) {
        				player.getHops().setFarmingHarvest(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHops().getFarmingState().length; i++) {
        				player.getHops().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getHops().getFarmingTimer().length; i++) {
        				player.getHops().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getHops().getDiseaseChance().length; i++) {
        				player.getHops().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getHops().getFarmingWatched().length; i++) {
        				player.getHops().setFarmingWatched(i, load.readBoolean());
        			}
        			for (int i = 0; i < player.getSpecialPlantOne().getFarmingStages().length; i++) {
        				player.getSpecialPlantOne().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantOne().getFarmingSeeds().length; i++) {
        				player.getSpecialPlantOne().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantOne().getFarmingState().length; i++) {
        				player.getSpecialPlantOne().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantOne().getFarmingTimer().length; i++) {
        				player.getSpecialPlantOne().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getSpecialPlantOne().getDiseaseChance().length; i++) {
        				player.getSpecialPlantOne().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingStages().length; i++) {
        				player.getSpecialPlantTwo().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingSeeds().length; i++) {
        				player.getSpecialPlantTwo().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingState().length; i++) {
        				player.getSpecialPlantTwo().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getSpecialPlantTwo().getFarmingTimer().length; i++) {
        				player.getSpecialPlantTwo().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getSpecialPlantTwo().getDiseaseChance().length; i++) {
        				player.getSpecialPlantTwo().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingStages().length; i++) {
        				player.getTrees().setFarmingStages(i, load.readInt());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingSeeds().length; i++) {
        				player.getTrees().setFarmingSeeds(i, load.readInt());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingHarvest().length; i++) {
        				player.getTrees().setFarmingHarvest(i, load.readInt());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingState().length; i++) {
        				player.getTrees().setFarmingState(i, load.readInt());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingTimer().length; i++) {
        				player.getTrees().setFarmingTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getTrees().getDiseaseChance().length; i++) {
        				player.getTrees().setDiseaseChance(i, load.readDouble());
        			}
        			for (int i = 0; i < player.getTrees().getFarmingWatched().length; i++) {
        				player.getTrees().setFarmingWatched(i, load.readBoolean());
        			}
        			for (int i = 0; i < player.getCompost().getCompostBins().length; i++) {
        				player.getCompost().setCompostBins(i, load.readInt());
        			}
        			for (int i = 0; i < player.getCompost().getCompostBinsTimer().length; i++) {
        				player.getCompost().setCompostBinsTimer(i, load.readLong());
        			}
        			for (int i = 0; i < player.getCompost().getOrganicItemAdded().length; i++) {
        				player.getCompost().setOrganicItemAdded(i, load.readInt());
        			}
        			for (int i = 0; i < player.getFarmingTools().getTools().length; i++) {
        				player.getFarmingTools().setTools(i, load.readInt());
        			}
                } catch (IOException e) {
                }
                try {
                	if (player.getQuestPoints() == 1) {
                		player.getSlayer().slayerMaster = load.readInt();
                	} else {
                		load.readUTF();
                	}
                	player.setQuestPoints(1);
                } catch (IOException e) {
                	player.getSlayer().resetSlayerTask();
                }
                try {
                	player.getSlayer().slayerTask = load.readUTF();
                	player.getSlayer().taskAmount = load.readInt();
                } catch (IOException e) {
                }
                try {
                	boolean ancient = load.readBoolean();
                	player.setMagicBookType(ancient ? SpellBook.ANCIENT : SpellBook.MODERN);
                } catch (IOException e) {
                }
                try {
                	player.setBrimhavenDungeonOpen(load.readBoolean());
                } catch (IOException e) {
                }
                try {
                	player.setKilledClueAttacker(load.readBoolean());
                } catch (IOException e) {
                }
              //  player.setKilledJungleDemon(load.readBoolean());
                load.close();
                if (Server.getSingleton() != null)
                    Server.getSingleton().queueLogin(player);
                return 0;
            } catch (IOException e) {
                e.printStackTrace();
            	System.out.println("Account not loading: " + player);
                //corrupted save file
                if (Server.getSingleton() != null)
                    Server.getSingleton().queueLogin(player);
                return 0;
            }
        }
    
        public static class ConnectionAttempt {
            private static final long TIMEOUT = 5 * 60 * 1000;
            private static final int MAX_ATTEMPTS = 7;
            Misc.Stopwatch timer;
            int attempts;
    
            public ConnectionAttempt() {
                timer = new Misc.Stopwatch();
            }
    
            public void addAttempt() {
                if (attempts < MAX_ATTEMPTS)
                    attempts += 1;
                else timer.reset();
            }
            
            public void reset() {
                attempts = 0;
            }
    
            public boolean canConnect() {
                return attempts != MAX_ATTEMPTS || timer.elapsed() >= TIMEOUT;
            }
        }
    }
    WHAT I SEE IN PLAYER FILE:
    Code:
     	Valentino 	valentino      ™  ”                                           @Y        ÿÿÿÿÿÿÿÿ      Œ   (       d   @Y       ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ                             %      "   *                                   
                                                                        ‚                                                                          ã  ˆÿÿÿÿ  G   ÿÿÿÿ  N   ÿÿÿÿ  /   ÿÿÿÿ  ;   ÿÿÿÿ  …   ÿÿÿÿ  ‹   ÿÿÿÿ  	   ÿÿÿÿ  ñ   ÿÿÿÿ  µ   ÿÿÿÿ  ý   ÿÿÿÿ  “   ÿÿÿÿ  I   ÿÿÿÿ  r   ÿÿÿÿ  ,   ÿÿÿÿ  .   ÿÿÿÿ  +   ÿÿÿÿ  -   ÿÿÿÿ  /   ÿÿÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ  ÿÿ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿ      )                                 ÿÿÿ¶ÿÿÿ¶ÿÿÿ¶                                                                                                                                                                                                        ?ð      ?ð      ?ð      ?ð      ?ð      ?ð      ?ð      ?ð                                                                                              ?ð      ?ð      ?ð      ?ð                                                                                          ?ð      ?ð      ?ð      ?ð                                                                                      ?ð      ?ð      ?ð      ?ð                                                                                                              ?ð      ?ð      ?ð      ?ð      ?ð                                                                                                      ?ð      ?ð      ?ð      ?ð                                                                                          ?ð      ?ð      ?ð      ?ð                                                                                      ?ð      ?ð      ?ð      ?ð                                                                                                      ?ð      ?ð      ?ð      ?ð                                                                                                                                         
    Reply With Quote  
     

  2. #2  
    Super Donator

    StanDev's Avatar
    Join Date
    Apr 2014
    Posts
    660
    Thanks given
    82
    Thanks received
    255
    Rep Power
    592
    What extension is the player file? Does this occur on all new accounts you make?
    Reply With Quote  
     

  3. #3  
    Registered Member
    Mocro's Avatar
    Join Date
    Nov 2007
    Posts
    532
    Thanks given
    28
    Thanks received
    11
    Rep Power
    125
    Quote Originally Posted by icebrick View Post
    What extension is the player file? Does this occur on all new accounts you make?
    all character files it was .dat first but i changed to .txt but its not readable.. saving en updating char works fine
    Reply With Quote  
     

  4. #4  
    Registered Member
    natsu's Avatar
    Join Date
    Apr 2007
    Age
    32
    Posts
    3,435
    Thanks given
    1,084
    Thanks received
    676
    Rep Power
    1096
    run the player editor
    Reply With Quote  
     

  5. #5  
    Banned

    Join Date
    Jul 2015
    Posts
    607
    Thanks given
    520
    Thanks received
    660
    Rep Power
    0
    Off topic but jesus christ all those Farming fields like what the hell, that looks terribly done..
    On topic, you need to use the tool.
    Reply With Quote  
     

  6. Thankful user:


  7. #6  
    Registered Member
    Mocro's Avatar
    Join Date
    Nov 2007
    Posts
    532
    Thanks given
    28
    Thanks received
    11
    Rep Power
    125
    Quote Originally Posted by natsu View Post
    run the player editor
    i want to change it back to how it normaly was. just cant find the function what is doing it...
    Reply With Quote  
     

  8. #7  
    Author of the first public OSRSPS

    Shadowy's Avatar
    Join Date
    Sep 2009
    Age
    28
    Posts
    1,499
    Thanks given
    490
    Thanks received
    241
    Rep Power
    307
    Quote Originally Posted by Mocro View Post
    i want to change it back to how it normaly was. just cant find the function what is doing it...
    it's likely that old .txt saving was replaced with that new binary format. check a PI and rip out the text saving from that if you want it back
    Owner of OS-RSPS, the first Oldschool RuneScape Server (2014)
    Reply With Quote  
     

  9. #8  
    Banned

    Join Date
    Jul 2015
    Posts
    607
    Thanks given
    520
    Thanks received
    660
    Rep Power
    0
    Saving is done nicely in http://www.rune-server.org/runescape...i-ctf-wpe.html with the JSON format.
    Check it out
    Reply With Quote  
     

  10. #9  
    Registered Member
    Mocro's Avatar
    Join Date
    Nov 2007
    Posts
    532
    Thanks given
    28
    Thanks received
    11
    Rep Power
    125
    Quote Originally Posted by Shadowy View Post
    it's likely that old .txt saving was replaced with that new binary format. check a PI and rip out the text saving from that if you want it back
    i saw it but where is that function il try to download another pi and rip it out but i dont want to lose my features in it .

    Quote Originally Posted by Swiffy View Post
    Saving is done nicely in http://www.rune-server.org/runescape...i-ctf-wpe.html with the JSON format.
    Check it out
    im making my own way for saving character thats why i need to figure this out
    Reply With Quote  
     


Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Cant read .dat files
    By Aleka in forum Help
    Replies: 8
    Last Post: 12-16-2014, 04:13 AM
  2. read file [REP++]
    By mige5 in forum Requests
    Replies: 0
    Last Post: 08-10-2010, 11:35 AM
  3. Read files from other folder?
    By JeremyM in forum Help
    Replies: 5
    Last Post: 11-08-2009, 07:00 PM
  4. Cant read 50% of the threads
    By peterbjornx in forum Forum Related Help
    Replies: 12
    Last Post: 10-04-2009, 02:40 PM
  5. My Mapdata reader cant read some mapdata
    By ncarug02 in forum Help
    Replies: 2
    Last Post: 07-05-2009, 07:44 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •