
Everything posted by Cadiboo
-
[1.14.4] Setting up Compatibility/Importing from other mods
Show your build.gradle.
-
[1.15.1] Get a json model part in a java class ?
Short answer: No. Long answer: Json models are loaded and baked into objects that can easily be uploaded to your GPU for rendering. It is possible to animate these models but it is hard. What exactly are you trying to do, from a player's perspective?
-
Un-needed thread
I would also clean up your code: Use hex for the colors and field access for the constants like 3042 (GL11.GL_BLEND)
-
Projectile not moving smooth
Extending ArrowEntity fixes some of this. More info here and here.
-
Resources not loaded when debugging in Eclipse
Did you run the genEclipseRuns gradle task?
-
Need help implementing code
The rendering code has changed massively since 1.7.4 so that snipped of code is no longer usable. However, the intent of the code can still be implemented. I'm not sure how this could be implemented with the current rendering changes (I would wait till 1.15 stabilises before attempting it) but unless the smooth lighting code has changed a lot you would likely be looking at changing AmbientOcclusionFace. Pictures from MC-43968:
-
[1.15.1] Rendering block 'manually' (clientside)
Hint: BlockRendererDispatcher#renderFluid (func_228794_a_). Look at ChunkRenderDispatcher.ChunkRender.RebuildTask#rebuild (func_228940_a_) for more context (previously RenderChunk#rebuildChunk / ChunkRender#rebuildChunk).
-
[1.15.1] How to import OBJ files as block models
I think that all you need to do is remove the ".obj" from "apply": { "model": "brassnsteam:block/pipes/attachments/pipe_core_valve.obj" } and it should work.
-
[1.15.1] Rendering block 'manually' (clientside)
You probably want to use the hex representation of your color number. Also why not pass in a BlockPos instead of a Vec3d?
-
[1.15.1] How to import OBJ files as block models
Post your logs + BlockState json & model
-
[1.14.4] extending player arm
Depends on how you’re extending the arm. If you’re doing it with the player model, IIRC model parts contain UVs.
-
Updated documentation or exhaustive tutorials for 1.14.4 ?
Goes to a 404 for me. The old docs are still accessible at https://mcforge.readthedocs.io/en/1.12.x/ and https://mcforge.readthedocs.io/en/1.13.x/ but aren't visible on the main page.
-
[1.15.1] How to import OBJ files as block models
You don't need to do that call anymore, it just works™️ if you reference the model from your blockstate json
-
[1.14.4] How can I make multiple slots?
You need to override transferStackInSlot. Heres a dynamic version that some Modder made ages ago and that I've updated. Copy pasta code. Just pop it in your container class. Example of it being used. /** * Generic & dynamic version of {@link Container#transferStackInSlot(EntityPlayer, int)}<br> * Handle when the stack in slot {@code index} is shift-clicked. Normally this moves the stack between the player inventory and the other inventory(s). * * @param player the player passed in * @param index the index passed in * @return the {@link ItemStack} */ @Override public ItemStack transferStackInSlot(final EntityPlayer player, final int index) { ItemStack itemstack = ItemStack.EMPTY; final Slot slot = this.inventorySlots.get(index); if ((slot != null) && slot.getHasStack()) { final ItemStack itemstack1 = slot.getStack(); itemstack = itemstack1.copy(); final int containerSlots = this.inventorySlots.size() - player.inventory.mainInventory.size(); if (index < containerSlots) { if (!mergeItemStack(itemstack1, containerSlots, this.inventorySlots.size(), true, this)) { return ItemStack.EMPTY; } } else if (!mergeItemStack(itemstack1, 0, containerSlots, false, this)) { return ItemStack.EMPTY; } if (itemstack1.getCount() == 0) { slot.putStack(ItemStack.EMPTY); } else { slot.onSlotChanged(); } if (itemstack1.getCount() == itemstack.getCount()) { return ItemStack.EMPTY; } slot.onTake(player, itemstack1); } return itemstack; }
-
[1.13.2] Weird Mod Crashing Phenomenon [STILL NOT SOLVED!!]
This is also the solution I found. Please note this only occurs for Eclipse, IntelliJ has no such problem.
-
[1.14.4] Handful Of Config Questions
Its logical server side (per-world) and syncs to the client on connection. You register it on all distributions. Using a "proxy" or "baked" value is much better. You can see and/or profile the performance of the get method yourself. It's (possibly nested) Map#get calls so isn't extremely slow but is a lot slower than direct field access. Forge registers its client & server configs on all distributions, however they only use simple config values like booleans and numbers. If you're using a class that only exists on a specific distribution (for example an enum) you might want to look into only registering that config on that distribution. The config types contain some documentation. I've got a tutorial on configs here if you'd like some info. It's not very in-depth though (yet).
-
[1.14.4] FastTESR - Only render quads facing player
Yeah and FastTESR is gone in 1.15.1 anyway - everything changed and is more like a FastTESR with the new render system.
-
Files in resources folder are pretty much just getting ignored
See
-
Updated documentation or exhaustive tutorials for 1.14.4 ?
The forge docs just got 1.14.4 and 1.15.1 “updates”. I’ve got a list of resources for modding here, an example mod here and tutorials here.
-
[1.14.4] My Kingdom for a World
But World already is an IBlockReader, you don’t need to cast.
-
[1.15.1] Rendering block 'manually' (clientside)
The block pos is used for gathering extra data + randomising the model. Passing in BlockPos.ORIGIN (or ZERO, it might have been renamed) is likely to not cause any noticeable bugs. In 1.14.4 there was a method that just took in a BlockState and rendered it, I think it was called renderBlockBrightness and you might want to replicate its logic.
-
Exitcode -1073740791 with Minecraft above 1.6.4 with Forge Loaded
Post your logs
-
[1.14.4] extending player arm
I think you’ll probably want to modify the player model.
-
[1.15.1] Rendering block 'manually' (clientside)
Have you looked at BlockRendererDispatcher#renderBlock?
-
[1.14.4] Pass Texture from Blockstate JSON
Yes, look at Forge blockstates
IPS spam blocked by CleanTalk.