Jump to content

Search the Community

Showing results for tags 'runesource'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • 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

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



Found 16 results

  1. [CENTER][IMG]http://i.imgur.com/WtjFhXn.png[/IMG] [URL=http://zarketh.com/play.html][IMG]http://i.imgur.com/tSKWtK6.png[/img][/URL] [URL=http://www.zarketh.com/][IMG]http://i.imgur.com/woRck82.png[/img][/URL][URL=http://zarketh.com/forum][IMG]http://i.imgur.com/PFPEJ8Y.png[/img][/URL] [IMG]http://i40.tinypic.com/2n00opx.png[/img] [IMG]http://i.imgur.com/FeGTXeQ.gif[/IMG][IMG]http://i.imgur.com/sKxEY81.gif[/IMG] [IMG]http://i.imgur.com/YTEufEC.png[/IMG][IMG]http://i.imgur.com/MkvMKws.png[/IMG]x [IMG]http://i.imgur.com/sXr3RPg.png[/IMG] [COLOR="#FF0000"]I will add more media very soon[/COLOR] [video=youtube;nFL7Z2VOC0I]http://www.youtube.com/watch?v=nFL7Z2VOC0I[/video] Please note this video was recorded in one of the past versions of Zarketh. However, we believe it still gives a just view of what to expect from this project. However, we will be updating the video to include newer content! [/CENTER]
  2. The title says it all, where i locate the file to change the xp rates? My server is at x10 and i want x20.
  3. Hello everybody, i have a bug here. My bug is that Npcs are agressive when you're higher level than him. Example : I'm lvl 126 and lvl 20 dark wizards and level 7 wizards attack me, when it is supposed to be the double of their level +1 that make them unaggressive. My brother play my server hes lvl 3 skiller and he doesn't get attack by skeletons, scorpions, etc. Where can i fix this bug and where do i locate it in Runesource : My source is a Runescape 2006 remake. [ATTACH=CONFIG]10053[/ATTACH]
  4. Hello. I've decided to try out a bit with the Azure RuneSource source just to have fun and learn from it. But I get these errors when I try to run the source in Eclipse (because if I Compile and Run it with the normal Batch files I get even more errors): [code] com.thoughtworks.xstream.converters.ConversionException: Cannot construct com.rs2.model.players.ItemManager$ItemDefinition as it does not have a no-args constructor : Cannot construct com.rs2.model.players.ItemManager$ItemDefinition as it does not have a no-args constructor ---- Debugging information ---- message : Cannot construct com.rs2.model.players.ItemManager$ItemDefinition as it does not have a no-args constructor cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException cause-message : Cannot construct com.rs2.model.players.ItemManager$ItemDefinition as it does not have a no-args constructor class : java.util.ArrayList required-type : com.rs2.model.players.ItemManager$ItemDefinition path : /list/itemDef line number : 2 ------------------------------- at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:89) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:68) at com.thoughtworks.xstream.converters.collections.CollectionConverter.unmarshal(CollectionConverter.java:61) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137) at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909) at com.thoughtworks.xstream.XStream.fromXML(XStream.java:861) at com.rs2.model.players.ItemManager.loadItemDefinitions(ItemManager.java:216) at com.rs2.util.XStreamUtil.loadAllFiles(XStreamUtil.java:69) at com.rs2.Server.run(Server.java:57) at java.lang.Thread.run(Unknown Source) Caused by: com.thoughtworks.xstream.converters.reflection.ObjectAccessException: Cannot construct com.rs2.model.players.ItemManager$ItemDefinition as it does not have a no-args constructor at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.newInstance(PureJavaReflectionProvider.java:71) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.instantiateNewInstance(AbstractReflectionConverter.java:308) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:161) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) ... 19 more [/code] Also when I run the Client (Eclipse says it's called 'Tempest_Base') as an Applet I get an empty applet and not the normal gameclient. It's probably easy but, can someone tell me how to fix that? The Light.
  5. [url=http://www.moparscape.org/smf/index.php/topic,653178.0.html][b]Development Thread [Started In October][/b][/url] [url=https://github.com/lare96/asteria_317/archive/master.zip][u][b][SIZE=4]DOWNLOAD ASTERIA HERE[/SIZE][/b][/u][/url] [url=https://github.com/lare96/asteria_317/][u][b][SIZE=4]VIEW THE REPOSITORY BEFORE DOWNLOADING HERE[/SIZE][/b][/u][/url] [u][b][SIZE=2][COLOR="#FF0000"]If you are using this you have to create the 'players' folder in ./data/ for saving to work![/COLOR][/SIZE][/b][/u] [b][u]What is Asteria?[/u][/b] Asteria is an [b]open source[/b] #317 emulator based off of Runesource by blakeman8192 that I have been working on for some time now. If you are considering downloading, you might also want to download an IDE as it'd be in your best interest to use one while programming on this (and in general). [b]There is no run.bat[/b] [b]There is no compile.bat[/b] If you want to use this and you don't have an IDE, write your own. [u][b]Why should I use Asteria?[/b][/u] [list] [*][u]Lightweight[/u] One noticeable feature about the original Runesource is that it's very lightweight, and while developing Asteria I've made a huge effort to keep it that way. All external files are either parsed in gson or with a scanner resulting in a very fast start up despite well over 15 files being loaded. Character files are also parsed in gson which results in a very fast login speed, whereas with wL it literally takes seconds to parse a character file because of the way its done. I've even seen some wL based servers serializing/deserializing player data using the [i]java.io.Serializable[/i] class which is a horrible and extremely lazy way to do it for many reasons. [*][u]Safe[/u] When starting out with Runesource there were many issues I had to face, especially with packets and entity updating. By using Asteria you're saving yourself the time and effort of re-writing some inefficient code and figuring out the source of weird bugs. Unlike most wL based servers, this cannot be crashed by socket flooders (SYI, Runerebels, Blakeman8192's stress tester, etc.). This is due to the [i]HostGateway[/i] and [i]HostThrottler[/i] classes. The host gateway makes sure that only a certain amount of client -> server sessions can be held at once (default 1, can be changed), and the host throttler makes sure that only a certain amount of connections from the same host can be made in a second (default 1, can be changed). This prevents the flooder from logging in many clients at extremely fast rates, and even if the flooder is set to log in clients at a slower rate, the amount of clients that can log in will be limited to the amount of client -> server sessions can be held at once, which [b]should[/b] be one. There are also no gameplay jeopardizing bugs known as of yet. [*][u]Has foundation[/u] Yes the original Runesource is very lightweight, so what's the problem? It has literally [b]no[/b] foundation whatsoever. What do I mean by foundation? I mean opportunity for implementation. But what do I mean by opportunity for implementaion? OOP. I'm not bashing blake for the lack of OOP because that's what Runesource was designed to do: mimic the design of wL. But with that said, its extremely hard to develop on a server that no foundation whatsoever. Think of building a house: you start with the foundation and then you use the foundation to build more and so on, which is exactly how Java is designed to work. In order to do things as efficiently as possible, I'm trying to make sure everything I do has some sort of 'foundation' for future implementation. I'm happy to say I've achieved this all while managing to keep the server relatively lightweight :) [*][u]Documented[/u] Jesus freaking christ I cannot express how annoying it is programming on a server with little to no documentation. I can assure you when using Asteria, things that aren't familiar to the novice programmer are [b]extensively[/b] documented in order to make an effort to help them understand what the code is doing. Also, the worst thing other than no documentation is downloading a source and finding out it has a crapload of hidden problems and bugs! [b]Especially[/b] when you've started work on it already. Any and all known things that are unfinished and/or have problems are all documented with the [i]FIXME[/i] tag (eclipse users should know what I'm talking about) and any important notes or things that I want the user to know are documented with the [i]XXX[/i] tag so you can navigate to them easier using the tasks tab. Instead of the 'notes' folder being a dump for coordinates, it actually consists of... notes. Helpful code and explanations that may help the user working on Asteria. I've also saved a few webpages I have found useful from moparscape and rune-server so they can be opened conveniently in the eclipse web browser and can be directly referenced while programming. [/list] [SPOILER=Pictures][u][b]Pictures[/b][/u] For you assholes that just skipped everything I just wrote above and are looking for the pictures, here you go. [img]http://i891.photobucket.com/albums/ac113/zezimo52/a995f585-f2ac-4ac8-9d70-a0eea5b43e20_zpsce260f57.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/ea6bbf92-b306-4fab-a43f-05e806d97802_zps839c8cda.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/itembouns_zps171068b8.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/theft1_zpsb573271e.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/theft2_zps2e64bc83.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/theft3_zps06b68b3d.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/gui_zps40511f9a.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/essence_mining_zps172bdc5e.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/mining_guild_zps7d9cf879.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/prospecting_zps68b99840.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/woodmulti_zps77937363.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/prayer2_zpsb648d384.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/prayer1_zpsc2f2105b.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/firemaking_zpsd1ff473a.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/shop2_zpsfa170743.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/asteria6_zps9e75503e.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/asteria3_zps7d783183.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/asteria1_zps9a3155b2.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/combat_zpsc37dee76.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/eating_zps131a3a4f.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/runecrafting_zps728c22f0.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/fishing_zps551836af.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/prayer_zps29014654.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/runecrafting2_zps92571003.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/runecrafting3_zps0ba63762.png[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/runecrafting-gif_zps725578bf.gif[/img] [img]http://i891.photobucket.com/albums/ac113/zezimo52/firecooking_zps9fb5e0bd.png[/img][/SPOILER] [u][b]Thanks[/b][/u] In order from greatest to least importance, thank you: blakeman8192 AtomicInt_ Vix t4 Wintercanon Vain_
  6. runesourcev

    06 Prime™

    [IMG]http://i41.tinypic.com/25ri1dy.png[/IMG] view thread here for now gotta convert threads [COLOR=rgb(0, 179, 0)][IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/KbkQ8.gif[/IMG] NPC thievery working with correct stunning formula Can thieve from stalls and can get caught by surrounding guards Doors lockpicking and chests Correct animations and graphics used [IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/5zdcP.gif[/IMG] Cutting gems Making amulets, necklaces, and rings Stringing amulets and necklaces Tanning normal, hard, and dragon hide Crafting normal, hard, snakeskin, and dragon hide Crafting snakeskin Spinning wool and flax Making pottery Attaching studs [IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/bUmTj.gif[/IMG] Use of the Abyss Rock mining Tendrils chopping Boil burning Eyes distracting Gap crossing Passage Skulled when entering Prayer drained to 0 Dark mage repairing pouches All altars working Correct multiple crafting Use of Pouches included Talismans "pull" to altars Tiaras enchanting Combining runes and their uses Mist runes Dust runes Mud runes Smoke runes Steam runes Lava runes Binding necklace(100% of combining rune if wielded, and has 15 charges) [IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/I4pJ6.gif[/IMG] All logs can be fletched Option interface for short or long bow (shafts if normal log) Can string bows Can make bolt-tips Darts Brutal arrows making Bow stringing Can make arrows [IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/HtjDm.gif[/IMG] All slayer masters Every monsters added for every tasks Burthorpe tasks Canifis tasks Edgeville tasks Lost city tasks Shilo village tasks Tips on killing monsters 'Special monsters' requires a specific slayer level and equipment to slay Slayer shops All slayer masters working Can ask for an easier task at burthorpe if you have a too hard task All equipment working Item that finishes off some monsters Equipment that are required to fight some monsters Special monsters(Zygomite and mogre) Slayer gem working [IMG]http://web.archive.org/web/20121116125603im_/http://i.imgur.com/6DPd9.gif[/IMG] Allotments All vegetables working Correct crop timings Flowers All flowers and their effects working Correct flower timings Herbs All herbs working Correct herbs timings Hops All hops working Correct hops timings Fruit Trees All fruit trees working Correct sapling growth timings Correct fruit tree growth timings Trees All trees working Correct sapling growth timings Correct tree growth timings Gardeners Watch over crops working Correct payments per type of crop Compost Bin Supercompost making Compost making Bushes berries regrowing after being picked Correct bush timings All bushes working Tool Leprechaun Store items working Swaps noted items All farming patches working Correct disease chance algorithm Special plants Spirit trees teleport to tree gnome Calquat trees Belladona trees Cactus trees All tools working Magic secateurs[/COLOR]
  7. Create le package. Give le name 'action' [CODE] package com.asgarniars.rs2.action; import com.asgarniars.rs2.model.Entity; /** * A <code>Tickable</code> used for handling game actions. * * [MENTION=52317]auth[/MENTION]or Graham Edgecombe * [MENTION=52317]auth[/MENTION]or Joshua Barry * */ public abstract class Action { /** * A stack policy determines whether this action should be stopped by other actions. * * [MENTION=52317]auth[/MENTION]or Graham Edgecombe * */ public enum StackPolicy { /** * This indicates this action will stack with others. */ ALWAYS, /** * This indicates this action will not stack with others. */ NEVER } /** * A cancel policy determines when the action should destruct. * * [MENTION=52317]auth[/MENTION]or Graham Edgecombe * */ public enum CancelPolicy { /** * This indicates actions will cancelled on any interaction. */ ALWAYS, /** * This indicates actions will be cancelled only when walking. */ ONLY_ON_WALK } /** * An animation policy determines if the action should reset animations when cancelled. * * [MENTION=52317]auth[/MENTION]or Graham Edgecombe * */ public enum AnimationPolicy { /** * This indicates the action will reset your animation. */ RESET_ALL, /** * This indicates the action will not reset your animation. */ RESET_NONE } /** * The <code>Entity</code> associated with this ActionEvent. */ private Entity entity; /** * The delay between execution intervals. */ private int ticks; /** * The current amount of ticks before this action executes. */ private int currentTicks; /** * Does this action continue. */ private boolean running = true; /** * Creates a new ActionEvent. * * [MENTION=75098]Para[/MENTION]m entity The entity. * [MENTION=75098]Para[/MENTION]m delay The initial delay. */ public Action(Entity entity, int ticks) { this.ticks = ticks; this.currentTicks = ticks; this.entity = entity; } /** * Gets the entity. * * [MENTION=184045]return[/MENTION] The entity. */ public Entity getEntity() { return entity; } /** * Gets the cancel policy of this action. * * [MENTION=184045]return[/MENTION] The cancel policy of this action. */ public abstract CancelPolicy getCancelPolicy(); /** * Gets the stack policy of this action. * * [MENTION=184045]return[/MENTION] The stack policy of this action. */ public abstract StackPolicy getStackPolicy(); /** * Gets the animation policy of this action. * * [MENTION=184045]return[/MENTION] The animation policy of this action. */ public abstract AnimationPolicy getAnimationPolicy(); /** * [MENTION=184045]return[/MENTION] The ticks. */ public int getTicks() { return ticks; } /** * [MENTION=184045]return[/MENTION] The currentTicks. */ public int getCurrentTicks() { return currentTicks; } /** * [MENTION=75098]Para[/MENTION]m currentTicks The currentTicks to set. */ public void setCurrentTicks(int currentTicks) { this.currentTicks = currentTicks; } /** * [MENTION=75098]Para[/MENTION]m ticks The ticks to set. */ public void setTicks(int ticks) { this.ticks = ticks; } /** * [MENTION=75098]Para[/MENTION]m ticks The ticks to set. */ public void decreaseTicks(int amount) { this.currentTicks -= amount; } public void stop() { running = false; } /** * [MENTION=184045]return[/MENTION] The running. */ public boolean isRunning() { return running; } /** * The execute method is called when the tick is run. The general contract of the execute method is that it may take any action whatsoever. */ public abstract void execute(); } [/CODE] [CODE] package com.asgarniars.rs2.action; import java.util.ArrayDeque; import java.util.Deque; import java.util.Iterator; import com.asgarniars.rs2.model.Entity; import com.asgarniars.rs2.model.World; import com.asgarniars.rs2.model.players.Inventory; import com.asgarniars.rs2.task.Task; /** * Stores a deque of pending actions. * * [MENTION=52317]auth[/MENTION]or Graham Edgecombe * [MENTION=52317]auth[/MENTION]or Joshua Barry * */ public class ActionDeque { /** * The entity who's action queue this is. */ private Entity entity; /** * The tickable. */ private Task cycleTick; /** * The maximum number of actions allowed to be queued at once, deliberately set to the size of the player's inventory. */ public static final int MAXIMUM_SIZE = Inventory.SIZE; /** * A deque of <code>Action</code> objects. */ private Deque<Action> actions = new ArrayDeque<Action>(); public Deque<Action> getActions() { return actions; } /** * The default constructor. * * [MENTION=75098]Para[/MENTION]m entity The entity. */ public ActionDeque(Entity entity) { this.entity = entity; } /** * Adds an <code>Action</code> to the queue. * * [MENTION=75098]Para[/MENTION]m action The action. */ public void addAction(Action action) { if (actions.size() >= MAXIMUM_SIZE) { return; } switch (action.getStackPolicy()) { case ALWAYS: break; case NEVER: clearAllActions(); break; } switch (action.getAnimationPolicy()) { case RESET_NONE: break; case RESET_ALL: entity.getUpdateFlags().sendAnimation(-1); entity.getUpdateFlags().sendGraphic(-1); break; } if (actions.size() > 0) { Iterator<Action> it = actions.iterator(); while (it.hasNext()) { Action actionTickable = it.next(); switch (actionTickable.getStackPolicy()) { case ALWAYS: break; case NEVER: actionTickable.stop(); it.remove(); break; } } } actions.add(action); /* * This is now converted as a tickable. Why? Because before, the system would register a tickable that would execute a certain amount of ticks later. What did this mean? E.g. * * Home teleport started. First emote begins, and the second emote is added as an Action, however it is already submitted as a tickable, but you should be able to cancel out of it before the emote begins. This system fixes that. - Joshua Barry. */ if (cycleTick == null) { cycleTick = new Task(1) { [MENTION=15855]Over[/MENTION]ride public void execute() { try { if (actions.size() > 0) { Iterator<Action> it = actions.iterator(); while (it.hasNext()) { Action actionTickable = it.next(); if (actionTickable.getCurrentTicks() > 0) { actionTickable.decreaseTicks(1); } if (actionTickable.getCurrentTicks() == 0) { actionTickable.execute(); if (!actionTickable.isRunning()) { it.remove(); } else { actionTickable.setCurrentTicks(actionTickable.getTicks()); } } } } else { cycleTick = null; this.stop(); } } catch (Exception e) { } } }; World.submit(cycleTick); } } /** * Purges actions in the queue with a <code>WalkablePolicy</code> of <code>NON_WALKABLE</code>. */ public void clearRemovableActions() { boolean resetAnimations = false; if (actions.size() > 0) { Iterator<Action> it = actions.iterator(); while (it.hasNext()) { Action actionTickable = it.next(); switch (actionTickable.getCancelPolicy()) { case ONLY_ON_WALK: break; case ALWAYS: actionTickable.stop(); it.remove(); break; } switch (actionTickable.getAnimationPolicy()) { case RESET_NONE: break; case RESET_ALL: resetAnimations = true; break; } } } if (actions.size() < 0) { if (cycleTick != null) { cycleTick.stop(); } cycleTick = null; } if (resetAnimations) { entity.getUpdateFlags().sendAnimation(-1); entity.getUpdateFlags().sendGraphic(-1); } } /** * Clears the action queue and current action. */ public void clearAllActions() { if (cycleTick != null) { cycleTick.stop(); } cycleTick = null; boolean resetAnimations = false; if (actions.size() > 0) { for (Action action : actions) { switch (action.getAnimationPolicy()) { case RESET_NONE: break; case RESET_ALL: resetAnimations = true; break; } action.stop(); } actions = new ArrayDeque<Action>(); } if (resetAnimations) { entity.getUpdateFlags().sendAnimation(-1); entity.getUpdateFlags().sendGraphic(-1); } } } [/CODE]
  8. Hey I just Downloaded a 2006 remake source and it has a music class but its not working when i walk in lumby is there anyway for i can get the music to load it used to be 2006scape. heres the java file [CODE]// Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.kpdus.com/jad.html // Decompiler options: packimports(3) // Source File Name: RegionMusic.java package com.rs2.model.region.music; import com.rs2.model.Position; import com.rs2.model.players.Player; import com.rs2.net.ActionSender; // Referenced classes of package com.rs2.model.region.music: // Music public class RegionMusic { public RegionMusic() { } public void playMusic(Player player) { Music song = getMusicId(player); if(song == null) { player.getActionSender().sendSong(2); return; } else { player.getActionSender().sendSong(song.music); return; } } private Music getMusicId(Player player) { int x = player.getPosition().getX(); int y = player.getPosition().getY(); for(int i = 0; i < songs.length; i++) if(x >= songs[i].swX && x <= songs[i].neX && y >= songs[i].swY && y <= songs[i].neY) return songs[i]; return null; } private final Music songs[] = { new Music(76, 3200, 3199, 3273, 3302), new Music(2, 3200, 3303, 3273, 3353), new Music(111, 3274, 3328, 3315, 3394), new Music(123, 3274, 3266, 3323, 3327), new Music(36, 3274, 3200, 3323, 3265), new Music(50, 3257, 3112, 3333, 3199), new Music(47, 3324, 3200, 3408, 3262), new Music(122, 3324, 3263, 3408, 3285), new Music(541, 3324, 3286, 3408, 3327), new Music(64, 3136, 3136, 3193, 3199), new Music(3, 3066, 3200, 3120, 3272), new Music(327, 3121, 3200, 3199, 3268), new Music(163, 3121, 3269, 3199, 3314), new Music(151, 3066, 3273, 3120, 3314), new Music(333, 3066, 3315, 3147, 3394), new Music(116, 3148, 3315, 3199, 3394), new Music(106, 3200, 3354, 3273, 3394), new Music(157, 3248, 3395, 3328, 3468), new Music(125, 3166, 3395, 3247, 3468), new Music(175, 3111, 3395, 3165, 3468), new Music(177, 3111, 3469, 3264, 3524), new Music(93, 3265, 3469, 3328, 3524), new Music(48, 3329, 3447, 3418, 3524), new Music(35, 2993, 3186, 3065, 3260), new Music(107, 2889, 3265, 2940, 3324), new Music(127, 2941, 3261, 3013, 3324), new Music(49, 3014, 3261, 3065, 3324), new Music(186, 2880, 3325, 2935, 3394), new Music(72, 2936, 3325, 3065, 3394), new Music(54, 2944, 3395, 3008, 3458), new Music(54, 2944, 3459, 2987, 3474), new Music(150, 3009, 3395, 3065, 3458), new Music(141, 3066, 3395, 3110, 3450), new Music(23, 2937, 3475, 2987, 3524), new Music(102, 2988, 3459, 3065, 3524), new Music(98, 3066, 3451, 3110, 3524), new Music(34, 2944, 3525, 2991, 3591), new Music(96, 2992, 3525, 3034, 3555), new Music(96, 2992, 3556, 3124, 3605), new Music(182, 3035, 3525, 3124, 3555), new Music(169, 3125, 3525, 3264, 3579), new Music(121, 3265, 3563, 3392, 3619), new Music(113, 2944, 3592, 2991, 3655), new Music(160, 2992, 3606, 3055, 3655), new Music(176, 3056, 3606, 3124, 3655), new Music(10, 3125, 3581, 3205, 3655), new Music(179, 3206, 3580, 3264, 3655), new Music(183, 2944, 3656, 3003, 3722), new Music(66, 3004, 3656, 3064, 3722), new Music(476, 3065, 3656, 3126, 3722), new Music(43, 3127, 3656, 3197, 3714), new Music(8, 3198, 3656, 3264, 3702), new Music(337, 3265, 3621, 3392, 3716), new Music(435, 3048, 3723, 3126, 3799), new Music(68, 3127, 3715, 3197, 3758), new Music(332, 3198, 3704, 3264, 3758), new Music(182, 3265, 3717, 3392, 3842), new Music(37, 2944, 3800, 3003, 3903), new Music(331, 3212, 3843, 3392, 3903), new Music(52, 2944, 3904, 3009, 3969), new Music(13, 3077, 3905, 3139, 3969), new Music(92, 2891, 3133, 2940, 3195), new Music(92, 2941, 3133, 2971, 3185), new Music(172, 2817, 3133, 2890, 3208) }; } [/CODE]
  9. my comp restarts on me and when it does it dasnt save the char files in my server and people are getting really mad i need to know how to make it auto save every 1 min or so can someone plz help me :)
  10. Sir Tom


    [B][U][CENTER][FONT=Palatino Linotype][SIZE=7][COLOR="#008080"]RuneSource[/COLOR][/SIZE][/FONT][/CENTER][/U][/B] Well, I will just give a short introduction; Ever since AlterRS went under break I've not really had anything programming wise to do, besides Prodigy-X, so this being said this is just a small something I've been wanting to do for the longest time and most of my time is consumed by Prodigy-X. After so many attempts, and quitting I've decided that I am going to start with a blank base, and thank being RuneSource. Well, since Blake and I were good friends I believe it's time I continue what he started. Thus, I present you with RuneSource. Although this has slight alterations such as Netty networking instead of NIO. Git: [url]https://github.com/tomlegodais/RuneSource[/url] [B][I]Features:[/I][/B] [LIST] [*]Login [*]Updating [*]Movement [*]Chatting [*]Friends List [*]Item equipping and unequipping. [/LIST] Update Log: [SPOILER=Log] [B]4/28/2013:[/B] [LIST] [*]Changed the way packets process, they now substitute there own class. See: [url]https://github.com/tomlegodais/RuneSource/tree/master/src/com/runesource/net/packets[/url] [*]Changed how updating was done (was just a bunch of booleans). See: [url]https://github.com/tomlegodais/RuneSource/blob/master/src/com/runesource/model/UpdateFlags.java[/url] [*]Started on a Groovy script system, this is how all content will be done. See: [url]https://github.com/tomlegodais/RuneSource/tree/master/src/com/runesource/script[/url] [*]Finished the first official "type" of script, so far does commands. See: [url]https://github.com/tomlegodais/RuneSource/blob/master/data/scripts/commands/Players.groovy[/url] [*]Server is now entity based, this will make it easier for combat. See: [url]https://github.com/tomlegodais/RuneSource/blob/master/src/com/runesource/model/Entity.java[/url] [/LIST] [/SPOILER] Media: [IMG]http://i.imgur.com/hbzt8go.png[/IMG] [IMG]http://i.imgur.com/gUFzeP4.png[/IMG] Credits: [LIST] [*]Tom [*]Blake [*]Staurt [/LIST]
  11. Hello, so I have been messing with a RuneSource based source and I have to say that I'm really enjoying using RuneSource. Anyway, so I have been working around with some things and fixing some bugs but for some reason, when I log out i successfully save the character file, but when i log back in I can literally change the password to anything. I know there's a similar bug on other RuneSource bases that you can log in and log in again and the password changes, but this is even worse that it doesnt actually check the password in the first place. I have tried to fix this but i still find bugs. In my player.java i have this: [CODE] if (username.length() < 1 || username.length() > 12 || password.length() < 5 || password.length() > 20) { setReturnCode(Constants.LOGIN_RESPONSE_INVALID_CREDENTIALS); return false;[/CODE] Well basically this checks if your username is under 1 or over 12 characters long, and checks if your password is under 5 or under 20 characters long, Obviously... Well this works quite well to be honest. I thought to my self, maybe I could add something similar to: [CODE]if (!player.getPassword().equals(password)) { setReturnCode(Constants.LOGIN_RESPONSE_INVALID_CREDENTIALS); return false;[/CODE] In my mind that should work, right? But if i add a "System.out.println(player.getPassword());" I get the output of "null". So i decided to check in PlayerSave.java in "readFile()" I added: [CODE] System.out.println("Loaded "+player.getUsername()+ "'s character file with Password: "+password+" from Host: "+connectionHost);[/CODE] Now this actually outputs the players password from the file correctly. The "password" is read from this string: [CODE] String password = load.readUTF(); [/CODE] so i was wondering if i could add something like: [CODE] player.setPassword(load.readUTF());[/CODE] So that I can access the information that is read from the character file and use it in the password check. I hope this makes sense to someone and could help me fix this. :) Oh and its nothing I've done to the source thats caused this, I have used a fresh copy to make sure I didn't jack something up while modifying :) Edit: I've just realised that this probably wouldn't work as this is returning your request to false so the players file is not even loaded.
  12. hey guys I cant seem to find how to give myself items, i tried the ::item commands, but it says i just need to give an amount not a item id. I really want to have full bandos gear :p so how can i do this?
  13. Hey all, I just joined as me and a buddy are looking into starting a server for a few friends, i downloaded runesource and got it all running on my PC, but I have a linux VPS, and I have no idea how to compile and run the thing on there, how do i do that? is there a tutorial somewhere that i am missing?
  14. legion


    i followed this [url]http://www.rune-server.org/runescape-development/rs2-server/tutorials/285590-runesource-how-compile-run-azure-317-a.html[/url] for this [url]http://www.rune-server.org/runescape-development/rs2-server/downloads/290922-runesource-azure-version-3-final-version.html[/url] [url]http://minus.com/lcrpVEruMhoya[/url] [url]http://minus.com/mHNnmvHkL[/url] [url]http://minus.com/mV1lm68IG[/url] [url]http://minus.com/mUkGnj87K[/url] [url]http://minus.com/loAfaLpOvoR7j[/url] would really appreciate help:cool: If you dont no what i mean, could you download it then pm reuploaded link
  15. Protocol: 317 Tested on: RuneSource Requirments: Copy Paste knowledge Difficulty: 1/10 Length: Short [b]Step 1:[/b] In: \src\com\rs2\model\content\skills, make a new class called "CuttingGems". Copy paste this into it: [code] package com.rs2.model.content.skills; import com.rs2.model.World; import com.rs2.model.npcs.Npc; import com.rs2.model.players.Player; import com.rs2.model.players.Item; public class CuttingGems { public static void handleChisel(Item id4, Item id5, Player c) { int id1 = id4.getId(); int id2 = id5.getId(); if (id1 == 1755) cutGem(id2, c); else cutGem(id1, c); } public static int[][] gems = {{1623,1607},{1621,1605},{1619,1603},{1617,1601},{1631,1615},{6571,6573}}; public static int[][] anims = {{888},{889},{887},{890},{885},{2717}}; public static int[][] level = {{20},{27},{34},{43},{55},{67}}; public static int[][] XP = {{70},{150},{260},{500},{700},{1500}}; public static void cutGem(int id, Player c) { for (int j = 0; j < gems.length; j++) { if (gems[j][0] == id) { if (c.getSkill().getLevelForXP(c.getSkill().getExp()[12]) >= XP[j][0]) { c.getInventory().removeItem(new Item(id)); c.getInventory().addItem1(new Item(gems[j][1]), 1); c.getUpdateFlags().sendAnimation((anims[j][0]), 0); c.getSkill().addExp((XP[j][0]), 12); break; } else { c.getActionSender().sendMessage("You need a crafting level of " + level[j][0] + " to craft this."); } } } } }[/code] Requires a Chisel to start gem cutting [code]public static void handleChisel(Item id4, Item id5, Player c) {[/code] gems = uncut ID, gem ID, level requirments, xperience anims = Animation IDs level = level requirments XP = Experience gain [code] public static int[][] gems = {{1623,1607},{1621,1605},{1619,1603},{1617,1601},{1631,1615},{6571,6573}}; public static int[][] anims = {{888},{889},{887},{890},{885},{2717}}; public static int[][] level = {{20},{27},{34},{43},{55},{67}}; public static int[][] XP = {{70},{150},{260},{500},{700},{1500}};[/code] Checks the gem ID, removes the uncut used, adds the new gem, sends the cutting animation, adds experience. [code] if (gems[j][0] == id) { if (c.getSkill().getLevelForXP(c.getSkill().getExp()[12]) >= XP[j][0]) { c.getInventory().removeItem(new Item(id)); c.getInventory().addItem1(new Item(gems[j][1]), 1); c.getUpdateFlags().sendAnimation((anims[j][0]), 0); c.getSkill().addExp((XP[j][0]), 12);[/code][font=tahoma][size=13px] Sends a message if don't have the required level to craft a gem. [code] } else { c.getActionSender().sendMessage("You need a crafting level of " + level[j][0] + " to craft this."); }[/code] [b]Step 2:[/b] Open your ItemPacketHandler class, and add this to your imports: [code]import com.rs2.model.content.skills.CuttingGems;[/code] Next, search for this: [code]Item useWithItem = player.getInventory().getItemContainer().get(withSlot);[/code] Below, add this: [code]CuttingGems.handleChisel(useItem, useWithItem, player);[/code] That`s it. Pictures: [img]http://desmond.imageshack.us/Himg89/scaled.php?server=89&filename=gemcutting.png&res=medium[/img] [img]http://desmond.imageshack.us/Himg824/scaled.php?server=824&filename=craftingwithrequirments.png&res=medium[/img] Credits: -[LIST] [*]ArrowzFtw [*]I Roll Deep [/LIST]