Skip to content

Instantly share code, notes, and snippets.

View Drullkus's full-sized avatar
🧮
Hacking Minecrafts

Drullkus

🧮
Hacking Minecrafts
  • Drullkus Industries
View GitHub Profile
[
"928350122843193385",
"1185047194261274665",
"956202276408688650",
"956104664821157918",
"1185047092478095443",
"1185046791826178099",
"1185047045413797898",
"928483283698851901",
"1185047444619284641",
@aamiaa
aamiaa / CompleteDiscordQuest.md
Last active May 11, 2024 04:04
Complete Recent Discord Quest

Complete Recent Discord Quest

Note

This no longer works in browser!

Note

This no longer works if you're alone in vc! Somebody else has to join you!

How to use this script:

  1. Accept the quest under User Settings -> Gift Inventory
@dogles
dogles / markovjr_tech_notes.md
Last active March 25, 2024 15:57
Markov Jr. Technical Notes

Introduction

Markov Jr. is an open source C# application that creates procedural content primarily via applying Markov rewrite rules to a 2D or 3D grid. A rewrite rule has an input and output pattern, which essentially specifies what pattern to look for in the existing grid, and what to replace it with.

For example, given a 2D grid, this would replace any white dot with a white cross:

***/*W*/*** :: *W*/WWW/*W*

The left hand side is the rule input, and the right hand side is the output. The / character is used to delimit rows, and space is used to delimit Z-layers (in 3D grids). The input rule above translates to the 2D pattern:

@SizableShrimp
SizableShrimp / README.md
Last active January 20, 2023 04:20
How to use the Game Test Framework on Forge

Game Test Framework on Forge

The Game Test Framework is a powerful tool provided by Mojang that is included with Minecraft in 1.17 and up. It allows you to declare game tests that can be run inside a Minecraft world and provide a success or fail state. Game tests are similar in concept to unit tests, but they allow you to interact with a running instance of Minecraft. This means you can test block interactions, entity interactions, item functionality, etc. Game tests use template structures to define the dimensions of the test and what blocks and entities will start in the test structure. This framework has useful applications for Continuous Integration (CI) and testing during development to ensure features are working as expected.

For a more in-depth explanation about the Game Test Framework itself and how Mojang uses it to test the base game, please see this video with contributions by Dinnerbone. This guide is tailored towards Forge modders by expla

@gigaherz
gigaherz / toolsystem.md
Last active September 1, 2023 19:05
Explanation of the new tool system

So... You have updated to latest forge and harvestTool, harvestLevel, ToolType, ... are all gone. AAA PANIC!

Here's how to fix it:

Blocks

First, Remove the harvestTool and harvestLevel calls from the block properties.

Then, add the blocks to the relevant tags. You can use datagen, or make the jsons yourself. Datagen is more future-proof.

@gigaherz
gigaherz / 00 Explanation.md
Last active April 16, 2024 09:52
Custom shader rendertype mini-howto example (forge 37.0.15+)

Making a custom render type with a custom shader requires a number of things to exist at once:

  1. A ShaderInstance which references your shader json. The RegisterShadersEvent lets you define a ShaderInstance, and has a callback for when the shader is fully loaded from disk.
  2. A ShaderStateShard with a supplier that returns the ShaderInstance. The supplier exists so that shaders can reload themselves when you change resourcepacks or do a F3+T reload.
  3. A RenderType which uses the ShaderStateShard as its shader state.
  4. A shader json, which declares the shader properties and points to the shader programs (vsh and fsh).
  5. A vertex shader program, which describes how the vertex data is transformed before passing into the rasterizer and being turned into pixels.
  6. A fragment shader program, which describes how the interpolated values from the vertices get turned into color values before being passed into the output blending stage.

Note: The vanilla logic does not normally allow namespaces in the shader

@T3sT3ro
T3sT3ro / renderdoc-how-to.md
Last active March 19, 2024 05:47
describes how to launch renderdoc with java gradle project on minecraft "Create" mod example

So you want to launch RenderDoc with Java, huh?

Here is a good resource to check out first

First of all, check what command is run when you in fact launch your app. For me (Create minecraft mod) this command was executed when I run runClient configuration (line breaks, tabs and backslashes added for readability):

Step 1. command for running minecraft with mods - generated by gradle

/home/tooster/.sdkman/candidates/java/14.0.1-open/bin/java
@CorgiTaco
CorgiTaco / BiomeDataGenerator.java
Last active July 30, 2020 02:13
Use this to generate biomes from code to json. Tested and used in 20w29a. Code is a bit sloppy but yeah :) PLEASE FOR THE LOVE OF GOD PUT THIS IN ITS OWN EMPTY FOLDER, IF YOU DON'T THE DIRECTORY ITS IN WILL GET THANOS SNAPPED. Here's why https://streamable.com/efrpiw
/*
MIT License
Copyright (c) 2020 Corgi Taco
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
@toka7290
toka7290 / material.txt
Last active February 8, 2024 20:57
Minecraft (Bedrock) 1.16.200.x~ entitiy material list
alpha_block
alpha_block_color
banner
banner_pole
beacon_beam
beacon_beam_transparent
charged_creeper //帯電クリーパー表面
conduit_wind
entity //ベース
entity_alphablend //半透明
@Sturmlilie
Sturmlilie / apitrace-tutorial.md
Last active April 4, 2024 17:09
Debugging OpenGL issues in Minecraft mods using apitrace

Apitrace tutorial

Debugging OpenGL issues in Minecraft mods using apitrace

In the transition of Minecraft version 1.14 to 1.15, Mojang introduced some sweeping changes to the way rendering is performed; while the internal code still relies on GL1-era immediate-mode, block and entity renderer classes now provide their vertices to a specific RenderLayer* which are later rendered in ordered batches.

These changes broke a majority of Minecraft mods; in the process of porting a mod to 1.15, I had to frequently rely on a tool called “apitrace”, and I thought a quick how-to might come in handy for others struggling with similar problems. Apitrace allows capturing every OpenGL call an application makes, and later replaying these calls and inspecting the entire GL state machine at each rendering step.

For this tutorial, I am using the MultiMC launcher.

First step: Install apitrace