Jump to content

Alternative Mods path directory (forge/fabric)...


TwinShards

Recommended Posts

I made this suggestion in Fabric's discord as well
*YES I KNOW THERE IS ALREADY MOD/(VERSION) WITH FORGE BUT WHAT I'M SUGGESTING IS NOT A THING YET...

Currently looking if future Forge Loader could have a primary mod folder directory and if none present fallback to the vanilla way...

I am aware and already using The:

Quote

- Laucher → Profile → Game directory → {new path}
But doing so cause other following issues such as:
- Ressource pack
- (Optifine, and soon Sodium) Shader pack
- Server list
To all become split, and as such, if i want to use the same ressource/shader pack i must copy the entire pack and waste hard drive space. Or must copy my server list to the other directory to stay up to date with my server list that i change overtime

To work around this issue and free up hard drive space the following behavior Forge Loader could use is:

Quote

When initialling the loading of mods:
*folder name version example "1.16.1"
*Forge/Fabric personnal path "forge"
- mods → 1.16.1 → forge → (mods placed here)
If missing "forge" fallback to already in place behavior
- mods → 1.16.1 → (mods placed here)
If missing "version X" fallback to already in place behavior
- mods → (mods placed here)

If both Forge and Fabric would implement this behavior then it would make both easily compatible without the need  to make a game directory for each version.
*Understandably this would probably take some time for you guys to do so because that would require to update each forge's version

Edited by TwinShards
Link to comment
Share on other sites

Most recent version show the world's version in quit visible red font so unless you do not pay attention this isn't rly an issue.

Also just to be sure i was not missing something...

I do not know in which version it lost this ability but (atleast with 1.16.1) YOU CANNOT USE mods/1.16.1/*mods* anymore

So the quick F.A.Q on the "Read first" post is a bit outdated.


What i understand from your reply is it's just double edge sword, there will always be draw back if not used correctly. (RE)adding this feature has no draw back however. It's up to the user to still split every game version and waste ton of hard drive space.

Some version of minecraft has the same option.exe layout, so making let's say 1.14.4 & 1.15.2 into the same game directory wont be an issue for the game setting.

Edited by TwinShards
Link to comment
Share on other sites

The ENTIRE point is that you use the game directory option in the launcher and split your configs/worlds/whatever.

It is kinda annoying that you also split your resource packs, as those typically arnt damaging if you apply the wrong version.

But it's a happy cost for the benefit of not screwing up your worlds.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • They were already updated, and just to double check I even did a cleanup and fresh update from that same page. I'm quite sure drivers are not the problem here. 
    • i tried downloading the drivers but it says no AMD graphics hardware has been detected    
    • Update your AMD/ATI drivers - get the drivers from their website - do not update via system  
    • As the title says i keep on crashing on forge 1.20.1 even without any mods downloaded, i have the latest drivers (nvidia) and vanilla minecraft works perfectly fine for me logs: https://pastebin.com/5UR01yG9
    • Hello everyone, I'm making this post to seek help for my modded block, It's a special block called FrozenBlock supposed to take the place of an old block, then after a set amount of ticks, it's supposed to revert its Block State, Entity, data... to the old block like this :  The problem I have is that the system breaks when handling multi blocks (I tried some fix but none of them worked) :  The bug I have identified is that the function "setOldBlockFields" in the item's "setFrozenBlock" function gets called once for the 1st block of multiblock getting frozen (as it should), but gets called a second time BEFORE creating the first FrozenBlock with the data of the 1st block, hence giving the same data to the two FrozenBlock :   Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=head] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@73681674 BlockEntityData : id:"minecraft:bed",x:3,y:-60,z:-6} Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=3, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=2, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} here is the code inside my custom "freeze" item :    @Override     public @NotNull InteractionResult useOn(@NotNull UseOnContext pContext) {         if (!pContext.getLevel().isClientSide() && pContext.getHand() == InteractionHand.MAIN_HAND) {             BlockPos blockPos = pContext.getClickedPos();             BlockPos secondBlockPos = getMultiblockPos(blockPos, pContext.getLevel().getBlockState(blockPos));             if (secondBlockPos != null) {                 createFrozenBlock(pContext, secondBlockPos);             }             createFrozenBlock(pContext, blockPos);             return InteractionResult.SUCCESS;         }         return super.useOn(pContext);     }     public static void createFrozenBlock(UseOnContext pContext, BlockPos blockPos) {         BlockState oldState = pContext.getLevel().getBlockState(blockPos);         BlockEntity oldBlockEntity = oldState.hasBlockEntity() ? pContext.getLevel().getBlockEntity(blockPos) : null;         CompoundTag oldBlockEntityData = oldState.hasBlockEntity() ? oldBlockEntity.serializeNBT() : null;         if (oldBlockEntity != null) {             pContext.getLevel().removeBlockEntity(blockPos);         }         BlockState FrozenBlock = setFrozenBlock(oldState, oldBlockEntity, oldBlockEntityData);         pContext.getLevel().setBlockAndUpdate(blockPos, FrozenBlock);     }     public static BlockState setFrozenBlock(BlockState blockState, @Nullable BlockEntity blockEntity, @Nullable CompoundTag blockEntityData) {         BlockState FrozenBlock = BlockRegister.FROZEN_BLOCK.get().defaultBlockState();         ((FrozenBlock) FrozenBlock.getBlock()).setOldBlockFields(blockState, blockEntity, blockEntityData);         return FrozenBlock;     }  
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.