Jump to content

Search the Community

Showing results for tags 'nex'.



More search options

  • 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

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 77 results

  1. I have been searching and i do not find them Comment Below <3 -Mark:cool:
  2. I have added nex to my server but the animations aren't coming up (I have the animation files). And whenever I come near to Nex in my server, I can't see the hitsplashes when I hit it, and I can't see any text whenever I say something above my head (only in chatbox). I ripped the codes/models from 'undonex' but I need someone to do it in a fully functional way (or at least fix it :hurr:) It's preferable if you have skype, my skype is: devilishpsp If you'd like msn, please pm me for it (but I like skype more). I need this done A.S.A.P.
  3. Hey, will add media later just a fast advertisment:) my house for epic new server with 7+ players already online! We have 6+ updates, daily new updates, dungeoneering, Nex armor, 100% working godwards and much more! We got great VPS which means we are 24/7 online! Simply Klick on my house! ^^ what i use for xat. forums are here: [url]http://www.technox.smf2hosting.com/index.php[/url] welblcien tis on the main page, xat below it so we can chat:) Media: Soon to be added!
  4. [IMG]http://img818.imageshack.us/img818/9044/revisionbanner.jpg[/IMG] [URL="http://www.revisi0n.com/"]Forums[/URL] [URL="http://dl.dropbox.com/u/53673205/Revision2.jar"]Downloadable Client[/URL] [URL="http://www.revisi0n.com/webclient.htm"]WebClient[/URL] [COLOR="#FF0000"]For the haters:[/COLOR] I GIVE CREDIT TO THE FOLLOWING PEOPLE FOR THEIR SOURCES AND THE THINGS I IMPLEMENTED USING THEM: -> [COLOR="#0000FF"]Insidiax[/COLOR] -> [COLOR="#0000FF"]Erasepkz[/COLOR] [B][FONT=Impact][SIZE=5]Revision is a new, fast growing Runescape Private server with the best gameplay and player base community on the internet[/SIZE].[/FONT][/B] FEATURES: [LIST] -[COLOR="#FF0000"] Active Forums - Great Staff - ALL working Skills except construction. - Dungeoneering with Rewards - Primal, Promethium, Gorgonite, Celestial, Sagittarian - ALL working Chaotics including crossbow and shield - Korasi with working Special Attack - Nex Armour fully working with HP Boost - Most working 630+ special attacks working - 600+ revision items on a 317 - Working summoning with Familiars and pets - [COLOR="#800080"]Titans, Pack Yak, Unicorn Stallion, Bunyip, Wolpertinger Specials working[/COLOR] - [COLOR="#800080"]New Runescape Steadfast, Glaiven, and Ragefire Boots.[/COLOR] - FUN balanced Pking and Pking skill that rewards players - [COLOR="#800080"]TONS OF BOSSES TO FIGHT[/COLOR] - GREAT PVM drops with decent drop rates - All game ruining dupes and exploits fixed - Custom Interfaces - Completionist Cape with Emote - Instant Switching [COLOR="#800080"]- Bank Book for Donators[/COLOR] - Instant Slayer task changing for Donators - Fully Working HandCannon [COLOR="#0000FF"][SIZE=3]- FUlly dedicated VPS Hosting[/SIZE][/COLOR] [/COLOR] [/LIST] Media: [spoiler= ] [IMG]http://img708.imageshack.us/img708/1603/newstuff.jpg[/IMG] [IMG]http://img59.imageshack.us/img59/821/boots1fh.jpg[/IMG] [IMG]http://img684.imageshack.us/img684/4232/clawspec.jpg[/IMG] [IMG]http://img716.imageshack.us/img716/7624/compcape.jpg[/IMG] [IMG]http://img46.imageshack.us/img46/8250/dropsl.png[/IMG] [IMG]http://img835.imageshack.us/img835/7670/korasi.jpg[/IMG] [IMG]http://img803.imageshack.us/img803/6404/ovls.jpg[/IMG] [IMG]http://img20.imageshack.us/img20/9260/petshg.jpg[/IMG] [IMG]http://img52.imageshack.us/img52/1076/pking.jpg[/IMG] [IMG]http://img705.imageshack.us/img705/6563/primal.jpg[/IMG] [IMG]http://img841.imageshack.us/img841/7574/scrolls.jpg[/IMG] [IMG]http://img534.imageshack.us/img534/3839/pking2.jpg[/IMG] [IMG]http://img268.imageshack.us/img268/302/turmoili.jpg[/IMG] [IMG]http://img444.imageshack.us/img444/3033/59134150.jpg[/IMG]] [/SPOILER] [FONT=Arial Black][SIZE=5][B][U]COME PLAY TODAY!!! ONLINE 24/7!!!![/U][/B][/SIZE][/FONT]
  5. Darker

    Nex armour HP boost

    I tried everything, maxhp method at player.java and stuff, didnt work, can someone help me? Edit: also how i can add rocktails and brew hp boost? :/
  6. Hello to everyone, I have just added a Nex NPC but to hard-code in animations is something i need some help with. Considering i have only 602 npc animations I need to hard-code the new ones in. I have the nex npc animations downloaded and inside my cache but i need animation.java to load the file and input the animations. I've searched for a tutorial on this but there is none. Here is what im at so far [IMG]http://img33.imageshack.us/img33/3772/nexpic.png[/IMG] As you can see it needs work. Any links to tutorials on hard-coding would be great.
  7. hey guys, my server was off for a while but now its back up, and i decided to post an advertisment because the server needs more players. Please note that the server isnt based of DSPK, insidia, hybridpvp or any of those, this is tragedy pking and i have improved it so much to make it look better. Links: _________________________________________ Client download: [url]http://dl.dropbox.com/u/34911660/InvasionX%20Client%20v4.3.rar[/url] Site: [url]invasionx.tk/forums[/url] _________________________________________ Features: - 90% godwars dungeon - Fully animated Nex - Coloured SOL's Gnome scarfes robins etc, - fully working corporeal beast - Bork (drops dyes to recolour items) - Nomad (drops hand cannons) - Custom made barbarian assault - pest control - Dragon point system - Spirit shields with 100% working effects - chaotic shield, eagle eye shield and farseer shield with absorbing effects - Ring of vigour - Better magic combat - Perfect switching - Revenants around wildy that drop PvP armours - Wildywyrms - Working dragon claws - New godwars armours (torva, pernix etc) - working curse prayers with leeches etc - rocktail with effects - Working summoning - 95% working korasi special attack (just need to add multi attack) - Much much more Video: [video=youtube;qlkjifAgOQI]http://www.youtube.com/watch?feature=player_profilepage&v=qlkjifAgOQI[/video] [video=youtube;UgbO18Ghfes]http://www.youtube.com/watch?v=UgbO18Ghfes&feature=youtu.be[/video] Pictures: [IMG]http://i44.tinypic.com/2aev30z.jpg[/IMG] [IMG]http://i42.tinypic.com/33f6nom.jpg[/IMG] [IMG]http://i40.tinypic.com/6dr0g4.jpg[/IMG] [IMG]http://i39.tinypic.com/359bsau.jpg[/IMG] [IMG]http://i40.tinypic.com/10fdzbn.jpg[/IMG] [IMG]http://i40.tinypic.com/awal2r.jpg[/IMG] [IMG]http://i44.tinypic.com/23pg91.jpg[/IMG] [IMG]http://i44.tinypic.com/1zoz0nl.jpg[/IMG] [IMG]http://i43.tinypic.com/rba0rk.jpg[/IMG] -------------------------------------------------------------------------- i hope many people join from me posting this thread, and i will be updating this thread and adding more media soon, i hope you guys join, thank you.
  8. Okay the good news is that I have a 60% complete nex for 562. The bad news is that anytime I attack it I disconnect. Is this a common issue for anyone? I would really appreciate if I got help because once I finish it I will release it!
  9. Here is a video of my nex! You jealous? [video=youtube;Eczu-sQJiSQ]http://www.youtube.com/watch?v=Eczu-sQJiSQ[/video]
  10. Lightx

    Nex virus

    So im making nex atm and i got to the part of the virus and got the virus to work fine but spreading it isnt working out this is what i used and the server crashes [CODE] Player p2 = World.getWorld().getPlayers().get(id); if (nexvirus == 0 && Misc.getDistance(getLocation().getX(), getLocation().getY(), p2.getLocation().getX(), p2.getLocation().getY()) <= 3 && p2.nexvirus >= 1) { nexvirus = 12; }[/CODE] any ideas on how to improve the code?
  11. Mario12345

    Nex attacks

    I was wondering how to make Nex attack with all 3 combat styles, so people cant sit there and afk him. Also does anyone know how to change XP rate for att str def mage and rangeD?
  12. bl00dz

    562 Nex Stages

    Hi i am using a PDF base and I am using beuners nex minigame and I saw that mystic flow released this code for nex. Where would i put this code? I really really really want this! Maybe someone could do it on teamviewer for me? package org.dementhium.model.npc.impl.godwars; import java.util.ArrayList; import java.util.List; import java.util.Random; import org.dementhium.content.misc.Following; import org.dementhium.content.skills.Prayer; import org.dementhium.model.Location; import org.dementhium.model.Mob; import org.dementhium.model.World; import org.dementhium.model.combat.CombatAction; import org.dementhium.model.combat.CombatHit; import org.dementhium.model.combat.Combat.FightType; import org.dementhium.model.map.ObjectManager; import org.dementhium.model.map.Region; import org.dementhium.model.mask.Animation; import org.dementhium.model.mask.Graphic; import org.dementhium.model.misc.ProjectileManager; import org.dementhium.model.misc.DamageManager.DamageType; import org.dementhium.model.npc.NPC; import org.dementhium.model.player.Player; import org.dementhium.net.ActionSender; import org.dementhium.tickable.Tick; import org.dementhium.tickable.impl.CountdownTick; import org.dementhium.tickable.impl.NexVirusTick; import org.dementhium.util.Misc; import org.dementhium.util.misc.Sounds; /** * * [url]http://runescape.wikia.com/wiki/NEX[/url] * Solo basic gameplay -> [url]http://www.youtube.com/watch?v=BLqcYbuNLqg[/url] * Advanced team gameplay -> [url]http://www.youtube.com/watch?v=K4wxNdm3NK8[/url] * Further solo gameplay -> [url]http://www.youtube.com/watch?v=3-vxug6HOXU[/url] * * @author 'Mystic Flow (Wrote the whole class) * @author MangiS (Id's) * @author cart (Information on attacks) * @author Steve (Camera movement) * * @note THIS IS A FUCKING MESS */ public class Nex extends NPC { /* 1215 1216 1217 1218 1219 1271 - clouds ??? 1190 1189 2932 2931 471 14 - grapple mithril 354+ interesting stopped at 700 */ //2777+ dungeon emotes //wrath gfx 2261 //2244 = gfx id for projectiles //1214 might be attack //2767 - when nex grabs you //2870 /************************************************ * The room beyond this point is a prison! * There is no way out other than death or teleport * Only those who can endure dangerous encounters should proceed. * * There is currently one person (no one) fighting. * Do you wish to join them? * * Climb Down. * Stay here. * * -> If you try attack a minion (The avatar is not weak enough to damage this minion.) * ***********************************************/ //In red - Nex has marked you as a sacrifice, RUN! //You didn't make it far enough in time - Nex fires a punishing attack! public static enum NexPhase { SPAWNED(null, null, -1, -1), // we can't attack at this stage SMOKE("Fill my soul with smoke!", "fumus", Sounds.NexFumus, Sounds.NexFillSmoke), // When we gain powers from Fumus SHADOW("Darken my shadow!", "umbra", Sounds.NexUmbra, Sounds.NexEmbraceDarkness), //When we gain powers from Umbra BLOOD("Flood my lungs with blood!", "cruor", Sounds.NexCrour, Sounds.NexFloodBlood), //When we gain powers from Cruor ICE("Infuse me with the power of ice!", "glacies", Sounds.NexGlacies, Sounds.NexInfuseMeIce), //When we gain powers from Glacies FINAL("NOW, THE POWER OF ZAROS!", null, -1, Sounds.NexPowerOfZaros); //The last phase Nex has private String initialMessage, minionName; private int initialSoundId, soundId; private NexPhase(String initialMessage, String minionName, int initialSoundId, int soundId) { this.initialMessage = initialMessage; this.minionName = minionName; this.initialSoundId = initialSoundId; this.soundId = soundId; } } public static final int DEFAULT_NEX_ID = 13447, SOUL_SPLIT_NEX = 13448, MELEE_DEFLECT_NEX = 13449, WRATH_NEX = 13450; private static final int REAVER_ID = 13458; private static final Animation SPAWN_ANIMATION = Animation.create(6355); private static final Animation THROW_ANIMATION = Animation.create(6986); private static final Animation CAST_ANIMATION = Animation.create(6987); private static final Animation ATTACK_ANIMATION = Animation.create(6354); private static final Animation FLY_ANIMATION = Animation.create(6321); private static final Animation SIPHON_ANIMATION = Animation.create(6948); private static final Animation SMASH_ANIMATION = Animation.create(6984); private static final Animation TURMOIL_ANIMATION = Animation.create(6326); private static final Animation FALL_BACK_ANIMATION = Animation.create(10070); private static final Animation DRAG_ANIMATION = Animation.create(14388); private static final Graphic PURPLE_SMOKE_GRAPHIC = Graphic.create(1217); private static final Graphic FLYING_PURPLE_SMOKE = Graphic.create(1216); private static final Graphic CAST_GRAPHICS = Graphic.create(1214); private static final Graphic SMASH_SMOKE = Graphic.create(1215); private static final Graphic TURMOIL_GRAPHICS = Graphic.create(1204); private static final Graphic[] AFTERMATH_GRAPHICS = { null, Graphic.create(471), null, Graphic.create(376), Graphic.create(362), null }; private static final Location[] NO_ESCAPE_TELEPORTS = { Location.locate(2924, 5213, 0), //north, left side from area Location.locate(2934, 5202, 0), //east, upwards from area Location.locate(2924, 5192, 0), //south, right side from area Location.locate(2913, 5202, 0), //west }; public static final int FUMUS = 13451, UMBRA = 13452, CRUOR = 13453, GLACIES = 13454; private NexPhase phase = NexPhase.SPAWNED; private NexCombatAction combatAction; private boolean changingPhase; private boolean noEscapeAttack; private long lastEscapeAttack; private long lastDragAttack; private long lastShadowAttack; private long lastPrayerSwitch; private boolean protectingMinion; private boolean protectingCruor; private boolean castedVirus; private boolean castedShadow; private boolean siphonMode; public Nex(int id) { super(id); combatAction = new NexCombatAction(); } @Override public boolean isNex() { return true; } @Override public CombatAction getCustomCombatAction() { return combatAction; } public boolean noEscapeAttack() { return noEscapeAttack; } public boolean isAttackable() { return phase != NexPhase.SPAWNED && !noEscapeAttack; } public boolean isProtectingMinion() { return protectingMinion; } public boolean isProtectingCruor() { return protectingCruor; } public boolean isSiphonMode() { return siphonMode; } public NexPhase getPhase() { return phase; } public void playSound(int sound) { for(Player player : World.getWorld().getPlayers()) { if(player.getLocation().distance(getLocation()) < 18) { ActionSender.sendSound(player, sound, 100, 255, true); } } } /** * @author 'Mystic Flow */ public static class NexAreaEvent extends Tick { private static final NexAreaEvent INSTANCE = new NexAreaEvent(); private static final Location AREA_CENTER = Location.locate(2924, 5203, 0); public static NexAreaEvent getNexAreaEvent() { return INSTANCE; } private Nex nex; private int spawnDelay, minionSpawnDelay, minionSpawnStage; private boolean spawned; private NPC[] minions = new NPC[4]; private Random random = new Random(); private int delay; public NexAreaEvent() { super(2); } @Override public void execute() { if(nex == null) { if(delay > 0) { delay--; return; } boolean startSpawn = false; for(Player player : Region.getLocalPlayers(AREA_CENTER, 12)) { if(player.isOnline()) { if(World.getWorld().getAreaManager().getAreaByName("Nex").contains(player.getLocation())) { startSpawn = true; break; } } } if(startSpawn) { nex = new Nex(DEFAULT_NEX_ID); nex.setLocation(AREA_CENTER); nex.setOriginalLocation(AREA_CENTER); nex.setDoesWalk(false); // custom movements nex.loadEntityVariables(); nex.setUnrespawnable(true); spawnDelay = 10; //20 ticks } } else { if(nex.isDead()) { nex = null; spawned = false; minionSpawnStage = 0; delay = 75; for(NPC minion : minions) { if(minion != null) { minion.sendDead(); } } return; } if(spawned) { if(minionSpawnDelay > 0) { if(minionSpawnDelay % 4 == 0 && minionSpawnDelay != 20) { spawnMinion(NexPhase.values()[++minionSpawnStage]); } minionSpawnDelay--; } else { for(NPC minion : minions) { if(minion != null) { minion.turnTo(nex); } } if(nex.phase == NexPhase.SPAWNED) { changePhase(NexPhase.SMOKE); } checkLife(); switch(nex.phase) { case SMOKE: smokeAttack(); break; case SHADOW: shadowAttack(); break; case BLOOD: bloodAttack(); break; case ICE: iceAttack(); break; case FINAL: zarosAttack(); break; } if(!nex.changingPhase && !nex.noEscapeAttack && nex.phase != NexPhase.SPAWNED) { int closestDistance = -1; Mob closeMob = null; for(Player player : World.getWorld().getPlayers()) { if(nex.getLocation().distance(player.getLocation()) > 16) { continue; } int distance = Misc.getDistance(nex.getLocation().getX(), nex.getLocation().getY(), player.getLocation().getX(), player.getLocation().getY()); if(closestDistance == -1 || closestDistance > distance) { closestDistance = distance; closeMob = player; } } if (closeMob != null) { nex.getCombatState().setVictim(closeMob); } } if(nex.phase == NexPhase.SMOKE || nex.phase == NexPhase.FINAL) { if(!nex.changingPhase && !nex.noEscapeAttack) { if(random.nextInt(100) < (nex.phase == NexPhase.FINAL ? 5 : 30) && dragAttack()) { return; } noEscapeAttack(); } } } return; } if(spawnDelay > 0) { spawnDelay--; } else { nex.animate(SPAWN_ANIMATION); nex.graphics(PURPLE_SMOKE_GRAPHIC); nex.forceText("AT LAST!"); nex.playSound(Sounds.NexAtLast); World.getWorld().getNpcs().add(nex); spawned = true; minionSpawnDelay = 20; setTime(1); } } } private void zarosAttack() { if(System.currentTimeMillis() - nex.lastPrayerSwitch > 10000 + Misc.random(10000)) { int switchId = DEFAULT_NEX_ID + Misc.random(2); while(switchId == nex.getId()) { // so we don't see the same phase switchId = DEFAULT_NEX_ID + Misc.random(2); } if(nex.lastPrayerSwitch == 0L) { switchId = SOUL_SPLIT_NEX; } nex.lastPrayerSwitch = System.currentTimeMillis(); nex.getMask().setSwitchId(switchId); } } private void iceAttack() { boolean attacking = nex.hasTick("ice_attack"); if(!attacking) { nex.getCombatState().setSpellDelay(4); nex.getCombatState().setAttackDelay(4); if(random.nextInt(100) <= 45) { nex.forceText("Contain this!"); nex.playSound(Sounds.NexContainThis); nex.animate(SMASH_ANIMATION); nex.graphics(SMASH_SMOKE); final Location currentLocation = nex.getLocation().transform(1, 1, 0); nex.submitTick("ice_attack", new Tick(3) { private boolean done; public void execute() { if(!done) { done = true; setTime(25); for(int x = -1; x <= 1; x++) { for(int y = -1; y <= 1; y++) { if(x == y) { continue; } final Location loc = currentLocation.transform(x, y, 0); if(loc != currentLocation && !loc.hasObjects()) { if(loc.containsPlayers()) { for(Player attack : loc.getPlayers()) { attack.getDamageManager().damage(nex, random.nextInt(350), 350, DamageType.RED_DAMAGE); attack.sendMessage("The icicle spike you to the spot!"); if(attack.getPrayer().isAncientCurses()) { attack.getPrayer().closeOnPrayers(1, new int[] {Prayer.DEFLECT_MAGIC, Prayer.DEFLECT_MELEE, Prayer.DEFLECT_MISSILES, Prayer.DEFLECT_SUMMONING}); } else { attack.getPrayer().closeOnPrayers(0, new int[] {Prayer.PROTECT_FROM_MAGIC, Prayer.PROTECT_FROM_MISSILES, Prayer.PROTECT_FROM_MELEE, Prayer.PROTECT_FROM_SUMMONING}); } attack.getPrayer().recalculatePrayer(); attack.getMask().setApperanceUpdate(true); attack.stun(5, "You've been injured and can't use " + (attack.getPrayer().isAncientCurses() ? "deflect curses" : "protection prayers ") + "!", false); attack.submitTick("nex_drag", new CountdownTick(attack, 15, null)); // only way to prevent prayers :s } } ObjectManager.addCustomObject(57262, loc.getX(), loc.getY(), 0, 10, 0); World.getWorld().submit(new Tick(5) { public void execute() { stop(); ObjectManager.clearArea(nex.getLocation(), 25); } }); } } } return; } stop(); } }); } else { //You managed to destroy the icicle! nex.forceText("Die now, in a prison of ice!"); nex.playSound(Sounds.NexDieNowInPrison); nex.submitTick("ice_attack", new Tick(2) { private boolean done; public void execute() { if(!done) { done = true; setTime(25); List<Player> locPlayers = Region.getLocalPlayers(nex.getLocation(), 14); if(locPlayers.size() > 0) { final Player player = locPlayers.get(random.nextInt(locPlayers.size())); if(player != null && !player.isDead()) { final Location currentLocation = player.getLocation(); for(int x = -1; x <= 1; x++) { for(int y = -1; y <= 1; y++) { final Location loc = currentLocation.transform(x, y, 0); if(!loc.hasObjects()) { ObjectManager.addCustomObject(57263, loc.getX(), loc.getY(), 0, 10, 0); player.submitTick("ice_prison", new Tick(4) { private boolean remove = false; public void execute() { if(remove) { ObjectManager.removeCustomObject(loc.getX(), loc.getY(), 0, 10, true); stop(); } setTime(1); remove = true; if(player.getLocation() == currentLocation) { player.sendMessage("The centre of the ice prison freezes you to the bone!"); player.getDamageManager().damage(nex, random.nextInt(600), 600, DamageType.RED_DAMAGE); } } }); } } } } } } stop(); } }); } } } private void bloodAttack() { if(!nex.hasTick("siphon")) { nex.forceText("A siphon will solve this!"); nex.playSound(Sounds.NexSiphon); nex.siphonMode = true; nex.animate(SIPHON_ANIMATION); nex.setCanAnimate(false); final NPC bloodReaver = World.getWorld().register(Nex.REAVER_ID, nex.getLocation()); bloodReaver.setUnrespawnable(true); nex.submitTick("siphon", new Tick(8) { private boolean done = false; public void execute() { if(done) { if(bloodReaver != null && !bloodReaver.isDead()) { //nex.heal(bloodReaver.getHitPoints()); bloodReaver.setHidden(true); bloodReaver.sendDead(); } stop(); } else { done = true; nex.siphonMode = false; nex.setCanAnimate(true); setTime(35); } } }); return; } if(!nex.siphonMode && !nex.hasTick("blood_sacrifice")) { nex.forceText("I demand a blood sacrifice!"); nex.playSound(Sounds.NexBloodSacrifice); nex.submitTick("blood_sacrifice", new Tick(2) { private boolean done; public void execute() { if(!done) { done = true; for(final Player player : Region.getLocalPlayers(nex.getLocation(), 2)) { if(!player.isDead()) { player.sendMessage("Nex has marked you as a sacrifice, RUN!"); final Location currentLocation = player.getLocation(); World.getWorld().submit(new Tick(2) { @Override public void execute() { stop(); if(player.getLocation() == currentLocation) { player.sendMessage("You didn't make it far enough in time - Nex fires a punishing attack!"); for(final Player pl : World.getWorld().getPlayers()) { if(pl.getLocation().distance(player.getLocation()) < 18) { nex.animate(CAST_ANIMATION); ProjectileManager.sendDelayedProjectile(nex, pl, 374, false); World.getWorld().submit(new Tick(3) { @Override public void execute() { stop(); int damage = random.nextInt(300); pl.getDamageManager().damage(nex, damage, 300, DamageType.MAGE); pl.getSkills().drainPray(pl.getSkills().getLevel(5) / 2); nex.graphics(377); nex.heal(Math.round(damage * 0.15F)); } }); } } } } }); break; } } setTime(10); return; } stop(); } }); } } private void smokeAttack() { if(nex.castedVirus) { boolean noVirus = true; for(Player player : World.getWorld().getPlayers()) { // prefer this over region if(player.getLocation().distance(AREA_CENTER) < 25) { if(player.hasTick("nex_virus")) { noVirus = false; break; } } } if(noVirus) { nex.castedVirus = false; } } } private void shadowAttack() { if(System.currentTimeMillis() - nex.lastShadowAttack >= 5400 && !nex.castedShadow) { final List<Player> localPlayers = new ArrayList<Player>(); for(Player player : World.getWorld().getPlayers()) { if(player.getLocation().distance(nex.getLocation()) <= 10) { localPlayers.add(player); } } if(localPlayers.size() == 0) { return; } nex.castedShadow = true; nex.lastShadowAttack = System.currentTimeMillis(); final Location[] locationArray = new Location[localPlayers.size()]; final boolean distanceAttack = random.nextInt(100) < 75; if(distanceAttack) { nex.forceText("Embrace darkness!"); nex.playSound(Sounds.NexEmbraceDarkness); } else { nex.forceText("Fear the shadow!"); nex.playSound(Sounds.NexFearTheShadow); } int index = 0; for(Player player : localPlayers) { locationArray[index++] = player.getLocation(); for(Player local : localPlayers) { ActionSender.sendObject(local, 57261, player.getLocation().getX(), player.getLocation().getY(), 0, 10, 0); } } localPlayers.clear(); World.getWorld().submit(new Tick(3) { @Override public void execute() { nex.castedShadow = false; stop(); for(Player player : World.getWorld().getPlayers()) { if(player.getLocation().distance(nex.getLocation()) <= 10) { localPlayers.add(player); } } for(Player player : localPlayers) { for(Location loc : locationArray) { ActionSender.deleteObject(player, 57261, loc.getX(), loc.getY(), 0, 10, 0); ActionSender.sendPositionedGraphic(player, loc, 383); if(player.getLocation() == loc) { int damageInflicted = 400 + Misc.random(distanceAttack ? player.getLocation().distance(nex.getLocation()) * 50 : 400); player.getDamageManager().damage(nex, damageInflicted, 1000, DamageType.MAGE); } } } } }); } } public void spawnMinion(NexPhase phase) { NPC minion; switch(phase) { case SMOKE: minion = new NPC(FUMUS, Location.locate(2912, 5216, 0)); break; case SHADOW: minion = new NPC(UMBRA, Location.locate(2937, 5216, 0)); break; case BLOOD: minion = new NPC(CRUOR, Location.locate(2937, 5190, 0)); break; default: minion = new NPC(GLACIES, Location.locate(2912, 5190, 0)); } nex.forceText(Misc.upperFirst(phase.minionName) + "!"); nex.playSound(phase.initialSoundId); nex.animate(THROW_ANIMATION); nex.getMask().setFacePosition(minion.getLocation(), 1, 1); minion.turnTo(nex); minion.setAttribute("cantMove", Boolean.TRUE); World.getWorld().getNpcs().add(minion); ProjectileManager.sendGlobalProjectile(2244, minion, nex, 37, 60, 50); minions[phase.ordinal() - 1] = minion; } private void checkLife() { if(nex.protectingMinion) { int index = nex.phase.ordinal() - 1; if(minions[index] != null) { if(minions[index].isDead() || minions[index].destroyed()) { changePhase(NexPhase.values()[index + 2]); minions[index] = null; } } return; } int hitpoints = nex.getHitPoints(); int maxHitpoints = nex.getMaximumHitPoints(); if(hitpoints <= maxHitpoints * 0.8 && nex.phase == NexPhase.SMOKE) { nex.protectingMinion = true; nex.forceText("Fumus, don't fail me!"); nex.playSound(Sounds.NexFumusDontFail); } if(hitpoints <= maxHitpoints * 0.6 && nex.phase == NexPhase.SHADOW) { nex.protectingMinion = true; nex.forceText("Umbra, don't fail me!"); nex.playSound(Sounds.NexUmbraDontFail); } if(hitpoints <= maxHitpoints * 0.4 && nex.phase == NexPhase.BLOOD) { nex.protectingCruor = true; nex.protectingMinion = true; nex.forceText("Cruor, don't fail me!"); nex.playSound(Sounds.NexCrourDontFail); } if(hitpoints <= maxHitpoints * 0.2 && nex.phase == NexPhase.ICE) { nex.protectingMinion = true; nex.forceText("Glacies, don't fail me!"); nex.playSound(Sounds.NexGlaciesDontFail); } } public boolean isSpawned() { return nex != null; } public boolean ableToAttack() { return nex.phase != NexPhase.SPAWNED; } public void changePhase(final NexPhase phase) { int ticks = 5; if(nex.phase == NexPhase.SPAWNED) { ticks = 2; } World.getWorld().submit(new Tick(ticks) { @Override public void execute() { stop(); if(nex.phase != phase && !nex.changingPhase) { nex.changingPhase = true; nex.forceText(phase.initialMessage); nex.playSound(phase.soundId); if(phase != NexPhase.FINAL) { ProjectileManager.sendGlobalProjectile(2244, minions[phase.ordinal() - 1], nex, 46, 60, 50); } else { nex.heal(6000); nex.animate(TURMOIL_ANIMATION); nex.graphics(TURMOIL_GRAPHICS); } ObjectManager.clearArea(nex.getLocation(), 25); World.getWorld().submit(new Tick(3) { @Override public void execute() { stop(); nex.changingPhase = false; nex.phase = phase; nex.protectingMinion = false; } }); } } }); } private boolean dragAttack() { if(System.currentTimeMillis() - nex.lastDragAttack > 5000 && !nex.isAnimating() && nex.getCombatState().getAttackDelay() < 2 && nex.getCombatState().getSpellDelay() < 2) { nex.lastDragAttack = System.currentTimeMillis(); List<Player> locPlayers = Region.getLocalPlayers(nex.getLocation(), 14); if(locPlayers.size() > 0) { int attempts = locPlayers.size(); while(--attempts != -1) { if(drag(locPlayers.get(random.nextInt(locPlayers.size())))) { return true; } } } } return false; } private void noEscapeAttack() { long currentTime = System.currentTimeMillis(); if(currentTime - nex.lastEscapeAttack >= 8000 && random.nextInt(15) == 0) { nex.lastEscapeAttack = currentTime + 3600; nex.noEscapeAttack = true; nex.getCombatState().setVictim(null); nex.getWalkingQueue().reset(); nex.forceText("There is..."); nex.playSound(Sounds.NexThereIs); nex.setLocation(AREA_CENTER); World.getWorld().submit(new Tick(2) { @Override public void execute() { stop(); nex.animate(FLY_ANIMATION); nex.graphics(FLYING_PURPLE_SMOKE); World.getWorld().submit(new Tick(2) { @Override public void execute() { stop(); final int index = random.nextInt(NO_ESCAPE_TELEPORTS.length); final Location noEscapePosition = NO_ESCAPE_TELEPORTS[index]; nex.teleport(noEscapePosition); //nex.forceMovement(null, noEscapePosition.getX(), noEscapePosition.getY(), 1, 2, -1, 2, true, false); nex.forceText("NO ESCAPE!"); nex.playSound(Sounds.NexNoEscape); nex.getMask().setFacePosition(AREA_CENTER, 1, 1); World.getWorld().submit(new Tick(2) { private List<Player> playersToHit; private int countdown = 3; @Override public void execute() { countdown--; if(countdown == 2) { nex.forceMovement(null, 2924, 5203, 0, 60, -1, 2, true, true); for(Player attack : playersToHit = attackablePlayers(index)) { attack.getMask().setFacePosition(noEscapePosition, 1, 1); attack.setAttribute("cantMove", Boolean.TRUE); doCamera(attack, index); } } else if(countdown == 1) { for(Player attack : playersToHit) { int movementX = attack.getLocation().getX(); int movementY = attack.getLocation().getY(); switch(index) { case 0: movementY -= 2; break; case 1: movementX -= 2; break; case 2: movementY += 2; break; case 3: movementX += 2; break; } int dir = 0; if (attack.getLocation().getX() > noEscapePosition.getX()) dir = 3; if (attack.getLocation().getX() < noEscapePosition.getX()) dir = 1; if (attack.getLocation().getY() > noEscapePosition.getY()) dir = 2; if (attack.getLocation().getY() < noEscapePosition.getY()) dir = 0; attack.forceMovement(FALL_BACK_ANIMATION, movementX, movementY, 30, 60, dir, 1, true); int maxDamage = nex.phase == NexPhase.FINAL ? 550 : 400; int damage = r.nextInt(maxDamage); attack.removeAttribute("cantMove"); attack.getDamageManager().damage(nex, damage, maxDamage, DamageType.RED_DAMAGE); } } else if(countdown == 0) { nex.noEscapeAttack = false; stop(); } } private void doCamera(final Player attack, int dir) { int movementX = AREA_CENTER.getX(); int movementY = AREA_CENTER.getY(); int rotateX = AREA_CENTER.getX(); int rotateY = AREA_CENTER.getY(); switch (dir) { case 3: rotateY -= 8; movementY += 9; break; case 2: rotateY -= 8; movementY += 9; break; case 1: rotateX += 8; movementX -= 9; break; case 0: rotateY += 8; movementY -= 9; break; } //World.getWorld().getGroundItemManager().sendGlobalGroundItem(World.getWorld().getGroundItemManager().create(attack, new Item(391, 1), Location.locate(rotateX, rotateY, 0)), false); movementX = (movementX - (attack.getLocation().getRegionX() - 6) * 8); movementY = (movementY - (attack.getLocation().getRegionY() - 6) * 8); rotateX = (rotateX - (attack.getLocation().getRegionX() - 6) * 8); rotateY = (rotateY - (attack.getLocation().getRegionY() - 6) * 8); ActionSender.moveCamera(attack, 100, movementX, movementY, 3, 2); ActionSender.rotateCamera(attack, rotateX, rotateY, 100, 50); World.getWorld().submit(new Tick(3) { int counter = 0; @Override public void execute() { if (counter == 0) { Location loc = Location.locate(attack.getLocation().getX(), attack.getLocation().getY() - 4, 0); ActionSender.moveCamera(attack, 5, loc.getLocalY(), loc.getLocalX(), 3, 5); ActionSender.rotateCamera(attack, attack.getLocation().getLocalX(), attack.getLocation().getLocalY(), 7, 50); counter++; } else if (counter == 1) { ActionSender.resetCamera(attack); stop(); } } }); } }); } }); } }); } } private List<Player> attackablePlayers(int direction) { if(direction < 0 || direction > 3) { return null; } List<Player> players = new ArrayList<Player>(); int startX = -1, endX = -1; int startY = -1, endY = -1; switch(direction) { case 0: startX = 2924; endX = 2926; startY = 5202; endY = 5211; break; case 1: startX = 2924; endX = 2933; startY = 5202; endY = 5204; break; case 2: startX = 2924; endX = 2926; startY = 5195; endY = 5204; break; case 3: startX = 2916; endX = 2923; startY = 5202; endY = 5204; break; } for(int x = startX; x <= endX; x++) { for(int y = startY; y <= endY; y++) { Location loc = Location.locate(x, y, 0); if(loc.containsPlayers()) { players.addAll(loc.getPlayers()); } } } return players; } public boolean drag(final Player victim) { if(victim.hasTick("nex_drag") || victim.getHitPoints() < 100) { return false; } nex.getCombatState().setVictim(victim); victim.sendMessage("Nex draws you in..."); victim.forceMovement(DRAG_ANIMATION, nex.getLocation().getX(), nex.getLocation().getY(), 0, 80, -1, 2, true); victim.submitTick("nex_drag", new Tick(3) { private int cycles = 0; @Override public void execute() { if(cycles == 15) { stop(); } if(cycles == 0) { if(victim.getPrayer().isAncientCurses()) { victim.getPrayer().closeOnPrayers(1, new int[] {Prayer.DEFLECT_MAGIC, Prayer.DEFLECT_MELEE, Prayer.DEFLECT_MISSILES, Prayer.DEFLECT_SUMMONING}); } else { victim.getPrayer().closeOnPrayers(0, new int[] {Prayer.PROTECT_FROM_MAGIC, Prayer.PROTECT_FROM_MISSILES, Prayer.PROTECT_FROM_MELEE, Prayer.PROTECT_FROM_SUMMONING}); } victim.getPrayer().recalculatePrayer(); victim.getMask().setApperanceUpdate(true); victim.stun(5, "You've been injured and can't use " + (victim.getPrayer().isAncientCurses() ? "deflect curses" : "protection prayers ") + "!", false); } cycles++; } }); return true; } public Nex getNex() { return nex; } } private final class NexCombatAction extends CombatAction { @Override public CombatHit hit(Mob mob, final Mob victim) { if(noEscapeAttack || changingPhase || siphonMode) { return null; } if(phase == NexPhase.SMOKE) { if(!castedVirus || (r.nextInt(100) < 10 && r.nextBoolean())) { castedVirus = true; castVirus(victim); return null; } } boolean close = mob.getLocation().withinDistance(victim.getLocation(), size()); boolean usingMagic = !close; int cycles = 1; int damage = 0; int maxDamage = 0; if(!usingMagic && (RANDOM.nextInt(phase == NexPhase.FINAL ? 10 : 3) == 0 || phase == NexPhase.SHADOW)) { usingMagic = true; } if(getCombatState().getSpellDelay() != 0) { usingMagic = false; } if(usingMagic) { cycles = 3; getCombatState().setAttackDelay(2); animate(CAST_ANIMATION); turnTo(victim); getCombatState().setSpellDelay(5); int projectileId = -1; switch(phase) { case FINAL: case SMOKE: projectileId = 306; graphics(CAST_GRAPHICS); damage = getHit(Nex.this, victim, maxDamage = (phase == NexPhase.FINAL ? 350 : 251)); break; case SHADOW: projectileId = 380; damage = getHit(Nex.this, victim, maxDamage = 301); // wild guess break; case BLOOD: projectileId = 374; damage = getHit(Nex.this, victim, maxDamage = 301); break; case ICE: projectileId = 362; damage = getHit(Nex.this, victim, maxDamage = 301); break; } if(projectileId != -1) { ProjectileManager.sendDelayedProjectile(Nex.this, victim, projectileId, false); } final int fMaxDamage = maxDamage, fProjectileId = projectileId; World.getWorld().submit(new Tick(3) { private int attacked; @Override public void execute() { stop(); for(Player other : Region.getLocalPlayers(getLocation(), 13)) { if(attacked > 20) { break; } if(other == victim) { continue; } int castedDamage = getHit(Nex.this, other, fMaxDamage); ProjectileManager.sendDelayedProjectile(Nex.this, other, fProjectileId, false); other.getDamageManager().damage(Nex.this, castedDamage, fMaxDamage, phase == NexPhase.SHADOW ? DamageType.RANGE : DamageType.MAGE); attacked++; switch(phase) { case SMOKE: boolean poison = r.nextInt(100) <= 25; if(poison) { other.getPoisonManager().poison(Nex.this, 60 + r.nextInt(50)); other.graphics(AFTERMATH_GRAPHICS[phase.ordinal()]); } break; case BLOOD: heal(Math.round(castedDamage * 0.10F)); other.graphics(AFTERMATH_GRAPHICS[phase.ordinal()]); break; case ICE: if(!other.getCombatState().isFrozen() && castedDamage > 0) { other.getCombatState().setFrozenTime(5000); other.getWalkingQueue().reset(); other.submitTick("freeze_immunity", new CountdownTick(other, 10, null)); other.graphics(AFTERMATH_GRAPHICS[phase.ordinal()]); } break; } } } }); } else { if(close) { if(getCombatState().getSpellDelay() > 2) { return null; } animate(ATTACK_ANIMATION); getCombatState().setAttackDelay(4); damage = getHit(Nex.this, victim, maxDamage = (phase == NexPhase.FINAL ? 550 : 370)); } else { return null; } } switch(phase) { case SMOKE: boolean poison = r.nextInt(100) <= 25; if(poison) { victim.getPoisonManager().poison(Nex.this, 60 + r.nextInt(50)); } break; case BLOOD: heal(Math.round(damage * 0.15F)); break; case ICE: if(!victim.hasTick("freeze_immunity") && !victim.getCombatState().isFrozen() && damage > 0) { victim.getCombatState().setFrozenTime(5000); victim.getWalkingQueue().reset(); victim.submitTick("freeze_immunity", new CountdownTick(victim.getPlayer(), 20, null)); } break; } FightType type = usingMagic ? phase == NexPhase.SHADOW ? FightType.RANGE : FightType.MAGIC : FightType.MELEE; return new CombatHit(Nex.this, victim, damage, maxDamage, cycles).setFightType(type); } public void castVirus(Mob victim) { animate(CAST_ANIMATION); getCombatState().setAttackDelay(3); getCombatState().setSpellDelay(3); forceText("Let the virus flow through you!"); playSound(Sounds.NexVirus); if(victim.hasTick("nex_virus")) { victim.removeTick("nex_virus"); } victim.submitTick("nex_virus", new NexVirusTick(victim.getPlayer())); } @Override public boolean canAttack(Mob mob, Mob victim) { if(noEscapeAttack || changingPhase || siphonMode) { return false; } if(mob.getLocation().distance(victim.getLocation()) > victim.size() && r.nextBoolean() && r.nextBoolean()) { Following.combatFollow(mob, victim); return false; } return true; } } }
  13. [IMG]http://i40.tinypic.com/10yhxd3.png[/IMG] mind helping me please guys Nulls when i log in not sure why =[ if this gets fixed i will add a tut for real korasi spec & good nex combat with healers
  14. Here's a very simple guide on how to add nex! First, add this in npcdefinitions.xml [CODE] <npcDefinition> <id>13447</id> <name>Nex</name> <examine>GOOD LUCK!</examine> <respawn>45</respawn> <combat>1001</combat> <hitpoints>3000</hitpoints> <maxHit>75</maxHit> <attackSpeed>8</attackSpeed> <attackAnim>6354</attackAnim> <defenceAnim>6983</defenceAnim> <deathAnim>6951</deathAnim> </npcDefinition>[/CODE] Finally, just put the location of the npc! Change the X and Y coords to the location u want nex to be at Add this in npcs.xml [CODE]<npc><id>13447</id><location><x>X Coord Here</x><y>Y Coord Here</y><z>0</z></location></npc>[/CODE] And Ur Done!
  15. I coded the 3 attack styles for nex just need correct animes and gfx for all 3 attacks
  16. jakescapev1

    nex

    i just coded my nex to switch att styles but i need the animations of the melee,range,mage attack the nex does. thanks
  17. tom8004

    Nex Minigame??

    i tried to took the tutorial from the 562/659 (or whatever) and it didnt work... anyone able to convert it for me to 614?? dementhium?
  18. I want like that nex does on hp 2950 like saying something just for example so i put this code: [CODE] case 13447: if (n.getHitpoints() <= 2950) { n.forceChat("Taste my wrath!"); n.graphics(444, 0); } break;[/CODE] but when it is under 2950 hp it doesnt do anything.
  19. i need animes for att and death and whats the thing to make it auto attack
  20. i got the map data and stuff and coded one in and stuff but i want a tut to make it hit through prayer, the minions will auto attack, it yells, and when it dies that prayer thing does stuff, and i need "animation?" for when it dies cause it just stands there and bones pop up but its still standing there and you can att it again
  21. pking soso

    nex

    guys i add nex to my server and i got the frozne key then rope after i use rope it say the place u want to tele is not add tele to home so it tele me to home then i add nex coords and its said the same before if u can help me with good nex and another small problem i can pay rsgp please help
  22. Code Kai

    Adding Nex Help!

    Hello, RuneLocus Community! I am in need of dire help as I am adding the custom NPC Nex to my[B] Project insanity[/B] based server. I get this compiling error: (Take note of the parts highlighted in Blue). [IMG]http://i820.photobucket.com/albums/zz125/Coder_Kai/NexError.png[/IMG] Now here is the excerpt from [U][B]NPCHandler.java[/B][/U]: [CODE]public void attackPlayer(Client c, int i) { if(npcs[i] != null) { if (npcs[i].npcType == 5248) { int p = npcs[i].killerId; if (Misc.random(30000) <= 1) { npcs[i].forceChat(nexCries()); } if(npcs[i].HP <= 15000 && npcs[i].HP >= 30) { npcs[i].HP =+ 30; npcs[i].moveY += 5; nexCharge(i); npcs[i].forceChat("There is...NO ESCAPE!"); } if(npcs[i].HP <= 10000 && npcs[i].HP >= 25) { npcs[i].HP =+ 60; npcs[i].forceAnim(6326);//turm npcs[i].hitDelayTimer +=2; npcs[i].forceChat("NOW, THE POWER OF ZAROS!"); } if(npcs[i].HP <= 20000 && npcs[i].HP >= 55) { npcs[i].forceChat("Die now, in a prison of ice!"); } if(npcs[i].HP <= 20000 && npcs[i].HP >= 40) { npcs[i].forceAnim(6986);//barrage? npcs[i].attackType = 2; if (c.freezeTimer <= 0){ c.freezeTimer = 30; c.gfx0(369); c.sendMessage("You have been frozen."); } } if(npcs[i].HP <= 25000 && npcs[i].HP >= 40) { c.getPA().appendPoison(160); c.gfx0(391); npcs[i].forceAnim(6986); npcs[i].attackType = 2; } if(npcs[i].HP <= 10000 && npcs[i].HP >= 50) { npcs[i].forceChat("Embrace Darkness!"); } if(npcs[i].HP <= 10000 && npcs[i].HP >= 45) { c.getPA().walkableInterface(12418); } }[/CODE] Finally the excerpt from [B][U]Client.java[/U][/B]: [CODE]public String nexCries() { int random = Misc.random(2); switch (random) { case 0: return "AT LAST!"; default: return "To the might Lord Zaros!"; } } boolean nexCharge = false; public void nexcharging(final int i) { EventManager.getSingleton().addEvent(new Event() { int chargeTime = 13; public void execute(EventContainer charge) { if (chargeTime == 13) { //npcs[i].forceAnim(6948); nexCharge = true; } if (chargeTime == 12) { //npcs[i].absY -= MoveY >= npcs[i].makeY -= 5; //npcs[i].moveX -= 5; //npcs[id].moveY -= 5; } if (chargeTime == 7) { //npcs[i].forceAnim(6321); } if (chargeTime == 8) { //npcs[i].absY -= MoveY >= npcs[i].makeY += 5; //npcs[i].moveX += 5; //npcs[i].moveY += 5; } if (chargeTime == 0) { nexCharge = false; } if (chargeTime <= 0) { charge.stop(); return; } if (chargeTime >= 0) { chargeTime--; } } }, 600); }[/CODE] If [B][U]ANYONE[/U][/B] can shed some light and give a detailed explanation on this situation (So it never happens again), it would be deeply appreciated. Thanks RuneLocus!
  23. Does anyone have it? I am adding Nex and it is basically the only thing I don't have lol. In my opinion, I have got a pretty good start at it. :) Nex does turmoil and powers up as he takes damage. At about half hp, he becomes untouchable and he spawns fumus at his respective corner and you must fight and defeat him before going back to nex. After you beat him, the fight goes on as normal. Then, about 1/5 hp, nex turns on soul split and starts raping everyone by hitting them away and then shooting a magic blast at them, hurting everyone within range. On death, he has the wrath effect and people around him are hurt pretty badly. Drops all items that he does in RS, and as a bonus, the new colored robin hood hats. Things I have to add: DEATH ANIMATION (lol kind of important) All 4 of her helpers instead of just 1 Her super unstoppable rush attack
  24. [align=center][size=18] [img]http://img808.imageshack.us/img808/6398/logoxdq.png[/img] is now open for the official release! Custom Veteran Cape Emote! [spoil] [url]http://www.destinypkv2[/url]. tk [url]http://destinypkv2mac[/url]. tk Mac client here! [/spoil] [color=red][size=20]Pictures![/size][/color] [spoil] [img]http://img842.imageshack.us/img842/1545/62118650.png[/img] [img]http://img718.imageshack.us/img718/9987/92542134.png[/img] [img]http://img217.imageshack.us/img217/4356/41978495.png[/img] [img]http://img684.imageshack.us/img684/9034/66841727.png[/img] [img]http://img225.imageshack.us/img225/9164/21338439.png[/img] [img]http://img204.imageshack.us/img204/2268/36676809.png[/img] [img]http://img69.imageshack.us/img69/8612/99198029.png[/img] [img]http://img9.imageshack.us/img9/823/48235925.png[/img] [img]http://img9.imageshack.us/img9/9322/86828224.png[/img] [img]http://img21.imageshack.us/img21/5652/41587206.png[/img] [img]http://img14.imageshack.us/img14/7465/53909358.png[/img] [img]http://img19.imageshack.us/img19/2008/22784283.png[/img] [img]http://img402.imageshack.us/img402/8935/12737344.png[/img] [/spoil] [color=blue][size=20]Videos! (They go in order of upload date newest-oldest!)[/size][/color] [spoil][youtube]http://www.youtube.com/watch?v=fcLTul-l1X4[/youtube] [youtube]http://www.youtube.com/watch?v=hMwlaE2cAuI[/youtube] [youtube]http://www.youtube.com/watch?v=g7eeZVdItsI[/youtube] [youtube]http://www.youtube.com/watch?v=Hg8wT2R03Hk[/youtube] [youtube]http://www.youtube.com/watch?v=TK_Lgfh_p2k[/youtube] [size=20][color=red]MOST RECENT UPDATE:[/color][/size] [spoil] we have a vary good server and a good econamy come and join!
  25. Deathly Souls nex! [url=http://www.youtube.com/watch?v=UHzj6fSST6M]Deathly Souls NEX preveiw 657 - YouTube[/url] [URL="http://www.youtube.com/watch?v=-zlPHpni674"]http://www.youtube.com/watch?v=-zlPHpni674[/URL] features:- [LIST] [*]perfect spawning like real rs with dialogues and emotes. [*]minions start attacking only when their phase comes. [*]mage/melee based [*]minions don't move [*]nex needs to be weaker before you can attack nex [*]nex has 5 stages according to its hp like on rs. [*]first phase is blood barrage with healing effect. [*]second phase is smoke phase in which you need to keep moving or else you get hit....like on rs [*]third phase is ice phase....it ice barrages and freezes you. [*]fourth stage is melee phase..... it teles to a player randomly and attacks it.... looks awesome :d [*]5th stage, it activates turm and soul split, later deflect melee and in the end wrath. [/LIST]
×