Jump to content

[1.7.10] How to include and reference text file?


Recommended Posts

Posted

Hi,

 

I'd like to include a plain text file in my forge mod.  I'm guessing it goes somewhere in the assets folder, but I do not know where to place it or how to find it once the mod is running.

 

Any pointers?

 

Thanks!

Posted

I'm a little out of my water, being new to Forge Mod development.  I'd like for each user to have their own config file, which if it doesn't exist, I want to copy it out of the mod and into the user's config file space.  It's a non-standard config file, so I can't use the easier read/write config file methods. ... Dumb question, where can I find more info on MyMod.class.getResourceAsStream in the forge javadocs?  What class does that belong to? ... Thanks!

Posted
Class.class.getResourceAsStream

isn't related to Forge anyway. It's plain Java, so look up on that.

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Posted

Here's a class I use to unpack some custom COG files, which is based off how COG unpacks its config files (COG is also open source).

 

package com.draco18s.hardlib;

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import cpw.mods.fml.common.Loader;

public class CogConfig {
private static List<String> extraModules = new ArrayList<String>();

public static void addCogModule(String name) {
	extraModules.add(name);
}

public static void unpackConfigs() {
	File configPath = getConfigDir();
        	
        	File defaultModulesDir = new File(modulesDir, "custom"); //TODO change this if you don't need a sub-folder or want a different name
        	if (!defaultModulesDir.exists()) {
        		defaultModulesDir.mkdir();
        	}
        
        	for (String module : extraModules) {
        		File writeFile = new File(defaultModulesDir, module);
        		if(!writeFile.exists()) {
        			unpackConfigFile(module, writeFile);
        		}
        	}
}

private static boolean unpackConfigFile(String configName, File destination) {
    	String resourceName = "cog_config/" + configName; //TODO: change this to point to your resource location, which is inside "src/main/resources", eg. this currently points to "src/main/resources/cog_config"
        try {
    	    InputStream ex = HardLib.class.getClassLoader().getResourceAsStream(resourceName);
            BufferedOutputStream streamOut = new BufferedOutputStream(new FileOutputStream(destination));
            byte[] buffer = new byte[1024];
            boolean len = false;
            int len1;

            while ((len1 = ex.read(buffer)) >= 0)
            {
                streamOut.write(buffer, 0, len1);
            }

            ex.close();
            streamOut.close();
            return true;
        }
        catch (Exception var6) {
            throw new RuntimeException("Failed to unpack resource \'" + resourceName + "\'", var6);
        }
    }

private static File getConfigDir() {
    		return new File(Loader.instance().getConfigDir(), "CustomOreGen");//TODO: change this to point to you desired config location
    	}
}

 

It's flexible enough that you should be able to alter it to handle whatever file or files you want.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted
  On 12/12/2014 at 5:45 PM, diesieben07 said:

Ouch at that manual copying :P Why do people always reinvent the wheel?

 

Likely because we don't know the wheel exists. :D

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Join the conversation

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

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

ร—   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

ร—   Your link has been automatically embedded.   Display as a link instead

ร—   Your previous content has been restored.   Clear editor

