Jump to content

[SOLVED] [1.14.4] Custom music discs have unlimited attenuation distance


Recommended Posts

Posted (edited)

I'm having trouble implementing my custom music discs into the game. Everything with the actual item (texture, model, plays music in jukebox, etc.) works properly however, when the music is playing, no matter where you are in the world, you can hear it. I would like to make it so that my music discs have limited distance like the vanilla discs.

Here is my registration of the item (only one of the music discs, I removed all other items for the sake of convenience):

@SubscribeEvent
public static void registerItems(final RegistryEvent.Register<Item> event) {
		
	event.getRegistry().registerAll
	(
      		//All other items
		ModItems.music_disc_song = new ModMusicDiscItem(15, new SoundEvent(location("song")), (new Item.Properties().group(MODGROUP).maxStackSize(1).rarity(Rarity.RARE))).setRegistryName(location("music_disc_song"))
	);
}

 

Here is my initialization of the disc in ModItems:

//All other items
public static Item music_disc_song;

 

Here is the class ModMusicDiscItem:

public class ModMusicDiscItem extends MusicDiscItem {

	public ModMusicDiscItem(int id, SoundEvent sound, Item.Properties prop) {
		super(id, sound, prop);
	}
}

 

And here is my sounds.json:

{
	"song": {
		"sounds": [
			{
				"name": "censoredid:music_discs/song",
				"volume": 0.05,
				"stream": true
			}
		]
	}
}

 

Again, playing the music works properly, however, the volume does not decrease with distance. This code worked for 1.13.2 in terms of volume decreasing, but does not work in 1.14.3 or 1.14.4. Thanks for any help.

 

Edit: thanks to fanor who found the fix: you need to change the audio file from stereo to mono

Edited by kaydogz
  • 1 month later...
Posted
On 7/30/2019 at 1:16 AM, kaydogz said:

I'm having trouble implementing my custom music discs into the game. Everything with the actual item (texture, model, plays music in jukebox, etc.) works properly however, when the music is playing, no matter where you are in the world, you can hear it. I would like to make it so that my music discs have limited distance like the vanilla discs.

Here is my registration of the item (only one of the music discs, I removed all other items for the sake of convenience):


@SubscribeEvent
public static void registerItems(final RegistryEvent.Register<Item> event) {
		
	event.getRegistry().registerAll
	(
      		//All other items
		ModItems.music_disc_song = new ModMusicDiscItem(15, new SoundEvent(location("song")), (new Item.Properties().group(MODGROUP).maxStackSize(1).rarity(Rarity.RARE))).setRegistryName(location("music_disc_song"))
	);
}

 

Here is my initialization of the disc in ModItems:


//All other items
public static Item music_disc_song;

 

Here is the class ModMusicDiscItem:


public class ModMusicDiscItem extends MusicDiscItem {

	public ModMusicDiscItem(int id, SoundEvent sound, Item.Properties prop) {
		super(id, sound, prop);
	}
}

 

And here is my sounds.json:


{
	"song": {
		"sounds": [
			{
				"name": "censoredid:music_discs/song",
				"volume": 0.05,
				"stream": true
			}
		]
	}
}

 

Again, playing the music works properly, however, the volume does not decrease with distance. This code worked for 1.13.2 in terms of volume decreasing, but does not work in 1.14.3 or 1.14.4. Thanks for any help.

use " attenuation_distance: "

Posted
10 hours ago, MatsCraft1 said:

use " attenuation_distance: "

Doesn't change anything, the sound still plays thousands of blocks away from the jukebox. And yes, I made sure the value for attenuation_distance was an integer. I even checked vanilla references of attenuation_distance to make sure I used it correctly, and I did. It just doesn't solve my issue.

Posted

I have try too "attenuation_distance" but it's doesn't'  work ..

And i have try to debug this with intellij but i have see no difference between my music and minecraft music ..

 

My music :

Spoiler

 

