Announcing OpenOTP

Hey Panda’rs!

I’ve seen some traffic on these forums talking about Toontown/Pirates going down,
and additionally I know that writing the distributed back end used to be a potential feature.

(Check these topics)
[Distibuted networking system)
Panda3D Futures

[size=150]Anyway, in comes OpenOTP. https://github.com/OpenOTP/OpenOTP[/size]

We’re recreating the OpenOTP based of off Disney’s video lectures and some black-box reverse engineering.
panda3d.org/manual/index.php … o_Lectures

This implementation of OpenOTP is NOT panda3d specific (we don’t want dependencies on the entirety of panda3d), but is panda3d COMPATIBLE (we still use distributed classes, etc). We’re trying to make it fairly faithful to the original OTP server, except were we must reason out how parts work where it can’t be determined, or in some cases making improvements to the original protocol.

If you’re interested in hearing about it, or contributing check out our IRC channel:
irc://chat.freenode.net/#OpenOTP

Good luck!

While not specific to openotp, it would be fantastic if you helped fill out the distributed networking sections of the panda3d manual.

Also, plans for python bindings?

We are planning on providing libraries for key parts of the structure (including Datagrams, DistributedClasses, etc) in multiple languages possibly including: C++, C#, Python, Java, and Go.

In terms of bindings into the OTP server itself, we may get around to proving python and/or cgo bindings to, for-example, write your own CA, AI, or UD in that language. Binding it in other languages is on the back-burner though in terms of getting the cluster up and working in the first place. A number of our developers are very focused on replacing the backend of Toontown, Pirates, etc, which they will likely write in C++.

LEGAL NOTE: The OpenOTP project is in no way attached to Toontown, Pirates, or any Disney Interactive IPs. The individuals who wish to develop those will have separate projects that will have to deal with their own separate legal issues. The OpenOTP project is based on publicly released documentation and materials from both Panda3D and as released by members of the Disney team.

Sounds like an ambitious project! It would be great to finally have a good server-side implementation of Panda3D’s networking system.

It’s a bit unfortunate that you’ve chosen such a restrictive license; perhaps you guys might consider a permissive license like the one Panda is using? This would probably increase the utility for this system in conjunction with Panda3D.

Unrelatedly, perhaps Disney might be more willing to release the source code of OTP now that Toontown and Pirates are closing?

Sadly, the closing of OTP-related projects within Disney is not likely to make it easier to release the underlying code. It might actually make it more difficult, because lawyers.

David

One of the other OpenOTP members contacted drwr about open sourcing their OTP implementation. He was all for it, however Disney’s legal team isn’t. He expressed how hard it was to get Panda3D open sourced, and their OTP would be just as hard if not harder considering Disney really has nothing to gain from it.

Nevertheless, he says he will ask.

EDIT: Nevermind, seems he replied while I was typing.

You’ve made a very good point. The original license was chosen by someone for whatever reason I don’t know.

We now use the very unrestrictive MIT License.

Excellent, thanks!

I am hoping on making a private server too! My game is already complete, but I don’t know how to make an OTP server, and I was wondering if any of you guys could help me with it.