Development details

One Pump Pete

Sea Legs
I'm interested in the software portion of TLOPO - just the general implementation of Disney's OTP server. Does TLOPO use Astron like TTR?

I've watched a few of the presentations done by Disney on their server implementation and I'm curious as to the extent that Astron (or if you aren't using it, your OTP implementation) abstracts away tedious operations (network operations, persistent storage operations like db queries, etc).

On the client end I'm also curious as to what is causing all the lag, stuttering, etc. I know that there have been a few changes made to support new releases of Panda3D but I don't know the details.

Can any of the TLOPO devs weigh in?
 
They use Astron. Theres documentation on it on the Astron Github pages AFAIK. As for client, they updated to Python 2.7 (POTCO used 2.4) and to the latest Panda3D repo with slight custom modfications (POTCO used a custom (maybe?) Panda3D 1.8). The POTCO client was decompiled using decompyle++? Which while it did successfully decompile most of it apparently some code was unable to be recovered, or was highly buggy. The UD and AI servers were completely rewritten from the ground up and parts of the client code that did not decompile nicely or at all were rewritten or partly rewritten. Other than that for specifics on what modifications they have made to their P3d repo you'd have to have a dev answer that.
 
They use Astron. Theres documentation on it on the Astron Github pages AFAIK. As for client, they updated to Python 2.7 (POTCO used 2.4) and to the latest Panda3D repo with slight custom modfications (POTCO used a custom (maybe?) Panda3D 1.8). The POTCO client was decompiled using decompyle++? Which while it did successfully decompile most of it apparently some code was unable to be recovered, or was highly buggy. The UD and AI servers were completely rewritten from the ground up and parts of the client code that did not decompile nicely or at all were rewritten or partly rewritten. Other than that for specifics on what modifications they have made to their P3d repo you'd have to have a dev answer that.

I've glossed over Astron already and I think it's pretty neat. I'm specifically interested in the AI code that control ships and such. Disney's sailing system and sea battles are very (mechanically) well made for a game as old as this. How much work has to be done on the server side for that? Is every cannonball validated?

And what about the network operations. How big is the average packet? From my understanding the max size is 64kb for Astron messages. Does it ever even get close to that ceiling?
 
I've glossed over Astron already and I think it's pretty neat. I'm specifically interested in the AI code that control ships and such. Disney's sailing system and sea battles are very (mechanically) well made for a game as old as this. How much work has to be done on the server side for that? Is every cannonball validated?

And what about the network operations. How big is the average packet? From my understanding the max size is 64kb for Astron messages. Does it ever even get close to that ceiling?
Yourself asking for specific things makes me feel as though you are interested/have been interested in the process of remaking a pirate-y game yourself. Would that be correct, Pete?
 
Yourself asking for specific things makes me feel as though you are interested/have been interested in the process of remaking a pirate-y game yourself. Would that be correct, Pete?

Sort of. I'm a developer who has experience in reverse engineering a variety of other games and these topics are interesting to me. However as TLOPO already exists I have no interests in creating another remake of PotCO unless it was for my own amusement on a local machine.

As an example, I've been involved in the creation of Club Penguin servers in the past. However that's a very boring and straightforward game to deal with. Disney's design for these games (Toontown, PotCO) is a lot more fun to learn about.

Also, regarding Panda3D - as far as I know theres 64bit versions available. Is there a reason TLOPO can't use the 64bit builds?
 
Last edited:
Sort of. I'm a developer who has experience in reverse engineering a variety of other games and these topics are interesting to me. However as TLOPO already exists I have no interests in creating another remake of PotCO unless it was for my own amusement on a local machine.

As an example, I've been involved in the creation of Club Penguin servers in the past. However that's a very boring and straightforward game to deal with. Disney's design for these games (Toontown, PotCO) is a lot more fun to learn about.
Here's something I wish you (and others) could take away from in lieu of such interest - maybe express that interest to the powers to be so that the whole "learning" aspect defines your sole intent towards such pursuit. Otherwise, such intent could be misunderstood...you know?

I'm making an assumption here but if it interests you so much to where it could eventually lead yourself to pursue opportunities later on, you'll likely be asked where your skill and interest originated from and...if your honest...your going to want to explain things as they happened and how. "Learning" via this route you are taking is cool but ultimately, it could also be looked down upon by professionals within the gaming community dependent upon how someone views such illegal tinkering with things.

*I'm just giving you something to think about (for yourself) to which might/might not make a difference later on in lieu of the legitimacy of your skill.
 
Here's something I wish you (and ohers) could take away from in lieu of such interest - maybe express that interest to the powers to be so that the whole "learning" aspect defines your sole intent towards such pursuit. Otherwise, such intent could be misunderstood...you know?

I'm making an assumption here but if it interests you so much to where it could eventually lead yourself to pursue opportunities later on, you'll likely be asked where your skill and interest originated from and...if your honest...your going to want to explain things as they happened and how. "Learning" via this route you are taking is cool but ultimately, it could also be looked down upon by professionals within the gaming community dependent upon how someone views such illegal tinkering with things.

*I'm just giving you something to think about (for yourself) to which might/might not make a difference later on in lieu of the legitimacy of your skill.

This is just one corner of the overall interest I have in computer science. It's something I do in my free time because I can (much like the TLOPO devs), and in no way is it the only route I've refined any skills I have.

If I could talk to the TLOPO devs directly I would but as you can see it's a bit tough to get in touch with them.
 
This is just one corner of the overall interest I have in computer science. It's something I do in my free time because I can (much like the TLOPO devs), and in no way is it the only route I've refined any skills I have.

If I could talk to the TLOPO devs directly I would but as you can see it's a bit tough to get in touch with them.
You're most likely "studying" computer science then, I take it? If so, how readily or often do computer science text-books/official courses advise students to reverse-engineer protected games? I'm asking just out of curiosity mostly because...I can.
 
You're most likely "studying" computer science then, I take it? If so, how readily or often do computer science text-books/official courses advise students to reverse-engineer protected games? I'm asking just out of curiosity mostly because...I can.

Obviously never. But the act of reversing something isn't really harmful by itself - it's usually what people do with the information afterwards. RuneScape is a good example of this. Lots of RuneScape servers are illegal, for profit, and blatantly harmful to Jagex. In the case of TLOPO and Toontown Rewritten it's more ambiguous because they aren't for profit and are not directly harming Disney's bottom line since the games are no longer online.

If people have personal issues with it in this community however then they probably shouldn't be here seeing as that's exactly what TLOPO is.
 
Obviously never. But the act of reversing something isn't really harmful by itself - it's usually what people do with the information afterwards. RuneScape is a good example of this. Lots of RuneScape servers are illegal, for profit, and blatantly harmful to Jagex. In the case of TLOPO and Toontown Rewritten it's more ambiguous because they aren't for profit and are not directly harming Disney's bottom line since the games are no longer online.

If people have personal issues with it in this community however then they probably shouldn't be here seeing as that's exactly what TLOPO is.
Thank you for acknowledging the higher-academic non-acceptance of it and later, explaining a few things. :) Also, I'll let you be the judge of what you say about doing something when you're told not to. (Just to debunk that last point, if someone like me feels differently about the whole bit there is 'absolutely no reason' in the world why I can't be here as well in lieu of the past 6 years of time I devoted to this place and the community).

I hope you do find what you're looking for with your reverse-engineering endeavors.
 
Back
Top