Jump to content

Recommended Posts

Posted

I wonder if I am doing something wrong or if this is a vanilla issue:

I made a command that randomly generates 100 areas of 12x12 chunks, the more areas are made, the longer is takes to make an area?

 

Perfect copy+paste to try it yourself:

    @EventHandler
    public void serverLoad(FMLServerStartingEvent event) {
        event.registerServerCommand(new RandomGenerateCommand());
    }

    class RandomGenerateCommand implements ICommand {

        private final List aliases;

        public RandomGenerateCommand() {
            this.aliases = new ArrayList();
            this.aliases.add("rgen");
            this.aliases.add("randomgenerate");
        }

        @Override
        public String getCommandName() {
            return "randomgenerate";
        }

        @Override
        public String getCommandUsage(ICommandSender icommandsender) {
            return "/randomgenerate";
        }

        @Override
        public List getCommandAliases() {
            return this.aliases;
        }

        @Override
        public void processCommand(ICommandSender icommandsender, String[] astring) {
            World worldObj = null;// = Minecraft.getMinecraft().theWorld;
            for (WorldServer ws : MinecraftServer.getServer().worldServers) {
                if (ws.provider.getDimensionName().equals("Overworld")) {
                    worldObj = ws;
                    break;
                }
            }
            if (worldObj != null && worldObj.getChunkProvider() instanceof ChunkProviderServer) {
                ChunkProviderServer cps = (ChunkProviderServer) worldObj.getChunkProvider();
                Random r = new Random();
                for (int loops = 0; loops < 100; loops++) { //lets generate 100 random chunk areas of 12x12
                    int randomX = r.nextInt(5000) >> 4;
                    int randomZ = r.nextInt(5000) >> 4;

                    List<Chunk> chunks = new ArrayList();
                    long startTime = System.currentTimeMillis();
                    for (int i = -1; i < 12; i++) {//-1 to make sure the 12x12 area is completely populated with trees/ores/etc
                        for (int j = -1; j < 12; j++) {//-1 to make sure the 12x12 area is completely populated with trees/ores/etc
                            Chunk chunk = worldObj.getChunkProvider().loadChunk(randomX + i, randomZ + j);
                            chunks.add(chunk);
                        }
                    }

                    for (Chunk c : chunks) {
                        cps.unloadChunksIfNotNearSpawn(c.xPosition, c.zPosition);
                    }
                    cps.unloadQueuedChunks();
                    cps.unloadQueuedChunks();//unload twice because default minecraft has a limit of 100 chunks
                    System.out.println("Done " + (loops + 1) + " out of 100 iterations of 12x12 chunk areas, took " + (((double) System.currentTimeMillis() - (double) startTime) / 1000d) + " seconds!");
                }
            }
        }

        @Override
        public boolean canCommandSenderUseCommand(ICommandSender icommandsender) {
            return true;
        }

        @Override
        public List addTabCompletionOptions(ICommandSender icommandsender, String[] astring) {
            return null;
        }

        @Override
        public boolean isUsernameIndex(String[] astring, int i) {
            return false;
        }

        @Override
        public int compareTo(Object o) {
            return 0;
        }

    }

Just throw it at the bottom of a default mod main file, and get the imports :)

 

An example output that I keep getting:

