I had posted on this topic a few years back. I'm putting up another mohaa/reborn server so I'd like to revisit the issue.
I'd like to be able to run mohaa/reborn on FreeBSD, that's my poison of choice for unix OS. I'd rather not get into an OS discussion/war... just suffice it to say that freebsd runs many/most linux code unmodified (it includes the necessary compat libs and the same development toolchain as linux). Freebsd is very common in datacenters, not as common for home use. It tends to be server-centric. And since it includes well tested linux compat libs... one generally doesn't need to build an entirely new makefile with config tests for freebsd. Stuff almost always just works.
To the best of my recollection, I believe this is what occurred last time I tried it. Mohaa itself (the stock linux distribution) runs perfectly on Freebsd. One can even install the mohaa/reborn distribution from here - remove the reborn wrapper (initial executable) - and the stock mohaa runs perfect.
The moment one ads the reborn patch there is a critical failure. As I recall... the server starts, but the moment someone connects to it, the server crashes. I forget the message, page fault or panic or similar. I suspect that getting reborn to work on freebsd would be very trivial. Would any of the x-null dev team be willing to look/try if I provide them a freebsd vm to use for testing/work? dtrace is now included by default in freebsd and I suspect that would be the starting point. Failing that.... would the source to the reborn patch be available individually under an NDA? I'd be happy to sign, fix the issue, and return the results (and all rights of course for the changes) back to x-null followed by a certificate of destruction. Whatever you'd be comfortable with. I'd just like to get it working on my platform of choice. If its of any benefit, I'd be willing to continue testing any future releases on freebsd and make sure/fix any issues.
Oh wow... that's kinda worrisome that it's "x-null dev" and not "x-null dev team". That means if that one person gets hit by a bus.... then mohaa really is dead forever, and all the time and effort spent on reborn is wasted (ie. something in windows or linux changes and reborn doesn't work anymore and theres no way to change it). I sure hope the last remaining person with source code puts it in escrow or something in case of the worst.... and hopefully they will continue to maintain/enhance it.
Anyways - I suspect the issue is how the reborn patch is allocating memory or exec/fork/spawn of the main executable. Without source, that's no more than a WAG. My worry is that something was done that "works", but isn't supposed to or is "poor form"... and someday linux/windows devs get around to "fixing it" which breaks reborn.
To proceed, I will spin up a freebsd 11 VM, load up mohaa, and see if I can recreate the issue. If so, then perhaps I can get a dtrace and provide better info. Very difficult to figure out without source, especially if label tables were stripped from the object. I would bet the only fix is through the source... but... will try.
When I started with the project and Razor joined he took off with it to the point I couldn't keep up with him. Leyok later joined in on the development of the patch and made a lot of additions and changes, but we never ditributed them because we didn't want hose changes to conflict with the things Razor was working on. At that point in time I was sort of overlooking everything, but Razor and Leyok did a majority of the development. Now, Razor just has too much stuff going on, and I don't blame him. He has a family to raise and work. Leyok on the other hand merged his dev work on to the Unreal engine and is working on that with Elgan. When I asked him if he would be interested in finishing Reborn if Razor gave his blessing, Leyok explained that he didn't feel that there was enough to work from. The Reborn project was HEAVILY modified and reverse engineered. Everything we have done is sort of "hackish" to get it to work with the engine. In an ideal situation we would like MOHAA to open up their SDK so that was we can do everything from the barebone and this would be the best hing to do. Leyok is basically doing that by converting MOHAA and building it from the unreal engine.
Anyway, I'm sorry that this project fell through. I still have hopes that 1 day Razor will surprise us with his final release or at the very least be okay to release what we have done so someone else can work with it. When we initially started we wanted to make everything open source, but with anything that's open source there is always concern of hackers exploiting that work and that's not something we wanted to deal with.
I'll see what Razor says about releasing the source code.
I think whats left of the player base is free falling to less and less players and that's a result of no anticheat...........
Pakradar has given the features to deal with autodownload of maps but many players no longer play due to cheat issues and honestly its not much better on newer games..........
If the source is released then for me top priority is anticheat otherwise nothing else is worth the effort as its not playable as no anti cheat - I know I read from the other old threads some code was present to implement CPU id and so on registration so for me above all other issues thats the main goal for this old dog is anticheat otherwise its not playable
Game devs seem to lack security core because honestly it take a LOT more effort than to just whip something up that's playable. That's why they use frameworks like punkbuster and other AC's so that they don't have to deal with more than they need to. They outsource the rest to the clientside AC's, but even those guys have to keep doing frequent updates to stay on top of any bypasses. Creating a "solid" anticheat that is serverside is key.. That's what this communities focus was on. But no matter how much time and effort we put into it, as you guys witnessed yourselves; there were still glitches (for example with the antiwh). I mean when you look at the bigger picture I still think that the implemented antiwh is the core of the AC and we did a pretty damn solid job on it; but still those milliseconds of players glitching (blinking) around corners is an annoyance and people are fed up with that so it's almost better just playing with wallhacks than to block them.
It's a VERY tough thing to do; to be able to create something secure and enjoyable without hindering resources or "playabliity".
Honestly from what I've seen and heard I honestly feel that the MOH:UE project will have the most success because if you have the full source available at your disposal, you can do anything you want. Optimizing the code is much easier from both client and serverside as opposed to having to reverse everything manually like we did with Reborn.
Any way you look at it though both projects are extremely tedious and time consuming. It take an incredible amount of work, trial and error, and patience to complete.
@veers, with regards to it being open source, at this point I'm open to the idea. RR might consider releasing it too, but even if he did Ley0k has already told me that his priority is now with the mohue project. I don't know anyone else that would be able to continue from where we left off.