Screenshot_2019-09-11_at_22.32.01.png?wi

 

Minecraft Music :

Spoiler

Screenshot_2019-09-11_at_22.30.20.png?wi

 

Posted

I think the issue is that in the sounds.json, it categorizes the sound with the folder that it is in (the record part of “censoredid:records/song”. I’m guessing that it checks if it has the prefix of Minecraft:records, and if it does, it gives the record it’s attenuation properties. This is why vanilla discs work. However, since I am using my mod id, it doesn’t not recognize the category, hence not giving it attenuation. Idk, im probably wrong, but it’s my best guess. But the issue is definitely with the name parameter in the sounds.json, because changing the file location to a vanilla song (minecraft:records/stal) works perfectly

Posted (edited)
14 hours ago, kaydogz said:

I think the issue is that in the sounds.json, it categorizes the sound with the folder that it is in (the record part of “censoredid:records/song”. I’m guessing that it checks if it has the prefix of Minecraft:records, and if it does, it gives the record it’s attenuation properties. This is why vanilla discs work. However, since I am using my mod id, it doesn’t not recognize the category, hence not giving it attenuation. Idk, im probably wrong, but it’s my best guess. But the issue is definitely with the name parameter in the sounds.json, because changing the file location to a vanilla song (minecraft:records/stal) works perfectly

It's strange, cause for me, even in "minecraft" it's doesn't work :

 

"myRecords": {
  "category": "record",
  "sounds": [
    {
      "name": "minecraft:records/myRecords",
      "stream": true
    }
  ]
},

 

I have the same issue, no attenuation  xD

Edited by fanor
Posted
3 minutes ago, fanor said:

It's strange, cause for me, even in "minecraft" it's doesn't work :

 


"myRecords": {
  "category": "record",
  "sounds": [
    {
      "name": "minecraft:records/myRecords",
      "stream": true
    }
  ]
},

 

I have the same issue, no attenuation  xD

Well, the record has to be a vanilla one for that to work, because your record is not located in assets/minecraft/sounds/records/, it is located in assets/yourmodid/sounds/records/

Posted
3 minutes ago, fanor said:

Nope

i have placed my music in :

src/main/resources/assets/minecraft/sounds/records/

 

but my sounds.json is in assets/mymodid/

?

The .ogg needs to be in assets/yourmodid/sounds/records, and the sounds.json needs to be in assets/yourmodid

i don’t understand how you placed your music file in the vanilla directory

Posted
1 minute ago, kaydogz said:

?

The .ogg needs to be in assets/yourmodid/sounds/records, and the sounds.json needs to be in assets/yourmodid

i don’t understand how you placed your music file in the vanilla directory

For try if it's only work in "minecraft" .. for try what you said before :

Quote

But the issue is definitely with the name parameter in the sounds.json, because changing the file location to a vanilla song (minecraft:records/stal) works perfectly

 

Posted (edited)

So, I guess, two things:
- our ogg music is badly encoded
- It's hard coded in the game

 

but it's clairly WTF.

UPDATE :

I tried to get a Minecraft music, and rename it, and its going on .. so I think the problem is the music file ..

 

:/

Edited by fanor
Posted (edited)
4 hours ago, fanor said:

I found the solution, you need a music in MONO not in STEREO ...

@kaydogz

Nice! As soon as I get home I’ll test it out! 

Edit: It worked! Good fucking job man!

Edited by kaydogz
  • Like 1

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

    • hello, I've been trying to resolve this problem on curseforge for a while because I can't find a solution, can someone help me? I put the logs of the problem above:       [23Jan2025 06:58:39.109] [main/INFO][cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--username, cochon93, --version, forge-47.3.10, --gameDir, C:\Users\claey\curseforge\minecraft\Instances\create, --assetsDir, C:\Users\claey\curseforge\minecraft\Install\assets, --assetIndex, 5, --uuid, fd8a812c9e7a4ecbb8c750f0b8ffddf4, --accessToken, ????????, --clientId, OWM0NDE0ZmMtOWJiMS00OTBhLWIxYWYtMmI0ODM4Y2FkYTFl, --xuid, 2535422576924500, --userType, msa, --versionType, release, --width, 1024, --height, 768, --quickPlayPath, C:\Users\claey\curseforge\minecraft\Install\quickPlay\java\1737611916744.json, --launchTarget, forgeclient, --fml.forgeVersion, 47.3.10, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] [23Jan2025 06:58:39.124] [main/INFO][cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 10.0.9+10.0.9+main.dcd20f30 starting: java version 17.0.13 by Eclipse Adoptium; OS Windows 11 arch amd64 version 10.0 [23Jan2025 06:58:42.749] [main/INFO][net.minecraftforge.fml.loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow [23Jan2025 06:58:42.835] [main/INFO][EARLYDISPLAY/]: Trying GL version 4.6 [23Jan2025 06:58:43.030] [main/INFO][EARLYDISPLAY/]: Requested GL version 4.6 got version 4.6 [23Jan2025 06:58:43.145] [main/INFO][mixin/]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/claey/curseforge/minecraft/Install/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%23100!/ Service=ModLauncher Env=CLIENT [23Jan2025 06:58:43.195] [pool-2-thread-1/INFO][EARLYDISPLAY/]: GL info: NVIDIA GeForce RTX 4060 Laptop GPU/PCIe/SSE2 GL version 4.6.0 NVIDIA 561.03, NVIDIA Corporation [23Jan2025 06:58:44.664] [main/WARN][net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\claey\curseforge\minecraft\Install\libraries\net\minecraftforge\fmlcore\1.20.1-47.3.10\fmlcore-1.20.1-47.3.10.jar is missing mods.toml file [23Jan2025 06:58:44.668] [main/WARN][net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\claey\curseforge\minecraft\Install\libraries\net\minecraftforge\javafmllanguage\1.20.1-47.3.10\javafmllanguage-1.20.1-47.3.10.jar is missing mods.toml file [23Jan2025 06:58:44.670] [main/WARN][net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\claey\curseforge\minecraft\Install\libraries\net\minecraftforge\lowcodelanguage\1.20.1-47.3.10\lowcodelanguage-1.20.1-47.3.10.jar is missing mods.toml file [23Jan2025 06:58:44.674] [main/WARN][net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\claey\curseforge\minecraft\Install\libraries\net\minecraftforge\mclanguage\1.20.1-47.3.10\mclanguage-1.20.1-47.3.10.jar is missing mods.toml file [23Jan2025 06:58:45.326] [main/WARN][net.minecraftforge.jarjar.selection.JarSelector/]: Attempted to select two dependency jars from JarJar which have the same identification: Mod File: and Mod File: . Using Mod File: [23Jan2025 06:58:45.329] [main/WARN][net.minecraftforge.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: cloth_config. Using Mod File: C:\Users\claey\curseforge\minecraft\Instances\create\mods\cloth-config-11.1.136-forge.jar [23Jan2025 06:58:45.329] [main/INFO][net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator/]: Found 48 dependencies adding them to mods collection     thank you very much for your help
    • After adding all my mods and everything loading up fine, I go to create a singleplayer world and it load to 100 then crashes saying: The game crashed: exception in server tick loop Error: java.lang.NoClassDefFoundError: net/luckperms/api/LuckPermsProvider Crash Report: https://pastebin.com/nmTTFBB4
    • i have just made a modpack and i accidentally added a few fabric mods and after deleting them i can no longer launch the pack if any one could help these are my latest logs [22:42:24] [main/INFO]:additionalClassesLocator: [optifine., net.optifine.] [22:42:25] [main/INFO]:Compatibility level set to JAVA_17 [22:42:25] [main/ERROR]:Mixin config epicsamurai.mixins.json does not specify "minVersion" property [22:42:25] [main/INFO]:Launching target 'forgeclient' with arguments [--version, forge-43.4.0, --gameDir, C:\Users\Mytht\curseforge\minecraft\Instances\overseer (1), --assetsDir, C:\Users\Mytht\curseforge\minecraft\Install\assets, --uuid, 4c176bf14d4041cba29572aa4333ca1d, --username, mythtitan0, --assetIndex, 1.19, --accessToken, ????????, --clientId, MGJiMTEzNGEtMjc3Mi00ODE0LThlY2QtNzFiODMyODEyYjM4, --xuid, 2535469006485684, --userType, msa, --versionType, release, --width, 854, --height, 480] [22:42:25] [main/WARN]:Reference map 'insanelib.refmap.json' for insanelib.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'corpsecurioscompat.refmap.json' for gravestonecurioscompat.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'nitrogen_internals.refmap.json' for nitrogen_internals.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'arclight.mixins.refmap.json' for epicsamurai.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'simplyswords-common-refmap.json' for simplyswords-common.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'simplyswords-forge-refmap.json' for simplyswords.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map '${refmap_target}refmap.json' for corgilib.forge.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:25] [main/WARN]:Reference map 'MysticPotions-forge-refmap.json' for mysticpotions.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:26] [main/WARN]:Reference map 'packetfixer-forge-forge-refmap.json' for packetfixer-forge.mixins.json could not be read. If this is a development environment you can ignore this message [22:42:26] [main/WARN]:Error loading class: atomicstryker/multimine/client/MultiMineClient (java.lang.ClassNotFoundException: atomicstryker.multimine.client.MultiMineClient) [22:42:26] [main/WARN]:@Mixin target atomicstryker.multimine.client.MultiMineClient was not found treechop.forge.compat.mixins.json:MultiMineMixin [22:42:26] [main/WARN]:Error loading class: com/simibubi/create/content/contraptions/components/fan/AirCurrent (java.lang.ClassNotFoundException: com.simibubi.create.content.contraptions.components.fan.AirCurrent) [22:42:26] [main/WARN]:Error loading class: shadows/apotheosis/ench/table/ApothEnchantContainer (java.lang.ClassNotFoundException: shadows.apotheosis.ench.table.ApothEnchantContainer) [22:42:26] [main/WARN]:@Mixin target shadows.apotheosis.ench.table.ApothEnchantContainer was not found origins_classes.mixins.json:common.apotheosis.ApotheosisEnchantmentMenuMixin [22:42:26] [main/WARN]:Error loading class: se/mickelus/tetra/blocks/workbench/WorkbenchTile (java.lang.ClassNotFoundException: se.mickelus.tetra.blocks.workbench.WorkbenchTile) [22:42:26] [main/WARN]:@Mixin target se.mickelus.tetra.blocks.workbench.WorkbenchTile was not found origins_classes.mixins.json:common.tetra.WorkbenchTileMixin [22:42:27] [main/WARN]:Error loading class: tfar/davespotioneering/blockentity/AdvancedBrewingStandBlockEntity (java.lang.ClassNotFoundException: tfar.davespotioneering.blockentity.AdvancedBrewingStandBlockEntity) [22:42:27] [main/WARN]:@Mixin target tfar.davespotioneering.blockentity.AdvancedBrewingStandBlockEntity was not found itemproductionlib.mixins.json:davespotioneering/AdvancedBrewingStandBlockEntityMixin [22:42:27] [main/WARN]:Error loading class: fuzs/visualworkbench/world/inventory/ModCraftingMenu (java.lang.ClassNotFoundException: fuzs.visualworkbench.world.inventory.ModCraftingMenu) [22:42:27] [main/WARN]:@Mixin target fuzs.visualworkbench.world.inventory.ModCraftingMenu was not found itemproductionlib.mixins.json:visualworkbench/ModCraftingMenuMixin [22:42:27] [main/WARN]:Error loading class: fuzs/easymagic/world/inventory/ModEnchantmentMenu (java.lang.ClassNotFoundException: fuzs.easymagic.world.inventory.ModEnchantmentMenu) [22:42:27] [main/WARN]:@Mixin target fuzs.easymagic.world.inventory.ModEnchantmentMenu was not found skilltree.mixins.json:easymagic/ModEnchantmentMenuMixin [22:42:27] [main/WARN]:Error loading class: shadows/apotheosis/ench/table/ApothEnchantmentMenu (java.lang.ClassNotFoundException: shadows.apotheosis.ench.table.ApothEnchantmentMenu) [22:42:27] [main/WARN]:@Mixin target shadows.apotheosis.ench.table.ApothEnchantmentMenu was not found skilltree.mixins.json:apotheosis/ApothEnchantContainerMixin [22:42:27] [main/WARN]:Error loading class: shadows/apotheosis/adventure/affix/socket/SocketingRecipe (java.lang.ClassNotFoundException: shadows.apotheosis.adventure.affix.socket.SocketingRecipe) [22:42:27] [main/WARN]:@Mixin target shadows.apotheosis.adventure.affix.socket.SocketingRecipe was not found skilltree.mixins.json:apotheosis/SocketingRecipeMixin [22:42:27] [main/WARN]:Error loading class: shadows/apotheosis/adventure/affix/socket/gem/bonus/AttributeBonus (java.lang.ClassNotFoundException: shadows.apotheosis.adventure.affix.socket.gem.bonus.AttributeBonus) [22:42:27] [main/WARN]:@Mixin target shadows.apotheosis.adventure.affix.socket.gem.bonus.AttributeBonus was not found skilltree.mixins.json:apotheosis/AttributeBonusMixin [22:42:27] [main/WARN]:Error loading class: shadows/apotheosis/adventure/affix/socket/gem/bonus/EnchantmentBonus (java.lang.ClassNotFoundException: shadows.apotheosis.adventure.affix.socket.gem.bonus.EnchantmentBonus) [22:42:27] [main/WARN]:@Mixin target shadows.apotheosis.adventure.affix.socket.gem.bonus.EnchantmentBonus was not found skilltree.mixins.json:apotheosis/EnchantmentBonusMixin [22:42:27] [main/WARN]:Error loading class: shadows/apotheosis/adventure/client/AdventureModuleClient (java.lang.ClassNotFoundException: shadows.apotheosis.adventure.client.AdventureModuleClient) [22:42:27] [main/WARN]:@Mixin target shadows.apotheosis.adventure.client.AdventureModuleClient was not found skilltree.mixins.json:apotheosis/AdventureModuleClientMixin [22:42:27] [main/WARN]:Error loading class: me/shedaniel/rei/RoughlyEnoughItemsCoreClient (java.lang.ClassNotFoundException: me.shedaniel.rei.RoughlyEnoughItemsCoreClient) [22:42:27] [main/WARN]:Error loading class: com/replaymod/replay/ReplayHandler (java.lang.ClassNotFoundException: com.replaymod.replay.ReplayHandler) [22:42:27] [main/WARN]:Error loading class: net/coderbot/iris/pipeline/newshader/ExtendedShader (java.lang.ClassNotFoundException: net.coderbot.iris.pipeline.newshader.ExtendedShader) [22:42:27] [main/WARN]:Error loading class: net/irisshaders/iris/pipeline/programs/ExtendedShader (java.lang.ClassNotFoundException: net.irisshaders.iris.pipeline.programs.ExtendedShader) [22:42:27] [main/INFO]:Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.3.6).
    • My Mohist server crashed as well but all it says in logs is " C:\Minecraft Mohist server>java -Xm6G -jar mohist.jar nogul  Error: Unable to access jarfile mohist.jar   C:\Minecraft Mohist server>PAUSE press any key to continue  .  .  . " Any ideas? i have the server file that its looking for where its looking for it.
  • Topics

×
×
  • Create New...

Important Information

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