Git Product home page Git Product logo

shanghaif / hbm-s-nuclear-tech-git Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hbmmods/hbm-s-nuclear-tech-git

0.0 0.0 0.0 146.72 MB

A flaming wreck of a minecraft mod about nuclear technology that is somehow still in development.

Home Page: https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT/blob/ea8dcd9508a950ec51bb6399e3887a8f0e253858/src/main/resources/assets/hbm/lang/zh_CN.lang#L1548

License: GNU General Public License v3.0

Java 99.99% GLSL 0.01%

hbm-s-nuclear-tech-git's Introduction

HBM's Nuclear Tech Mod for Minecraft 1.7.10

NTM on Modrinth

NTM on CurseForge

This is for 1.7.10! For 1.12, check out these projects:

For 1.18, try Martin's remake: https://github.com/MartinTheDragon/Nuclear-Tech-Mod-Remake/releases

Downloading pre-compiled versions from GitHub

Simply navigate to "Releases" on the right side of the page, download links for the compiled JAR as well as the corresponding source code are under the "Assets" category below the changelog. Make sure to review all changelogs when updating!

Building from source

Tired of waiting until the next version comes out? Here is a tutorial on how to compile the very newest version yourself: Please note that these installation instructions are assuming you're running Microsoft Windows operating system. Linux users should know what to do by looking at the same guide.

  1. Make sure you have JDK8 installed. If not, download it from adoptium.net
  2. If you don't have git installed, download&install it from here.
  3. Open up "Git Bash":
    • Press Windows Button, type "Git Bash" and press ENTER
  4. Enter the directory where you would like the sources to be (advanced users can use any directory)
    cd $HOME/Downloads
  1. Download the source code:
    git clone https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
  1. Enter the source code directory
    cd Hbm-s-Nuclear-Tech-GIT
  1. Build the mod
    ./gradlew build
  1. Locate the mod file.
    1. Open up your file explorer.
    2. Navigate to the location where you downloaded the sources.
      • If you exactly followed step 1, it should be C:/Users/%USER%/Downloads.
    3. Enter the downloaded source tree.
    4. Navigate to build/libs.
    5. Grab the "HBM-NTM-.jar" one.
      • This is your mod file. You can install it like any other mod by putting it into your mods directory.

Contributing

If you want to make some changes to the mod, follow this guide:

  1. Follow steps 1-2 from Building from source section
  2. Create a directory where the repository will reside, using a name that is not "Hbm-s-Nuclear-Tech-GIT"
  3. Download the forge src from here and extract it into the directory.
  4. Download the source code:
  • Using Git Bash, enter wherever your directory is located:
    cd $HOME/Downloads
  • Download the source code:
    git clone https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
  • Move or copy every file within the new folder into your directory, making sure to overwrite any files.
  • Feel free to delete the remaining folder and rename your directory (such as "Hbm-s-Nuclear-Tech-GIT")
  1. Enter the source directory
    cd Hbm-s-Nuclear-Tech-GIT
  1. Setup forge decompilation workspace
    ./gradlew setupDecompWorkspace

Necessary for Eclipse users

  1. Generate eclipse files
    ./gradlew eclipse
  1. Switch to the eclipse folder inside your directory as a workspace.
  2. If necessary, make sure that Eclipse is using the JDK8.
    • On Linux, enter Windows>Preferences>Java>Installed JREs.
      • Click search to navigate to /usr/lib/jvm and open it. Select the Java 8 JDK (e.g., java-8-openjdk).
      • Afterwards, enter Execution Environment, select JavaSE-1.8, and select the jre listed as a [perfect match]
    • On Windows, you may need to set your JAVA_HOME.
      • Search for Environment Variables and click Edit the System Environment Variables.
      • Click Environment Variables. Click new under System Variables.
      • Enter JAVA_HOME under Variable Name and enter the path to your JDK 8 under Variable Value (e.g., C:\Program-Files\Java\jdk1.8.0_102).
      • In Eclipse, now enter Windows>Preferences>Java>Installed JREs.
      • Click Add Standard VM; in the JRE home, navigate to the directory where the JDK is installed, then click finish and select it.
  3. Code!

Compatibility notice

NTM has certain behaviors intended to fix vanilla code or to increase compatibility in certain cases where it otherwise would not be possible. These behaviors have the potential of not playing well with other mods, and while no such cases are currently known, here's a list of them.

Skybox chainloader

NTM adds a few small things to the skybox using a custom skybox renderer. Minecraft can only have a single skybox renderer loaded, so setting the skybox to the NTM custom one would break compatibility with other mods' skyboxes. To mend this, NTM employs a chainloader. This chainloader will detect if a different skybox is loaded, save a reference to that skybox and then use NTM's skybox, which when used will also make sure to run the previous modded skybox renderer. In the event that NTM's skybox were to cause trouble, it can be disabled with the config option 1.31_enableSkyboxes.

Custom world provider

A world provider is a piece of code that minecraft can load to determine certain aspects of how the world should be handled, like light levels, sky color, day/night cycle, etc. In order for the Tom impact effects to work, NTM employs such a world provider, although this is known to cause issues with Hardcore Darkness. The world provider can be disabled with the config option 1.32_enableImpactWorldProvider.

Stat re-registering

An often overlooked aspect of Minecraft is its stats, the game keeps track of how many of an item were crafted, placed, broken, etc. By default, Minecraft can only handle vanilla items, modded items would not show up in the stats window. Forge does little to fix this, and since NTM has to keep track of certain things (such as the use of an acidizer for spawning Mask Man) it will run its own code which re-registers all stats for all modded items. In the event that re-registering causes issues, or another mod already does this better already, this behavior can be disabled with the config option 1.33_enableStatReRegistering.

Keybind overlap

An often annoying aspect of modded Minecraft is its keybinds. Even though multiple binds can be assigned the same key, all but one will show up as "conflicting" and only the non-conflicting one will work. Which one this is is usually arbitrary, and there is no reason to have such limitation. Often times keybinds are only applicable in certain scenarios, and a commonly found degree of overlap is within reason. Therefore, NTM will run its own key handling code which allows conflicting keybinds to work. If there should be any issues with this behavior, it can be disabled with the config option 1.34_enableKeybindOverlap.

License

This software is licensed under the GNU Lesser General Public License version 3. In short: This software is free, you may run the software freely, create modified versions, distribute this software and distribute modified versions, as long as the modified software too has a free software license (with an exception for linking to this software, as stated by the "Lesser" part of the LGPL, where this may not be required). You win this round, Stallman. The full license can be found in the LICENSE and LICENSE.LESSER files.

hbm-s-nuclear-tech-git's People

Contributors

7pheonix avatar adam29adam29 avatar ambersol13 avatar ballofenergy1 avatar burningwater202 avatar doctor17-git avatar earl0fpudding avatar enginecrafter77 avatar ginsway avatar grangerave avatar haru315 avatar hbmmods avatar maksymisio avatar martemen avatar martinthedragon avatar overminddl1 avatar pvndols avatar sdddddf80 avatar silly541 avatar syncinus avatar tehtemmie avatar toshayo avatar uffr avatar vaern avatar voxelstice avatar yeyuluo123 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.