Jump to content

Recommended Posts

Posted

Hello guys,

 

I just thought about how awesome it would be if I could enhance Minecraft by writing C# mods.

Really, I hate Java and I can't get used to it. This would be really cool to see.

 

So, I found this one: http://www.minecraftforum.net/topic/1058640-125-wip-opensource-modbridge/

Sadly, it's an abandoned project which is really old. The interop of Java and C# is possible, that's no question.

 

It's just a question of how to make Minecraft and moreover Forge compatible with that.

Would this be possible if there were some guys who helped integrating it or did the work to make Forge compatible with C# mods?

 

 

I hope this is possible anyhow. A plain bridge between Minecraft and C# is useless. Everyone uses Forge and indeed it's just great.

So if Forge isn't compatible with those mods, it won't make sense even to start the work.

 

 

What do you think? What does the Forge developers say? If it came to it, I would join the team developing this bridge.

 

 

Greets

ForceGear

Posted

If you know c# well then coding in Java shouldn't be much different just syntax changes and you can always have the docs to reference, so you could build the bridge yourself just fork the MinecraftForge git repo.

Posted

Sure could I use Java. I just don't like the syntax and .Net has a huge amount more features than Java.

And I'm not used to Java's SDK. I know all important namespaces of .Net, but nothing in Java. It's a hell to work with it,

because I always have to look for the right thing. Even if they were nearly the same, the different naming conventions make it hard again.

 

It would be hard to do this on my own (I think). It would take a lot more time after Forge is released to apply the changes.

I'll take a look at Forge, but I don't think that it's a work for one person, or do I err?

Posted

Being blunt here, If you're to lazy to write in Java, you're way to lazy for a project like this.

Minecraft IS Java, There is no getting around this, when you start introducing things outside the JVM you run into a whole buss load of other issues and a even tinier userbase.

So i'd advise you just buckel down and get comfurtable with Java.

Hell it'll help you in the real world where a lot of systems are purely java and if you told your project lead 'I am gunna inject .net before I do anything else' they would laugh at you, and probably fire you.

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

  • 2 weeks later...
Posted
  On 2/4/2014 at 8:06 PM, LexManos said:

Being blunt here, If you're to lazy to write in Java, you're way to lazy for a project like this.

Minecraft IS Java, There is no getting around this, when you start introducing things outside the JVM you run into a whole buss load of other issues and a even tinier userbase.

So i'd advise you just buckel down and get comfurtable with Java.

Hell it'll help you in the real world where a lot of systems are purely java and if you told your project lead 'I am gunna inject .net before I do anything else' they would laugh at you, and probably fire you.

But then how are we able to write mods in Scala?

Posted
  On 2/4/2014 at 8:06 PM, LexManos said:

Being blunt here, If you're to lazy to write in Java, you're way to lazy for a project like this.

Minecraft IS Java, There is no getting around this, when you start introducing things outside the JVM you run into a whole buss load of other issues and a even tinier userbase.

So i'd advise you just buckel down and get comfurtable with Java.

Hell it'll help you in the real world where a lot of systems are purely java and if you told your project lead 'I am gunna inject .net before I do anything else' they would laugh at you, and probably fire you.

Also, what if we could use JNBridge?

Posted

JNBridge has nothing to do with that you're wanting to do.

This is not going to happen, Minecraft is Java, that's it. Either you use one of the JVM languages or you don't mod through Forge.

Feel free to do whatever the hell you want else ware. But we're not gunna deal with it.

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

Posted
  On 2/17/2014 at 7:54 PM, LexManos said:

JNBridge has nothing to do with that you're wanting to do.

Ummm... I'm not the guy who suggested the C# support.

Posted

