Monika-After-Story / MonikaModDev

DDLC fan mod to extend Monika
http://www.monikaafterstory.com/
Other
1.18k stars 685 forks source link

Is it legal to "reprint" MAS with another engine? #9230

Closed Wingdinggaster656 closed 2 years ago

Wingdinggaster656 commented 2 years ago

If I have any complaints about MAS, then it is the performance problem.

Python itself is horrendously inefficient, and Renpy is even much slower than Python since it's a scripting language of Python. I can see that the MAS Devs are doing their best to solve this problem, but limited by the engine, even if they do their best optimizations, the compute power usage of MAS is just incredibly high.

Over the years I spent with Monika, I increasingly felt that what was really holding me back from meeting her was not fading passion, but MAS's terrible performance usage. Heck, getting MAS running in the background takes half as much performance as Visual Studio.

So I ended up thinking: What if I refactor MAS with another language?

Maybe Cocos, maybe Unity, maybe GMS2, or something else. What important isn't the engine choice. I anyways plan to use other engines to perform exactly the same as MAS.

I know some things are hard to say about copyright, like spritepack. So I'm not going to implement things that are problematic. And of course, full credits, open-sourced, and any new limitations you can add if you want.

The question is: Is it legal to create such an other-engine-MAS and distribute it to the MAS fan base?

Booplicate commented 2 years ago

All assets and code from Monika After Story cannot be used to make a mod or fork intended as a replacement for Monika After Story.

I think it falls under this. Generally it's no good to split userbase into different versions, so I personally say no. I'll also note that you'd have to use DDLC assets/characters/concepts, and DDLC cannot be ported to other platforms.

I'd like to know the exact problem you're facing though. We've considered switching to another engine when DDLC+ came out, but in short: it's impossible, there's a huge list of reasons why not, starting from unreal amount of work and ending at you can't fully replicate MAS.

Renpy is even much slower than Python since it's a scripting language of Python

Yes, but actually no. RenPy can execute Python code with almost no overhead. Today even low end computers can execute Python code on every frame, there's only a few places where we have issues. If you're thinking about images and effects, then it still does fine. For example, islands or Monika herself are incredible complex displayables, but on my end I still get them in 60 FPS. The only part that's really slow is videos (aka Movies).

Heck, getting MAS running in the background takes half as much performance as Visual Studio.

I didn't compare it with VS, but take any modern game and see how much resources it uses. Most games I have use much more than MAS. I'd also like to note that MAS isn't a simple VN, it will use more resources than the original DDLC. Another thing is, there's some problems with RenPy 6 terrible design choices and bugs, which we hope to fix soon, but no due date as of today. We're preparing our code for migration to Python 3.9

To add more context, some time ago I started a poll to see how many people are having problems running MAS, according to the results, for the most part it's fine, but there is a problem (execution of heavy python code during idle) which I expected to be; it's being worked on. Capture

kkrosie123 commented 2 years ago

I side with Booplicate on this - we generally do not allow any external use of our code. I think there’s too much content to switch engines at this point as well, and I can’t see a second version being kept up to date with MAS. Same issue with translations - they’re hard to maintain.

Wingdinggaster656 commented 2 years ago

Thanks for the reminder. I reread Dan's IP Guidelines and found this:

Official DDLC assets may not be used in standalone games – they may only be used in mods that must be patched into the official DDLC or DDLC Plus game. See the “Mods” section for more details.

Describe it in other words: we can only use Renpy as the engine. Well, frustrating, but totally understandable.

As for the problem I'm talking about -- my device can also run MAS smoothly, that's 100% fine. However, in addition to running MAS, I usually also run FL Studio, Unity, VS and some other software, which makes the performance of the computer not quite enough. MAS certainly doesn't use as many resources as other modern games, but based on my previous program development experience, I just don't think MAS would have used as many resources as it does now if it's a different engine.

Anyway, I get it. I'll probably scrap my adaptation plan and upgrade my hardware later or something. Thank you for replying.