Stonefall - A RuneSource Derivative

[center][/center]

[center]Hopefully another step in the reduction of winterLove based servers.[/center]

I’ll start of with describing it. Stonefall is a Runescape 2 emulator for the revision 317 client. I guess this would be considered a premature and final release. I had a lot larger plans for Stonefall but lately I have lost all interest in its development and it isn’t enjoyable for me. Partly the reason for this is the limitations its simplistic design puts on it. This is how RuneSource is meant to be though, as it is a gateway into stable server development for winterLove base users.

RuneSource has provided me with the best introduction to Java and Runescape private servers. I only just started learning to develop Java a few short months ago. I think if I had used a base such as DeltaScape or Project Insanity I would have gotten nowhere. But the clarity a properly written framework mixed with a simplistic approach allowed for rapid learning. In saying this, you will have to excuse any ‘poorly written’ code within Stonefall as I’ve improved over time, yet some of the code is older.

Right now I am going to take what I have learnt to try my hand at my own gameserver framework which I can utilise to build a Runescape private server. I would like to encourage anyone using a winterLove base server to stop copy and pasting code to their base and develop using Stonefall or iClarity. I encourage anyone to use my extension to Blake’s RuneSource for a platform for their server. I hope this benefits the community a little bit.

[size=12pt]Features:[/size]

MySQL data saving and loading - The game loads several elements such as accounts, globally spawned items, npcs and their definitions from a MySQL database.

Sufficient thread management - No more cycle and sleep methods that run the entire game on one thread. The server has several dedicated threads handled by Java’s concurrent ScheduledExecutorService.

Seperate processing - Not every processor runs on one thread. Each ‘worker’ has its only thread. Such as network listening, player updating, event management and ground item handling.

Basic event handling system - Actions can be delayed or repeated using a simple threaded event handler. Can fire events in multiples of ticks, seconds, minutes and hours.

Better packet input handling - Packet handlers are managed with decent OOP, using an array for the handlers and a hashmap for commands and buttons.

Day and night switching - The game cycles through the day changing the light to match the corresponding time. You can set events to only trigger at certain times. An example of this is night only npcs.

Npc support - Npcs can be spawned using in-game commands. There is also a list loaded from the database. Currently they just stand idle.

Ground items - Ground item handling is done in a more elegant and efficient manner than most servers. Allows for permanent global spawns (loaded from the database) as well as temporary and player relative spawns.

Private messaging - Handled nicely, while friends and ignores lists are saved as a string rather than a long, to allow for readability.

Animations - Added into the update block, further implemented to support player emote buttons.

Better structuring - The source is packaged and refactored a lot from RuneSource to give it a more professional feel. The features and code were written exclusively for RuneSource so they work properly.

Plus much more (including all the features from RuneSource) such as NIO networking and properly written player updating.

[size=12pt]Credits:[/size]

blakeman8192 - Writer of RuneSource (which this is based upon). Blake thank you for providing me with a reliable and stable foundation to develop with.

I Vain I - Efficient design of the emote button handling system. Thomas thank you for keeping me company while I developed this.

[size=12pt]Pictures:[/size]

[center]


[/center]

:smiley:

Well done Wintercannon.

Thank you Davidi2, though it is only a matter of time before this is lost under the two second edits of DeltaScape and Project Insanity. :slight_smile:

Looked briefly but good job, young padawan!

looks really good, hope it will be better than hyperion

[quote=“Rix_, post:4, topic:385283”]Looked briefly but good job, young padawan![/quote]Kind of proud that I received a positive comment from you. Thanks.

Are you going to stop this development now?
Or you going to continue and let’s say, make a V2?

[quote=“Maikie61, post:7, topic:385283”]Are you going to stop this development now?
Or you going to continue and let’s say, make a V2?[/quote]If I notice that MoparScape finds a use for this and is using it than I will continue developing it some more. Otherwise there is no point releasing another version if the first goes to waste correct?

[quote=“Wintercanon, post:8, topic:385283”][quote author=Maikie61 link=topic=481040.msg3522362#msg3522362 date=1299493847]
Are you going to stop this development now?
Or you going to continue and let’s say, make a V2?
[/quote]If I notice that MoparScape finds a use for this and is using it than I will continue developing it some more. Otherwise there is no point releasing another version if the first goes to waste correct?[/quote]

It’s your own choice to delevelop it further. Not to us. There will be always some people who think they can do everything better, so they will flame.

I would love to see you developing this further as it can go very far. With a bit of luck this can come bigger than PI is currently. (I mean runesoure then). I enjoyed watching your develop all the time as you updated it every day.

Anyway, I hope you will continue.

I saw this coming, when I noticed your post in the development thread asking if we wanted updates.
I just want to say really nice job, Im going to keep bumping this, so it doesnt go to waste.
I hope you do continue working on this, as you have done an excellent job so far.

good job ima run stability tests and i might just use this instead of hyperion and im suprised something vain worked on thats not pi lol

[quote=“I Vain I, post:1, topic:385292”]I don’t see why I only got credits for the emote system… But oh well.

I reccommend this base to all.[/quote]I Vain I, if I forgot to give you credit for something you did, please let me know and I’ll add it immediately.

Good stuff going to hang on to to maybe integrate later.

Integrate what?

This is the next generation of private servers in terms of crazes. Let’s hope this fades out the phase they call PI… ooh! It’s already working… I can feel myself being drawn to a new development… can’t… fight it…

great job ima switch to this :slight_smile: thanks

If anyone wants to post any constructive criticism that would be cool to.

the night feature is kinda stupid no offence

[quote=“noobs are ftw, post:18, topic:385283”]the night feature is kinda stupid no offence[/quote]Then remove it. :slight_smile: It was purely to show that private servers can to be dynamic and automated.

Checked it out, made me realize that Blakeman1512 is a retard

Don’t understand what the big ‘hype’ about RuneSource is, it’s a piece of sh**