You're all the same person to be, like I look at names, but ya, this isn't gunna happen.

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

Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • does anyone know how to incorporate custom noise settings into a custom dimension through the use of datagen, I have created a custon json file for the noise settings that I want but I just don't know how to get it to register with the generated json file of the custom dimension.   here is the code for the dimension class package net.hurst.lustria.worldgen.dimension; import com.mojang.datafixers.util.Pair; import net.hurst.lustria.Lustria; import net.hurst.lustria.worldgen.biome.ModBiomes; import net.hurst.lustria.worldgen.registries.LustriaNoiseSettings; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.BlockTags; import net.minecraft.util.valueproviders.ConstantInt; import net.minecraft.world.level.Level; import net.minecraft.world.level.biome.*; import net.minecraft.world.level.dimension.BuiltinDimensionTypes; import net.minecraft.world.level.dimension.DimensionType; import net.minecraft.world.level.dimension.LevelStem; import net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator; import net.minecraft.world.level.levelgen.NoiseGeneratorSettings; import java.util.List; import java.util.OptionalLong; public class ModDimensions { public static final ResourceKey<LevelStem> LUSTRIA_KEY = ResourceKey.create(Registries.LEVEL_STEM, ResourceLocation.fromNamespaceAndPath(Lustria.MOD_ID, "lustriadim")); public static final ResourceKey<Level> LUSTRIA_LEVEL_KEY = ResourceKey.create(Registries.DIMENSION, ResourceLocation.fromNamespaceAndPath(Lustria.MOD_ID, "lustriadim")); public static final ResourceKey<DimensionType> LUSTRIA_DIM_TYPE = ResourceKey.create(Registries.DIMENSION_TYPE, ResourceLocation.fromNamespaceAndPath(Lustria.MOD_ID, "lustriadim_type")); public static void bootstrapType(BootstapContext<DimensionType> context) { context.register(LUSTRIA_DIM_TYPE, new DimensionType( OptionalLong.of(12000), // fixedTime false, // hasSkylight true, // hasCeiling false, // ultraWarm false, // natural 1.0, // coordinateScale true, // bedWorks false, // respawnAnchorWorks -64, // minY 256, // height 256, // logicalHeight BlockTags.INFINIBURN_OVERWORLD, // infiniburn BuiltinDimensionTypes.OVERWORLD_EFFECTS, // effectsLocation 0.0f, // ambientLight new DimensionType.MonsterSettings(false, false, ConstantInt.of(0), 0))); } public static void bootstrapStem(BootstapContext<LevelStem> context) { HolderGetter<Biome> biomeRegistry = context.lookup(Registries.BIOME); HolderGetter<DimensionType> dimTypes = context.lookup(Registries.DIMENSION_TYPE); HolderGetter<NoiseGeneratorSettings> noiseGenSettings = context.lookup(Registries.NOISE_SETTINGS); NoiseBasedChunkGenerator wrappedChunkGenerator = new NoiseBasedChunkGenerator( new FixedBiomeSource(biomeRegistry.getOrThrow(Biomes.BEACH)), noiseGenSettings.getOrThrow(NoiseGeneratorSettings.CAVES)); NoiseBasedChunkGenerator noiseBasedChunkGenerator = new NoiseBasedChunkGenerator( MultiNoiseBiomeSource.createFromList( new Climate.ParameterList<>(List.of(Pair.of( Climate.parameters(0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F), biomeRegistry.getOrThrow(Biomes.BEACH)), Pair.of( Climate.parameters(0.1F, 0.2F, 0.0F, 0.2F, 0.0F, 0.0F, 0.0F), biomeRegistry.getOrThrow(Biomes.BIRCH_FOREST)), Pair.of( Climate.parameters(0.3F, 0.6F, 0.1F, 0.1F, 0.0F, 0.0F, 0.0F), biomeRegistry.getOrThrow(Biomes.OCEAN)), Pair.of( Climate.parameters(0.4F, 0.3F, 0.2F, 0.1F, 0.0F, 0.0F, 0.0F), biomeRegistry.getOrThrow(Biomes.DARK_FOREST)) ))), noiseGenSettings.getOrThrow(NoiseGeneratorSettings.CAVES)); LevelStem stem = new LevelStem(dimTypes.getOrThrow(ModDimensions.LUSTRIA_DIM_TYPE), noiseBasedChunkGenerator); context.register(LUSTRIA_KEY, stem); } } minecraft version is 1.20.1
    • Please read the FAQ (https://forums.minecraftforge.net/topic/125488-rules-and-frequently-asked-questions-faq/) and post logs as described there using a site like https://mclo.gs and post the link to it here. It may have the information required to solve your problem.  
    • the error code comes up when i trry to run it and ive tried to fix it but i cant  
  • Topics

×
×
  • Create New...

Important Information

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