Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Ommina

Members
  • Posts

    65
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Ommina

  1. I need to make sure my understanding is correct.

     

    Within a mod, I appreciate that 'things' (whatever that thing might be) are registered in order of Block, Item, <rest of the stuff in whatever order it happen>.

     

    However, between mods, if one mod B is dependent on mod A, and is specified as such in mods.toml via ordering="AFTER", can I be confident that blocks from mod A will be registered before mod B registration begins?  That is, can mod B fetch mod A blocks and be confident they are registered?

     

    I feel that's the whole point of indicating an order, but I've been caught by my own misinterpretations before.

  2. OK.  In the build.gradle for the library, at the bottom, there is a section for 'publishing'.  Within that section is:

     

    repositories {
        maven {
            url "file:///${project.projectDir}/mcmodsrepo"
        }
    }
    

     

    Make note of the location.  Or change it to something you like better.  Or change it AND make note of it.

     

    I have to do a bit of hand-waving here, as I understand you are using Eclipse, and I don't know the Eclipse way of doing things.  In IntelliJ there is a Gradle panel with a publishing section, command named 'publish'.  Publish the library using this command.  That will put the library into what amounts to a local Maven repository.

     

    In your mod, ADD that location to the mod's repositories section, keeping in mind you won't be able to use ${project.projectDir}.  (This is why you might want to change it to a known convenient location.)  THEN, under dependencies,

    compile fg.deobf("[path to library jar]")

    and that's it.  The path matches how it appears under the mcmodsrepo folder. 

  3. I'm going to back up here a little bit, to ensure that I'm understanding the goal correctly.

     

    You want to add your own library as a dependency of your mod.  But you don't necessarily want to be able to edit both the library and the mod at the same time.  Building the library, and adding it in via gradle so it is available to the mod is sufficient?

     

  4. Excellent  - I'm glad you were able to get it working there.  Minecraft modding is often an exercise in frustration and perseverance.  But normally not this soon.

     

    I note there is a difference in the two Eclipse screenshots.  In the original, the resources tree was displayed with a series of folder icons.  In the latter, working version, it's a set of white squares with a cross-hatch.  Presumably this is relevant but I couldn't tell you how.

     

     

     

  5. Thanks for the updated repository.  I was able to load it up with no fuss.

     

    There IS some wobbly bits in mods.toml (you have the mod set as a dependent of itself), but I'm willing to bet those were changes you made in a desperate attempt to figure out why the rest wasn't working.

     

    As for the item texture itself... it worked.  Just fine.  Localization also.  No errors, no warnings.  Not even a hint of disapproval.

     

    So at this point I'm hoping somebody with more experience with Eclipse than I will join in.  As far as code and layout and filenames and all that nonsense is concerned, you've got it all correct.

     

    • Thanks 1
  6. Don't worry about the version differences.

     

    So it's simply not finding /models/item/wither_bone.json --- which takes us back to the structure of the project overall.  The screenshot looks correct enough at first and second glance, but something clearly isn't.  I see you have a lang folder.  Have you created a translation for item.jaylicraft.wither_bone ?  Since it isn't showing as translated in game, that would also suggest the structure is confused.

     

    I'm kinda concerned by the icons Eclipse is using for the resources.

     

    If you're willing to update the repository with the complete project, I'll figure it out locally.  Or perhaps somebody with sharper eyes than I can work it out from the screenshots.

     

  7. 3 hours ago, diesieben07 said:

    LootTableLoad event is the old, deprecated way of modifying loot.

    Loot modifiers should be used.

     

    It is?  Even in 1.16.1, there's no indication anywhere that LootTableLoad event is deprecated.  It's not that I disbelieve you, I just can't help but think that if there is a preference for modders to use one method over another, 'telling them' might be useful.

     

    But now I'm veering off-topic, and as @Salthin seems content, I'll step away.

  8. I'm going mostly by memory here.

     

    If the colour is wrong (it is), then you're not applying the color attribute of the fluid (fluid.getAttributes().getColor()).  Apply the colour to GlStateManager.color4f before the blit.  Reset after!

     

    For the scaling, the .bindTexture call looks wrong for reasons I don't remember.  I want to say it takes a TextureAtlas ResourceLocation, instead of that of a particular sprite.  The getUV methods inside the blit then pull the correct texture from the atlas.

  9. So, anybody have a good tutorial / documented example / hint guide on creating a Carver for 1.15.2 ?

     

    My goal is to create a 'simple' underground fluid sphere; pretty much the same thing that Buildcraft has been doing for years.  Needs to be able to cross chunk boundaries.  (I could fit it into one chunk, but it's not as dramatic.)

     

    Vanilla's UnderwaterCaveWorldCarver has an encouraging name, but I'm getting lost in a sea of obfuscation.

     

    My experiments with registering my own have been less than successful.  The entry function is being called multiple times (50 or more) per chunk, way more than I expected.  I just don't understand enough about what carvers do and how then do it, even at a high level, to begin to piece together the vanilla code.

     

    I could just make a self-destructing TE create the sphere, and I could be done and moving on in a few minutes.  But that feels like giving up.

     

    As always, thanks!

  10. To a point.  You can Run -> Reload Changed Classes, which will allow you to fiddle with existing functions and see the result without having to restart.

     

    But it will only take you so far.  You can't add functions, or make any real widespread change.  Handy for debugging, but I've found a restart is usually in the near future.

     

    Alas, the last I've seen the resource reload work successfully was in 1.12.2. 

     

  11. Well, we're here now, so we might as well stick with it.

     

    Chunk loading is largely covered by vanilla now; you'll find a forceChunk(int chunkX, int chunkZ, boolean add) inside ServerWorld.  This, if I'm reading it correctly, appears to be saved with the Dimension data.

     

    There is also a public void forceChunk(ChunkPos pos, boolean add) in ServerChunkProvider -- this uses a ticketing type system similar (but not identical) to what ForgeChunkManager provided.

     

    You can also read some further discussion on mcenderdragon's (withdrawn) pull request.

     

     

     

  12. On 1/4/2020 at 1:07 PM, wYvern said:

    I have been constantly for the last 2 days to get my head around this problem. I've seen countless tutorials and I've read countless forum posts but I couldn't for the life of me fix this. As the title suggests I don't have any errors within my code (none that I know of, at least) yet the .Lang file and the textures or models don't load. It's like they don't even exist.

     

     

    I would expect spelling "assets" correctly (instead of "asstes") will make a world of difference.

     

    Even in 1.14.4.

    • Like 1
×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.