Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

BDO Central Market Source Code (.NET 7) Re-written %70 Work

Newbie Spellweaver
Joined
Apr 28, 2022
Messages
5
Reaction score
10
Hey everyone, i was working on re-writing central market for Corsair leak version it was just fun project to upgrade from .NET Framework 4.5.

The version mis-match error is fixed if anyone ever tried that very simple solution. So CM storage data pull works.

This market probably will work on Nova leak version as well (not tested). Some request and responses might be different after you check that in theory it should work

What is new and what changed ?
- Merged all 3 APIs to single API. Process API to a class and was going to merge all into their calling services
- Removed Admin command from WorldDb (most likely no-one used). Even if you need something like this you can implement your own admin panel inside it
- Implemented EntityFrameworkCore 7, re-write almost all stored procedures. Now it was a wrong decision to do this instead i should have used Dapper and keep using exisiting stored procedures but here we are.
- Database access layer might be a slightly mess because i was in process of implementing functions. Its not hard to figure out
- .NET 7 upgrade
- Faster load and startup time. In about few seconds it starts rather than waiting around 15+ seconds. Due to item table bulk update
- Re-written bunch of services from scratch
- Removed ton of unnecessary and things that wont be used most likely (AWS Support/Proxy support etc.)
- Changed XML models so previous models won't work you either need to change project models or element names in xml if you want to use your own
- Removed bunch of useless configurations
And more....

What needs to be done ?
- Need to complete DB access layer functions and dump SQL SP
- Need to merge and seperate services (TradeProcessService etc)
- Complete dependency injection
- Write tests and make sure everything works properly
- There was some error when moving item to CM storage and back. Need to fix that
- Project does not compile because i left half and i don't have time to go in and fix those errors.
- Removed some nuget packages as well so some methods or classes missing you need to implement them your self
- There might be small errors when buying items or selling them. (Ordering logic etc. might need re-write)
- Item List xml might be missing some items i couldn't find the original so if you find it replace it and change element names it will work fine
Might be more this is all i can think of currently

Why share ?
Currently i have completely stopped working on any of my side projects because i do not have time. I figured i might as well just share it if anyone wants to continue develop it and use it on their server even since it will most likely be more performant and you will be able to implement custom logic easily.

Can i contribute ?
Well if you want to fork and make pull requests im open to review them when i have time and merge if there is no custom stuff in it.

How to use ?
I can't promise support for the source code however if you would like to reach me i might answer your questions
However i wont help with setup there is already guides on official market files just run it on ISS and set domain name in game service.ini (view and game both will be same since APIs are merged)
Obviously you must fix the errors and build the project before doing that

Project is not %100 complete i would say around %70-80 complete and there is very little to do after some fixes. However for complete overhaul and accomlishing actually i wanted to do (Service seperation etc.) might take longer

This project code is taken from DLLs of official market files so most of the logic i did not write

Note: This uses leaked Corsair Database if you have you can directly use that or you can use EF Core to create db for you. All models exists in entities folder

Github link
 
Last edited:
Experienced Elementalist
Joined
Apr 25, 2014
Messages
229
Reaction score
7
can I customize any category or selling item inside the CM?
 
Newbie Spellweaver
Joined
Apr 28, 2022
Messages
5
Reaction score
10
can I customize any category or selling item inside the CM?
I don’t understand what you mean by customizing.

If you mean removing or adding items that is already possible with existing files.

If you mean removing or adding categories you have to do that in datasheets not API.

If selling items you mean if you want to implement a custom logic different than original yes. You have to write your own logic and implement what you want to implement
 
Back
Top