Code Monkey home page Code Monkey logo

noisium's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

noisium's Issues

Spawn-chunk limitation

Greetings! I don't know if is doable or not, and if it can be related to your mod, but is it possible to change how many chunks will generate around worldspawn upon world creation? For my world-type generation might be useful to pre-generate small amount of chunks.

If this thing you don't want to work on, you can delete this request, to so as not to clog issues

Incompatibility with Mine Cells

Hi, I've been using this mod for a while with no issue and it works great.
However, teleporting to one of Mine Cells dimensions, Promenade of The Condemned or minecells:promenade, will result in disconnecting the player and crashing the server.

To be specific, that dimension can't be generated with Noisium.
Also, based on a crash log, it seems like the issue is related to NoiseChunkGenerator from Noisium.
Right now I have to play without Noisium since removing it solved the issue.

Crash Log: https://mclo.gs/QFFDEI0

Minecraft 1.20.1
Fabric Loader 0.15.7
Noisium 2.0.1
Mine Cells 1.7.2

Portal to Promenade of The Condemned (minecells:promenade)
2024-04-07_00 36 44

What does this mod do?

I'm pretty curious about this mod, and its performance gains, what does it do (in layman's terms)?

I've seen your explanation of replacing functions to optimize blockstate stuff, so I guess it's about filling in the chunk info faster, and not computing the structures themselves?

It's a new mod, so it's unpopular, and I love testing out new work! Especially ones uncalled for, so your project has me really curious :D. Do you have future plans for other optimizations?

[Question] Is the axis order optimization correct?

PalettedContainers store their data in YZX order. This can be confirmed by looking at PalettedContainer.Strategy#getIndex (mojmap). However, the axis order optimization in Noisium appears to be iterating in XZY order. I don't know if this actually reduces performance with the size of a modern CPU cache, but it seems unintended regardless. Ideally, I think you would want the loop to also be in YZX order (i.e. increment X, then Y, then Z), so that you are setting blocks at sequentially increasing indices. The current loop increments Y first before the other coordinates and won't do that.

Crash when creating new chunk in ad_astra dimension

Game verison: 1.20.1
Noisum version: noisium-forge-2.0.2+mc1.20-1.20.1

how to reproduce:
take a new world from monumental's 1.20.1 modpack.
spawn yourself a launchpad and tier 2 rocket
spawn yourself 64 desh ingots and 64 desh plates, 64 steel ingots and 64 iron plates
hop into the rocket, blast off
in earth orbit, click on the plus sign and try to build a space station. Crash.
Crash log attached.
new 1.txt

Incompatibility with Lithium

Hey! I've come across some strange chunk section related issues when running Noisium together with Lithium.
An example of this is that entities will be completely unable to detect if they're in water in certain chunk sections.
Video showing this issue: https://streamable.com/4t71lf

What I'm suspecting is the cause of the issue here is that Lithium has this optimization to shortcut fluid checks based on whether or not a chunk section contains any block of a certain flag. These values are maintained here, but because of the below optimization in Noisium I believe there might be a chance this doesn't always get updated properly.

// Set the blockstate in the palette storage directly to improve performance
var blockStateId = chunkSection.blockStateContainer.data.palette.index(blockState);
chunkSection.blockStateContainer.data.storage().set(
chunkSection.blockStateContainer.paletteProvider.computeIndex(chunkSectionBlockPosX,
chunkSectionBlockPosY, chunkSectionBlockPosZ
), blockStateId);

It might also be worth noting that this isn't always easy to reproduce and can take a while to find, and that it only really seems to happen in newly generated chunks (though that would probably make sense if this is the cause of it).

These blockstate flags are also used for other optimizations, so there's a good chance it may sometimes be breaking those aswell.

Clarify vanilla parity in description

Hello! Just bumped into the modrinth page - can you clarify whether worldgen output is 1:1 with vanilla explicitly in descriptions?

It'd also be good to know whether the generation is faster as in "it takes less time to generate x chunks, but consumes the same amount of resources" (as in a scheduling optimization), or as in "it takes less resources to generate x chunks, and therefore takes less time" (as in a cycle optimization) - as that would change whether the impact to framerate stability in singleplayer is negative or positive.

Thanks!

1.20.1 Neoforge 47.1.101 ``Crash on Startup``

I did modpack upkeep and now I can't launch I suspect based prior reports it has to do with lost cities anyways here is log.

https://mclo.gs/XbMdM8w

