Skip to content

Instantly share code, notes, and snippets.

@Iunius118
Iunius118 / get_structure_nbt_block_list.py
Last active Jun 30, 2021
Output the list of block IDs and quantities from a structure .nbt file.
View get_structure_nbt_block_list.py
import sys
# Requires Python-NBT
# pip install Python-NBT
import python_nbt.nbt as nbt
def main():
nbt_file = open_file()
block_list = count_blocks(nbt_file)
output_block_list(block_list)
View gdiff_patch.lua
-- lua gdiff_patch <old_file_path> <delta_path> <new_file_path>
-- for Lua 5.2
local args = { ... }
local function openFile( path, mode )
local file = io.open( path, mode )
if file ~= nil then
-- print( "open file (" .. mode .. "): " .. path)
@Iunius118
Iunius118 / block.properties
Last active May 11, 2020
Block ID mapping in OptiFine's block.properties
View block.properties
# Block ID mapping (and Block render layers)
# assets/<modid>/shaders/block.properties
# 注:
# ここで指定したID mappingは、あくまでも指定したブロックを特定のバニラブロックと同様にシェーディングするよう
# シェーダーパック側へ指示するためのものです。
# 実際どのようにシェーディングされるか(例:風に揺れる表現)は、使用するシェーダーパックに依存します。
# 参考:
# https://github.com/sp614x/optifine/blob/master/OptiFineDoc/doc/block.properties
@Iunius118
Iunius118 / ExampleMod.java
Created Oct 23, 2019
Testing OptiFine's Dynamic Lights in 1.14.4
View ExampleMod.java
package com.example.examplemod;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@Iunius118
Iunius118 / ExampleMod.java
Last active Jun 29, 2019
Forge 1.14.3-27.0.15 issue #5847
View ExampleMod.java
package com.example.examplemod;
import net.minecraft.client.renderer.model.IBakedModel;
import net.minecraft.client.renderer.model.IUnbakedModel;
import net.minecraft.client.renderer.model.ModelResourceLocation;
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.ModelBakeEvent;
import net.minecraftforge.client.model.BasicState;
import net.minecraftforge.client.model.ModelLoader;
View versioning_rule_of_my_mods.txt
自作modのバージョンについて
例: 1.13.2-2.0.0.0
[マイクラver.]-[メジャー].[マイナー].[リビジョン].[ビルド]
[メジャー]:ここが上がったらシステム的にも作者の気持ち的にも大きく変更されている
[マイナー]:ここが上がったらバージョンアップについて注意点あり。バージョンアップ前に更新の説明を読んで!
[リビジョン]:ここが上がったら新しい機能が追加されている(特に気にせずバージョンアップしてもOK)
[ビルド]:ここが上がったらバグ修正のみの更新
@Iunius118
Iunius118 / structure_template_tips.md
Last active Jun 26, 2018
Minecraft 1.12 modding: Template メモ [WIP]
View structure_template_tips.md

Minecraft 1.12 modding: Template メモ [WIP]

Modで構造物(structure)のNBTファイルを読み込んで、そのブロックやエンティティーをワールド内に設置するときのメモ。この文書はMinecraft 1.12 時点で書いたものだが、恐らく 1.9 以降で利用可能(未確認)。

1. NBTファイル

1-1. 構造物の作成とNBTファイルへの保存

構造物の作成とNBTファイルへの保存については、ストラクチャーブロックについて解説しているサイトを参照。

@Iunius118
Iunius118 / forge_obj_model_tips.md
Last active Aug 2, 2021
[Minecraft] Forge 1.9.4 / 1.12 OBJ model メモ
View forge_obj_model_tips.md

Minecraft Forge 1.9.4 / 1.12 OBJ model メモ

Minecraft Forge 1.9.4 / 1.12.x 環境でモデルとしてWavefront OBJファイルを使用するためのメモ。

Forge 1.9.4-12.17.0.1937での仕様を元にして、適宜Forge 1.12-14.21.0.2363での変更点を付記して解説する。なお、この文書中での1.12Forge build 2363以降を示し、それ以前は含まない。

1. OBJモデルのロード

1-1. ドメインの追加

@Iunius118
Iunius118 / bmp2img.lua
Last active Apr 21, 2017
Convert Windows bitmap image to plain text for Paintutils API of ComputerCraft.
View bmp2img.lua
-- bmp2img <sourcePath(bmp)> <outputPath> [<isMonochrome>]
-- Convert Windows bitmap image to plain text
-- for ComputerCraft 1.74 (Minecraft 1.7.10) or later
-- ver. 20170422
-- https://gist.github.com/Iunius118/9e75433298b512f8e5edc292859401e1
-- https://pastebin.com/Yy07Z5bg
-- by Iunius (@Iunius118)
local args = { ... }
@Iunius118
Iunius118 / gimp_autosave.py
Last active Aug 3, 2021
Auto save plug-in for GIMP [2.8, 2.10]
View gimp_autosave.py
#!/usr/bin/env python
# Original (by yahvuu): http://www.gimpusers.com/forums/gimp-developer/11718-autosave-plugin
import tempfile
import os
from time import *
from gimpfu import *
def autosave(image, layer):
# Backup interval in seconds (600 = 10 minutes)