• 0

    posted a message on Custom Ore Generation: First Revival
    Hi again!

    Things got busy for a bit, so I wasn't able to run those tests as soon as I meant to, but I've checked some things and I think I may have found the cause of the lockups.

    I am almost certain now they are in fact tied to another mod that I must have installed at around the same time, and so far removing it seems to prevent the aformentioned random lockups. If I run into the issue in association with COG again, I'll let you know, but for now I'll assume my initial assessment was incorrect, and that COG was not the cause.

    Thought I should keep you posted after my initial accusatory error post. ;)

    Looking forward to the next updates. :)
    Posted in: Minecraft Mods
  • 0

    posted a message on Custom Ore Generation: First Revival
    Quote from noogenesis

    I'd be happy to take any contributions for the nether (I presume you're referring to the vanilla quartz generation?)



    Well, I don't think using the numeric IDs is a great idea. As you say, they are configuration dependent and soon will go away altogether. Please elaborate on why the string names did not work.



    Well this is the first report of such an issue. Would you please try in a fresh world without your TC config? Maybe something in the TC config caused corruption leading to this.


    Yeah, vanilla quartz, although TC also adds its own Nether ores as well. I'm not sure when I'll get around to it, as I was most concerned with the overworld ores, but I'll post a config for it when I have one to show.

    As for the string names, I agree it's not the best solution, but I couldn't get the mod to register the blocks without using the IDs at the time. I initially used "oreTin", "oreAluminum", etc, for the names. I was working on it while a bit tired, and upon reflection I may need to use the actual in-game strings; "Tin Ore", "Aluminum Ore", etc, instead. Can you clarify; what exactly do those string name functions look at to determine which block to use? Where should I look to identify the strings/names I should be using?

    As for the lockup issue, I did exactly that as part of my tests when I posted earlier. I'll test it again with a clean install, and let you know what I find. I am currently using Forge .844 with MC 1.6.2, and my MC client is admittedly modded to the gills, including some worldgen stuff, so there could definitely be a conflict with another mod I have on there. But I can confirm this problem wasn't happening before I added CustomOreGen to my pack.

    I'll let you know what I find out; I have some clear suspicions on what mods are the likeliest culprits for conflicts.
    Posted in: Minecraft Mods
  • 0

    posted a message on [1.7][1.6] Ender IO - How many pipes in one block?
    Hey CrazyPants; looks like you've got a really neat mod going here, I'll be giving it a try. I had a quick question for you though;

    With the EnderIO, when you use an EnderFace, does it render only blocks? I am wondering if it might render other players or entities within its view range as well. I ask because I've been really hoping to come across a "security-camera" style mod at some point, like the old CCTV mod that never quite revived, and this is the closest thing to that feature which I've seen lately. :P

    Also, any news on UniversalElectricity power conversion support? That's a feature I know I would really appreciate, since it would let me simplify my wiring setups tremendously.
    Posted in: Minecraft Mods
  • 0

    posted a message on Custom Ore Generation: First Revival
    Quote from noogenesis

    Thanks so much for taking a stab at this. A couple of tips: look at the Mod ID after selecting the mod in the Mods display. For Tinker's Construct, it's TConstruct. Often, this will also be the name of the mod's config file. Once I fixed that, COG identified a number of typos that I corrected. I haven't tested how well it generates the ores (was hoping you could continue developing it). Revised code in spoiler.






    <IfModInstalled name="TConstruct">


    <ConfigSection>

    <OptionDisplayGroup name='groupTinkerC' displayName='TinkersConstruct' displayState='shown'>
    <Description>
    Distribution options for the Tinker's Construct ores (overworld only).
    </Description>
    </OptionDisplayGroup>


    <ConfigSection>

    <OptionChoice name='TCAluminumDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how Aluminum is generated </Description>
    <DisplayName>Aluminum Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of aluminum ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla aluminum generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No aluminum is generated at all.'/>
    </OptionChoice>

    <OptionNumeric name='TCAluminumFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for aluminum distributions </Description>
    <DisplayName>Aluminum Freq.</DisplayName>
    </OptionNumeric>

    <OptionNumeric name='TCAluminumSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for aluminum distributions </Description>
    <DisplayName>Aluminum Size</DisplayName>
    </OptionNumeric>

    <MystcraftSymbol name='aluminumClusters' displayName='Aluminum Clusters'/>
    <MystcraftSymbol name='aluminumVeins' displayName='Aluminum Veins'/>
    <MystcraftSymbol name='aluminumClouds' displayName='Aluminum Clouds'>
    <Instability>:= 50 * (age.aluminumClusters + age.aluminumVeins + age.aluminumClouds - 1)^3</Instability>
    </MystcraftSymbol>

    </ConfigSection>


    <ConfigSection>

    <OptionChoice name='TCCopperDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how copper is generated </Description>
    <DisplayName>Copper Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of copper ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla copper generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No copper is generated at all.'/>
    </OptionChoice>

    <OptionNumeric name='TCCopperFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for copper distributions </Description>
    <DisplayName>Copper Freq.</DisplayName>
    </OptionNumeric>

    <OptionNumeric name='TCCopperSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for copper distributions </Description>
    <DisplayName>Copper Size</DisplayName>
    </OptionNumeric>

    <MystcraftSymbol name='copperClusters' displayName='Copper Clusters'/>
    <MystcraftSymbol name='copperVeins' displayName='Copper Veins'/>
    <MystcraftSymbol name='copperClouds' displayName='Copper Clouds'>
    <Instability>:= 50 * (age.copperClusters + age.copperVeins + age.copperClouds - 1)^3</Instability>
    </MystcraftSymbol>

    </ConfigSection>


    <ConfigSection>

    <OptionChoice name='TCTinDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how tin is generated </Description>
    <DisplayName>Tin Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of tin ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla tin generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No tin is generated at all.'/>
    </OptionChoice>

    <OptionNumeric name='TCTinFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for tin distributions </Description>
    <DisplayName>tin Freq.</DisplayName>
    </OptionNumeric>

    <OptionNumeric name='TCTinSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for tin distributions </Description>
    <DisplayName>Tin Size</DisplayName>
    </OptionNumeric>

    <MystcraftSymbol name='tinClusters' displayName='Tin Clusters'/>
    <MystcraftSymbol name='tinVeins' displayName='Tin Veins'/>
    <MystcraftSymbol name='tinClouds' displayName='Tin Clouds'>
    <Instability>:= 50 * (age.tinClusters + age.tinVeins + age.tinClouds - 1)^3</Instability>
    </MystcraftSymbol>

    </ConfigSection>

    </ConfigSection>


    <IfCondition condition=':= dimension.generator = "RandomLevelSource"'>


    <Substitute name='StandardOreSubstitute' block='stone'>
    <Description>
    Replace vanilla-generated ore clusters with stone.
    </Description>
    <Comment>
    The global option deferredPopulationRange must be large enough to catch all ore clusters (>= 32).
    </Comment>
    <Replaces block='oreAluminum'/>
    <Replaces block='oreCopper'/>
    <Replaces block='oreTin'/>

    </Substitute>


    <ConfigSection>

    <IfCondition condition=':= if(age, age.aluminumClusters > 0, TCAluminumDist = "vanillaStdGen")'>
    <StandardGen name='AluminumStandard' block='oreAluminum' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft aluminum distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= TCAluminumSize * _default_'/>
    <Setting name='Frequency' avg=':= TCAluminumFreq * if(age,age.aluminumClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>

    <IfCondition condition=':= if(age, age.aluminumVeins > 0, TCAluminumDist = "layeredVeins")'>
    <Veins name='AluminumVeins' block='oreAluminum' inherits='PresetLayeredVeins'>
    <Description>
    Aluminum spawns in the height 0-64 range. The veins are average in length and size.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCAluminumFreq * if(age,age.aluminumVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    </Veins>
    <Veins name='AluminumVeinsForest' inherits='AluminumVeins'>
    <Description> This roughly triples the chance of finding aluminum in forest biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Forest'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>

    <IfCondition condition=':= if(age, age.aluminumClouds > 0, TCAluminumDist = "strategicClouds")'>
    <Cloud name='AluminumCloud' block='oreAluminum' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse aluminum cloud surrounded by single-block "hint" veins, found in forest biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCAluminumFreq * if(age,age.aluminumClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <BiomeType name='Forest'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='AluminumHintVeins' block='oreAluminum' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>

    </ConfigSection>


    <ConfigSection>

    <IfCondition condition=':= if(age, age.copperClusters > 0, TCCopperDist = "vanillaStdGen")'>
    <StandardGen name='CopperStandard' block='oreCopper' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft copper distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= TCCopperSize * _default_'/>
    <Setting name='Frequency' avg=':= TCCopperFreq * if(age,age.copperClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>

    <IfCondition condition=':= if(age, age.copperVeins > 0, TCCopperDist = "layeredVeins")'>
    <Veins name='CopperVeins' block='oreCopper' inherits='PresetLayeredVeins'>
    <Description>
    Copper spawns in the height 0-64 range. The veins are average in length and size..
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCCopperFreq * if(age,age.copperVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    </Veins>
    <Veins name='CopperVeinsCold' inherits='CopperVeins'>
    <Description> This roughly triples the chance of finding copper in mesa biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Mesa'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>

    <IfCondition condition=':= if(age, age.copperClouds > 0, TCCopperDist = "strategicClouds")'>
    <Cloud name='CopperCloud' block='oreCopper' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse copper cloud surrounded by single-block "hint" veins, found in mesa biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCCopperFreq * if(age,age.copperClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <BiomeType name='Mesa'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='CopperHintVeins' block='oreCopper' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>

    </ConfigSection>


    <ConfigSection>

    <IfCondition condition=':= if(age, age.tinClusters > 0, TCTinDist = "vanillaStdGen")'>
    <StandardGen name='TinStandard' block='oreTin' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft tin distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= tinSize * _default_'/>
    <Setting name='Frequency' avg=':= TCTinFreq * if(age,age.tinClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>

    <IfCondition condition=':= if(age, age.tinVeins > 0, TCTinDist = "layeredVeins")'>
    <Veins name='TinVeins' block='oreTin' inherits='PresetLayeredVeins'>
    <Description>
    Tin spawns in the height 0-64 range. The veins are average in length and size.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCTinFreq * if(age,age.tinVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    </Veins>
    <Veins name='TinVeinsJungle' inherits='TinVeins'>
    <Description> This roughly triples the chance of finding tin in jungle biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Jungle'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>

    <IfCondition condition=':= if(age, age.tinClouds > 0, TCTinDist = "strategicClouds")'>
    <Cloud name='TinCloud' block='oreTin' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse tin cloud surrounded by single-block "hint" veins, found in jungle biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCTinFreq * if(age,age.tinClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <BiomeType name='Jungle'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='TinHintVeins' block='oreTin' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>

    </ConfigSection>



    </IfCondition>

    </IfModInstalled>



    Typos...bluh...guess that's what I get for making those edits in Notepad. But yes, you're most welcome; hope it helps people some. :P

    Thanks to your changes, this seems to register in the client, although I am only now noting that I apparently had to put the file inside the "CustomOreGen Extra Modules" folder specifically for it to work. I was putting it in the "Standard Modules" folder, and nothing was happening. Is that behaviour noted somewhere? I missed the note if it was.

    I'll give it a test and let you know if there are any glaring problems. :)

    Oh, and a question; is there a plan to add Nether ore configs? I noted that the current standard config file only addresses the Overworld at the moment.


    EDIT: After grappling with some on-start crashes where the Oregen mod couldn't find the desired ore blocks to use, I've changed the TC config file to use the blockIDs directly, which seems to work (so far). This of course means that anyone using this config needs to ensure their TC ore blockIDs and the ID listings in this file match for it to work (I am currently using the default IDs for the ores, so it won't trouble most folks, but I may as well be clear).

    Current, so-far-working version of the config follows:



    <!--************************ CustomOreGen Minecraft Ores Module *********************************
    *
    * This file contains Presets, Options, and Distributions for the 3 Tinkers' Construct overworld mining ores:
    * Aluminum, Copper, and Tin.
    *
    ***********************************************************************************************-->
    
    
    <IfModInstalled name="TConstruct">
    
    <!--*************************** Options + Symbols ***********************************
    *
    * Below are options and symbols for Aluminum, Copper, and Tin.. Each ore has a "type"
    option corresponding to select which distribution
    * is used for that ore in the overworld, and 3 mystcraft symbols for selecting
    * distributions in mystcraft ages.
    *
    * Each ore also has its own overall "frequency" and "size" multipliers. These are
    * provided so people can tweak the rarity of each ore from the options file rather
    * than having to edit the config directly.
    *
    *************************************************************************************-->
    <ConfigSection>
    
    <OptionDisplayGroup name='groupTinkerC' displayName='TinkersConstruct' displayState='shown'>
    <Description>
    Distribution options for the Tinker's Construct ores (overworld only).
    </Description>
    </OptionDisplayGroup>
    
    <!--******************* Aluminum ***********************-->
    <ConfigSection>
    
    <OptionChoice name='TCAluminumDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how Aluminum is generated </Description>
    <DisplayName>Aluminum Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of aluminum ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla aluminum generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No aluminum is generated at all.'/>
    </OptionChoice>
    
    <OptionNumeric name='TCAluminumFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for aluminum distributions </Description>
    <DisplayName>Aluminum Freq.</DisplayName>
    </OptionNumeric>
    
    <OptionNumeric name='TCAluminumSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for aluminum distributions </Description>
    <DisplayName>Aluminum Size</DisplayName>
    </OptionNumeric>
    
    <MystcraftSymbol name='aluminumClusters' displayName='Aluminum Clusters'/>
    <MystcraftSymbol name='aluminumVeins' displayName='Aluminum Veins'/>
    <MystcraftSymbol name='aluminumClouds' displayName='Aluminum Clouds'>
    <Instability>:= 50 * (age.aluminumClusters + age.aluminumVeins + age.aluminumClouds - 1)^3</Instability>
    </MystcraftSymbol>
    
    </ConfigSection>
    
    <!--******************* Copper ***********************-->
    <ConfigSection>
    
    <OptionChoice name='TCCopperDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how copper is generated </Description>
    <DisplayName>Copper Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of copper ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla copper generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No copper is generated at all.'/>
    </OptionChoice>
    
    <OptionNumeric name='TCCopperFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for copper distributions </Description>
    <DisplayName>Copper Freq.</DisplayName>
    </OptionNumeric>
    
    <OptionNumeric name='TCCopperSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for copper distributions </Description>
    <DisplayName>Copper Size</DisplayName>
    </OptionNumeric>
    
    <MystcraftSymbol name='copperClusters' displayName='Copper Clusters'/>
    <MystcraftSymbol name='copperVeins' displayName='Copper Veins'/>
    <MystcraftSymbol name='copperClouds' displayName='Copper Clouds'>
    <Instability>:= 50 * (age.copperClusters + age.copperVeins + age.copperClouds - 1)^3</Instability>
    </MystcraftSymbol>
    
    </ConfigSection>
    
    <!--******************* Tin ***********************-->
    <ConfigSection>
    
    <OptionChoice name='TCTinDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    <Description> Controls how tin is generated </Description>
    <DisplayName>Tin Type</DisplayName>
    <Choice value='layeredVeins' displayValue='Veins'>
    <Description>
    Concentrated veins of tin ore.
    </Description>
    </Choice>
    <Choice value='strategicClouds' displayValue='Clouds'>
    <Description>
    Rare, sparsely populated clouds of ore extending over several chunks.
    </Description>
    </Choice>
    <Choice value='vanillaStdGen' displayValue='Clusters'>
    <Description>
    Small evenly scattered clusters of ore. This is the vanilla tin generation.
    </Description>
    </Choice>
    <Choice value='none' displayValue='None' description='No tin is generated at all.'/>
    </OptionChoice>
    
    <OptionNumeric name='TCTinFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Frequency multiplier for tin distributions </Description>
    <DisplayName>tin Freq.</DisplayName>
    </OptionNumeric>
    
    <OptionNumeric name='TCTinSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    <Description> Size multiplier for tin distributions </Description>
    <DisplayName>Tin Size</DisplayName>
    </OptionNumeric>
    
    <MystcraftSymbol name='tinClusters' displayName='Tin Clusters'/>
    <MystcraftSymbol name='tinVeins' displayName='Tin Veins'/>
    <MystcraftSymbol name='tinClouds' displayName='Tin Clouds'>
    <Instability>:= 50 * (age.tinClusters + age.tinVeins + age.tinClouds - 1)^3</Instability>
    </MystcraftSymbol>
    
    </ConfigSection>
    
    </ConfigSection>
    
    <!--***************************** Distributions *************************************
    *
    * Below are the actual distributions for the vanilla ores in the overworld and
    * mystcraft ages. There are currently 3 types of distribution for each ore:
    * Layered Veins:
    * Some form of veins or clusters arranged loosely by height and more common
    * in affiliated biomes.
    * Strategic Clouds:
    * Huge, rare, low-density clouds. Size and frequency are fairly consistent;
    * density is varied to reflect ore rarity. May be surrounded by a scattering
    * of single blocks as hints to help guide players in.
    * Vanilla Clusters:
    * A re-creation of the vanilla ore generation using the StandardGen algorithm.
    *
    *************************************************************************************-->
    <IfCondition condition=':= dimension.generator = "RandomLevelSource"'>
    
    <!--********** Vanilla Deposit Removal *************-->
    <Substitute name='StandardOreSubstitute' block='stone'>
    <Description>
    Replace vanilla-generated ore clusters with stone.
    </Description>
    <Comment>
    The global option deferredPopulationRange must be large enough to catch all ore clusters (>= 32).
    </Comment>
    <Replaces block='1475:5'/>
    <Replaces block='1475:3'/>
    <Replaces block='1475:4'/>
    <Comment>
    The above; Aluminum (1475:5), Copper (1475:3), Tin (1475:4), respectively.
    </Comment>
    </Substitute>
    
    <!--******************* Aluminum ***********************-->
    <ConfigSection>
    
    <IfCondition condition=':= if(age, age.aluminumClusters > 0, TCAluminumDist = "vanillaStdGen")'>
    <StandardGen name='AluminumStandard' block='1475:5' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft aluminum distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= TCAluminumSize * _default_'/>
    <Setting name='Frequency' avg=':= TCAluminumFreq * if(age,age.aluminumClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.aluminumVeins > 0, TCAluminumDist = "layeredVeins")'>
    <Veins name='AluminumVeins' block='1475:5' inherits='PresetLayeredVeins'>
    <Description>
    Aluminum spawns in the height 0-64 range. The veins are average in length and size.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCAluminumFreq * if(age,age.aluminumVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    </Veins>
    <Veins name='AluminumVeinsForest' inherits='AluminumVeins'>
    <Description> This roughly triples the chance of finding aluminum in forest biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Forest'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.aluminumClouds > 0, TCAluminumDist = "strategicClouds")'>
    <Cloud name='AluminumCloud' block='1475:5' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse aluminum cloud surrounded by single-block "hint" veins, found in forest biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCAluminumFreq * if(age,age.aluminumClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    <BiomeType name='Forest'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='AluminumHintVeins' block='1475:5' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCAluminumSize * _default_' range=':= TCAluminumSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>
    
    </ConfigSection>
    
    <!--******************* Copper ***********************-->
    <ConfigSection>
    
    <IfCondition condition=':= if(age, age.copperClusters > 0, TCCopperDist = "vanillaStdGen")'>
    <StandardGen name='CopperStandard' block='1475:3' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft copper distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= TCCopperSize * _default_'/>
    <Setting name='Frequency' avg=':= TCCopperFreq * if(age,age.copperClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.copperVeins > 0, TCCopperDist = "layeredVeins")'>
    <Veins name='CopperVeins' block='1475:3' inherits='PresetLayeredVeins'>
    <Description>
    Copper spawns in the height 0-64 range. The veins are average in length and size..
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCCopperFreq * if(age,age.copperVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    </Veins>
    <Veins name='CopperVeinsCold' inherits='CopperVeins'>
    <Description> This roughly triples the chance of finding copper in mesa biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Mesa'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.copperClouds > 0, TCCopperDist = "strategicClouds")'>
    <Cloud name='CopperCloud' block='1475:3' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse copper cloud surrounded by single-block "hint" veins, found in mesa biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCCopperFreq * if(age,age.copperClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    <BiomeType name='Mesa'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='CopperHintVeins' block='1475:3' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCCopperSize * _default_' range=':= TCCopperSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>
    
    </ConfigSection>
    
    <!--******************* Tin ***********************-->
    <ConfigSection>
    
    <IfCondition condition=':= if(age, age.tinClusters > 0, TCTinDist = "vanillaStdGen")'>
    <StandardGen name='TinStandard' block='1475:4' inherits='PresetStandardGen'>
    <Description> Equivalent to vanilla minecraft tin distribution </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='Size' avg=':= tinSize * _default_'/>
    <Setting name='Frequency' avg=':= TCTinFreq * if(age,age.tinClusters,1) * _default_'/>
    <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    </StandardGen>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.tinVeins > 0, TCTinDist = "layeredVeins")'>
    <Veins name='TinVeins' block='1475:4' inherits='PresetLayeredVeins'>
    <Description>
    Tin spawns in the height 0-64 range. The veins are average in length and size.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= 0.9 * TCTinFreq * if(age,age.tinVeins,1) * _default_'/>
    <Setting name='MotherlodeSize' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    <Setting name='BranchHeightLimit' avg='10.5'/>
    <Setting name='SegmentRadius' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    </Veins>
    <Veins name='TinVeinsJungle' inherits='TinVeins'>
    <Description> This roughly triples the chance of finding tin in jungle biomes. </Description>
    <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    <BiomeType name='Jungle'/>
    <BiomeType name='Water' weight='-1'/>
    </Veins>
    </IfCondition>
    
    <IfCondition condition=':= if(age, age.tinClouds > 0, TCTinDist = "strategicClouds")'>
    <Cloud name='TinCloud' block='1475:4' inherits='PresetStrategicCloud'>
    <Description>
    Diffuse tin cloud surrounded by single-block "hint" veins, found in jungle biomes.
    </Description>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='DistributionFrequency' avg=':= 2.5 * TCTinFreq * if(age,age.tinClouds,1) * _default_'/>
    <Setting name='CloudRadius' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <Setting name='CloudThickness' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    <BiomeType name='Jungle'/>
    <BiomeType name='Water' weight='-1'/>
    <Veins name='TinHintVeins' block='1475:4' inherits='PresetHintVeins'>
    <DrawWireframe>:=drawWireframes</DrawWireframe>
    <WireframeColor>0x40221100</WireframeColor>
    <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    <Setting name='MotherlodeRangeLimit' avg=':= TCTinSize * _default_' range=':= TCTinSize * _default_'/>
    </Veins>
    </Cloud>
    </IfCondition>
    
    </ConfigSection>
    
    
    
    </IfCondition>
    
    </IfModInstalled>




    EDIT2: Hmm. Been testing. It seems that, when I generate new chunks where (presumably) new ore veins are being created, the game starts throwing very brief, but more and more frequent, lag spikes over a few minutes, and my allocated memory soon hits the ceiling, causing the game to lock up. This behavior is new as of installing CustomOreGen on my client. I'd provide a crash report, but the game doesn't have a chance to produce one. I'll test it without my TC config and see if it produces the same behavior.

    EDIT3: Yup, it does. Some kind of a memory leak, maybe? I allocated the game 3GB of memory to use and it seems to hit that ceiling really fast (can be as quick as 20 seconds) if I generate enough chunks at once.
    Posted in: Minecraft Mods
  • 0

    posted a message on Mutant Creatures - Spider Pig, Spider Pig [v1.4.9]

    Hey, guys, i have a problem.


    That's nice.

    Maybe if you actually explained what it was, someone could help you with it.
    Posted in: Minecraft Mods
  • 0

    posted a message on Custom Ore Generation: First Revival
    Hey guys. So I went and made a first pass at configuring the basic Overworld ores (aluminum, copper, tin) for Tinkers' Construct, but I can't quite seem to get it working. Would someone mind taking a quick look at my config, and let me know what I'm doing wrong? I've checked a few things via the Wiki and other example configs, but I just can't seem to get the game to recognize my config and add the new options to the menu.

    I've basically just taken the distribution settings for Iron Ore and copied them from the default vanilla ores config, changed the ore spawn heights and preferred biomes slightly, and swapped instances of "iron" with "copper", etc, for a given ore. I also added an "IfModInstalled" modifier, taking care to use the listed name for Tinkers' Construct as seen in the mods list, as seen in the other mod configs. If there is anything else I should have done, or there are any silly mistakes I've made, I can't seem to suss them out.

    Thanks in advance for the help. Code follows in the spoiler tag below. :)



    <!--************************ CustomOreGen Minecraft Ores Module *********************************
    *
    * This file contains Presets, Options, and Distributions for the 3 Tinkers' Construct overworld mining ores:
    *	 Aluminum, Copper, and Tin.
    *
    ***********************************************************************************************-->
    
    
    <IfModInstalled name="Tinkers' Construct">
    
    <!--*************************** Options + Symbols ***********************************
    *
    * Below are options and symbols for Aluminum, Copper, and Tin.. Each ore has a "type"
    option corresponding to select which distribution
    * is used for that ore in the overworld, and 3 mystcraft symbols for selecting
    * distributions in mystcraft ages.
    *
    * Each ore also has its own overall "frequency" and "size" multipliers. These are
    * provided so people can tweak the rarity of each ore from the options file rather
    * than having to edit the config directly.
    *
    *************************************************************************************-->
    <ConfigSection>
    
    	 <OptionDisplayGroup name='groupTinkerC' displayName='TinkersConstruct' displayState='shown'>
    		 <Description>
    			 Distribution options for the Tinker's Construct ores (overworld only).
    		 </Description>
    	 </OptionDisplayGroup>
    
    	 <!--******************* Aluminum ***********************-->
    	 <ConfigSection>
    	
    		 <OptionChoice name='TCAluminumDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    			 <Description> Controls how Aluminum is generated </Description>
    			 <DisplayName>Aluminum Type</DisplayName>
    			 <Choice value='layeredVeins' displayValue='Veins'>
    				 <Description>
    					 Concentrated veins of aluminum ore.
    				 </Description>
    			 </Choice>
    			 <Choice value='strategicClouds' displayValue='Clouds'>
    				 <Description>
    					 Rare, sparsely populated clouds of ore extending over several chunks.
    				 </Description>
    			 </Choice>
    			 <Choice value='vanillaStdGen' displayValue='Clusters'>
    				 <Description>
    					 Small evenly scattered clusters of ore. This is the vanilla aluminum generation.
    				 </Description>
    			 </Choice>
    			 <Choice value='none' displayValue='None' description='No aluminum is generated at all.'/>
    		 </OptionChoice>
    		
    		 <OptionNumeric name='TCAluminumFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Frequency multiplier for aluminum distributions </Description>
    			 <DisplayName>Aluminum Freq.</DisplayName>
    		 </OptionNumeric>
    		
    		 <OptionNumeric name='TCAluminumSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Size multiplier for aluminum distributions </Description>
    			 <DisplayName>Aluminum Size</DisplayName>
    		 </OptionNumeric>
    
    		 <MystcraftSymbol name='aluminumClusters' displayName='Aluminum Clusters'/>
    		 <MystcraftSymbol name='aluminumVeins' displayName='Aluminum Veins'/>
    		 <MystcraftSymbol name='aluminumClouds' displayName='Aluminum Clouds'>
    			 <Instability>:= 50 * (age.aluminumClusters + age.aluminumVeins + age.aluminumClouds - 1)^3</Instability>
    		 </MystcraftSymbol>
    	
    	 </ConfigSection>	
    		
    	 <!--******************* Copper ***********************-->
    	 <ConfigSection>
    	
    		 <OptionChoice name='TCCopperDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    			 <Description> Controls how copper is generated </Description>
    			 <DisplayName>Copper Type</DisplayName>
    			 <Choice value='layeredVeins' displayValue='Veins'>
    				 <Description>
    					 Concentrated veins of copper ore.
    				 </Description>
    			 </Choice>
    			 <Choice value='strategicClouds' displayValue='Clouds'>
    				 <Description>
    					 Rare, sparsely populated clouds of ore extending over several chunks.
    				 </Description>
    			 </Choice>
    			 <Choice value='vanillaStdGen' displayValue='Clusters'>
    				 <Description>
    					 Small evenly scattered clusters of ore. This is the vanilla copper generation.
    				 </Description>
    			 </Choice>
    			 <Choice value='none' displayValue='None' description='No copper is generated at all.'/>
    		 </OptionChoice>
    		
    		 <OptionNumeric name='TCCopperFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Frequency multiplier for copper distributions </Description>
    			 <DisplayName>Copper Freq.</DisplayName>
    		 </OptionNumeric>
    		
    		 <OptionNumeric name='TCCopperSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Size multiplier for copper distributions </Description>
    			 <DisplayName>Copper Size</DisplayName>
    		 </OptionNumeric>
    
    		 <MystcraftSymbol name='copperClusters' displayName='Copper Clusters'/>
    		 <MystcraftSymbol name='copperVeins' displayName='Copper Veins'/>
    		 <MystcraftSymbol name='copperClouds' displayName='Copper Clouds'>
    			 <Instability>:= 50 * (age.copperClusters + age.copperVeins + age.copperClouds - 1)^3</Instability>
    		 </MystcraftSymbol>
    	
    	 </ConfigSection>
    	
    	 <!--******************* Tin ***********************-->
    	 <ConfigSection>
    	
    		 <OptionChoice name='TCTinDist' default='layeredVeins' displayState='shown' displayGroup='groupTinkerC'>
    			 <Description> Controls how tin is generated </Description>
    			 <DisplayName>Tin Type</DisplayName>
    			 <Choice value='layeredVeins' displayValue='Veins'>
    				 <Description>
    					 Concentrated veins of tin ore.
    				 </Description>
    			 </Choice>
    			 <Choice value='strategicClouds' displayValue='Clouds'>
    				 <Description>
    					 Rare, sparsely populated clouds of ore extending over several chunks.
    				 </Description>
    			 </Choice>
    			 <Choice value='vanillaStdGen' displayValue='Clusters'>
    				 <Description>
    					 Small evenly scattered clusters of ore. This is the vanilla tin generation.
    				 </Description>
    			 </Choice>
    			 <Choice value='none' displayValue='None' description='No tin is generated at all.'/>
    		 </OptionChoice>
    		
    		 <OptionNumeric name='TCTinFreq' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Frequency multiplier for tin distributions </Description>
    			 <DisplayName>tin Freq.</DisplayName>
    		 </OptionNumeric>
    		
    		 <OptionNumeric name='TCTinSize' default='1' min='0' max='5' displayState='hidden' displayGroup='groupTinkerC'>
    			 <Description> Size multiplier for tin distributions </Description>
    			 <DisplayName>Tin Size</DisplayName>
    		 </OptionNumeric>
    
    		 <MystcraftSymbol name='tinClusters' displayName='Tin Clusters'/>
    		 <MystcraftSymbol name='tinVeins' displayName='Tin Veins'/>
    		 <MystcraftSymbol name='tinClouds' displayName='Tin Clouds'>
    			 <Instability>:= 50 * (age.tinClusters + age.tinVeins + age.tinClouds - 1)^3</Instability>
    		 </MystcraftSymbol>
    	
    	 </ConfigSection>
    	
    
    
    <!--***************************** Distributions *************************************
    *
    * Below are the actual distributions for the vanilla ores in the overworld and
    * mystcraft ages. There are currently 3 types of distribution for each ore:
    *	 Layered Veins:
    *	 Some form of veins or clusters arranged loosely by height and more common
    *	 in affiliated biomes.
    *	 Strategic Clouds:
    *	 Huge, rare, low-density clouds. Size and frequency are fairly consistent;
    *	 density is varied to reflect ore rarity. May be surrounded by a scattering
    *	 of single blocks as hints to help guide players in.
    *	 Vanilla Clusters:
    *	 A re-creation of the vanilla ore generation using the StandardGen algorithm.
    *
    *************************************************************************************-->
    <IfCondition condition=':= dimension.generator = "RandomLevelSource"'>
    	
    	 <!--********** Vanilla Deposit Removal *************-->
    	 <Substitute name='StandardOreSubstitute' block='stone'>
    		 <Description>
    			 Replace vanilla-generated ore clusters with stone.
    		 </Description>
    		 <Comment>
    			 The global option deferredPopulationRange must be large enough to catch all ore clusters (>= 32).
    		 </Comment>
    		 <Replaces block='oreAluminum'/>
    		 <Replaces block='oreCopper'/>
    		 <Replaces block='oreTin'/>
    
    	 </Substitute>
    	
    	 <!--******************* Aluminum ***********************-->
    		 <ConfigSection>
    	
    		 <IfCondition condition=':= if(age, age.aluminumClusters > 0, aluminumDist = "vanillaStdGen")'>
    			 <StandardGen name='AluminumStandard' block='oreAluminum' inherits='PresetStandardGen'>
    				 <Description> Equivalent to vanilla minecraft aluminum distribution </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='Size' avg=':= aluminumSize * _default_'/>
    				 <Setting name='Frequency' avg=':= aluminumFreq * if(age,age.aluminumClusters,1) * _default_'/>
    				 <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    			 </StandardGen>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.aluminumVeins > 0, aluminumDist = "layeredVeins")'>
    			 <Veins name='AluminumVeins' block='oreAluminum' inherits='PresetLayeredVeins'>
    				 <Description>
    					 Aluminum spawns in the height 0-64 range. The veins are average in length and size.
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='MotherlodeFrequency' avg=':= 0.9 * aluminumFreq * if(age,age.aluminumVeins,1) * _default_'/>
    				 <Setting name='MotherlodeSize' avg=':= aluminumSize * _default_' range=':= aluminumSize * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    				 <Setting name='BranchHeightLimit' avg='10.5'/>
    				 <Setting name='SegmentRadius' avg=':= aluminumSize * _default_' range=':= aluminumSize * _default_'/>
    			 </Veins>
    			 <Veins name='AluminumVeinsForest' inherits='AluminumVeins'>
    				 <Description> This roughly triples the chance of finding aluminum in forest biomes. </Description>
    				 <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    				 <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    				 <BiomeType name='Forest'/>
    				 <BiomeType name='Water' weight='-1'/>
    			 </Veins>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.aluminumClouds > 0, aluminumDist = "strategicClouds")'>
    			 <Cloud name='AluminumCloud' block='oreAluminum' inherits='PresetStrategicCloud'>
    				 <Description>
    					 Diffuse aluminum cloud surrounded by single-block "hint" veins, found in forest biomes.
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='DistributionFrequency' avg=':= 2.5 * aluminumFreq * if(age,age.aluminumClouds,1) * _default_'/>
    				 <Setting name='CloudRadius' avg=':= aluminumSize * _default_' range=':= aluminumSize * _default_'/>
    				 <Setting name='CloudThickness' avg=':= aluminumSize * _default_' range=':= aluminumSize * _default_'/>
    				 <BiomeType name='Forest'/>
    				 <BiomeType name='Water' weight='-1'/>
    				 <Veins name='AluminumHintVeins' block='oreAluminum' inherits='PresetHintVeins'>
    					 <DrawWireframe>:=drawWireframes</DrawWireframe>
    					 <WireframeColor>0x40221100</WireframeColor>
    					 <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    					 <Setting name='MotherlodeRangeLimit' avg=':= aluminumSize * _default_' range=':= aluminumSize * _default_'/>			
    				 </Veins>					
    			 </Cloud>
    		 </IfCondition>	
    	
    	 </ConfigSection>
    			
    	 <!--******************* Copper ***********************-->
    	 <ConfigSection>
    	
    		 <IfCondition condition=':= if(age, age.copperClusters > 0, copperDist = "vanillaStdGen")'>
    			 <StandardGen name='CopperStandard' block='oreCopper' inherits='PresetStandardGen'>
    				 <Description> Equivalent to vanilla minecraft copper distribution </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='Size' avg=':= copperSize * _default_'/>
    				 <Setting name='Frequency' avg=':= copperFreq * if(age,age.copperClusters,1) * _default_'/>
    				 <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    			 </StandardGen>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.copperVeins > 0, copperDist = "layeredVeins")'>
    			 <Veins name='CopperVeins' block='oreCopper' inherits='PresetLayeredVeins'>
    				 <Description>
    					 Copper spawns in the height 0-64 range. The veins are average in length and size..
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='MotherlodeFrequency' avg=':= 0.9 * copperFreq * if(age,age.copperVeins,1) * _default_'/>
    				 <Setting name='MotherlodeSize' avg=':= copperSize * _default_' range=':= copperSize * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    				 <Setting name='BranchHeightLimit' avg='10.5'/>
    				 <Setting name='SegmentRadius' avg=':= copperSize * _default_' range=':= copperSize * _default_'/>
    			 </Veins>
    			 <Veins name='CopperVeinsCold' inherits='CopperVeins'>
    				 <Description> This roughly triples the chance of finding copper in mesa biomes. </Description>
    				 <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    				 <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    				 <BiomeType name='Mesa'/>
    				 <BiomeType name='Water' weight='-1'/>
    			 </Veins>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.copperClouds > 0, copperDist = "strategicClouds")'>
    			 <Cloud name='CopperCloud' block='oreCopper' inherits='PresetStrategicCloud'>
    				 <Description>
    					 Diffuse copper cloud surrounded by single-block "hint" veins, found in mesa biomes.
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='DistributionFrequency' avg=':= 2.5 * copperFreq * if(age,age.copperClouds,1) * _default_'/>
    				 <Setting name='CloudRadius' avg=':= copperSize * _default_' range=':= copperSize * _default_'/>
    				 <Setting name='CloudThickness' avg=':= copperSize * _default_' range=':= copperSize * _default_'/>
    				 <BiomeType name='Mesa'/>
    				 <BiomeType name='Water' weight='-1'/>
    				 <Veins name='CopperHintVeins' block='oreCopper' inherits='PresetHintVeins'>
    					 <DrawWireframe>:=drawWireframes</DrawWireframe>
    					 <WireframeColor>0x40221100</WireframeColor>
    					 <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    					 <Setting name='MotherlodeRangeLimit' avg=':= copperSize * _default_' range=':= copperSize * _default_'/>			
    				 </Veins>					
    			 </Cloud>
    		 </IfCondition>	
    	
    	 </ConfigSection>		
    	
    	 <!--******************* Tin ***********************-->
    	 <ConfigSection>
    	
    		 <IfCondition condition=':= if(age, age.tinClusters > 0, tinDist = "vanillaStdGen")'>
    			 <StandardGen name='TinStandard' block='oreTin' inherits='PresetStandardGen'>
    				 <Description> Equivalent to vanilla minecraft tin distribution </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='Size' avg=':= tinSize * _default_'/>
    				 <Setting name='Frequency' avg=':= tinFreq * if(age,age.tinClusters,1) * _default_'/>
    				 <Setting name='Height' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel'/>
    			 </StandardGen>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.tinVeins > 0, tinDist = "layeredVeins")'>
    			 <Veins name='TinVeins' block='oreTin' inherits='PresetLayeredVeins'>
    				 <Description>
    					 Tin spawns in the height 0-64 range. The veins are average in length and size.
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='MotherlodeFrequency' avg=':= 0.9 * tinFreq * if(age,age.tinVeins,1) * _default_'/>
    				 <Setting name='MotherlodeSize' avg=':= tinSize * _default_' range=':= tinSize * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':= 32/64 * dimension.groundLevel' range=':= 20/64 * dimension.groundLevel' type='normal'/>
    				 <Setting name='BranchHeightLimit' avg='10.5'/>
    				 <Setting name='SegmentRadius' avg=':= tinSize * _default_' range=':= tinSize * _default_'/>
    			 </Veins>
    			 <Veins name='TinVeinsJungle' inherits='TinVeins'>
    				 <Description> This roughly triples the chance of finding tin in jungle biomes. </Description>
    				 <Setting name='MotherlodeFrequency' avg=':= 2 * _default_'/>
    				 <Setting name='MotherlodeHeight' avg=':=_default_' range=':= 2 * _default_'/>
    				 <Setting name='BranchHeightLimit' avg=':= 2 * _default_'/>
    				 <BiomeType name='Jungle'/>
    				 <BiomeType name='Water' weight='-1'/>
    			 </Veins>
    		 </IfCondition>
    			
    		 <IfCondition condition=':= if(age, age.tinClouds > 0, tinDist = "strategicClouds")'>
    			 <Cloud name='TinCloud' block='oreTin' inherits='PresetStrategicCloud'>
    				 <Description>
    					 Diffuse tin cloud surrounded by single-block "hint" veins, found in jungle biomes.
    				 </Description>
    				 <DrawWireframe>:=drawWireframes</DrawWireframe>
    				 <WireframeColor>0x40221100</WireframeColor>
    				 <Setting name='DistributionFrequency' avg=':= 2.5 * tinFreq * if(age,age.tinClouds,1) * _default_'/>
    				 <Setting name='CloudRadius' avg=':= tinSize * _default_' range=':= tinSize * _default_'/>
    				 <Setting name='CloudThickness' avg=':= tinSize * _default_' range=':= tinSize * _default_'/>
    				 <BiomeType name='Jungle'/>
    				 <BiomeType name='Water' weight='-1'/>
    				 <Veins name='TinHintVeins' block='oreTin' inherits='PresetHintVeins'>
    					 <DrawWireframe>:=drawWireframes</DrawWireframe>
    					 <WireframeColor>0x40221100</WireframeColor>
    					 <Setting name='MotherlodeFrequency' avg=':= _default_' range=':= _default_'/>
    					 <Setting name='MotherlodeRangeLimit' avg=':= tinSize * _default_' range=':= tinSize * _default_'/>			
    				 </Veins>					
    			 </Cloud>
    		 </IfCondition>	
    	
    	 </ConfigSection>	
    	
    
    	
    </IfCondition>
    
    </IfModInstalled>


    Posted in: Minecraft Mods
  • 0

    posted a message on Custom Ore Generation: First Revival
    Quote from noogenesis

    I am going to propose the following policy regarding mod support: it's the responsibility of the community[...] Is everyone on-board with this?


    Fair enough, though if someone with more familiarity with COG would care to step forward to make the Tinker's Construct config, I would gladly let them take the credit. In the meantime, guess I'll need to dig deeper into the wiki then. :P
    Posted in: Minecraft Mods
  • 0

    posted a message on Custom Ore Generation: First Revival
    Hey guys; great to see this mod is back in action, I was looking at it with interest a while ago. I'll be giving it a try, and will let you know if I encounter any bugs.

    I wanted to ask, though; is anyone here running this mod alongside Tinker's Construct? That mod adds a selection of new ores to the game (aluminum, copper, tin...), and I noticed that this mod ships with some preconfigured oregen profiles for mods like RedPower and Forestry. Would it be possible to add Tinker's Construct to that list as well? It'd be much appreciated. :D

    A list of the relevant ore blocks can be found here: http://tinkers-const.../Ore_Generation

    And ore heights for particular ores can be found in the relevant wiki entries here; http://ftbwiki.org/A...er's_Construct)

    (Another addition worth considering may be a profile for the UniversalElectricity modpack, although it is admittedly undergoing some restructuring right now, which might complicate things.)

    Thanks again for the mod release, and best of luck to you with the mod's development, noogenesis!
    Posted in: Minecraft Mods
  • 0

    posted a message on [1.6.2] Universal Electricity - An Electricity System Modding API
    Quote from xxskyjackxx

    Has anyone found a solution to the tile.comparitor.name requirement in the basic circuit recipe for basic components?


    I submitted a bug report to Calcavia and crew a bit earlier. I see my notes have made their way onto the BasicComponents github, so hopefully this and a few other issues will be resolved soon. Thanks Calcavia! :)
    Posted in: Minecraft Mods
  • 0

    posted a message on Mutant Creatures - Spider Pig, Spider Pig [v1.4.9]
    Hippomaster, sorry to say, but running the new 1.4.2 version of the mod, and AnimationAPI 1.1.1, on a server still immediately throws a "ModelEnderHand" error. Again, still using Forge .844 and Minecraft 1.6.2.

    Crash report follows. Am I doing something wrong? Does anyone else have this working on a headless server?



    ---- Minecraft Crash Report ----
    // Why did you do that?

    Time: 9/15/13 1:22 PM
    Description: Exception in server tick loop

    cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at cpw.mods.fml.common.LoadController.transition(LoadController.java:149)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:697)
    at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:107)
    at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:355)
    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:141)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:443)
    at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:582)
    Caused by: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at thehippomaster.MutantCreatures.EndersoulHand.<clinit>(EndersoulHand.java:213)
    at thehippomaster.MutantCreatures.MutantCreatures.init(MutantCreatures.java:96)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:696)
    ... 5 more
    Caused by: java.lang.ClassNotFoundException: thehippomaster.MutantCreatures.client.ModelEnderHand
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:179)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 34 more
    Caused by: java.lang.RuntimeException: Attempted to load class thehippomaster/MutantCreatures/client/ModelEnderHand for invalid side SERVER
    at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50)
    at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:267)
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:165)
    ... 36 more


    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------

    -- System Details --
    Details:
    Minecraft Version: 1.6.2
    Operating System: Windows 7 (amd64) version 6.1
    Java Version: 1.7.0_25, Oracle Corporation
    Java VM Version: Java HotSpot™ 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 353197912 bytes (336 MB) / 456196096 bytes (435 MB) up to 3797286912 bytes (3621 MB)
    JVM Flags: 0 total;
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    Suspicious classes: FML and Forge are installed
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP v8.04 FML v6.2.57.844 Minecraft Forge 9.10.0.844 5 mods loaded, 5 mods active
    mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized
    FML{6.2.57.844} [Forge Mod Loader] (minecraftforge-universal-1.6.2-9.10.0.844.jar) Unloaded->Constructed->Pre-initialized->Initialized
    Forge{9.10.0.844} [Minecraft Forge] (minecraftforge-universal-1.6.2-9.10.0.844.jar) Unloaded->Constructed->Pre-initialized->Initialized
    AnimationAPI{1.1.1} [AnimationAPI] (AnimationAPI v1.1.1 mc1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
    MutantCreatures{1.4.2} [Mutant Creatures] (Mutant_Creatures_v1.4.2_mc1.6.2.zip) Unloaded->Constructed->Pre-initialized->Errored
    Profiler Position: N/A (disabled)
    Is Modded: Definitely; Server brand changed to 'fml,forge'
    Type: Dedicated Server (map_server.txt)

    Posted in: Minecraft Mods
  • 0

    posted a message on [1.5.1/1.5.2] PowerCrystals' mods - The updates never stop
    Quote from pashikcraft

    I'm currently using the (almost) recent port of PowerConverters to 1.6.2 by "the guy with 3 numbers" (sorry, I can't remember numbers) with IC2 experimental - newest build. I haven't tried PowerConverters yet, but I'll try (later). Disclaimer: I usually forget to do something, so...


    Where can I find that build, pashikcraft? Can you provide a link?
    Quote from BevoLJ

    That is just people spreading false rumors and is absolutely not true.


    I'll take your word for it, good sir. :P
    Posted in: Minecraft Mods
  • 0

    posted a message on Mutant Creatures - Spider Pig, Spider Pig [v1.4.9]
    Hey Hippomaster,

    It's great to see you've updated the mod, and the new Mutant Skeleton is looking really neat. However, I am still seeing server-side crashes when I try to run this mod. Here are two error reports, one from my usual modded server and one with only MutantCreatures 1.4.1 and AnimationAPI 1.1.1 running on it, respectively (though it seems to be the same error in both cases). I am using Forge .844 with Minecraft 1.6.2. Everything seems to run without problems clientside.



    ---- Minecraft Crash Report ----
    // Would you like a cupcake?

    Time: 9/14/13 1:11 PM
    Description: Exception in server tick loop

    cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at cpw.mods.fml.common.LoadController.transition(LoadController.java:149)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:697)
    at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:107)
    at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:355)
    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:141)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:443)
    at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:582)
    Caused by: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at thehippomaster.MutantCreatures.EndersoulHand.<clinit>(EndersoulHand.java:212)
    at thehippomaster.MutantCreatures.MutantCreatures.init(MutantCreatures.java:96)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:696)
    ... 5 more
    Caused by: java.lang.ClassNotFoundException: thehippomaster.MutantCreatures.client.ModelEnderHand
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:179)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 33 more
    Caused by: java.lang.RuntimeException: Attempted to load class thehippomaster/MutantCreatures/client/ModelEnderHand for invalid side SERVER
    at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50)
    at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:267)
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:165)
    ... 35 more




    ---- Minecraft Crash Report ----
    // Don't do that.

    Time: 9/14/13 1:20 PM
    Description: Exception in server tick loop

    cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at cpw.mods.fml.common.LoadController.transition(LoadController.java:149)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:697)
    at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:107)
    at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:355)
    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:141)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:443)
    at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:582)
    Caused by: java.lang.NoClassDefFoundError: thehippomaster/MutantCreatures/client/ModelEnderHand
    at thehippomaster.MutantCreatures.EndersoulHand.<clinit>(EndersoulHand.java:212)
    at thehippomaster.MutantCreatures.MutantCreatures.init(MutantCreatures.java:96)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
    at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
    at com.google.common.eventbus.EventBus.post(EventBus.java:267)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:696)
    ... 5 more
    Caused by: java.lang.ClassNotFoundException: thehippomaster.MutantCreatures.client.ModelEnderHand
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:179)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 34 more
    Caused by: java.lang.RuntimeException: Attempted to load class thehippomaster/MutantCreatures/client/ModelEnderHand for invalid side SERVER
    at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50)
    at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:267)
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:165)
    ... 36 more


    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------

    -- System Details --
    Details:
    Minecraft Version: 1.6.2
    Operating System: Windows 7 (amd64) version 6.1
    Java Version: 1.7.0_25, Oracle Corporation
    Java VM Version: Java HotSpot™ 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 411964176 bytes (392 MB) / 456196096 bytes (435 MB) up to 3797286912 bytes (3621 MB)
    JVM Flags: 0 total;
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    Suspicious classes: FML and Forge are installed
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP v8.04 FML v6.2.57.844 Minecraft Forge 9.10.0.844 5 mods loaded, 5 mods active
    mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized
    FML{6.2.57.844} [Forge Mod Loader] (minecraftforge-universal-1.6.2-9.10.0.844.jar) Unloaded->Constructed->Pre-initialized->Initialized
    Forge{9.10.0.844} [Minecraft Forge] (minecraftforge-universal-1.6.2-9.10.0.844.jar) Unloaded->Constructed->Pre-initialized->Initialized
    AnimationAPI{1.1.1} [AnimationAPI] (AnimationAPI v1.1.1 mc1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
    MutantCreatures{1.4.1} [Mutant Creatures] (Mutant_Creatures_v1.4.1_mc1.6.2.zip) Unloaded->Constructed->Pre-initialized->Errored
    Profiler Position: N/A (disabled)
    Is Modded: Definitely; Server brand changed to 'fml,forge'
    Type: Dedicated Server (map_server.txt)


    Hopefully this issue isn't too difficult to fix. Thanks again for the fun mod!
    Posted in: Minecraft Mods
  • 0

    posted a message on [1.5.1/1.5.2] PowerCrystals' mods - The updates never stop
    Quote from AlmostLuckyDucky

    If you read back a few pages you will see that the rumor is Power Crystals himself actually died a few weeks ago


    Man, seriously? I really hope that isn't true. Dunno if that's just the rumor mill grinding away, but I hope you're okay regardless, PowerCrystals. :(
    Posted in: Minecraft Mods
  • 0

    posted a message on [1.5.1/1.5.2] PowerCrystals' mods - The updates never stop
    Natura is quite a nice addition to Minecraft all 'round, and in particular, it adds some nice additional flora to the Nether. One idea for you.
    Posted in: Minecraft Mods
  • 0

    posted a message on Thaumcraft 3.0.5i (Outdated)
    Quote from Farproc

    Why the chance to break? To the OCD minmaxer in me, that just means that I *must* plan ahead such that I never get exposed to that chance of loss. As thats inefficient. And, frankly, thats why I uninstalled "Modular Power Suits" in my tech game as it 'broke' batteries when they were removed[...]


    You know MPS has a config option to disable the salvage loss chance, right? Because there is one.


    Azanor, you've not seen me before and I'm fairly new to Thaumcraft myself, so hopefully you don't mind me chiming in out of the blue; but I think I second Farproc's thoughts here to some extent. At the very least, giving the player the option to disable that risk-based mechanic would probably be appreciated by myself and others.

    In my case, I probably would be inclined to try and avoid the problem by just making new golems and new components for them, and keeping any flawed or inferior ones on standby as spares, rather than destroying them outright for their components (when I know I may lose those components anyway). More generally, I think I've found that games which turn experimentation into a kind of resource-based gambling tend to just make players act uncomfortably conservative, or avoid the risk-based mechanics entirely.

    As a comparison, if I were trying to make a complex build in RedPower, but there was a 25% chance of losing any given part when I break it, that kind of tinkering would become very frustrating very quickly.

    And another example; how would players react if using any of the wand foci had a 1% chance of destroying them? They'd probably just start worrying about whether it'll break, and wouldn't have as much fun throwing lightning and ice chunks around, would be my expectation.

    On the other hand, having some amount of risk may appeal to others, and it can be a means of (negatively) encouraging players to explore and harvest more materials. And some people may enjoy the risk mechanic for their own reasons. Again, a disabling config option lets people choose how they want to play, so it seems like a nice solution all around.


    If you really want to discourage players from making and breaking golems willy-nilly (I assume that's why you added this mechanic in the first place), a better solution might work something like this:

    - Upon breaking a golem, there is a chance that any components are "dimmed" or "cracked", either reducing or canceling their usefulness. So you give a golem a fire crystal or such, and break it, and you get a cracked fire crystal back.

    - The player can then use some process to "recharge" or otherwise fix them up. For instance, the cracked fire crystal could be infused with more magic from a wand, using the current Thaumcraft infusion table(?) with the wand slot. Or they could dump the cracked crystal in the crucible with one or more other aspects, again fixing/recharging it.

    - This gets you back a fixed, once-again-useful fire crystal that can be applied to a golem again as normal.

    ...In short, something that doesn't destroy the original object/resources, and doesn't cost a lot to fix (uses cheaper items for repairs, or uses renewable magic aspect reserves from a wand), but still lets players muck with golems with a known risk of inconvenience or additional steps.


    Anyway, there's my two cents. I'm very much looking forward to playing around with the mod once it's released. I'm excited by the new Taint revival, the wands look quite fun, and I'm curious to see what else the mod has to offer. :)
    Posted in: Minecraft Mods
  • To post a comment, please .