ร—   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Verified users can now unlock a $100 OFF Temu Coupon Code using the verified promo code [ALF401700]. This Temu $100 OFF code works for both new and existing customers and can be used to redeem up to 50% off your next order. Our exclusive Temu coupon code [ALF401700] delivers a flat $100 OFF on top of existing deals. First-time customers using code ALF401700 can save an extra 100% off select items. Returning users also qualify for an automatic $100 OFF discount just by applying this code at checkout. But waitโ€”thereโ€™s more. With our Temu coupon codes for 2025, users can score up to 90% OFF on clearance items. Whether youโ€™re shopping in the USA, Canada, UK, or elsewhere, Temu promo code ALF401700 unlocks extra discounts tailored to your account. Some users are saving 100% on items using this 2025 Temu promo code. ๐Ÿ”ฅ Temu Coupon Highlights Using Code [ALF401700]: Temu new user code โ€“ ALF401700: Save 50% off your first order + $100 OFF. Temu promo for existing customers โ€“ ALF401700: Enjoy flat $100 OFF instantly. Global availability: Works in the USA, UK, Canada, Germany, France, Japan, Chile, Colombia, Malaysia, Mexico, South Korea, Philippines, Saudi Arabia, Qatar, Pakistan, and more. Top 2025 Coupon Deal: Get $200 OFF plus 100% bonus discounts using code ALF401700. Top-Ranked Temu Deals for 2025 (Coupon Code: ALF401700): โœ… Temu $100 OFF Memorial Day Sale โ€” Use ALF401700 โœ… Temu First Order Coupon โ€” Use ALF401700 for 50% + $100 OFF โœ… Temu USA Coupon Code โ€” Save $100 instantly with ALF401700 โœ… Temu Japan, Germany, Chile Codes โ€” All support ALF401700 โœ… Temu Reddit Discount โ€“ $100 OFF: Valid for both new and old users โœ… Temu Coupon Bundle 2025 โ€” $100 OFF + up to 50% slash โœ… 100% OFF Free Gift Code โ€” Use ALF401700, no invite needed โœ… Temu Sign-Up Bonus Promo โ€” Get a welcome $100 OFF instantly โœ… Free Temu Code for New Users โ€” Use ALF401700, no referral required  Temu Clearance Codes 2025 โ€” Use ALF401700 for 85โ€“100% discounts Why ALF401700 is the Best Temu Code in 2025 Using Temu code ALF401700 is your ticket to massive savings, free shipping, first-order discounts, and stackable coupon bundles. Whether you're browsing electronics, fashion, home goods, or beauty products, this verified Temu discount code offers real savingsโ€”up to 90% OFF + $100 OFF on qualified orders. ๐Ÿ’ก Pro Tip: Apply ALF401700 during checkout in the Temu app or website to activate your instant $100 discount, even if youโ€™re not a new user. Temu $100 OFF Code by Country (All Use ALF401700): ๐Ÿ‡บ๐Ÿ‡ธ Temu USA โ€“ ALF401700 ๐Ÿ‡ฏ๐Ÿ‡ต Temu Japan โ€“ ALF401700 ๐Ÿ‡ฒ๐Ÿ‡ฝ Temu Mexico โ€“ ALF401700 ๐Ÿ‡จ๐Ÿ‡ฑ Temu Chile โ€“ ALF401700 ๐Ÿ‡จ๐Ÿ‡ด Temu Colombia โ€“ ALF401700 ๐Ÿ‡ฒ๐Ÿ‡พ Temu Malaysia โ€“ ALF401700 ๐Ÿ‡ต๐Ÿ‡ญ Temu Philippines โ€“ ALF401700 ๐Ÿ‡ฐ๐Ÿ‡ท Temu Korea โ€“ ALF401700 ๐Ÿ‡ต๐Ÿ‡ฐ Temu Pakistan โ€“ ALF401700 ๐Ÿ‡ซ๐Ÿ‡ฎ Temu Finland โ€“ ALF401700 ๐Ÿ‡ธ๐Ÿ‡ฆ Temu Saudi Arabia โ€“ ALF401700 ๐Ÿ‡ถ๐Ÿ‡ฆ Temu Qatar โ€“ ALF401700 ๐Ÿ‡ซ๐Ÿ‡ท Temu France โ€“ ALF401700 ๐Ÿ‡ฉ๐Ÿ‡ช Temu Germany โ€“ ALF401700 ๐Ÿ‡ฎ๐Ÿ‡ฑ Temu Israel โ€“ ALF401700 Temu Coupon Code [ALF401700] Summary for SEO: Temu $100 OFF Code  Temu First Order Discount Code 2025  Temu Verified Promo Code ALF401700  Temu 50% OFF + $100 Bonus  Temu 100% OFF Code 2025  Temu App Promo ALF401700  Temu Working Discount Code 2025 
    • Hey there, nothing to do with the code, I am just suggesting you use Intelij IDEA. Trust me, it is the best.
    • Hey there, nothing to do with the code, I am just suggesting you use Intelij IDEA. Trust me, it is the best.
    • You can check the config of Geckolib and Mowzie's Mobs - maybe there is a way to disable some render features
    • You can use the .requires() function  the server also has a permission level of 4, which is the highest permission level.
  • Topics

ร—
ร—
  • Create New...

Important Information

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