Hello. Releasing an unfinished project here that I worked on for like a month or two. I ran into too many issues with the 666 client such as the player rendering and HD settings and I don't like any of the systems I've written. I would prefer a revision with a ton of information already out for it like 637 or 667 or 718. Oh yeah, think I'll start using Kotlin instead. But any way, here is the release:
Project Uses
Gradle, so all you have to do is import this project as a gradle project and everything will be taken care of for you. If you want to run the server by batch, just click Run Server.bat in the server folder. It uses gradle as well...
I wrote my own cache library, but decided to scrap it for Displee's cache lib. I like his better
If there is anyone on the planet who thinks they wanna work on this, hit me up so I can help you.
Contents of the server:
- Ground Items
- Object Data
- Path Finding
- Collision
- Map Loading
- NPC Updating
- Player Updating
- Player Equipping/Unequipping
- Item Containers
- Banking w/ Tabs
- Dialogs (Options, Text, and Information pages)
- Player Saving/Loading
- Trading
- Console Commands
- Logging In/Out
- Attack Styles
- Skill Interface w/ Level and XP Targeting
- Prayers w/ Quick Prayers
- Damaging w/ Soaking Calculations
- Price Checker
- Items Kept On Death
- Resting
Some ghetto implementations:
- RSEventBus -> Handling events. Don't really like it, but I wanted something quick
- RSScriptSequence -> Handling queued scripts. Also don't like it
- RSMap -> holds the RSChunk which handles the objects, ground items, npc flags, and collision flags. I kinda like this one
- DialogSequence -> Handles creating dialogs. This is so ugly
- Mask -> Handles the update mask for npc or player that you implement for
- RSStream -> A custom byte buffer that's pretty ghetto too
- Network Handler -> Put all your InFrameHandler classes in here...or what rsps peeps call them: PacketHandlers
- Tick -> Handles a tick with any delay, not just 600ms
- ItemContainer -> Handles a given amount of items
- AStar -> Finds a path using A* algorithm. I like it, short and sweet
- Collision -> Handles any collision functionality
- Plugin -> Loads any jarred projects. These are usually modular projects separate from the core project and should be exported as jar and placed in the plugins folder
cache:
https://mega.nz/file/wBgUSRAT#HOpFZQ...qqNza_mL92lVHY
client:
https://mega.nz/file/FAxVzIKR#fGyNmD...KyfjeRExKZmwEQ
server:
https://mega.nz/file/1dgBFBrQ#F7xQz_...yHw5nPeiPBrU20