Hi, I'd just like to start this thread off with that I am an experienced java developer with relevant real-world qualifications, but I am still learning how to code for Minecraft - so please no sarcastic 'learn java' posts like a lot of you seem to reply with.. It doesn't help for people googling why it's not working. I have looked at the bukkit docs and other threads with the same issue but none are working for me. I'm also not posting the real code as it's 3000+ lines over several classes and a private, custom plugin that I don't want shared. That includes PMs. The issue: I have several classes - let's say Main, ClassA, ClassB and ClassC. Main has the config code so they all have instances of Main to use getConfig(). This is fully initialised in all of the classes as 'plugin', so I can use plugin.getConfig() in all of them. I already checked and thoroughly tested this (for example, making a method in ClassA that runs a System.out.println with a config value, all three of the classes work with this) and this is not the cause of the NPE. What I'm trying to do is see if a section exists, returning true if it is and false if it isn't. However, no matter what, even if the section exists, it's returning null. Code: //This gives a NullPointerException if(plugin.getConfig().get("sec1.sec2."+sec3) != null) //This gives a NullPointerException if(plugin.getConfig().getString("sec1.sec2."+sec3) != null) //This gives a NullPointerException if(plugin.getConfig().contains("sec1.sec2."+sec3)) I'm not asking for the correct way to do this, I'm asking why it's returning null so I can figure it out on my own and will update the post when I've got it working so people searching online can actually find out how to fix this issue. It might be something stupid as I've been coding this plugin for weeks now and I wouldn't be surprised if it's something ridiculously easy that I've just forgotten by doing it for so long. Any help would be brilliant, Many thanks.