2014-06-13 12:35:27 [iNFO] [sTDOUT] Done 1 out of 100 iterations of 12x12 chunk areas, took 3.017 seconds!
2014-06-13 12:35:30 [iNFO] [sTDOUT] Done 2 out of 100 iterations of 12x12 chunk areas, took 3.662 seconds!
2014-06-13 12:35:34 [iNFO] [sTDOUT] Done 3 out of 100 iterations of 12x12 chunk areas, took 3.331 seconds!
2014-06-13 12:35:39 [iNFO] [sTDOUT] Done 4 out of 100 iterations of 12x12 chunk areas, took 5.328 seconds!
2014-06-13 12:35:44 [iNFO] [sTDOUT] Done 5 out of 100 iterations of 12x12 chunk areas, took 4.681 seconds!
2014-06-13 12:35:49 [iNFO] [sTDOUT] Done 6 out of 100 iterations of 12x12 chunk areas, took 5.419 seconds!
2014-06-13 12:35:54 [iNFO] [sTDOUT] Done 7 out of 100 iterations of 12x12 chunk areas, took 5.114 seconds!
2014-06-13 12:36:00 [iNFO] [sTDOUT] Done 8 out of 100 iterations of 12x12 chunk areas, took 5.776 seconds!
2014-06-13 12:36:06 [iNFO] [sTDOUT] Done 9 out of 100 iterations of 12x12 chunk areas, took 6.266 seconds!
2014-06-13 12:36:13 [iNFO] [sTDOUT] Done 10 out of 100 iterations of 12x12 chunk areas, took 6.909 seconds!
2014-06-13 12:36:21 [iNFO] [sTDOUT] Done 11 out of 100 iterations of 12x12 chunk areas, took 7.489 seconds!
2014-06-13 12:36:28 [iNFO] [sTDOUT] Done 12 out of 100 iterations of 12x12 chunk areas, took 7.517 seconds!
2014-06-13 12:36:36 [iNFO] [sTDOUT] Done 13 out of 100 iterations of 12x12 chunk areas, took 8.09 seconds!
2014-06-13 12:36:45 [iNFO] [sTDOUT] Done 14 out of 100 iterations of 12x12 chunk areas, took 8.892 seconds!
2014-06-13 12:36:55 [iNFO] [sTDOUT] Done 15 out of 100 iterations of 12x12 chunk areas, took 9.447 seconds!
2014-06-13 12:37:06 [iNFO] [sTDOUT] Done 16 out of 100 iterations of 12x12 chunk areas, took 11.165 seconds!
2014-06-13 12:37:16 [iNFO] [sTDOUT] Done 17 out of 100 iterations of 12x12 chunk areas, took 10.264 seconds!
2014-06-13 12:37:27 [iNFO] [sTDOUT] Done 18 out of 100 iterations of 12x12 chunk areas, took 10.723 seconds!
2014-06-13 12:37:38 [iNFO] [sTDOUT] Done 19 out of 100 iterations of 12x12 chunk areas, took 11.193 seconds!
2014-06-13 12:37:50 [iNFO] [sTDOUT] Done 20 out of 100 iterations of 12x12 chunk areas, took 11.688 seconds!
2014-06-13 12:38:01 [iNFO] [sTDOUT] Done 21 out of 100 iterations of 12x12 chunk areas, took 11.085 seconds!
2014-06-13 12:38:12 [iNFO] [sTDOUT] Done 22 out of 100 iterations of 12x12 chunk areas, took 11.476 seconds!
2014-06-13 12:38:24 [iNFO] [sTDOUT] Done 23 out of 100 iterations of 12x12 chunk areas, took 11.779 seconds!
2014-06-13 12:38:37 [iNFO] [sTDOUT] Done 24 out of 100 iterations of 12x12 chunk areas, took 12.761 seconds!
2014-06-13 12:38:49 [iNFO] [sTDOUT] Done 25 out of 100 iterations of 12x12 chunk areas, took 12.609 seconds!
2014-06-13 12:39:02 [iNFO] [sTDOUT] Done 26 out of 100 iterations of 12x12 chunk areas, took 12.666 seconds!
2014-06-13 12:39:15 [iNFO] [sTDOUT] Done 27 out of 100 iterations of 12x12 chunk areas, took 12.811 seconds!
2014-06-13 12:39:28 [iNFO] [sTDOUT] Done 28 out of 100 iterations of 12x12 chunk areas, took 13.095 seconds!
2014-06-13 12:39:42 [iNFO] [sTDOUT] Done 29 out of 100 iterations of 12x12 chunk areas, took 13.594 seconds!
2014-06-13 12:39:55 [iNFO] [sTDOUT] Done 30 out of 100 iterations of 12x12 chunk areas, took 13.82 seconds!
2014-06-13 12:40:10 [iNFO] [sTDOUT] Done 31 out of 100 iterations of 12x12 chunk areas, took 14.903 seconds!
2014-06-13 12:40:24 [iNFO] [sTDOUT] Done 32 out of 100 iterations of 12x12 chunk areas, took 13.493 seconds!
2014-06-13 12:40:38 [iNFO] [sTDOUT] Done 33 out of 100 iterations of 12x12 chunk areas, took 13.975 seconds!
2014-06-13 12:40:52 [iNFO] [sTDOUT] Done 34 out of 100 iterations of 12x12 chunk areas, took 13.926 seconds!
2014-06-13 12:41:06 [iNFO] [sTDOUT] Done 35 out of 100 iterations of 12x12 chunk areas, took 14.261 seconds!
2014-06-13 12:41:21 [iNFO] [sTDOUT] Done 36 out of 100 iterations of 12x12 chunk areas, took 14.7 seconds!
2014-06-13 12:41:35 [iNFO] [sTDOUT] Done 37 out of 100 iterations of 12x12 chunk areas, took 14.727 seconds!
2014-06-13 12:41:51 [iNFO] [sTDOUT] Done 38 out of 100 iterations of 12x12 chunk areas, took 15.55 seconds!
2014-06-13 12:42:08 [iNFO] [sTDOUT] Done 39 out of 100 iterations of 12x12 chunk areas, took 16.707 seconds!
2014-06-13 12:42:25 [iNFO] [sTDOUT] Done 40 out of 100 iterations of 12x12 chunk areas, took 17.356 seconds!
2014-06-13 12:42:43 [iNFO] [sTDOUT] Done 41 out of 100 iterations of 12x12 chunk areas, took 18.202 seconds!
2014-06-13 12:43:02 [iNFO] [sTDOUT] Done 42 out of 100 iterations of 12x12 chunk areas, took 18.464 seconds!
2014-06-13 12:43:20 [iNFO] [sTDOUT] Done 43 out of 100 iterations of 12x12 chunk areas, took 18.743 seconds!
2014-06-13 12:43:40 [iNFO] [sTDOUT] Done 44 out of 100 iterations of 12x12 chunk areas, took 19.21 seconds!

