Discussion TLOPO Q/A Thread

Status
Not open for further replies.
Thank you for taking the time to respond to our inquiries, we heartily appreciate it! :bang:

If ye don't mind me so, I'd like to ask the following questions;
  1. What is your strategy going forward with MacOS compatibility? What happens if one day, an Apple update breaks the application for good? Or if an upcoming TLOPO overhaul requires dependencies that MacOS no longer provides or updates?
  2. Given that there's a level of uncertainty with MacOS, to what extent, do you consider making Linux an officially supported platform for the game?
  3. I understand that it could become quite tedious to maintain a separate launcher for another platform (Linux) along with other quirks it may introduce. IF, the answer to the above question is NO, can we at least expect some sort of CLI-based launcher? I'd like to provide this little tool as an example. I'm using it because there is no official application for my VPN on Linux. It makes use of dependencies like dialog to provide interactive selection.
  4. IF some sort of Linux support is on the roadmap, can we have a rough estimate? 2020? 2021? 2113?
  5. Is DirectX9 or newer coming back to TLOPO? Maybe DX9 doesn't make any sense nowadays but that was the only version supported by Panda3D a while ago. Not sure if things have changed ever since.
  6. Is the game, eventually becoming x64-executable? The launcher may be, but last time I checked the game itself is still x86 (tlopo.exe), (I could be wrong though:eek:.)
  7. To what extend, the game (in it's current state) is exhausting Panda3D engine capabilities? Can we expect a major graphic overhaul down the line? I specifically recall that POTCO had better graphics in 2011 than 2013. Disney toned down the graphics to further improve the performance.
  8. Theoretically speaking, would there a significant performance increase if POTCO (and later TLOPO) was written in C instead of Python? I think you're trying to achieve something similar with Pypperoni project, If I understand things correctly, that is.

My apologies for the long-winded list of questions and thank you for going through them all. Keep up the good work! :oops:
 
As a reminder, please stay on topic of the thread. I know the downtime we recently had left many wondering when TLOPO would be back up. However, this thread is specifically for the community to ask the TLOPO staff questions about the game. So, I have cleaned up the discussion about the downtime and waiting for the game to come back up.

Thank you all.
 
1. What is your strategy going forward with MacOS compatibility? What happens if one day, an Apple update breaks the application for good? Or if an upcoming TLOPO overhaul requires dependencies that MacOS no longer provides or updates?
MacOS support will be staying. We have been working very closely with the developers of the Panda3D game engine. In the Pypperoni update, TLOPO will be migrating to Panda3D 1.11 and will be incorporating all of the engine updates from their development team as we go forward.

The Panda3D developers have remained committed to keep macOS supported on their engine, and have a plan in place for how to deal with the OpenGL deprecation Apple announced a few months ago.

Additionally, in optimizing the game on the Pypperoni client, we've actually identified a couple interesting bugs in Panda3D which we've reported and their team has fixed. We've also found a few areas in the engine that were causing lag, and those parts have been optimized.

2. Given that there's a level of uncertainty with MacOS, to what extent, do you consider making Linux an officially supported platform for the game?

3. I understand that it could become quite tedious to maintain a separate launcher for another platform (Linux) along with other quirks it may introduce. IF, the answer to the above question is NO, can we at least expect some sort of CLI-based launcher? I'd like to provide this little tool as an example. I'm using it because there is no official application for my VPN on Linux. It makes use of dependencies like dialog to provide interactive selection.
Because these two questions would be answered the exact same way, I've just tied them together in this response.

We will be releasing a linux version of the game in the future. This is something that will come after the Pypperoni update. We're interested in exploring a more cross-platform solution for the game launcher, I have a few ideas that I'm going to be looking into in the near future.

Right now our current method of updating the game launcher is held together by duct tape and faith. I'd love to replace that with something much better so it's not a total pain each time we need to roll an update to the game launcher. (And there may even be a new game launcher design coming in the future.)

If we redesigned the way we update the launcher, as well as implemented a more cross-platform solution, Linux support be relatively easy to deploy.

4. IF some sort of Linux support is on the roadmap, can we have a rough estimate? 2020? 2021? 2113?
Assuming that the Pypperoni client is stable on Linux, it'd be ideal to be released as soon as possible. It would ultimately depend on what the team is needing to work on. But considering launcher work is already being put onto the dev agenda, it'd be fair to say that it's possible for a Linux release in 2020.

5. Is DirectX9 or newer coming back to TLOPO? Maybe DX9 doesn't make any sense nowadays but that was the only version supported by Panda3D a while ago. Not sure if things have changed ever since.
Regarding DX9, we may still be bringing it back. But considering how old the technology is, it may not be worth it. We experienced a lot of issues when we added it back previously, and ended up needing to pull support for it.

The "or newer" part of this would be a question more so directed to the developers of the Panda3D game engine, rather than the developers of TLOPO. But I do know what their public plans are for this:

At the moment, there doesn't seem to be any good reason to spread the development effort of Panda3D to support DX12 when instead the Panda3D developers can develop support for Vulkan. They are already planning to develop support for Vulkan because it is supported on macOS as well as on Windows. So when Apple finally removes OpenGL, Vulkan support will be the new graphics pipeline.

6. Is the game, eventually becoming x64-executable? The launcher may be, but last time I checked the game itself is still x86 (tlopo.exe), (I could be wrong though:eek:.)
Yes, the Pypperoni client is an x64 executable. I believe the launcher is now an x64 executable but tlopo.exe is still a x86 executable. Considering how soon we are going to Pypperoni, we figured we'd enforce it ahead of time to handle those support tickets separate from the inevitable Pypperoni client ones.

If you're curious how much faster it'll boot on your computer, you can actually download the Pypperoni client files if you so desired to. This is the public download mirror to the internal QA server, just like there is the production one. You would not be able to log in though, as the client has no public server it can interface with.

7. To what extend, the game (in it's current state) is exhausting Panda3D engine capabilities? Can we expect a major graphic overhaul down the line? I specifically recall that POTCO had better graphics in 2011 than 2013. Disney toned down the graphics to further improve the performance.
We are definitely not taking full advantage of everything the Panda3D game engine can offer. We are working our rears off trying to squeeze out every ounce of performance in the game as it is right now, and then we are going to be focusing on improving the graphics.

Panda3D is working on a physically based rendering pipeline right now. Once that is completed, we will be in for a big graphics boost when we add support for it.

8. Theoretically speaking, would there a significant performance increase if POTCO (and later TLOPO) was written in C instead of Python? I think you're trying to achieve something similar with Pypperoni project, If I understand things correctly, that is.
Yes, this is because of the fundamental difference between Python and C: Python is interpreted and C is compiled. C is a much lower-level language, meaning that it's operating at a closer level to the computer's processor. The idea with the Pypperoni client is to pre-interpret the Python code so it's already in its equivalent C Python calls. Therefore, we are are essentially interpreting the code at compile time, almost like as a cache. But we make this output the actual client.

We've got a much more detailed description on our public GitHub repository for Pypperoni.

My apologies for the long-winded list of questions and thank you for going through them all. Keep up the good work! :oops:
Anytime! I enjoyed answering them! :)
 
To better show the sheer amount of changes made in this Pypperoni update, a TLOPO developer took a quick scroll through the change log between our Pypperoni client and the main production branch.

Each line in this file is an individual file that has been edited. Of the files changed, there have been tens of thousands of code additions and deletions. This update is essentially a soft-rewrite of the entire game.

 
To better show the sheer amount of changes made in this Pypperoni update, a TLOPO developer took a quick scroll through the change log between our Pypperoni client and the main production branch.

Each line in this file is an individual file that has been edited. Of the files changed, there have been tens of thousands of code additions and deletions. This update is essentially a soft-rewrite of the entire game.

Holy molly... you need a bigger screen. That's pretty intense what you folks are doing. Great work.

And for us non programmers, but not completely computer illiterate, what is a soft-rewrite as compared to a hard re-write?
 
Holy molly... you need a bigger screen. That's pretty intense what you folks are doing. Great work.

And for us non programmers, but not completely computer illiterate, what is a soft-rewrite as compared to a hard re-write?
For the past two years or so now, we've been updating the game from Python 2 to Python 3. Considering Pirates Online was written in 2004 using a beta version of Python 2.4, this was quite a challenge.

There was a lot of code that was no longer valid Python code, which led to us needing to rewrite large portions of the original game's code over to modern equivalent code.

Additionally, we also had to update the game to work with the latest version of Panda3D. Further, Disney had used their own internal version of Panda3D built specifically for Pirates Online, which we have a copy of. We have copied all the POTCO-specific changes in this specialized version of Panda3D over to a private fork of the public Panda3D source code.

The DIMG version of Panda3D which is currently running on our production client differs majorly from the public Panda3D code. The two codebases are completely different, and had a lot of incompatibilities. Basically a huge chunk of the TLOPO source code had to be manually edited in some way to account for deprecations.

All of this combined has kept the development team very busy.

We've been working on this for a long time, and we're so excited to get it released.
 
Last edited:
For the past two years or so now, we've been updating the game from Python 2 to Python 3. Considering Pirates Online was written in 2004 using a beta version of Python 2.4, this was quite a challenge.

There was a lot of code that was no longer valid Python code, which led to us needing to rewrite large portions of the original game's code over to modern equivalent code.

Additionally, we also had to update the game to work with the latest version of Panda3D. Further, Disney had used their own internal version of Panda3D built specifically for Pirates Online, which we have a copy of. We have copied all the POTCO-specific changes in this specialized version of Panda3D over to a private fork of the public Panda3D source code.

The DIMG version of Panda3D which is currently running on our production client differs majorly from the public Panda3D code. The two codebases are very different, and had a lot of incompatibilities. Basically a huge chunk of the TLOPO source code had to be manually edited in some way to account for deprecations.

All of this combined has kept the development team very busy.

We've been working on this for a long time, and we're so excited to get it released.
WOW just wow. I appreciate the staff opening up a bit like this, as myself with very limited knowledge of overall coding did not really have a feel for what you all are going through. Now I do.
Kind of like building a volkswagon beetle from left over parts, but needed a corvette engine to go highway speeds and then deciding to "what the heck, lets just put the whole body on that goes with that engine". And now it's close to hitting the streets to cruise.

I hope someone does a historical video of what this journey has been. It'd be great. I wish you guys and girls did an IPO, because I'd buy stock in tlopo.

It's getting brighter at the end of the tunnel it looks like.
 
WOW just wow. I appreciate the staff opening up a bit like this, as myself with very limited knowledge of overall coding did not really have a feel for what you all are going through. Now I do.
Kind of like building a volkswagon beetle from left over parts, but needed a corvette engine to go highway speeds and then deciding to "what the heck, lets just put the whole body on that goes with that engine". And now it's close to hitting the streets to cruise.

I hope someone does a historical video of what this journey has been. It'd be great. I wish you guys and girls did an IPO, because I'd buy stock in tlopo.

It's getting brighter at the end of the tunnel it looks like.
That's a wonderful analogy! Right now, we're just hoping that the car will drive on the street perfectly fine and that there won't be any parts needing to have recalls. This is why we've spent so much time working on this update though, we need to get it right the first time every time.

TLOPO will be entering a whole new era of life after this Pypperoni update is released. This update will be comparable to the initial release of Alpha and Beta.

There's one issue in particular that we discovered in the TLOPO source code while developing the Pypperoni client that we are in the process of backporting to the production client, just because of how impactful it would be. This fix would improve loading speeds by like 350+%. We are considering writing a paper to publish somewhere detailing this issue and how we went about mitigating it, just because of how interesting the issue was.

For reference, there were 4 lines of code in the game that were responsible for over 70% of the loading time to the Avatar Chooser from the launcher. These same 4 lines of code, and a few others not prior to the Avatar Chooser, caused major loading delays elsewhere in the game too. Once we finish porting this fix to our existing setup, you'll notice much faster load times. The first load into the game after an update has occurred will always be slow, but every subsequent login will be 350+% faster.

This issue was inherently caused by a poor design decision made by Disney in how pirate clothing works; but without advanced knowledge of computer science, it was a seemingly harmless decision. This was an issue related to how the models were composed, which would be a 3D modeler who made the issue (which is someone who would not have been expected to know computer science).

We've brought this issue to the attention of Panda3D, because we feel there are plenty of ways that the engine could mitigate this issue automatically; even if the current design remained as-is. They're investigating some solutions for this, and will be releasing fixes for this at some point in the future.

Unfortunately, we won't be doing an IPO; there's not much really to invest in even if we hypothetically did, solely because there's no ROI considering we have no method of income. It means a lot though knowing that you'd buy our stock! (As an aside, there is talk of some of our developers at some point in the future forming their own gaming company and developing an entirely separate game, but that's years and years away.)
 
Last edited:
...
In regards to copyright, we have't received explicit permission from Disney, but we also haven't had action taken against us yet. It has been reliably confirmed to us that Disney has no issue with TLOPO's existence at this moment...
Can it be shared if this source is reliable (enough) and why won't TLOPO ever approach Disney themselves to understand - for themselves - how Disney "feels?"

I feel it prudent for them to be contacted.
Most people roll their eyes at me when I say this. I don't care. I still feel...communication itself goes a long way to avoid misunderstandings. *The last thing TLOPO needs is to be misunderstood by the wrong person. Wouldn't you agree?
 
That's a wonderful analogy! Right now, we're just hoping that the car will drive on the street perfectly fine and that there won't be any parts needing to have recalls. This is why we've spent so much time working on this update though, we need to get it right the first time every time.

TLOPO will be entering a whole new era of life after this Pypperoni update is released. This update will be comparable to the initial release of Alpha and Beta.

There's one issue in particular that we discovered in the TLOPO source code while developing the Pypperoni client that we are in the process of backporting to the production client, just because of how impactful it would be. This fix would improve loading speeds by like 350+%. We are considering writing a paper to publish somewhere detailing this issue and how we went about mitigating it, just because of how interesting the issue was.

For reference, there were 4 lines of code in the game that were responsible for over 70% of the loading time to the Avatar Chooser from the launcher. These same 4 lines of code, and a few others not prior to the Avatar Chooser, caused major loading delays elsewhere in the game too. Once we finish porting this fix to our existing setup, you'll notice much faster load times. The first load into the game after an update has occurred will always be slow, but every subsequent login will be 350+% faster.

This issue was inherently caused by a poor design decision made by Disney in how pirate clothing works; but without advanced knowledge of computer science, it was a seemingly harmless decision. This was an issue related to how the models were composed, which would be a 3D modeler who made the issue (which is someone who would not have been expected to know computer science).

We've brought this issue to the attention of Panda3D, because we feel there are plenty of ways that the engine could mitigate this issue automatically; even if the current design remained as-is. They're investigating some solutions for this, and will be releasing fixes for this at some point in the future.

Unfortunately, we won't be doing an IPO; there's not much really to invest in even if we hypothetically did, solely because there's no ROI considering we have no method of income. It means a lot though knowing that you'd buy our stock! (As an aside, there is talk of some of our developers at some point in the future forming their own gaming company and developing an entirely separate game, but that's years and years away.)
Thanks again for the frank discussions and reveals. I don't know about anyone else, but the staff had been fairly stand offish about whats going on and this thread has been a very refreshing change.

I seem to remember some other more knowledgeable member had mentioned that in some way, our toons go about carrying our full load of inventory with all of it hidden and just the selected showing. Maybe so the switching of items would be faster in real time? If that's even remotely true, it sounded very resource wasteful for some reason. The thought of a big blob running around was/is hilarious to me.

Question: When we ask for inventory space, is that a physical space investment on the server side or client side? I'm aware that your servers keep some sort of compressed profile image of everyones pirates so perhaps the real estate is server heavy?

An IPO would be a way to gain operating capital which thousands of companies do. Tlopo issues stock to an underwriter- GoldmanSachs for instance, Tlopo gets money up front from them, they in turn will sell it on the open market or other hedge funds who will sell the stock.
However, the caveat is the chance of headaches and grief from shareholders and other people who bizarrely think they know how to run your company better. So maybe not what Tlopo would want right now. The staff gets that enough from us members. Imagine a bunch of shareholder dorks trying to tell you how to code Jolly Roger because you owe a fiduciary duty to them as shareholders. lol.

On second thought, forget I brought up an IPO.

And I hope it's not too many years before a new game company, I'm entering the semi antique body parts of my personal vehicle.

And no, I'm not trying to garner entry into the test beta by being friendly. This is just an interesting thread.
 
Can it be shared if this source is reliable (enough) and why won't TLOPO ever approach Disney themselves to understand - for themselves - how Disney "feels?"

I feel it prudent for them to be contacted.
Most people roll their eyes at me when I say this. I don't care. I still feel...communication itself goes a long way to avoid misunderstandings. *The last thing TLOPO needs is to be misunderstood by the wrong person. Wouldn't you agree?
@Stephen Teague - No need for you or anyone else to answer. More of a rhetorical question (and personal 'issue'/wish of my own). I just had some insight into how Disney was and their top decision makers changed positions/hands more than Scary Mary had romantic "dates." Given this one certainty, I just worry someone working for the Mouse someday will go against that grain and try to make a big deal. :)
 
Given this one certainty, I just worry someone working for the Mouse someday will go against that grain and try to make a big deal. :)

That, of course, is a very real possibility, but the way I see it at least, we're upholding Disney's standards when it comes to online safety, we aren't making any money, and we're a niche game. The only thing that I could reasonably see affecting TLOPO is if our player base somehow rapidly expands to a size even bigger than POTCO during its more active times.

Current issues of a declining player base for TLOPO aside (that's a whole other conversation, that we're happy to have by the way), I don't think TLOPO would ever get to that level - and that's okay.

I do think we could grow from where we are and even break our population records. However, getting to a point where we're actually a threat to Disney's bottom line by drawing a considerable amount of their paying customers over to a free game doesn't really seem likely.
 
That, of course, is a very real possibility, but the way I see it at least, we're upholding Disney's standards when it comes to online safety, we aren't making any money, and we're a niche game. The only thing that I could reasonably see affecting TLOPO is if our player base somehow rapidly expands to a size even bigger than POTCO during its more active times.

Current issues of a declining player base for TLOPO aside (that's a whole other conversation, that we're happy to have by the way), I don't think TLOPO would ever get to that level - and that's okay.

I do think we could grow from where we are and even break our population records. However, getting to a point where we're actually a threat to Disney's bottom line by drawing a considerable amount of their paying customers over to a free game doesn't really seem likely.
What you say above does make sense. (It has 'always' made sense to me and too, others quite important to the cause have 'always' taken such a position and stance - publicly). It makes perfect sense, actually. But...lol...

...The breaking of copyright does not distinguish TLOPO's intentions. Nor does it decipher how well TLOPO keeps it's self from making $ (a fact we are all 'suprised' with given a certain attempt not affiliated with TLOPO). The breaking of copyright is about as black and white of a rule (imo) as they come. All it would take is for someone important within Disney to agree with this line-of-thinking.

This leads me to ask another question. *Would TLOPO rely upon skills and help from members of the TLOPO community if a need ever arose to which TLOPO needed such help? There again, a bit of a rhetorical question I would like to put out there for everyone to consider.
 
Last edited by a moderator:
Are there any secret areas, rooms, eastereggs, messages, etc... hidden by the devs ( of POTCO or TLOPO ) that to the best of your knowledge no one has found so far?

(not looking for spoilers just a simple yes or no)

Hmm. Short answer is no, at least to my knowledge. This might be up @Johnny Sea Slasher's alley, our resident walking encyclopedia.

We do have some ideas for future easter eggs though. Marauder's Cove has a few callbacks that folks have already noticed.


Would TLOPO rely upon skills and help from members of the TLOPO community if a need ever arose to which TLOPO needed such help?

Do you mean like legal help? That would be appreciated if any situation were to arise, but I rather doubt there would be much anyone could do in that scenario.
 
That, of course, is a very real possibility, but the way I see it at least, we're upholding Disney's standards when it comes to online safety, we aren't making any money, and we're a niche game. The only thing that I could reasonably see affecting TLOPO is if our player base somehow rapidly expands to a size even bigger than POTCO during its more active times.

Current issues of a declining player base for TLOPO aside (that's a whole other conversation, that we're happy to have by the way), I don't think TLOPO would ever get to that level - and that's okay.

I do think we could grow from where we are and even break our population records. However, getting to a point where we're actually a threat to Disney's bottom line by drawing a considerable amount of their paying customers over to a free game doesn't really seem likely.
"The only thing that I could reasonably see affecting TLOPO is if our player base somehow rapidly expands to a size even bigger than POTCO during its more active times."

In which case, Disney will buy you all out and you become filthy rich and never have to wrestle with crappy code ever again if you don't want to. Sorry, I know, not a question or answer. But I couldn't help myself.
 
Hmm. Short answer is no, at least to my knowledge. This might be up @Johnny Sea Slasher's alley, our resident walking encyclopedia.


Are there any secret areas, rooms, eastereggs, messages, etc... hidden by the devs ( of POTCO or TLOPO ) that to the best of your knowledge no one has found so far?

1: THAT big weird easter egg from the Windshadow update hasn't been fully deciphered. I doubt it will until full release of what we're teasing.

2: The storyline team and I named all of the random bosses. A lot of them are references to POTCO and just general POTC stuff. Not all of them have been recognized by the community as such.

3: Pretty sure outside of that, actual major easter eggs have all been discovered. We do love adding more, so stay tuned.
 
We've had the announcement of the 32bit depreciation since last summer, so would I be correct in assuming that the pizzaronie upgrade may include that change?
Thx.
 
We've had the announcement of the 32bit depreciation since last summer, so would I be correct in assuming that the pizzaronie upgrade may include that change?
Thx.
The launcher hasn't officially supported 32-bit for several months now, coming up on a year soon. The game executable itself is still 32-bit on the live servers, Pypperoni will be making it a 64-bit executable -- this update will be removing any remaining 32-bit support we still have.

Could we know how much more damage does Powerful passive do on blades? Or any item in general?
To be honest, this is broken in skills. We have been working hard on skills the past few weeks making sure they are all finally working.

Right now, each rank of powerful gives you an additional 1 damage per rank. We have decided internally to make this into a 10% damage boost per rank, but what do you think would be a good percentage? We're open to suggestions here.
 
Last edited:
Status
Not open for further replies.
Back
Top