The log says wrong version but that actually wasn't an issue till after this latest string of updates.

  • Domum Ornamentum [1.20-1.0.170-BETA (Updated)
  • FTBQuestsOptimizer [1.2.2-1.20.1] (Updated)
  • GeckoLib 4 [4.4.4] (Updated)
  • Iron Bookshelves [1.20.1-1.3.0-forge] (Updated)
  • LostCities [1.20-7.1.3 (Updated)
  • LostSouls [1.20-4.0.3 (Updated)
  • MineColonies [1.20.1-1.1.510-BETA] (Updated)
  • Philips Ruins [3.4] (Updated)
  • Silent Gear [3.6.0 (Updated)
  • Structurize [1.20.1-1.0.712-BETA] (Updated)

I suspect one of this causing issues.

Due to time constraints I cannot test it so I am simply removing mod for now.

My Thanks !

Incredible mod, great performance since I started using it. Before I just had C2ME and sodium, and it wasn't crazy, the generation was slow.

Incompatibility: Nether Depths

Hey there!
When I am launching my game, I am getting an incompatibility warning with the mod Nether Depths. This seems to apparently be caused by the fact that both use Mixins Injection priority 1000? Please look into it, thank you :)

Fluids not rendered until player interaction (right click)

At times, certain parts of lava or water streams can be rendered invisible. Occurs throughout both overworld and nether. Not sure if this is a mod compatibility error.
Images:
image
Part of lava stream is invisible.
image
Stays invisible after block update.

Mods list:
Health Indicator TXF https://modrinth.com/mod/health-indicator-txf
Mod Menu https://modrinth.com/mod/modmenu
NBT AutoComplete https://modrinth.com/mod/nbt-autocomplete
Dynamic FPS https://modrinth.com/mod/dynamic-fps
Xaero’s Worldmap https://modrinth.com/mod/xaeros-world-map
Zoomify https://modrinth.com/mod/zoomify
Better Statistics https://modrinth.com/mod/better-stats
BetterF3 https://modrinth.com/mod/betterf3
Debugify https://modrinth.com/mod/debugify
Chat Heads https://modrinth.com/mod/chat-heads
More Culling https://modrinth.com/mod/moreculling
Entity Culling https://modrinth.com/mod/entityculling
ModernFix https://modrinth.com/mod/modernfix
FerriteCore https://modrinth.com/mod/ferrite-core
Peek https://modrinth.com/mod/peek
Immediately Fast https://modrinth.com/mod/immediatelyfast
Status Effect Bars https://modrinth.com/mod/status-effect-bars
Who Am I? https://modrinth.com/mod/whoami
Concurrent Chunk Management Engine https://modrinth.com/mod/c2me-fabric
Thread Tweak https://modrinth.com/mod/threadtweak
Lazy Language Loader https://modrinth.com/mod/lazy-language-loader
AppleSkin https://modrinth.com/mod/appleskin
Simple Item Editor https://modrinth.com/mod/simple-item-editor
Screenshot to Clipboard https://modrinth.com/mod/screenshot-to-clipboard
Very Many Players https://modrinth.com/mod/vmp-fabric
Xaero’s Minimap (Fair Play) https://modrinth.com/mod/xaeros-minimap-fair
Better Mount HUD https://modrinth.com/mod/better-mount-hud
CustomHud https://modrinth.com/mod/customhud
Krypton https://modrinth.com/mod/krypton
Lithium https://modrinth.com/mod/lithium
Bad Optimizations https://modrinth.com/mod/badoptimizations
Fast Quit https://modrinth.com/mod/fastquit
Fast IP Ping https://modrinth.com/mod/fast-ip-ping
Paginated Advancements https://modrinth.com/mod/paginatedadvancements
Minecraft Capes https://modrinth.com/mod/minecraftcapes
Your Options Shall be Respected https://modrinth.com/mod/yosbr
e4mc https://modrinth.com/mod/e4mc
LazyDFU https://modrinth.com/mod/lazydfu
Totem Small Pop https://modrinth.com/mod/cpvp
Sodium https://modrinth.com/mod/sodium
Gamma Shifter https://modrinth.com/mod/gamma-shifter
NoFog https://modrinth.com/mod/no_fog
Noisium https://modrinth.com/mod/noisium

Using dark ui resource pack from vanillatweaks.net

Incompatibility with latest versions of Lost Cities when playing via Sinytra Connector

I've been using Noisium on Forge (4.7.2.0, running Minecraft 1.20.1) via the Sinytra connector and it doesn't seem to have any issues except an incompatibility with the latest versions (1.20.7.1.1 and 1.20.7.1.0) of Lost Cities for forge. I tried reporting on the Lost Cities issues page first, but the mod dev said it's an issue on Noisium's end with the mod reducing visibility. The specific error is "NoiseChunkGeneratorMixin from mod noisium cannot reduce visibiliy of PUBLIC target method."

Here's a latest.log with only Sinytra Connector, Connector Extras, The Lost Cities, and Noisium active:

latest(13).log

I realize that this mod is Fabric first and foremost so it's a long shot, but I figure it's worth a try. :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.