Jump to content

The RuneLocus forum has been archived and does not accept new registrations.
Click here for more information, and click here to join the community on Discord.

Search the Community

Showing results for tags 'cache'.

The search index is currently processing. Current results may not be complete.
  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • RuneLocus
    • News & Announcements
    • Information Booth
    • Website Support
    • Introductions
    • Chat
    • Forum Games
  • RuneScape Development
    • RSPS General
    • RuneScape Private Server (RS2)
    • RuneScape Private Server (503+)
    • RuneScape Private Server (EoC 742+)
  • Other
    • Digital Art
    • Gaming
    • Webdevelopment
    • Computers
  • Marketplace
    • RuneScape Market
    • RSPS Market
    • Others Market
    • Freelance Middleman Services
  • Super Secret Club's Topics

Product Groups

  • RuneLocus Pro

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 6 results

  1. I've been attempting to load the 474 landscape objects in my 498 Arios client/server without much luck. So far, I've tried the following: - Just directly copying map file 382 and 383 (Lumbridge) from the 474 cache using Harlan's Cache Manager * Result: Ground tiles work as expected because there is no XTEA encryption, but all objects fail to load within the affected region, and the console outputs invalid XTEA errors - all other regions work - Copy the 'decryptXtea' function from the 474 client deob into my 498 client, and use the 474 XTEA decrypt code when the 383 file is being processed * Result: Invalid GZIP header error, Invalid XTEA errors, and the rest of the other chunks fail to load their objects, too - GZipped the 383 file before putting it into the 498 cache * Result: When logging in, the loading bar gets to 31% and freezes with null reference errors in the console - Changed XTEAs for region 12850 (Lumbridge) and re-packed the packed.mxk file, but there was no change (These keys could be wrong, they come from a random "474 XTEAs.txt" file I downloaded at some point.) * Result: Same as the first result (no objects appear + invalid XTEA errors) - Tried XTEAs set to 0,0,0,0 for region 12850 in the packed.mxk file * Result: Same as the first result (no objects appear + invalid XTEA errors) - Tested to ensure Harlan's Cache Manager isn't corrupting the files by replacing the 383 file in my 498 cache with itself * Result: The 498 objects for map 383 load without error (so it isn't the cache manager messing it up) I'm not sure what else to try, am I forgetting a vital or obvious step? I could use another revision besides 474, so long as it looks similar to how Runescape looked just before or after the grand exchange was added. My ultimate goal is to re-create Runescape like it was around 2006/2007, but with full screen. I'm trying to match the experience of RS by recording all of the quests + all possible chat dialogues from OSRS, and manually re-creating missing content that the Arios team didn't get to. The landscape content in Arios 498 isn't as old as I'd like RS to look, but I also really like the server structure they already wrote so I'd like to just downscale my Arios 498 landscape to 474 or similar. Thank you for reading.
  2. Hello, I'm working on my first rsps ever it is a 317 pi based source and client and I'm currently having a problem with the sprites I import into the cache I can get them to load perfectly fine however there is a small 2-3 pixel wide purple area around my sprite the rest of the purple background isn't being displayed so I'm guessing that some anti-aliasing or some sort of smoothing is changing the colour/opacity of the purple directly around the sprite this is practically impossible to remove manual and I'm pretty sure this is to do with my editor which is Krita is there some way to fix this or some way of creating the sprites in Krita that will prevent this problem? thankyou.
  3. RSPS Revision: Matrix 718/667. Services can start from 10$ - Taking in consideration my profissionalism and my commitment with stuff I do! What kind of services do I offer? - Custom interfaces with scrollbars, hover buttons, items containers, and some other CS2 Scripts. - Custom items packing, cache editing, sprites editing (cache in general). - Achievements system. - Forums services (Setup/Blocks). - Vote for rewards installing. - Custom bosses CombatScripts. - Boss pets, skilling pets. - Server content in general. - Gamemodes, Iron man modes. - Custom features (you design, order and I code :D) - Login screen editing, loading screens gfx. - GFX basic and basic-intermediary website services (HTML,PHP and CSS). BE CAREFUL WITH IMPOSTERS
  4. Hello, the problem is i get black screen and a broken text once my cache is downloading, could you help me please? Here are a piece of code, maybe this you need... /** DOWNLOADING LOADING IMAGES **/ try { for(int i = 1; i <= 3; i++) { if(!new File(signlink.findcachedir() + "load"+i+".png").exists()) { HttpDownloadUtility.downloadFile("http://LINK.net/client/load"+i+".png", signlink.findcachedir()); } loadingSprites[i - 1] = Toolkit.getDefaultToolkit().getImage(signlink.findcachedir() + "load"+i+".png"); } super.graphics.drawImage(loadingSprites[0], 0, 0, null); super.graphics.drawImage(loadingSprites[1], 5, clientHeight - 35, null); } catch(Exception e) { e.printStackTrace(); }
  5. AstralPS

    Cache downloader

    Hey guys, i can't find a fix and i don't know what i did wrong, please help.. ;( This is what error i got... Used this guide: This is where i uploaded files.. Cache downloader Checked alot of times what i did wrong but still can't find.. help plz
  6. I have changed my cache downloader links to the correct links.. even added the 1 at the end of the dropbox link. And changed the CacheDirectory to my home folder like it should.. but when I put the cache manually in the home folder everything works just like it should but when I take it out, it doesn't redownload or anything just goes straight to Error Connecting to Server. So I took the source and ran it in eclipse i see in the console that the cache is missing (which is obvious because i stated that I removed it from my user home folder) so it doesn't download the cache. Here is my CacheDownloader.java import java.awt.Color; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.URL; import java.net.URLConnection; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; import javax.swing.JOptionPane; import javax.swing.JProgressBar; import javax.swing.border.EmptyBorder; import javax.swing.plaf.basic.BasicProgressBarUI; @SuppressWarnings("all") public class CacheDownloader implements Runnable { public static final String ZIP_URL = "https://dl.dropbox.com/s/17gutom1yqarmii/VencillioCache.zip?dl=1"; public static final String VERSION_URL = "https://dl.dropbox.com/s/pccmbeuufho076w/cacheVersion.txt"; public static final String VERSION_FILE = ClientConstants.CACHE_LOCATION + "cacheVersion.dat"; private Client client; private Client frame; public CacheDownloader(Client client) { this.client = client; } public double getCurrentVersion() { try { BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(VERSION_FILE))); return Double.parseDouble(br.readLine()); } catch (Exception e) { return 0.1; } } public double getNewestVersion() { try { URL tmp = new URL(VERSION_URL); BufferedReader br = new BufferedReader(new InputStreamReader(tmp.openStream())); return Double.parseDouble(br.readLine()); } catch (Exception e) { handleException(e); return -1; } } private void handleException(Exception e) { StringBuilder strBuff = new StringBuilder(); strBuff.append("Something went wrong downloading your cache!\r\n"); strBuff.append("Please copy the error code and contact us via forums for assistantce.\r\n"); strBuff.append("'No WebSite Yet'\r\n\r\n"); strBuff.append("Error Code: [" + e.getClass().getSimpleName() + "]"); alert("Vencillio", strBuff.toString(), true); int option = JOptionPane.showConfirmDialog(null, "Would you like to visit our forums?", "Beta Error", JOptionPane.YES_NO_OPTION); if (option == 0) { client.openURL("NO WEBSITE YET..."); } else { System.exit(0); } } private void alert(String msg) { alert("Message", msg, false); } private void alert(String title, String msg, boolean error) { JOptionPane.showMessageDialog(null, msg, title, (error ? JOptionPane.ERROR_MESSAGE : JOptionPane.PLAIN_MESSAGE)); } @Override public void run() { client.drawLoadingText(0, "Checking Versions"); try { double newest = getNewestVersion(); if (newest > this.getCurrentVersion()) { client.drawLoadingText(0, "Update found!"); StringBuilder strBuff = new StringBuilder(); strBuff.append("Update version " + newest + " has been found!\n"); strBuff.append("Client will now automatically update."); alert("United Servers", strBuff.toString(), true); new ProgressBar(); updateClient(); client.drawLoadingText(0, "United Servers has been updated!"); alert("United Servers", "Download finished! Restart the Client to start playing!", false); OutputStream out = new FileOutputStream(VERSION_FILE); out.write(String.valueOf(newest).getBytes()); Runtime.getRuntime().exec("java -jar myApp.jar"); System.exit(0); } else { } } catch (Exception e) { handleException(e); } } private void updateClient() { File clientZip = downloadClient(); if (clientZip != null) { unZip(clientZip); } } private void unZip(File clientZip) { try { unZipFile(clientZip, new File(ClientConstants.CACHE_LOCATION)); clientZip.delete(); } catch (IOException e) { handleException(e); } } private void unZipFile(File zipFile, File outFile) throws IOException { ZipInputStream zin = new ZipInputStream(new BufferedInputStream(new FileInputStream(zipFile))); ZipEntry e; long max = 0; long curr = 0; while ((e = zin.getNextEntry()) != null) max += e.getSize(); zin.close(); ZipInputStream in = new ZipInputStream(new BufferedInputStream(new FileInputStream(zipFile))); while ((e = in.getNextEntry()) != null) { if (e.isDirectory()) new File(outFile, e.getName()).mkdirs(); else { FileOutputStream out = new FileOutputStream(new File(outFile, e.getName())); byte[] b = new byte[1024]; int len; while ((len = in.read(b, 0, b.length)) > -1) { curr += len; out.write(b, 0, len); setUnzipPercent((int) ((curr * 100) / max)); } out.flush(); out.close(); } } } public int percent = 0; public void setDownloadPercent(int amount) { percent = amount; ProgressBar.updateValue(amount); ProgressBar.updateString("(1/2) Downloading cache - " + ProgressBar.getValue() + "%"); client.drawLoadingText(amount, "(1/2) Downloading United Servers Cache" + " - " + amount + "%"); } public int percent2 = 0; public void setUnzipPercent(int amount2) { percent2 = amount2; ProgressBar.updateValue(amount2); ProgressBar.updateString("(2/2) Extracting cache - " + ProgressBar.getValue() + "%"); client.drawLoadingText(amount2, "(2/2) Extracting United Servers Cache" + " - " + amount2 + "%"); } private File downloadClient() { File ret = new File(ClientConstants.CACHE_LOCATION + "cache.zip"); try { OutputStream out = new FileOutputStream(ret); URLConnection conn = new URL(ZIP_URL).openConnection(); InputStream in = conn.getInputStream(); long max = conn.getContentLength(); long curr = 0; byte[] b = new byte[1024]; int len; while ((len = in.read(b, 0, b.length)) > -1) { out.write(b, 0, len); curr += len; setDownloadPercent((int) ((curr * 100) / max)); } out.flush(); out.close(); in.close(); return ret; } catch (Exception e) { handleException(e); ret.delete(); return null; } } } Here is SignLink.java import java.applet.Applet; 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 java.io.RandomAccessFile; import java.net.InetAddress; import java.net.Socket; import java.net.URL; public final class Signlink implements Runnable { public static void startpriv(InetAddress inetaddress) { threadliveid = (int) (Math.random() * 99999999D); if (active) { try { Thread.sleep(500L); } catch (Exception _ex) { } active = false; } socketreq = 0; threadreq = null; dnsreq = null; savereq = null; urlreq = null; socketip = inetaddress; Thread thread = new Thread(new Signlink()); thread.setDaemon(true); thread.start(); while (!active) { try { Thread.sleep(50L); } catch (Exception _ex) { } } } public void run() { active = true; uid = getuid(findcachedir()); try { cache_dat = new RandomAccessFile(findcachedir() + "main_file_cache.dat", "rw"); for (int j = 0; j < 6; j++) { cache_idx[j] = new RandomAccessFile(findcachedir() + "main_file_cache.idx" + j, "rw"); } } catch (Exception exception) { exception.printStackTrace(); } for (int i = threadliveid; threadliveid == i;) { if (socketreq != 0) { try { socket = new Socket(socketip, socketreq); } catch (Exception _ex) { socket = null; } socketreq = 0; } else if (threadreq != null) { Thread thread = new Thread(threadreq); thread.setDaemon(true); thread.start(); thread.setPriority(threadreqpri); threadreq = null; } else if (dnsreq != null) { try { dns = InetAddress.getByName(dnsreq).getHostName(); } catch (Exception _ex) { dns = "unknown"; } dnsreq = null; } else if (savereq != null) { if (savebuf != null) try { FileOutputStream fileoutputstream = new FileOutputStream(findcachedir() + savereq); fileoutputstream.write(savebuf, 0, savelen); fileoutputstream.close(); } catch (Exception _ex) { } if (waveplay) { waveplay = false; } if (midiplay) { midi = findcachedir() + savereq; midiplay = false; } savereq = null; } else if (urlreq != null) { try { System.out.println("urlstream"); urlstream = new DataInputStream((new URL(mainapp.getCodeBase(), urlreq)).openStream()); } catch (Exception _ex) { urlstream = null; } urlreq = null; } try { Thread.sleep(50L); } catch (Exception _ex) { } } } public static String findcachedir() { File file = new File(System.getProperty("user.home") + "/VencillioCache/"); if (!file.exists()) { if (!file.mkdir()) return secondDir(); } return System.getProperty("user.home") + "/VencillioCache/"; } public static String secondDir() { File file = new File("c:/VencillioCache/"); if (!file.exists()) file.mkdir(); return file.toString(); } private static int getuid(String s) { try { File file = new File(s + "uid.dat"); if (!file.exists() || file.length() < 4L) { DataOutputStream dataoutputstream = new DataOutputStream(new FileOutputStream(s + "uid.dat")); dataoutputstream.writeInt((int) (Math.random() * 99999999D)); dataoutputstream.close(); } } catch (Exception _ex) { } try { DataInputStream datainputstream = new DataInputStream(new FileInputStream(s + "uid.dat")); int i = datainputstream.readInt(); datainputstream.close(); return i + 1; } catch (Exception _ex) { return 0; } } public static synchronized Socket opensocket(int i) throws IOException { for (socketreq = i; socketreq != 0;) try { Thread.sleep(50L); } catch (Exception _ex) { } if (socket == null) throw new IOException("could not open socket"); else return socket; } public static synchronized DataInputStream openurl(String s) throws IOException { for (urlreq = s; urlreq != null;) try { Thread.sleep(50L); } catch (Exception _ex) { } if (urlstream == null) throw new IOException("could not open: " + s); else return urlstream; } public static synchronized void dnslookup(String s) { dns = s; dnsreq = s; } public static synchronized void startthread(Runnable runnable, int i) { threadreqpri = i; threadreq = runnable; } public static synchronized boolean wavesave(byte abyte0[], int i) { if (i > 0x1e8480) return false; if (savereq != null) { return false; } else { wavepos = (wavepos + 1) % 5; savelen = i; savebuf = abyte0; waveplay = true; savereq = "sound" + wavepos + ".wav"; return true; } } public static synchronized boolean wavereplay() { if (savereq != null) { return false; } else { savebuf = null; waveplay = true; savereq = "sound" + wavepos + ".wav"; return true; } } public static synchronized void midisave(byte abyte0[], int i) { if (i > 0x1e8480) return; if (savereq != null) { } else { midipos = (midipos + 1) % 5; savelen = i; savebuf = abyte0; midiplay = true; savereq = "jingle" + midipos + ".mid"; } } public static void reporterror(String s) { System.out.println("Error: " + s); } private Signlink() { } public static final int clientversion = 317; public static int uid; public static int storeid = 32; public static RandomAccessFile cache_dat = null; public static final RandomAccessFile[] cache_idx = new RandomAccessFile[6]; public static boolean sunjava; public static Applet mainapp = null; private static boolean active; private static int threadliveid; private static InetAddress socketip; private static int socketreq; private static Socket socket = null; private static int threadreqpri = 1; private static Runnable threadreq = null; private static String dnsreq = null; public static String dns = null; private static String urlreq = null; private static DataInputStream urlstream = null; private static int savelen; private static String savereq = null; private static byte[] savebuf = null; private static boolean midiplay; private static int midipos; public static String midi = null; public static int midivol; public static int midifade; private static boolean waveplay; private static int wavepos; public static int wavevol; public static boolean reporterror = true; public static String errorname = ""; } I am not sure if it is really downloading or not because when i take my original cache files out it gets replaced when I open the client but maybe it is not downloading completely or something because all the files are there... but I guess not working with the client. When I replace all the files with my original it starts back again. And both of these files are the same file the one that it is suppose to be downloading and the my original files are indeed the same files..
×
×
  • Create New...