Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Nostale
You last visited: Today at 05:59

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[OpenSource] Nostale Private Server Emulator - SaltyEmu (based on ChickenAPI)

Discussion on [OpenSource] Nostale Private Server Emulator - SaltyEmu (based on ChickenAPI) within the Nostale forum part of the MMORPGs category.

Closed Thread
 
Old   #1

 
Blowa's Avatar
 
elite*gold: 98
Join Date: Jan 2010
Posts: 631
Received Thanks: 1,726
[OpenSource] Nostale Private Server Emulator - SaltyEmu (based on ChickenAPI)

Hi,

I'd like to present you my project, SaltyEmu.

It's a modern MMORPG Emulator written in C# / Go for the game Nostale.

My goals :
  • Bring a new eye on Nostale Private Server scene.
  • Improving my software designing skills & implementation skills
  • Help the real servers being highlighted by their work and remove all those shitty drag & drop servers that are designed to make money on developer's work.

GitHub :
Discord :


What are we looking for ?
We would like to know what you, server owners (real servers ones) are actually looking to add on your server which is a pain to do on OpenNos without changing everything in the base source (which is the most important lack of OpenNos to us)

How does SaltyEmu work ?
Actually, most of the packets are converted into abstracted events that will go through the event pipeline.
As well, there are a lot of micro services you can easily access to manage a lot of things (Sessions around the network, static data (.dat), instanciated data...)


The event pipeline is divided in two big parts :
- EventChecker : Filters event, based on checks, if a requirement check fails, the event is dropped from the pipeline
- EventHandlers : Handles the event, does the expected processing for the given event (like broadcasting a packet on a maplayer, adding item in an inventory...)

You can add as much handlers / checkers as you want to for 1 single event, through dynamically loaded plugins (stored in dynamic libs aka .dll)

Example :
A player send a "chat message"
It's converted to a ChatMessageEvent (we try as much as possible to factorize our code base)
ChatMessageEvent goes in every EventCheckers of the pipeline

