|
Hello
I'm trying to add 634 animations, but ingame I don't have any animations at all?
This is what I did:
*Downloaded the 634 data from this link: https://www.rune-server.ee/runescape...634-667-a.html
*Repacked all animation files in .gz format with galkon's index repacking way using index 2
*Replaced the seq.dat in the cache using tom's cache suite in config.jag
*Replaced method531 in class36
*Replaced load method in class36
*Replaced method528 in class36
*Replaced class18
*Replaced unpackConfig in Animation.java
*Replaced readValues in Animation.java
*Added public static client instance; in client.java and added instance = this; in init method
*ChangedtoCode:if(onDemandData.dataType == 1 && onDemandData.buffer != null) Class36.load(onDemandData.buffer);in onDemandQueueCode:if(onDemandData.dataType == 1 && onDemandData.buffer != null) Class36.load(onDemandData.ID, onDemandData.buffer);
*made onDemandFetcher in client.java public
*in startup method in client.java I removed:Code:drawLoadingText(65, "Requesting animations"); int k = onDemandFetcher.getVersionCount(1); for(int i1 = 0; i1 < k; i1++) onDemandFetcher.method558(1, i1); while(onDemandFetcher.getNodeCount() > 0) { int j1 = k - onDemandFetcher.getNodeCount(); if(j1 > 0) drawLoadingText(65, "Loading animations - " + (j1 * 100) / k + "%"); processOnDemandQueue(); try { Thread.sleep(100L); } catch(Exception _ex) { } if(onDemandFetcher.anInt1349 > 3) { loadError(); return; } }
Bump
Verzonden vanaf mijn iPhone met Tapatalk
Why remove requesting animations from startup? Do you have crc disabled?
Bump
Verzonden vanaf mijn iPhone met Tapatalk
Well this is the load method I'm using for 667 anims, could work for you?
Code:public static void load(int file, byte[] fileData) { try { Stream stream = new Stream(fileData); skinList class18 = new skinList(stream); int k1 = stream.readUnsignedWord(); animationlist[file] = new animationFrames[k1]; int ai[] = new int[500]; int ai1[] = new int[500]; int ai2[] = new int[500]; int ai3[] = new int[500]; for (int l1 = 0; l1 < k1; l1++) { int i2 = stream.readUnsignedWord(); animationFrames animationFrames = animationlist[file][i2] = new animationFrames(); animationFrames.aClass18_637 = class18; int j2 = stream.readUnsignedByte(); int l2 = 0; int k2 = -1; for (int i3 = 0; i3 < j2; i3++) { int j3 = stream.readUnsignedByte(); if (j3 > 0) { if (class18.anIntArray342[i3] != 0) { for (int l3 = i3 - 1; l3 > k2; l3--) { if (class18.anIntArray342[l3] != 0) continue; ai[l2] = l3; ai1[l2] = 0; ai2[l2] = 0; ai3[l2] = 0; l2++; break; } } ai[l2] = i3; short c = 0; if (class18.anIntArray342[i3] == 3) c = (short) 128; if ((j3 & 1) != 0) ai1[l2] = (short) stream.readShort2(); else ai1[l2] = c; if ((j3 & 2) != 0) ai2[l2] = stream.readShort2(); else ai2[l2] = c; if ((j3 & 4) != 0) ai3[l2] = stream.readShort2(); else ai3[l2] = c; k2 = i3; l2++; } } animationFrames.anInt638 = l2; animationFrames.anIntArray639 = new int[l2]; animationFrames.anIntArray640 = new int[l2]; animationFrames.anIntArray641 = new int[l2]; animationFrames.anIntArray642 = new int[l2]; for (int k3 = 0; k3 < l2; k3++) { animationFrames.anIntArray639[k3] = ai[k3]; animationFrames.anIntArray640[k3] = ai1[k3]; animationFrames.anIntArray641[k3] = ai2[k3]; animationFrames.anIntArray642[k3] = ai3[k3]; } } } catch (Exception exception) { } }
I retried it, but still no luck ;(
I'm using this data btw:
https://www.rune-server.ee/runescape...634-667-a.html
Well heres my entire class36, if this doesn't work then I'm sorry but I don't know what's wrong
Code:public final class animationFrames { public static void method528(int i) { animationlist = new animationFrames[7000][0]; } public static void load(int file, byte[] fileData) { try { Stream stream = new Stream(fileData); skinList class18 = new skinList(stream); int k1 = stream.readUnsignedWord(); animationlist[file] = new animationFrames[k1]; int ai[] = new int[500]; int ai1[] = new int[500]; int ai2[] = new int[500]; int ai3[] = new int[500]; for (int l1 = 0; l1 < k1; l1++) { int i2 = stream.readUnsignedWord(); animationFrames animationFrames = animationlist[file][i2] = new animationFrames(); animationFrames.aClass18_637 = class18; int j2 = stream.readUnsignedByte(); int l2 = 0; int k2 = -1; for (int i3 = 0; i3 < j2; i3++) { int j3 = stream.readUnsignedByte(); if (j3 > 0) { if (class18.anIntArray342[i3] != 0) { for (int l3 = i3 - 1; l3 > k2; l3--) { if (class18.anIntArray342[l3] != 0) continue; ai[l2] = l3; ai1[l2] = 0; ai2[l2] = 0; ai3[l2] = 0; l2++; break; } } ai[l2] = i3; short c = 0; if (class18.anIntArray342[i3] == 3) c = (short) 128; if ((j3 & 1) != 0) ai1[l2] = (short) stream.readShort2(); else ai1[l2] = c; if ((j3 & 2) != 0) ai2[l2] = stream.readShort2(); else ai2[l2] = c; if ((j3 & 4) != 0) ai3[l2] = stream.readShort2(); else ai3[l2] = c; k2 = i3; l2++; } } animationFrames.anInt638 = l2; animationFrames.anIntArray639 = new int[l2]; animationFrames.anIntArray640 = new int[l2]; animationFrames.anIntArray641 = new int[l2]; animationFrames.anIntArray642 = new int[l2]; for (int k3 = 0; k3 < l2; k3++) { animationFrames.anIntArray639[k3] = ai[k3]; animationFrames.anIntArray640[k3] = ai1[k3]; animationFrames.anIntArray641[k3] = ai2[k3]; animationFrames.anIntArray642[k3] = ai3[k3]; } } } catch (Exception exception) { } } public static void nullLoader() { animationlist = null; } public static animationFrames method531(int int1) { try { int int2 = int1 >> 16; int1 = int1 & 0xffff; if (animationlist[int2].length == 0) { client.instance.onDemandFetcher.method558(1, int2); return null; } return animationlist[int2][int1]; } catch (Exception ex) { ex.printStackTrace(); return null; } } public static boolean method532(int i) { return i == -1; } private animationFrames() { } private static animationFrames animationlist[][]; public int anInt636; public skinList aClass18_637; public int anInt638; public int anIntArray639[]; public int anIntArray640[]; public int anIntArray641[]; public int anIntArray642[]; }
« Previous Thread | Next Thread » |
Thread Information |
Users Browsing this ThreadThere are currently 1 users browsing this thread. (0 members and 1 guests) |