Thread: [474 Hyperion] ValorScape

Page 1 of 3 123 LastLast
Results 1 to 10 of 27
  1. #1 [474 Hyperion] ValorScape 
    🍥🍥🍥


    Join Date
    Dec 2008
    Posts
    1,702
    Thanks given
    664
    Thanks received
    293
    Rep Power
    621
    pardon my english* sorry for the layout



    ValorScape


    1st Revision (old)
    [SPOIL]
    This server is based off of Rs2's Server (a Hyperion based server).

    You will need a SQL database to run the server!

    This is legit 474! Not a modified 317 client loading 474 stuff etc
    BIG Thanks to TheChosenOne for this thread!

    I picked valorscape as the name because back in 06 - 08 i use to run my servers with the name valorscape so i thought it would be cool to bring it back and use it again lol, not sure if i really want to host, looking forward to releasing it actually..

    This project is really gonna be aimed for it's custom filled content and basic runescape gameplay (skilling etc).
    Custom Content like:
    • custom quests
    • turning into a werewolf
    • etc (more that i dont want to type)


    If you want to see more in-depth description about the source im using, check out this: My Rs2-Edit release

    I've added and fixed so much more since that release, and redone lots lots of things
    I really don't plan on hosting this at all, so I've been working on the how the core code looks like..

    New Content:
    [*]Sound System
    Someone released a 459 Sound list (thanks for that) and I took the Id's from that list and put them to some good use *~*
    working sound list:
    • Modern Combat Spells
    • Ancient Spells
    • GodSword Special attacks
    • some weapon hit sounds
    • All Prayer sounds
    • & a few more...
    [*] Full Void armors[*] Full 474 ItemDefinitions (before you couldn't spawn most items because they weren't defined, now this time it contains all 474 items!)[*]Teleother Spell[*] & More to come[/LIST]

    Media
    Spoiler for welcome screen:


    Spoiler for barrelchest anchor! :





    Spoiler for custom jail system i've worked on :P :




    Spoiler for Easter ring:



    Spoiler for others:






    July 2:
    Custom God Book preaching!
    I rewrote how huey did his in his runelegends source, which took forever >.>
    Spoiler for God Books:




    snippet on how this code works:
    Code:
                   CustomInput preach = new CustomInput(player, "What would you like to say?") {
    
                        @Override
                        public void doActions() {
                            player.getActionSender().removeChatboxInterface();
                            player.forceChat(getInputText());
                            player.playAnimation(Animation.PREACH);
                        }
                    };
                    preach.execute();


    I'll be posting updates here:
    july 5:
    - big implementation with the eternity's listener system
    - repackaged some things
    - i quit/released
    july 4:
    -redone command system (like shards)
    -fixed npc respawning (done differently, redone the spawning class aswell o.O)
    July 2:
    - Re-done sounds
    - cleaned up/removed useless code
    - added more javascript files
    - Added more scripting stuff
    - added support for custom text/number inputs
    ----------------------------------
    RuneLegends was released for open source! I admit that I did take a few things, i'm
    going to list what I used from that source:
    [SPOIL]
    • Content:
    • Obelisks
    • DFS
    • ShipTraveling
    • GodBooks
    • GnomeGlider
    • MagicCarpet
    • Sound System

    That's it
    Credits to him!!
    I reworked ALL of them though, and cleaned it up a lot[/SPOIL]
    - added god book preaching

    May 24:
    - redone pickup item system
    - fixed all telegrab dupes (I think)
    - support for picking up items off of a table (now works)
    - putting an item on a table (now works)
    - added LOADS of death / attack / defend sounds (8:46pm)

    October 14:
    - REMOVED LOTS OF UNUSED CODE
    - REMOVED PLUGIN SYSTEM
    - REMOVED UNUSED LISTENERS
    - CLEANED UP CLASSES
    - Added SQL Saving/Loading, no more .dat.gz w/e files
    [/SPOIL]

    2nd Revision:

    ValorScape 474
    Development Team:
    Website (PHP): me
    Server (Java): me

    About


    ValorScape is an old server name of mine. A server that I use to host back in 06, when I first joined RSPS. Since then, I have improved a lot in RSPS development. So, I thought it would be nice to give this project the name!
    This server is based off Rs2 Server 474 (Hyperion), improved immensely by me.
    All the content added onto this base was done by me, no one else, no 'development teams', just me. All my work!

    I've been working on this source for a year exact, and still today. I do not plan on moving on to another source at all; I'm going to keep improving the base over time!
    For those who think this is a 317; IT ISN'T! Rs2 Server is based off a real 474, with a real 474 client/cache!
    I choose the 474 because I really don't like the interface system on the 317 Revision! That's the only reason why I refuse to work with 317 bases because of it's UGLY UGLY interface system! 377+ have suuuuch a better interface system and that's why I prefer to use any revision other than 317 but that's just me.


    Code
    I'm very OCD when it comes to programming the server... literally, I will take my time fixing someone until it's done right! I really love the OO design of Hyperion, so nothing is ever cramped into one file..
    I try to keep every classes as clean as possible with documentation, no useless/unused methods, and everything else just done in a neat way.
    I am aware kinda aware of performance, i'll start going on to that next week.

    • CutScene System:
      This is a flexible system I first made. As seen in Rs2's introduction login, you start in Falador Castle and automatically walk towards this NPC that talks to you etc, it's all in here:
      Spoiler for code:

      Code:
      package org.hyperion.rs2.model.cutscene.impl;
      
      import org.hyperion.rs2.Constants;
      import org.hyperion.rs2.model.*;
      import org.hyperion.rs2.net.ActionSender;
      import org.hyperion.rs2.tickable.Tickable;
      import org.hyperion.rs2.util.NameUtils;
      
      import java.io.File;
      
      /**
       * Created by IntelliJ IDEA.
       * Date: 4/1/12
       * Time: 7:43 PM
       */
      public class SquireCutScene extends AbstractCutScene {
      
          /**
           * The singleton instance.
           */
          private static final SquireCutScene INSTANCE = new SquireCutScene();
      
          /**
           * Gets the singleton instance.
           *
           * @return The singleton instance.
           */
          public static SquireCutScene getScene() {
              return INSTANCE;
          }
      
          @Override
          public String getAttributeName() {
              return "squire";
          }
      
          @Override
          public void start(final Player player) {
              player.getActionSender().sendWindowPane(Constants.MAIN_WINDOW);
              File f = new File("data/savedGames/" + NameUtils.formatNameForProtocol(player.getName()) + ".dat.gz");
              if (!f.exists()) {
                  NPC npc = new NPC(NPCDefinition.forId(606), Location.create(2965, 3367, player.getIndex() * 4), null, null, 6);
                  World.getWorld().register(npc);
                  player.setAttribute("squire", npc);
      
                  World.getWorld().submit(new Tickable(2) {
                      @Override
                      public void execute() {
                          player.getWalkingQueue().reset();
                          player.getWalkingQueue().addStep(2965, 3365);
                          player.getWalkingQueue().finish();
                      }
                  });
      
                  World.getWorld().submit(new Tickable(20) {
                      @Override
                      public void execute() {
                          getDialogues(player, 1);
                          this.stop();
                      }
                  });
              }
          }
      
          @Override
          public void getDialogues(Player player, int id) {
              switch (id) {
                  case 1:
                      player.getActionSender().sendDialogue("Squire", ActionSender.DialogueType.NPC, 606, Animation.FacialAnimation.DEFAULT,
                              "Congratulations, " + player.getName() + "! You have just completed",
                              "the White Knight training course. Now it is time for you",
                              "to venture out into our wide world, and defend it as an",
                              "honourable White Knight.");
                      player.getInterfaceState().setNextDialogueId(0, 2);
                      break;
                  case 2:
                      player.getActionSender().sendDialogue("Squire", ActionSender.DialogueType.NPC, 606, Animation.FacialAnimation.DEFAULT,
                              "Here is your complimentary starter pack.");
                      player.getInterfaceState().setNextDialogueId(0, 3);
                      break;
                  case 3:
                      stop(player);
                      break;
              }
          }
      
          @Override
          public void stop(Player player) {
              super.stop(player);
              if (player.getAttribute(getAttributeName()) != null) {
                  World.getWorld().unregister((NPC) player.getAttribute(getAttributeName()));
                  Location teleport = Location.create(2965, 3365, 0);
                  player.setLocation(teleport);
                  player.setTeleportTarget(teleport);
                  player.removeAttribute(getAttributeName());
                  player.getActionSender().removeAllInterfaces().sendDefaultChatbox().sendSidebarInterfaces();
              }
          }
      }

      How do you you use it?

      Code:
      SquireCutScene squireScene = new SquireCutScene(); //or use a singleton
      player.setCutscene(squireScene); //only ONE cutscene can be happening!
      squireScene.start(player);
    • 'CustomInputManager'
      I didn't know what else to name it, but it's another flexible system I made for custom inputs! As shown below:
      Spoiler for pic/code:




      Code:
                     CustomInput preach = new CustomInput(player, "What would you like to say?") {
      
                          @Override
                          public void doActions() {
                              player.getActionSender().removeChatboxInterface();
                              player.forceChat(getInputText());
                              player.playAnimation(Animation.PREACH);
                          }
                      };
                      preach.execute();

    • Quest System
      Probably one of the most interesting ones that i've added! Took for ever and still does needs improvement, but as of right now, it's pretty good!
      First quest you'll see on the server is the Dwarf Cannon quest, I added a custom Werewolf quest before but I decided to remove it =p

      The quest system is very easy to use, very easy to make a custom quest of your own all in a class file without jumping here to there etc.
      Spoiler for pic:



      Shown in this pic, only one quest works which is dwarf cannon

      Code:
      register(15, new DwarfCannonQuest());
      Code:
      register(BUTTON_ID, QUEST_CLASS);
      Any other quest you try to open will just return a message "it's not added yet"
      I won't be showing you the full code but i'll explain some:
      Code:
          @Override
          public boolean deathHook(Player player) {
      //blank
              return true;
          }
      
          @Override
          public void killHook(Mob killer, Mob victim) {
      //blank
          }
      
          @Override
          public void logoutHook(Player player) {
      //blank
          }
      In most custom user made quests, people like adding 'Zombie survival quest' or some things like that. The quest systems hooks up onto player deaths, when you kill a player, and what happens when you logout! All you gotta do is fill in the blanks, once again it's really easy adding your own custom quests with this system

    • Listeners
      I did not make this one, this actually was done by The Eternity
      Thread:http://www.rune-server.org/runescape...er-system.html

      Credits to him!
      I've changed it up a LOT though. The server does have a scripting system (JavaScript, Ruby, & Python), it's very easy to hook up let's say a ActionButtonListener to a script file I do not feel like explaining it

      Example usages of the Listener System:
      Code:
          /**
           * Listens for when an Entity dies.
           */
          public interface DeathListener extends AbstractListener {
      
              /**
               * Executes once the mob revives
               */
              public abstract void afterDeath(Mob killer, Mob victim);
      
              /**
               * Executes once the mob dies
               */
              public abstract void beforeDeath(Mob killer, Mob victim);
      
          }
      Might be confused why there is two stages of dying; let me explain: Let's say when you die, the grim reaper shows up, like RIGHT when you die, he'll be there taunting you for like 3 seconds then disappear, then you respond at Lumbridge or something idk.

      Not a good shot but here's a grim reaper showing up

    Server
    This isn't no 'old school remake,' although it does have the look & feel to it. This server is SQL BASED!
    Player saving and loading is done via SQL, it is NOT recommended running a source like this connected to a virtual host unless it's from the same computer it's running on!
    I made the server to work with the RuneScape Community Script. I've programmed the server to work with the site, well like share thing with each other.. The RCS script that i'm using it modified by a lot by me.

    The server does require a registered account on the site to play! There is NO CONNECTION TO THE DATABASE between this time of checking wether the player is registered or not!
    Sounds weird, but well, the checking is done from the website, as seen in one of Martin's tutorial
    Spoiler for pic:



    Another neat thing i've added was the Login Screen checkings! Since the RSC Website Script comes with a full functional Recovery system, message centre and forums, it was very easy integrating it to the server: Unread private message from the site, and seen in game
    (bottom corner left, I have a unread private message from the site)
    Spoiler for pic:



    I'm not going to waste time on what skills finished and what skills aren't added, but if you really want to know (losers):
    Green = done
    Yellow = almost
    Red = not added
    Skills:
    • Agility (not all courses added yet)
    • Fletching
    • Herblore
    • Mining
    • Theiving (pickpocketing & stalls)
    • Smithing (interface bug)
    • Woodcutting


    Combat:
    Rs2's combat is fine =P can use some improvement though
    Add-ons i've added/fixes:
    • Added Full Void + bonuses
    • Added more weapons (Barrelchest Anchor)
    • Weapons can be assigned a specific hit time (how long it takes for the hit to register in ticks) in XML files
    • King Black Dragon with random attacks (fire, melee vice versa at random times)


    Sorry for being vague with combat details

    Miscellanies
    • Sound System (All spells, all prayers, item pickup/drop, doors, etc.) EXCEPT ENTITY&WEAPON sounds
    • Map Fixes (client side)[SPOIL]

      [/SPOIL]
    • More that i'll go in depth with...


    Media


    Telegrab was added months ago; I made it use the same action system as picking up an item so there wouldn't be two different Action Systems when picking up an item o.O
    I've tested all the possible ways of duping in telegrab, I tried picking it up then telegrabbing, telegrab then pickup, one player telegrabs while player two tries to pick it up etc
    works 100% =P (yay) it even has sounds i think


    The cannon!



    As I was saying about my last custom quest, it will be possible to obtain ring that can turn you into a werewolf (worgen), with a timer of how long you could be it, the effects while you're a werewolf etc

    That's not top priority right now, i'm still working on SQL saving & other website/server related. Content is the last thing to add!
    Last edited by ICEAuthority; 07-05-2012 at 07:23 AM. Reason: updates
    Reply With Quote  
     

  2. Thankful users:


  3. #2  
    Extreme Donator [474 Hyperion] ValorScape Market Banned



    Join Date
    Dec 2010
    Age
    25
    Posts
    6,060
    Thanks given
    1,692
    Thanks received
    1,238
    Rep Power
    1765
    Support, can't wait to play.
    Reply With Quote  
     

  4. #3  
    Legends Never Die


    Join Date
    Nov 2009
    Posts
    4,289
    Thanks given
    91
    Thanks received
    1,216
    Rep Power
    5000
    Nice job, good luck.
    Reply With Quote  
     

  5. #4  
    Registered Member

    Join Date
    Jan 2011
    Posts
    1,940
    Thanks given
    1,217
    Thanks received
    547
    Rep Power
    607
    Lookin' good
    Reply With Quote  
     

  6. #5  
    Registered Member

    Join Date
    Aug 2007
    Posts
    1,289
    Thanks given
    130
    Thanks received
    340
    Rep Power
    862
    Looks good, good luck

    I would really like to try this out someday
    Reply With Quote  
     

  7. #6  
    Chemist

    Advocatus's Avatar
    Join Date
    Dec 2009
    Posts
    2,622
    Thanks given
    201
    Thanks received
    813
    Rep Power
    1462
    Goodluck, its nice to see a fellow hyperion user.
    Quote Originally Posted by blakeman8192 View Post
    Quitting is the only true failure.
    Reply With Quote  
     

  8. Thankful user:


  9. #7  
    Super Donator

    Haegely's Avatar
    Join Date
    Jan 2012
    Age
    30
    Posts
    305
    Thanks given
    31
    Thanks received
    40
    Rep Power
    119
    Looks good. I like the jail system.
    Reply With Quote  
     

  10. #8  
    Banned

    Join Date
    Nov 2009
    Posts
    4,219
    Thanks given
    2,950
    Thanks received
    1,362
    Rep Power
    0
    Good revision, good luck! I'd like to finally see something out of a 400 revision...
    Reply With Quote  
     

  11. #9  
    Extreme Donator [474 Hyperion] ValorScape Market Banned



    Join Date
    Dec 2010
    Age
    25
    Posts
    6,060
    Thanks given
    1,692
    Thanks received
    1,238
    Rep Power
    1765
    Quote Originally Posted by Vault View Post
    Good revision, good luck! I'd like to finally see something out of a 400 revision...
    What about runelegends?
    Reply With Quote  
     

  12. #10  
    Banned

    Join Date
    Nov 2009
    Posts
    4,219
    Thanks given
    2,950
    Thanks received
    1,362
    Rep Power
    0
    Quote Originally Posted by Giuliano View Post
    What about runelegends?
    Yeah, that's the only 400 revision that's actually made it somewhere lately.
    Reply With Quote  
     

Page 1 of 3 123 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Hyperion 474.
    By Fire Cape in forum Downloads
    Replies: 20
    Last Post: 08-07-2010, 01:59 PM
  2. Hyperion 474
    By Typhoeus in forum Help
    Replies: 5
    Last Post: 07-22-2010, 05:54 AM
  3. 474 Hyperion
    By Purple in forum Requests
    Replies: 0
    Last Post: 04-07-2010, 11:07 PM
  4. Hyperion [#474]
    By mige5 in forum Help
    Replies: 13
    Last Post: 04-06-2010, 03:07 PM
  5. Hyperion 474 V0.1
    By Hooligan in forum Downloads
    Replies: 26
    Last Post: 01-08-2010, 01:22 AM
Tags for this Thread

View Tag Cloud

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •