jayceecreates / earlygame Goto Github PK
View Code? Open in Web Editor NEWA Minecraft mod for Fabric that aims to overhaul the early game progression.
Home Page: https://jayceecreates.github.io/earlygame
License: MIT License
A Minecraft mod for Fabric that aims to overhaul the early game progression.
Home Page: https://jayceecreates.github.io/earlygame
License: MIT License
Config files should include an option to remove copper armor and weapons, with the exception of knives and saws.
The option would allow a user to decide which armor variant to use between this mod and other mods like Easy Emerald Tools.
https://www.curseforge.com/minecraft/mc-mods/simple-emerald-tools-fabric
I tried breaking some grass but nothing. I figured I need to use a knife but this should be in the description.
i think this is planned but just for you to know, i'm really waiting this now :)
I really miss this feature from No Tree Punching. You should be able to either craft a knife and a rock together to get one flint shard, or hold one of each in each hand, and right click to take some durability off the knife for a chance at a flint shard.
As the title says, the biomes from mods such as Biomes you'll go (BYG) are sometimes simply unplayable "early game" because of this issue. It's not game-breaking, but I believe that at least sticks should generate by default in modded biomes, perhaps defaulting to normal stone rocks in those cases.
You can't mine stone with stone pickaxe?(or stone tools) So What's the use of stone tools if so?
There's no information about the changes to stone tools and interactions. What other changes were there?
I'm guessing when the knife is applied with a modifier, it does not yield any plant fiber? Strange.
When pressing RMB on any dark oak log variant, it doesn't convert into planks.
i was trying to play survival with around 150 mods and being unable to break trees makes survival virtually impossible
Tried to create dark oak planks from dark oak wood with an iron saw, but the planks don't drop.
RealisticCraft 1.0.4 modpack.
I am using your mod along side Charm and I noticed that I am unable to break the woodcutter item.
I was using the copper axe to break it, so I tried the iron axe, and I am still unable to break it (even by hand).
Without your mod installed, the item breaks as expected...
Hey, when testing a mod pack that included valley craft and your mod I found that breaking grass with a knife wouldn't give any plant fiber, removing valleycraft fixed the issue. Valley craft version 1.3.2, Latest earlygame version, Minecraft version 1.17.1
Andesite, Diorite and Granite cobblestone are currently mined in the same way one would punch a cobblestone in vanilla. They take a long time to break, and do not drop anything.
Sent you this on Reddit, thought id send it here too so that you see it: (@JayCeeCreates)
Hey uh just wondering, when dya think you can update the "earlygame" mod, I want to use it on 1.18 but there is no version for it yet. Tried myself and got error code 0 so I would enjoy having it updated to 1.18 and 1.18.1. Ofc thats if you want to, just thought id let you know.
java.lang.NullPointerException: Cannot invoke "net.minecraft.class_1799.method_7960()" because "recipeOutput" is null
at Not Enough Crashes deobfuscated stack trace.(1.18.2+build.3) ~[?:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$2(RecipeRemover.java:72) ~[earlygame-1.18.2-1.1.2.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$4(RecipeRemover.java:122) ~[earlygame-1.18.2-1.1.2.jar:?]
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178) ~[?:?]
at java.util.HashMap$EntrySpliterator.forEachRemaining(HashMap.java:1832) ~[?:?]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[?:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$5(RecipeRemover.java:123) ~[earlygame-1.18.2-1.1.2.jar:?]
at java.util.HashMap.forEach(HashMap.java:1420) ~[?:?]
at jayceecreates.earlygame.utils.RecipeRemover.removeRecipes(RecipeRemover.java:118) ~[earlygame-1.18.2-1.1.2.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.removeRecipes(RecipeRemover.java:70) ~[earlygame-1.18.2-1.1.2.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipe$0(RecipeRemover.java:36) ~[earlygame-1.18.2-1.1.2.jar:?]
at net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents.lambda$static$2(ServerLifecycleEvents.java:49) ~[fabric-lifecycle-events-v1-2.1.0+cc71601c60-e364e0bfc2b59ffc.jar:?]
at net.minecraft.server.MinecraftServer.handler$cog000$afterSetupServer(MinecraftServer:7812) ~[server-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer:676) ~[server-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer:273) ~[server-intermediary.jar:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
Hello, I loaded your mod on my server and it crashed on start up.
The important part of the log is as follows:
=====
[19:35:05] [main/FATAL]: Failed to start the minecraft server
java.lang.RuntimeException: Could not execute entrypoint stage 'main' due to errors, provided by 'earlygame'!
at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:53) ~[fabric-server-launch.jar:?]
at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke(EntrypointUtils.java:36) ~[fabric-server-launch.jar:?]
at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointServer.start(EntrypointServer.java:32) ~[fabric-server-launch.jar:?]
at net.minecraft.server.Main.main(Main.java:92) [intermediary-server.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:224) [fabric-server-launch.jar:?]
at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:141) [fabric-server-launch.jar:?]
at net.fabricmc.loader.launch.knot.KnotServer.main(KnotServer.java:27) [fabric-server-launch.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at net.fabricmc.loader.launch.server.FabricServerLauncher.launch(FabricServerLauncher.java:62) [fabric-server-launch.jar:?]
at net.fabricmc.loader.launch.server.FabricServerLauncher.setup(FabricServerLauncher.java:106) [fabric-server-launch.jar:?]
at net.fabricmc.loader.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:50) [fabric-server-launch.jar:?]
Caused by: java.lang.NoClassDefFoundError: net/fabricmc/fabric/api/blockrenderlayer/v1/BlockRenderLayerMap
at jayceecreates.earlygame.init.BlocksInit.init(BlocksInit.java:67) ~[earlygame-1.16.3-1.0.0a.jar:?]
at jayceecreates.earlygame.EarlyGame.onInitialize(EarlyGame.java:28) ~[earlygame-1.16.3-1.0.0a.jar:?]
at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:50) ~[fabric-server-launch.jar:?]
... 17 more
Caused by: java.lang.ClassNotFoundException: net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap
at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[?:1.8.0_232]
at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_232]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) ~[?:1.8.0_232]
at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_232]
at net.fabricmc.loader.launch.server.InjectingURLClassLoader.loadClass(InjectingURLClassLoader.java:56) ~[fabric-server-launch.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_232]
at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:168) ~[fabric-server-launch.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_232]
at jayceecreates.earlygame.init.BlocksInit.init(BlocksInit.java:67) ~[earlygame-1.16.3-1.0.0a.jar:?]
======
I believe the issue is that you put the block render layer inside the main entrypoint in the mod and so the server tries to load it and can't.
I believe you need to put it inside a client entrypoint instead of the main entrypoint.
I'm to try and patch it myself to see if that fixes the problem, hopefully you can patch it officially so I can play it with some friends. Thanks!
java.lang.NoSuchMethodError: net.minecraft.class_1856.method_8105()[Lnet/minecraft/class_1799;
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removePlankRecipes$3(RecipeRemover.java:86) ~[earlygame-1.16.x-1.0.1.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$4(RecipeRemover.java:121) ~[earlygame-1.16.x-1.0.1.jar:?]
at java.util.stream.ReferencePipeline$2$1.accept(Unknown Source) ~[?:1.8.0_281]
at java.util.Spliterators$ArraySpliterator.forEachRemaining(Unknown Source) ~[?:1.8.0_281]
at java.util.stream.AbstractPipeline.copyInto(Unknown Source) ~[?:1.8.0_281]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) ~[?:1.8.0_281]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source) ~[?:1.8.0_281]
at java.util.stream.AbstractPipeline.evaluate(Unknown Source) ~[?:1.8.0_281]
at java.util.stream.ReferencePipeline.collect(Unknown Source) ~[?:1.8.0_281]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$5(RecipeRemover.java:122) ~[earlygame-1.16.x-1.0.1.jar:?]
at com.google.common.collect.RegularImmutableMap.forEach(RegularImmutableMap.java:146) ~[fabric-server-launch.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.removeRecipes(RecipeRemover.java:117) ~[earlygame-1.16.x-1.0.1.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.removePlankRecipes(RecipeRemover.java:83) ~[earlygame-1.16.x-1.0.1.jar:?]
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipe$0(RecipeRemover.java:39) ~[earlygame-1.16.x-1.0.1.jar:?]
at net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents.lambda$static$2(ServerLifecycleEvents.java:48) ~[872199d5-c25b-4680-8a0e-3157f774f8bc.jar:?]
at net.minecraft.server.MinecraftServer.handler$cbd000$afterSetupServer(MinecraftServer.java:6243) ~[intermediary-server.jar:?]
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:651) ~[intermediary-server.jar:?]
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:257) ~[intermediary-server.jar:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_281]
Here is where you'll see me ranting talking about what's been happening with me and this project lately. All non-issue questions will be attended here.
Stay tuned! ๐๐๐
I found plenty of sticks and stones on the ground during some testing, ready to pick up. So getting these is quite easy and also fun. Just collect them and explore further in the world. But getting flint seems like a grind* in comparison. To get flint, you need to mine gravel (or dirt) and hope for flint to drop by chance. Given the flint tools aren't durable at all, I feel like I need quite a lot of flint to progress to copper tools, which means a lot of mined gravel.
I think a good solution would be to spawn flint just like rocks and sticks on the ground to pick up on the go. Spawning might be limited to be on top of grave blocks.
*Let's crush some numbers, shall we? To progress to copper tools, you need to craft a flint pickaxe, and you probably want to craft a flint pickaxe as well for some wood shopping. To build these two tools, you need three flint shards and two lashings. To get the lashings, you need 8 plant fibers. With a drop chance of 27.5% and 20 durability points for one flint knife, this means you need to craft on average two knives to get enough fibers. Thus, in total, you need a bare minimum of five flints. With a drop chance of 10% or 5%, this means you need to punch on average 50 gravel or 100 dirt blocks, respectively. Given there is no shovel, that's quite a lot to punch with your fists. And that's the bare minimum. Imagine you don't immediately find a cave and need to actually mine a bunch of stone to find copper, or you may want to get a shelter. In such cases, you could run through some tools as they have quite low durability.
Good day developers of earlygame
I added earlygame upon the modpack I'm working on for modrinth and came across this bug.
log: https://bytebin.lucko.me/SxN2HxPq6F
This is using earlygame-1.18.2-1.1.2
this rocks adds rocks stick itself plus other things, I was wondering if you and the dev of this mod could team up to make the mods compatible with each other.
(e.g. disable your stick and rock generation when that mod is installed and replace his drops with yours or something like that)
this would make it seamless between the mods, and although your mods do similar things your ideas are very different. i dont think the mods should merge as they have different purposes but it be handy if both were installed for them to work together
---- Minecraft Crash Report ----
// This doesn't make any sense!
Time: 7/31/22, 1:58 PM
Description: Exception in server tick loop
java.lang.NullPointerException: Cannot invoke "net.minecraft.class_1799.method_7960()" because "recipeOutput" is null
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$2(RecipeRemover.java:72)
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$4(RecipeRemover.java:122)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178)
at java.base/java.util.HashMap$EntrySpliterator.forEachRemaining(HashMap.java:1850)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipes$5(RecipeRemover.java:123)
at java.base/java.util.HashMap.forEach(HashMap.java:1421)
at jayceecreates.earlygame.utils.RecipeRemover.removeRecipes(RecipeRemover.java:118)
at jayceecreates.earlygame.utils.RecipeRemover.removeRecipes(RecipeRemover.java:70)
at jayceecreates.earlygame.utils.RecipeRemover.lambda$removeRecipe$0(RecipeRemover.java:36)
at net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents.lambda$static$2(ServerLifecycleEvents.java:49)
at net.minecraft.server.MinecraftServer.handler$con000$afterSetupServer(MinecraftServer.java:4796)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:644)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:258)
at java.base/java.lang.Thread.run(Thread.java:833)
Crafting Cobbled Deepstone with Deepstone rocks doesn't work.
Breaking tall grass with any knife does not have any chance of dropping Plant Fiber.
Description: EarlyGame appears to have a compatibility issue with Industrial Revolution. EG apparently breaks Indrev's recipe system somehow while removing vanilla recipes. It takes two to tango, so I'll report on the Indrev tracker as well.
Steps to Reproduce:
Technical Information:
Logs: Here's a crash log in a "clean room" profile, with only EG, Indrev, and their dependencies installed.
crash-2021-08-20_21.47.05-server.txt
Details: OS is Linux Mint 19.3. Mods were downloaded from Curseforge. All the configs are default, no data/resource packs, created a new world, single-player.
Thanks! Let me know if there's anything I can do to help :)
StickTwigGen.generate reads client-side field EarlyGameClient.CONFIG on Dedicated Server
After enabling wood and stone tools (the flint tools are far too useless to go mining for it,) I found that chopping logs into planks with them simply breaks the block, not giving any drops.
the mod bits and chisels adds chisels and bits(A forge mod) functionality to fabric LINK: https://www.curseforge.com/minecraft/mc-mods/bits-and-chisels
your plugin stops all functionality of the chisels in that mod completely due to the breaking of blocks you need some sort of whitelist of tool and make them part of it
You may already be aware of this, or it may be intentional. But the latest version of earlygame has Minecraft 1.19 as a dependency, so it won't boot with 1.19.1 or 2. I would love to bug test for the latest version if that's a concern prior to an official 1.19.2 upload
i see youve added atbw but minegate anther mod which has waaay more stuff and covers the same functionality is not compatible with your mod, however they include tags in their mod "minecraft:sticks" to give compat to other mods
could you please add this???
Early-game progression currently involves gathering plant fibre using a Flint Knife in order to create lashing, which is used for crafting primitive flint tools. This is relatively easy and very safe, but I think an alternative option for players who take too long on their first day and lack a knife/foliage to gather fibre would be to use string dropped by spiders for crafting flint tools.
This would also have additional knock-on effects in later-game play. Being able to use string means that, in the event a player is deep underground without a clear path out and lacks a durable-enough tool to dig out, they could feasibly craft primitive tools using only things found underground (flint from gravel, string from spiders/cave spiders/cobwebs), with the exception of sticks. (though possessing an axe/saw and being in an underground mineshaft would provide an ample supply)
In short, this would give primitive tools a double purpose as improvised tools even once a player is far past the stone age. If a player requires a flint and steel but doesn't have iron ingots, they could create a firestarter. If a player needs a ranged attack, but lacks arrows and a way to craft them, they could make a slingshot. Etc, etc. This wouldn't be something that would come up often, of course, but it's something to consider.
Thank you for reading this suggestion, and I'm sorry for how wordy and borderline incomprehensible it is!
I would really appreciate it if you could add sticks for the warped and crimson fungus trees, making it possible to use EarlyGame with a Nether start, or in situations where you've lost your tools and need to rebuild while still in the Nether.
This mod is starting to show a lot of promise, so I went ahead and checked it out. I'm pretty impressed by it, and has ideas in it that I felt other mods lack in, so props to that.
However, there are some aspects which feel out of place or could use improvement. In my testing of it, these are some of the points that I came across:
First of all, the mining speed for dirt feels a bit too slow. I like that you're not able to plow through it anymore, but it gets annoying before long without having a shovel.
To further on the first point, it would be neat if dirt could actually drop flint only while mining by hand. This could be at a rate lower to that of gravel, but only by a bit.
The next thing is that the flint saw seems kind of useless. It isn't able to chop logs into planks like the others are, and as far as I could tell, only had the ability to strip planks. Even if it worked in the exact same way as the rest, I doubt it would serve much purpose.
The rate for fiber dropping from grass feels kind of low. It seems like the average is around one lashing per knife, which doesn't last long when the bare minimum for getting to copper is an axe and pick. To that end, one possible idea to make it a bit more dynamic would be to have fiber drop with a low chance from grass with just bare hands, which a flint knife would need one of to be able to craft it. Once you have a knife, the rate would be significantly higher (Maybe around 50% or more) so it becomes much easier to get more fiber for the lashings.
This one is kind of just a randomly coined idea but it would make sense in the mod nonetheless, and that is adding a woodcutter into it, similar to the stonecutter. This could have the purpose of allowing for items like planks to be crafted in a GUI instead of by interacting with a block, but at the cost of needing an iron ingot to make the cutter. This would probably render late-game saws to be useless, but maybe there are other uses that they could have? But even if not, it would still be hard to tote around yet another tool in an already crowded inventory.
your language file /assests/minecraft/lang/en_us.json breaks all vanilla messages in console for servers
move your messages to your mods dedicated lang and use that for your mod specific messages and that will fix this, otherwise you will have to include all vanilla messages(which would remove customisation of those messages due to your mod overwriting them)
e.g. can't use axes because of No Tree Punching mechanic
Here are some gentle reminders for everyone before opening an issue.
Thanks for your kind input!
Sorry if this is too much work. I would like you to add rock variants for Unearthed stone types.
I dont know if its just my game but i cant find any stones in snowy tundras
I think there should be an option to disable the rocks from stone blocks, or at least with later tool tiers (iron, diamond, netherite, Mythic Metals, etc.) because in the later stages of the game is really annoying to mine 4x the stone needed for my builds.
I recently discovered an interesting mod, "Buildable Campfire" (https://www.curseforge.com/minecraft/mc-mods/buildable-campfire), that performs a campfire overhaul which, in my opinion, is nicely tuned with EarlyGame's proposal.
So there goes the suggestion: what if we develop an integration for the two mods?
I opened a suggestion issue there as well (spacegoat3/BuildableCampfire#10), for you to check out the actual functional integration suggestion.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.