void storeInit () {
        localstorefile = getConfigPath(eng.getClass().getName() + ".store");
        if (localstorefile == null) return;
        try {
            BufferedReader reader;
            try {
                File file = new File(localstorefile);
                // do nothing if file does not yet exist
                if (!file.exists()) return;
                reader = new BufferedReader(new FileReader(file));
            }
            catch (java.security.AccessControlException e) {
                // we're not allowed to look at the file, try it as url
                URL url = new URL(localstorefile);
                reader = new BufferedReader(new InputStreamReader(
                                                                  url.openStream()));
            }
            // StringBuffer text = new StringBuffer();
            String line;
            while (true) {
                line = reader.readLine();
                if (line == null) break;
                String name = line.substring(0, line.indexOf("\t"));
                String rest1 = line.substring(line.indexOf("\t") + 1);
                String type = rest1.substring(0, rest1.indexOf("\t"));
                String value = rest1.substring(rest1.indexOf("\t") + 1);
                if (type.equals("int")) {
                    localstore.put(name, new Integer(Integer.parseInt(value)));
                }
                else if (type.equals("double")) {
                    localstore.put(name, new Double(Double.parseDouble(value)));
                }
                else if (type.equals("String")) {
                    localstore.put(name, value);
                }
                else {
                    throw new JGameError("Unknown type " + type);
                }
            }
            reader.close();
        }
        catch (IOException e) {
            throw new JGameError("Error reading file '" + localstorefile + "'.", false);
        }
    }