Difference between revisions of "Compatibility"

From Galacticraft Wiki
Jump to: navigation, search
Line 78: Line 78:
 
* Galacticraft 3.0.11.306 (and later versions) have dual support for '''Mekanism v.8 and Mekanism v.7'''.
 
* Galacticraft 3.0.11.306 (and later versions) have dual support for '''Mekanism v.8 and Mekanism v.7'''.
  
* Galacticraft 3.0.10.300 (and later versions) have full support for '''Mekanism v.8'''.  You should '''not''' use Mekanism v.7 with Galacticraft 3.0.10 - for now keep to older versions of Galacticraft if you want to stay with Mekanism v.7.
+
* Galacticraft 3.0.10.300 (and other 3.0.10 versions) have support for '''Mekanism v.8''' only.  You should '''not''' use Mekanism v.7 with Galacticraft 3.0.10.
  
* Galacticraft 3.0.9 (and earlier versions) have full support for '''Mekanism v.7'''.  But Mekanism v.8 should not be used - v.8 gas systems (for example, Pressurised Tubes) will crash if used with Galacticraft 3.0.9 or earlier.  If you want to use Mekanism v.8, you must update Galacticraft.
+
* Galacticraft 3.0.9 (and earlier versions) have support for '''Mekanism v.7''' only.  Mekanism v.8 should not be used with these Galacticraft versions - v.8 gas systems (for example, Pressurised Tubes) will crash if used with Galacticraft 3.0.9 or earlier.  If you want to use Mekanism v.8, you must update Galacticraft.
 
{{Listend}}
 
{{Listend}}
  

Revision as of 19:04, 16 April 2015

This information is for Galacticraft 3. First off, you really should update to the latest version - it will have the latest compatibility fixes. Some people do not seem to understand what latest version means. It means the one in red at the top of the Downloads page.

For Galacticraft 2 compatibility information, see forum thread

Galacticraft 3

Galacticraft 3 is a dual version for both Minecraft 1.7.2 and Minecraft 1.7.10.