So either I am overlooking something or vanilla minecraft has a serious leak when it comes to generating chunks...

Please enlighten me  ???

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • I tried do download the essential mod to my mod pack but i didnt work. I paly on 1.21 and it should work. I use neoforge for my modding. The weird things is my friend somehow added the mod to his modpack and many others that I somehow can´t. Is there anything i can do? 
    • Thanks, I've now installed a slightly newer version and the server is at least starting up now.
    • i have the same issue. Found 1 Create mod class dependency(ies) in createdeco-1.3.3-1.19.2.jar, which are missing from the current create-1.19.2-0.5.1.i.jar Found 11 Create mod class dependency(ies) in createaddition-fabric+1.19.2-20230723a.jar, which are missing from the current create-1.19.2-0.5.1.i.jar Detailed walkthrough of mods which rely on missing Create mod classes: Mod: createaddition-fabric+1.19.2-20230723a.jar Missing classes of create: com/simibubi/create/compat/jei/category/sequencedAssembly/JeiSequencedAssemblySubCategory com/simibubi/create/compat/recipeViewerCommon/SequencedAssemblySubCategoryType com/simibubi/create/compat/rei/CreateREI com/simibubi/create/compat/rei/EmptyBackground com/simibubi/create/compat/rei/ItemIcon com/simibubi/create/compat/rei/category/CreateRecipeCategory com/simibubi/create/compat/rei/category/WidgetUtil com/simibubi/create/compat/rei/category/animations/AnimatedBlazeBurner com/simibubi/create/compat/rei/category/animations/AnimatedKinetics com/simibubi/create/compat/rei/category/sequencedAssembly/ReiSequencedAssemblySubCategory com/simibubi/create/compat/rei/display/CreateDisplay Mod: createdeco-1.3.3-1.19.2.jar Missing classes of create: com/simibubi/create/content/kinetics/fan/SplashingRecipe
    • The crash points to moonlight lib - try other builds or make a test without this mod and the mods requiring it
    • Do you have shaders enabled? There is an issue with the mod simpleclouds - remove this mod or disable shaders, if enabled  
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

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