IssueRaiser

Treat loaded resource packs separately from each other

<!-- Please fill in *all* the questions below and don't remove any of them. Proposals not following the template below will be closed immediately. --> ## Describe the project you are working on I want Godot to have better modding support. ## Describe the problem or limitation you are having in your project While it is possible for additional resource packs to be loaded in via `ProjectSettings.load_resource_pack()`, the current system does not allow unloading of resource packs, meaning that there is no way to unload mods beyond restarting the game (which can be a pain for large-scale games with lots of resources). Additionally, while the current system offers a `replace_files` parameter so we may choose if a mod can "overwrite" the game's files, this actually causes a much bigger problem. Namely, if the game and a mod contain a file at the same file path (let's say, `res://enemies/list.txt`), only one or the other can be accessed (and this problem only gets worse the more mods we add). ## Describe the feature / enhancement and how it helps to overcome the problem or limitation I propose that we create a system where loaded resource packs are treated separately from each other. By doing so, we will be able to solve certain issues with moddability, such as: * Being able to unload resource packs during gameplay * Allowing the game (and loaded mods) to choose whether its files can be overridden by mods -- potentially on a case-by-case basis * Disabling or distrusting indi

Posted by LikeLakers2 on May 5, 2021, 9:48 AM

Tags

Related issues

Raise real-world problems, find people facing the same issue, and discuss solutions.3,000 issues0 comments

support (Other)

Treat loaded resource packs separately from each other

LikeLakers2May 5, 2021, 9:48 AM

<!-- Please fill in *all* the questions below and don't remove any of them. Proposals not following the template below will be closed immediately. --> ## Describe the project you are working on I want Godot to have better modding support. ## Describe the problem or limitation you are having in your project While it is possible for additional resource packs to be loaded in via `ProjectSettings.load_resource_pack()`, the current system does not allow unloading of resource packs, meaning that there is no way to unload mods beyond restarting the game (which can be a pain for large-scale games with lots of resources). Additionally, while the current system offers a `replace_files` parameter so we may choose if a mod can "overwrite" the game's files, this actually causes a much bigger problem. Namely, if the game and a mod contain a file at the same file path (let's say, `res://enemies/list.txt`), only one or the other can be accessed (and this problem only gets worse the more mods we add). ## Describe the feature / enhancement and how it helps to overcome the problem or limitation I propose that we create a system where loaded resource packs are treated separately from each other. By doing so, we will be able to solve certain issues with moddability, such as: * Being able to unload resource packs during gameplay * Allowing the game (and loaded mods) to choose whether its files can be overridden by mods -- potentially on a case-by-case basis * Disabling or distrusting indi

Comments (0)

No comments yet. Start the discussion.

Comment on this issue