Advantages of this architecture :
- Extreme pluggability (you can change the handling of an event during server's runtime)
- Easy Load Balancing (you can easily make one TCP listener that will throw event to handlers in a distributed software)

What we got so far :
- Command Framework (SaltyEmu.Commands & Essentials)
- MicroService Framework (MQTT)
- Family (MicroService)
- Friend / Blocked (Micro service)
- Multi channel
- Chat System
- Monsters & NPC's AI
- Battle
- NpcDialogs (still need to implement a lot of specific handling but really easy to add those)
- Guri Handling (same as NpcDialogs)
- Item Usage (same as NpcDialogs)
- Player Walking
- Shops
- Inventory
- Commands
- Items
- Portals
- Skills
- Specialists
- Groups
- Buffs
- Heavy documentation

What we will work on really soon :
- NosBazaar
- More documentation as there is already
- More tests (we try to handle the maximum of scenarios we can)
- Pets / Partners
- Scripting Instances (probably LUA or C# scripting)


Are you interested ?
We are always looking for contributors :
- Packets fixing (we have some missing informations actually)
- Feedbacks

If you find anything wrong in my thread, I would be glad if you could inform me, I wrote that fastly during my chinese course


PS : This is not a PoC, it has been running on our side since some months now, we reached a point where we'd like to have some external feedback.
Blowa is offline  
Thanks
12 Users
Old 10/23/2018, 09:10   #2
 
~Teiko~'s Avatar
 
elite*gold: 0
Join Date: Apr 2015
Posts: 446
Received Thanks: 149
WERE IS DOWNLOOUD??

Just kidding, keep it Up we need some new things and not only opennos.
~Teiko~ is offline  
Thanks
1 User
Old 10/23/2018, 11:08   #3
 
elite*gold: 0
Join Date: Oct 2018
Posts: 10
Received Thanks: 0
yers

Yes my interresed
SxManuxS is offline  
Old 10/23/2018, 11:11   #4
 
PenguinXD's Avatar
 
elite*gold: 0
Join Date: Oct 2018
Posts: 247
Received Thanks: 200
Make NosTale great again
PenguinXD is offline  
Thanks
1 User
Old 10/23/2018, 11:30   #5
 
elite*gold: 0
Join Date: Apr 2018
Posts: 149
Received Thanks: 58
Good luck
Radiv is offline  
Old 10/24/2018, 13:59   #6
 
elite*gold: 0
Join Date: Sep 2016
Posts: 75
Received Thanks: 15
For what i saw this emulator will be probably the best out there.
It has a great structure and its maintainability is something crazy.
For all the founders with hands and a bit of coding knowledge reading this : support this project cuz it'll be fantastic. Sure it needs more work right now but good things need time to grow up.

Keep up the good work
Petonio is offline  
Thanks
1 User
Old 10/25/2018, 22:27   #7
 
elite*gold: 0
Join Date: Jul 2018
Posts: 10
Received Thanks: 1
any more info on what you mean as an "emulator"?
because my meaning is to be able to play it on android or something, but i don't think that's what you meant......
dogenumberpi is offline  
Old 10/25/2018, 22:39   #8
 
Saber none's Avatar
 
elite*gold: 30
Join Date: Sep 2014
Posts: 587
Received Thanks: 315
Quote:
Originally Posted by dogenumberpi View Post
any more info on what you mean as an "emulator"?
because my meaning is to be able to play it on android or something, but i don't think that's what you meant......
OpenNos is basically an emulator, emulator just means that it is something with which you can emulate something whatever it is.
Saber none is offline  
Old 10/26/2018, 11:47   #9
 
erixor's Avatar
 
elite*gold: 0
Join Date: Jul 2013
Posts: 374
Received Thanks: 1,024
Quote:
Originally Posted by dogenumberpi View Post
any more info on what you mean as an "emulator"?
because my meaning is to be able to play it on android or something, but i don't think that's what you meant......
Basically Nostale is an online game that has a Client (what you download on your computer), and a server, that communicates with the client and vice versa.

This emulator has a goal to emulate the server part
erixor is offline  
Old 10/26/2018, 13:09   #10
 
elite*gold: 0
Join Date: Mar 2016
Posts: 104
Received Thanks: 104
It's a good project, I'm waiting to see more and I wish you good luck
NT Z0ltar is offline  
Thanks
2 Users
Old 10/28/2018, 23:24   #11
 
elite*gold: 0
Join Date: Sep 2010
Posts: 1,013
Received Thanks: 167
Awesome! NosTale really needs to be revived,
I am sick of the usual, EXP maps there, Donor shop there, buy this SP Job99 +15 there
We really need actual servers , even tho questing is boring often, the quests are really nice! i miss that part of the game being really alive ^^
Marvin341 is offline  
Old 10/29/2018, 14:37   #12
 
✿¸.•❤•.❀•ilin•❀.•❤•.¸✿'s Avatar
 
elite*gold: 0
Join Date: Sep 2018
Posts: 57
Received Thanks: 5
really nice work,
but new emu new problems
24/7 comming?
✿¸.•❤•.❀•ilin•❀.•❤•.¸✿ is offline  
Old 11/06/2018, 17:44   #13

 
Blowa's Avatar
 
elite*gold: 98
Join Date: Jan 2010
Posts: 631
Received Thanks: 1,726
Gonna opensource most important parts of SaltyEmu really soon.

I'm working on a proper splitting from things we want to keep private (such as plugins) and things that we want to share to grow the community around SaltyEmu & ChickenAPI.

By the way, SaltyEmu, not like OpenNos, won't be something you'll consider to buy/sell since it's mostly a network wrapper with some meta programming things to dynamically load implementations from ChickenAPI and some plugins without changing the "Server" code base.
Blowa is offline  
Old 11/18/2018, 04:48   #14

 
Blowa's Avatar
 
elite*gold: 98
Join Date: Jan 2010
Posts: 631
Received Thanks: 1,726
Hi everyone,

We are opening SaltyEmu & ChickenAPI's actual development repositories to whoever would want to come and give us some REAL help (feedback, implementations...)

From beginner developer to experienced developer.
(We don't need leechers that will create a thread on elitepvpers because he does not know how to make a simple condition)

We decided to create a discord server to discuss about SaltyEmu & ChickenAPI for the community's needs.





Don't forget that we are doing a community project freely, on our free time, for pleasure & learning purposes.
Better not come to waste our time, you'll waste your own one.


Edit :
Since a lot of people don't know what "contributing to a project" means, we have opened a blacklist of people who are forbidden from our project contributors group.

You guys should have respect towards people that works and give their free time for a project you are just waiting to get money, *******


Regards,
Blowa.
Blowa is offline  
Thanks
4 Users
Old 11/21/2018, 20:46   #15
 
elite*gold: 0
Join Date: Oct 2018
Posts: 10
Received Thanks: 4
Seems like it would be user-friendly too, i like the idea.
About the edit, lot of people ain't respectful, i hope you'll find some good contributors, i would be happy to help you but i'm just learning c# still, i would be a waste of time atm
-Diamond- is offline  
Closed Thread

Tags
nostale emulator, nostale source, private server nostale


Similar Threads Similar Threads
[OpenSource] ChickenAPI - Next step in Nostale Private Server Emulation
03/30/2020 - Nostale - 38 Replies
https://avatars3.githubusercontent.com/u/48816080? s=200&v=4 Dear Community, I would like to present you ChickenAPI (what a strange name for Nostale content). Discord : https://discord.gg/7sTFU8d Github : https://github.com/ChickenAPI



All times are GMT +2. The time now is 05:59.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.