Introduction
NetScape is heavily based on Apollo. There are no good C# RSPS's around so I decided to make one which will support multiple revisions and is fairly modular. This server uses DotNetty for Networking.
Repo: [Only registered and activated users can see links. ]
Docs: [Only registered and activated users can see links. ]
Code Docs: [Only registered and activated users can see links. ]
Roadmap
Login
- 317
- OSRS
- 667
Encoder & Decoder Messages
- 317
- OSRS
- 667
Npc/Player Updating:
- 317
- OSRS
- 667
Misc:
- Plugin system allowing assembly loading/unloading on runtime
- Player Saving/Loading to DB
- Unit tests for all modules
- JS5
- Multi-rev definition loading
IMAGES
FAQS
Does this only support windows?
- No nearly most if not all OS's support .net5.0
Can i use a different database?
- Yes the server is completely database agnostic and you can configure another DB using Entity Framework, however you will have to re-create the migrations by using the command "Add-Migration MigrationName".
What IDE's can i use?
- You can use Visual Studio 2019 or Rider [Only registered and activated users can see links. ] [Only registered and activated users can see links. ]
Why?
Current servers these days are made to throw away if one wants to update the revision. Its usually a nightmare to change protocols whilst preserving logic which is NOT protocol specific. This server will give the user the ability to make revision specific modules which can easily be switched out to change protocol.
.e.g. If someone wanted to change from 317 to 508 they'd only have to re-write/change these revision specific modules:
And reference their new revision specific modules via the Kernel class so the DI container can wire up the interfaces correctly:
Where are the encoder & decoder messages?
Netscape uses code gen to generate encoder/decoder message models. This makes it easier to change revisions as all the information of FIXED message structures are defined in a json file. The messages will be generated in the project "NetScape.Modules.Messages". This project will also have a few messages which are not a fixed packet size implemented manually .i.e. WalkingQueueMessage
This JSON file:
Creates:
Credits
- JayArrowz
- Graham
- Major
- Scu11
- [Only registered and activated users can see links. ]
- [Only registered and activated users can see links. ]
When your vision is crystal clear, they say it's razor-sharp
A focused mind is said to be like a knife, but the scalpel is wisdom
All one can do is accept that life is a double-edged sword Stay on the edge
-
Worked with him for a month. He's professional and always on time with posts, always interested in how the server is doing and how he can can improve and help in any way.