Giter Site home page Giter Site logo

Comments (7)

alan-cugler avatar alan-cugler commented on May 27, 2024 1

lol and my enthusiasm is driven by wanting to play this game with 50+ mods, so cave man managing them one at a time takes a couple hours in all. which about how long I have to enjoy a game before family needs attention.

from modbuddy.

alan-cugler avatar alan-cugler commented on May 27, 2024

Huh I searched your repo for .mods and replcedthat with modbuddy and somehow .mods still showed up...

java.lang.RuntimeException: Error loading [data/world/factions/submarkets/dryDockButtonColour.faction] resource, not found in [
/home/alan-cugler/Games/starsector/starsector/./mods/adjusted sector v0.4.2,
/home/alan-cugler/Games/starsector/starsector/./mods/industrial.evolution2.2.h,
../starfarer.res/res,CLASSPATH]

from modbuddy.

alan-cugler avatar alan-cugler commented on May 27, 2024

I can only surmise the hardlinking is an issue for some reason. I conducted two tests to isolate to that deduction.

  1. I removed the same mod modbuddy had hardlinked to the starsector mods directory and replaced it with a archive version of the mod that I extracted myself.

  2. I took the same mod already extracted by modbuddy and manually copied that into the starsector mods directory.

Both of these above tests resulted in a successful loading of the mod. So the mod isnt corrupted from patoolib, and its happy to load a mod directly copied in. I am still seeing the above pathing despite the directory naming change from .mods to modbuddy. I also had nuked the game and installed a new one in case somehow the java had cached something from previous tests.

from modbuddy.

alan-cugler avatar alan-cugler commented on May 27, 2024

okay the /.mods/ path displayed by the logs of the game I am trying to mod is a red herring of java's output. Nonetheless, the linking method does seem to be an issue. I tried a different method (though maybe not a great solution) of getting the mods into the mod directory for the game and they loaded successfully.

import os
import shutil
from pathlib import Path

here = Path(os.path.dirname(os.path.realpath(__file__)))
target_path = Path("/home/alan-cugler/Games/starsector/starsector/mods")


for mod_husk in here.iterdir():
    if mod_husk.is_dir():
        for mod in mod_husk.iterdir():
            shutil.copytree(mod, target_path/mod.name, copy_function=os.link)

from modbuddy.

OlavStornes avatar OlavStornes commented on May 27, 2024

Appreciate your enthusiasm. A lot of things to wrap my head around here. Some questions however:

  1. Does starsector use a folder called mods to apply its own mods?
  2. How does starsector handle mods? Is it demanded that all folderers get "merged" together, or is it capable of parsing individual mods?

from modbuddy.

alan-cugler avatar alan-cugler commented on May 27, 2024

so starsector does use a mods directory. On the second question is more open for interpretation of when you consider them merged or not. Like with Skyrim everything is forcefully written over the base content in sequence and then loaded as a single completed game. I would have guessed starsector didnt do this since you can turn some mods on or off in the launch menu, however all errors that do come from mods show up for the entire PATH of all th mods rather than targeting a specific mod.

So maybe its merging them all at game launch after you've selected which ones to use in the launcher menu.

from modbuddy.

OlavStornes avatar OlavStornes commented on May 27, 2024

Where modbuddy excels is with games that doesn't allow a separate folder for each mod, but where you need to jam everything into one particular folder (which can/will overwrite files). This case warrant a load order before launching a game.
Ex: if all enabled mods contains a file called data/config/test.json, the actual content in the end will be whatever the last mods file.

If i read this correctly, starsector does have a mod manager in the launcher. Does that not work as intended?

from modbuddy.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.