For Minecraft 1.7.2 use Forge version 1147 (Latest), for Minecraft 1.7.10 use Forge version 1204 or later - either Latest or Recommended versions will be fine. (If playing on a server make sure all player's Forge versions match the server!)

This topic will cover any known incompatibilities and what you can do about them. This topic will be updated when new issues come to light.

As a general rule, you should be using the latest version of Galacticraft. Some people don't seem to understand what latest version means. It means the one in red at the top of the list on the downloads page. The latest version will often include compatibility fixes with other mods which have come to light after 'stable' versions of Galacticraft have been released - so the latest version is more stable than the 'stable' version.

If using Galacticraft with other mods or in modpacks, it is also strongly recommended to read Config#World_Generation.

General compatibility notes

Any other mod with 'Fake Player' detection

A few mods detect and block actions by 'fake players'. Robots, golems, and some other machines which can mine or harvest like players can, are examples of fake players. Fake player detection can get messed up by Galacticraft (because the regular player is replaced by a Galacticraft player with extra inventory slots, oxygen gear, etc) so that the other mod might block action by real players as well. Some mods - examples: Extra Utilities, Blood Magic - have added extra code for full Galacticraft compatibility, which we appreciate. (If you are having problems with those two, check you are using really latest versions.)

We are not aware of any other mods with current issues, but if it happens, as a workaround, most other mods should work 100% OK with Galacticraft if you have the PlayerAPI mod installed - so just place PlayerAPI-1.7.10-1.0.jar in your /mods folder. (Download link for 1.7.10)

Note: if playing on a server, PlayerAPI will need to be installed on both client and server.

Any other mods with energy and pipe connections

As of version 3.0.6.240, Galacticraft 3 has full power compatibility with:

  • Mekanism
  • IndustrialCraft 2
  • BuildCraft
  • Thermal Expansion​
  • EnderIO
  • any mod using RF power

That should also give compatibility with most / all mods. (Except GregTech, latest versions of GregTech have deliberately chosen to break power compatibility with other mods.) Any power compatibility issues, please let the developers know via the Github issues list.

For information on power conversion ratios between mods, and how you can control whether conversion has losses or is loss-free, see Energy.

Fluid pipes from all mods should work with Galacticraft liquids. That does not mean you could use fluid containers from other mods in GC machines, some of the GC machines will take canisters only.

If you have wire or pipe connection issues with any of these mods (and it's not already listed in the Known Issues, link above) please do let us know.

Code in other mods which looks for 'air' blocks

A few mods are coded to look only for vanilla air blocks when they are looking for space for something (for example, looking if there is enough room to build a multiblock structure). That is outdated coding. It will cause those mods to fail in some places with Galacticraft - for example in a sealed space base. The other mods should update their code to use Block.isAir() or World.isAirBlock() for the air checks. The Bukkit teleportation plugin, Essentials, has the same problem - it won't let you teleport into a sealed space.

If you have the Factorization mod installed, it has a nice feature called [AirInspector] which checks the code of all mods and tells you - in the logs - if a mod has this air block problem. It's then a question of showing those logs to the other mod authors and asking them to fix it.

Sealing blocks from other mods

For sealers to work correctly, you might have to set the glass blocks from other mods - and any other special blocks which must be sealed on all 6 sides in Galacticraft core config. Read Sealable Block IDs for full instructions.

Glass is a special block because you can't place a torch on it. So think about anything else which you can't place a torch on...

You do not need to set regular solid blocks as sealable (e.g. ore blocks or machine blocks), Galacticraft already knows those are sealable. Galacticraft also understands about blocks which are solid on one side only, for example Facades in Forge Microblocks.

You cannot set leaves, or any block made out of cloth, gravel or sponge materials, as sealable - air goes through these blocks. This includes vanilla wool blocks and mod blocks made out of wool or cotton etc.

Note: if playing on a server, this is a server-only setting.

Ores from other mods not generating on planets

This is normal, Galacticraft 3 blocks other mods from generating ores on the Moon and other planets.

There is a config setting which can enable the oregen from other mods, but it has problems:

  • other mods will then generate all their ores, treating Moon Rock and Mars Stone as if they were plain stone which can make things look untidy underground
  • other mods will also try to generate their other features and structures on the Moon, for example Natura clouds and flowers, IC2 rubber trees, Tinker's Construct slime islands, and many others; these are usually unwanted
  • there can be 'Already Decorating!' crashes which are caused by rare bugs in the other mods' code (maybe they weren't expecting to be generating on the Moon?)

So we generally advise you not to enable that config setting. Instead, Galacticraft 3 offers a feature where Galacticraft will add other mods ores at the same time when it is generating Galacticraft's own ores on the Moon and Mars. You have to specify in Galacticraft's config the block IDs of the ores to generate, and how rare it is etc. Full instructions on this are here.

(Alternatively, since version 3.0.6.239 you can use CoFHCore custom oregen for similar control over this process, though that's a little more complex: link here.)

Note: if playing on a server, this is a server-only setting.

Notes on some specific mods (fixable issues)

Mekanism

Galacticraft generally pairs very well with Mekanism. Note that Mekanism has recently (as of March 2015) been updated from v.7 to v.8. In Minecraft 1.7.10 versions:

  • Galacticraft 3.0.11.306 (and later versions) have dual support for Mekanism v.8 and Mekanism v.7.
  • Galacticraft 3.0.10.300 (and other 3.0.10 versions) have support for Mekanism v.8 only. You should not use Mekanism v.7 with Galacticraft 3.0.10.
  • Galacticraft 3.0.9 (and earlier versions) have support for Mekanism v.7 only. Mekanism v.8 should not be used with these Galacticraft versions - v.8 gas systems (for example, Pressurised Tubes) will crash if used with Galacticraft 3.0.9 or earlier. If you want to use Mekanism v.8, you must update Galacticraft.

EnviroMine

If EnviroMine's "food rot" feature is enabled, please be sure to be using Galacticraft version 3.0.6.249 or later. (With earlier GC versions, there can be crashes when rockets are placed or when traveling to any planet or moon and spawning a lander.)

Smart Moving

All recent GC3 builds (since 3.0.3.201) are fully compatible with Smart Moving and other mods which use the Player API. (If you have minor rendering issues, e.g. Galacticraft parachute strings not rendering properly, these are fixable by installing RenderAPI as well.) The following is tested as working 100%:

  • Galacticraft 3.0.11.306
  • PlayerAPI-1.7.10-1.2
  • SmartMoving-1.7.10-15.3
  • SmartCore-1.7.10-1.0
  • SmartRender-1.7.10-2.1
  • RenderPlayerAPI-1.7.10-1.3
  • RenderPlayerAPIEnhancer-1.7.10-1.3

RenderDecorator and VoxelPlayer

Like other mods that change or affect the player model and its animations, RenderDecorator and VoxelPlayer can break some Galacticraft animations (e.g. holding rocket, parachute descending etc). It can be fixed by installing Render Player API. Download link for 1.7.10.

Animated Player

It's the same story for Animated Player. Install PlayerAPI (Download link for 1.7.10) and Render Player API (Download link for 1.7.10) and things should be OK. (Specifically, Animated Player 1.5.0 with Animation API 1.2.2 has been reported to be compatible with Galacticraft if you have Player API 1.4 and Render Player API 1.2 installed.)

Mariculture

The recipe clash between GC canisters and Mariculture vats can be fixed by a setting in Galacticraft core config which allows an alternative recipe for canisters.

Note also that Mariculture disables other mods' smelting recipes for aluminum ore, so you won't be able to smelt Galacticraft Aluminum Ore at all, if Mariculture is installed.

If combining Mariculture with GregTech5, it's advisable to set Mariculture config:

Biome Top Block Replacements > Enable = false

(otherwise it can cause issues when Galacticraft is generating other planets). More details on this from Mariculture developer joshiejack.

GregTech

In recent GregTech builds the power systems are not compatible with IC2 or any other mod, including Galacticraft.

Galacticraft's feature allowing other mods oregen on planets will not work to generate GregTech ores on Galacticraft planets. It's because GregTech uses a non-standard, extra-complicated way of identifying ore blocks in the world. Fortunately there is a third-party plugin for GregTech, GalactiGreg by BloodAsp, which can fix that for you. People also give some tips there on Galacticraft sealer config settings when playing with GregTech.

Tinker's Construct

Full compatibility. Remember to set Clear Glass as a Sealable Block ID in Galacticraft core config, if you want to build space bases out of Clear Glass.

OreSpawn

This is a mod which, with all its sub-mods (eg. Girlfriends), adds a huge number of new mobs to the game. To avoid mob entity ID conflicts with Galacticraft, please be sure to be using Galacticraft version 3.0.6.245 or later.

(In earlier Galacticraft versions you can change entity ID settings in Galacticraft's core.conf and mars.conf. Normally it's only the mob entity IDs which will need to be changed - so the four kinds of Evolved Mobs, and Slimeling and Sludgeling. Change them to higher numbers (between 175 and 255) until you find ones which work.)

Erebus

There is a biome ID overlap between Erebus and Galacticraft, both mods are trying to use biome IDs 102-105. This can cause weird issues with GC biomes sometimes generating in the Overworld, or occasionally crashes in Erebus (see here). To fix this, in Erebus config, change the biome IDs 102, 103, 104, 105. You can probably use 106, 107, 108, 110.

Alternatively, in recent Galacticraft versions you can change the Galacticraft biome base ID in configs. You would need to regenerate all your Galacticraft dimensions after changing this for it to take full effect (otherwise the space dimensions will be labelled as being Erebus biomes still).

Custom NPCs

(Small issue) There is a position clash with Custom NPCs 'Quests' buttons in the player inventory, but you can reach the Quests dialog by clicking on 'Factions' first, then 'Quests'. Link

Optifine

(Fixable issue) Optifine Standard and Ultra recent versions - for example Optifine_1.7.10_HD_U_B5 - make your Galacticraft oxygen helmet and tanks invisible and other issues. Optifine Lite does not have this problem. From Galacticraft version 3.0.8.260, players have been able to fix it by installing SmartRender from SmartMoving mod - you do not need to install all of SmartMoving mod. Download link The download is a zip file with SmartMoving and SmartRender - just copy SmartRender-1.7.10-2.1.jar to your mods folder. PlayerAPI and RenderPlayerAPI will also be needed for this to work.

(Fixable issue) The outdated version Optifine_1.7.10_HD_U_A4 used together with Forge versions after 1232 was reported to make some of the Galacticraft blocks invisible, it had the same problem with some blocks from other mods like Applied Energistics and Tinker's Construct. This can be fixed by updating Optifine, to version Optifine_1.7.10_HD_U_B5 or later.

(Small issue) There are a few very minor rendering issues with Optifine, for example in the mini rocket graphic seen in the HUD on the left when your rocket is in flight, normally the player's face should be seen inside the rocket but the face is missing if Optifine is installed. These are not currently fixable, but they are very minor problems.

Non-fixable issues

These will need to be fixed by the authors of the other mods.

More Player Models

We cannot offer compatibility with this mod, as it uses an approach which is not really compatible with other mods. You may have improved results if you install Player API and Render Player API, try it and see.

More Player Models has been reported to be crashing with Galacticraft here

Too Much Time

This mod's dimension handling will cause crashes whenever you travel to a Galacticraft dimension, so basically Galacticraft is unplayable if you have Too Much Time installed.

Shaders Mod

Karyonix GLSL Shaders Mod is currently unsupported; the sky will not look good on Galacticraft planets or space environments. Best would be if that mod can auto-disable itself in Galacticraft dimensions.

Minor or unconfirmed issues

Twilight Forest

(Small issue) A rare issue with the Twilight Forest Scepter item has been reported, causing blocks to be drawn darker than normal in Space Station dimensions. Link

Adding or removing Buildcraft to an existing world

Installing the Buildcraft mod after you already created a world with Galacticraft installed is not advisable in Galacticraft version 3.0.8.264 or earlier. (It's never a good idea to change mods which affect world generation, after you created the world already.)

If you do add Buildcraft to an existing world, in those older versions of Galacticraft, you will lose all the Galacticraft oil in the world (Forge will warn you and ask you if you want to continue). The reason this happens is that Buildcraft also generates Buildcraft oil in the world, and you cannot have 2 different fluid blocks both named "oil". If you add the Buildcraft mod after you already created a world then Galacticraft oil in existing chunks will be deleted and Buildcraft oil will only be generated in any newly generated chunks, so you may have to walk quite far to find some oil...

Newer versions of Galacticraft attempt to handle that in a smarter way. If you install Buildcraft in an existing world, the Galacticraft oil blocks (and any which you have in tanks) will be renamed to "oilgc". You can still use that oil with the Portable Oil Extractor and in a Galacticraft Refinery (from version 3.0.9.292). Buildcraft oil will also work just as well. Galacticraft Oil Canister will work normally. Older chunks will keep their Galacticraft oil reservoirs, newly generated chunks will have Buildcraft oil.

To be clear about this: there is no problem at all if you install Buildcraft and Galacticraft together before you create a world (that's the recommended approach) - in that situation, Buildcraft oil will generate in the world, Galacticraft underground oil reservoirs will also generate, and either type of oil can be used as oil in Galacticraft. Phew!

For more Buildcraft compatibility notes see Buildcraft.

Issues and bugs in other mods (and how to fix them!)

All of the issues described in this section are caused by other mods. The latest versions of Galacticraft include workarounds so that problems will not arise. With older versions of Galacticraft there may also be steps you can take to fix these issues yourself, see below.

Buildcraft API - outdated versions in other mods

Buildcraft somewhat unhelpfully changed the way it interfaces with other mods, after its original Minecraft 1.7.10 version was released. An "API" is a small slice of the mod which other mods can use for compatibility. Some other mods include the Buildcraft API in their .jar files (examples: Engineers Toolbox, Enhanced Portals, Forestry) - this is called "distributing" the API, it's not best practice but some mods do it anyway. Depending on version, some of those other mods distribute older versions of the Buildcraft API, some distribute newer versions.

Galacticraft does not distribute the Buildcraft API. Our mod is one of the smarter mods which does not distribute any API. Galacticraft will adapt itself to use whichever version of the Buildcraft API it finds, so our mod is compatible with old and new Buildcraft API.

If you have a modpack with 2 other mods which contain 2 different versions of the Buildcraft API then you may see a crash like this whenever placing down any Galacticraft machine:

java.lang.NoSuchMethodError: buildcraft.api.core.JavaTools.getAllFields(Ljava/lang/Class;)Ljava/util/List;
at buildcraft.api.mj.MjAPI.getMjBatteryField(MjAPI.java:196)

It's not a Galacticraft bug. You are seeing it with a Galacticraft machine only because 2 other mods installed 2 different copies of the Buildcraft API, which are interacting badly with each other. If it was not Galacticraft crashing here then most likely something else in your game would crash later when interacting with Buildcraft. If there's any fingers to point, it's partly the Buildcraft guys for updating the API mid-versions without preserving 100% backwards compatibility - that will always produce problems like this - and partly the modpack for not taking care not to mix mods with 2 different versions of the Buildcraft API.

Galacticraft version 3.0.8.260 and later will auto-disable Buildcraft compatibility in this situation, with a warning message in the log linking to here. (This will prevent a crash from being triggered from Galacticraft machines but it will not actually fix the underlying problem with Buildcraft so you might still see problems with other mods interfacing with Buildcraft.)

If you want to fix the underlying issue and re-enable Buildcraft energy compatibility in Galacticraft, here are two steps for players (or server owners or modpack makers) to fix this:
1. update all mods in your pack to the latest (that should work if the mod with the old Buildcraft API is updated now)
2. search through all the .jar files in your modpack for the ones with a buildcraft folder - there must be at minimum 2 mods with this (maybe one of them is Buildcraft itself of course!) - and figure out which one is an old one which needs updating, or maybe delete the buildcraft folder from the .jar and resave the .jar (at your own risk, but it usually works out OK), or else you might have to uninstall it if there is no update.


Crashes on the Moon and how to fix (CoFHCore 'Flat Bedrock' feature)

The CofHCore 'Flat Bedrock' feature (which can be enabled in CofH configs) has a bug and in pre-latest versions of Galacticraft it could sometimes cause crashes during Galacticraft's world generation on the Moon.

Recent versions of Galacticraft, 3.0.9.296 or 297 or later, contain a workaround for the bug so you shouldn't be affected by it.

In older versions of Galacticraft, you can go into the CoFHWorld.cfg file and set the number of layers of bedrock to 1, that should always be ok. (In recent versions of CoFHCore the config file is CoFH/Core/Common.cfg.)

Note: if playing on a server, this is a server-only fix.

(For info: the bug is that if the bedrock layer is thicker than 1, CoFH replaces all blocks down there with bedrock before the chunk is fully generated. This causes problems if CoFHCore over-writes a block which has a TileEntity - mods should not change blocks with TileEntities before the chunk and its neighbours are fully generated, because over-writing a block with a TileEntity causes a block update on the neighbours which can mean the neighbouring chunk in turn has to be generated, potentially producing an infinite worldgen loop.)

RF API - other mods referencing outdated version

Similar to the Buildcraft problem, the RF API was also updated after its original Minecraft 1.7.10 release was already being used by several other mods, with the similar consequences: some of the other mods using RF API use the older version, and some use the newer. Some of the mods expecting the newer RF version will crash if only the older version is present.

For example, Mekanism (versions 7.1.1 or 7.1.2) will crash like this if used alongside non-latest versions of RF mods:

java.lang.NoClassDefFoundError: cofh/api/energy/IEnergyProvider
	at mekanism.common.util.CableUtils.isOutputter(CableUtils.java:156)

The crash can be triggered by connecting a Mekanism Universal Cable to a machine from another mod - including Galacticraft machines, prior to Galacticraft version 3.0.8.258.

The solution is to update all mods which have the RF API (for example MinefactoryReloaded) to the latest version.

DragonAPI

If you're reading this section of this page, it's probably because you are still using DragonAPI 1.7.10 version 2 which is not the latest version. The issue here has been fixed in DragonAPI 1.7.10 version 3 and later, and players should update to that.

More info: in recent Galacticraft versions DragonAPI v2 will be detected during startup and you will be referred to this page. In earlier Galacticraft versions (prior to 3.0.6.234), the game would crash when you take a rocket, with this in the crash report:

java.lang.NoSuchMethodError: micdoodle8.mods.galacticraft.api.prefab.world.gen.WorldProviderSpace.getCelestialBody

The issue was because of DragonAPI v2 force-loading a piece of outdated Galacticraft code in advance of Galacticraft itself. As mentioned above, this has long since been fixed in DragonAPI v3, so if you're using v3 you should be fine. But if for some reason you have to use DragonAPI v2 (because of a modpack which has not updated), then you can fix the issue yourself by a manual edit of the DragonAPI.jar.

Steps:

  • Find the DragonAPI 1.7.10 V2.jar file in your .minecraft/mods folder
  • Open the .jar using any program which can create a Zip file (for example, 7Zip is free and open source)
  • Delete the folder micdoodle8

Note: if playing on a server, it will need to be fixed on both client and server.

For Linux servers running OpenJDK

Several Linux distributions include OpenJDK for running Java code, instead of the Java Runtime (JRE) from Sun / Oracle. Unfortunately OpenJDK currently has a bug in its JPEG library. Galacticraft makes use of the standard JPEG library to encode map images sent from the server to the client (e.g. when you fly in a rocket or uses a Display Screen). So on a server running on Linux using OpenJDK, early versions of Galacticraft 3 will crash at that point, like this:

cpw.mods.fml.common.LoaderException: java.lang.UnsatisfiedLinkError: com.sun.imageio.plugins.jpeg.JPEGImageWriter.initWriterIDs(Ljava/lang/Class;Ljava/lang/Class;)V

Currently the only workaround is for the server to use the Sun / Oracle JRE instead. [Further discussion of this issue]

Newer versions of Galacticraft (since 3.0.9) do not crash but instead disable the map image transmission functionality on the server, with a message in the startup log highlighting the OpenJDK issue.


Impt.png
Unless stated otherwise, all information contained on this wiki should be considered outdated and might not reflect in-game experiences