Skip to content

Instantly share code, notes, and snippets.

View liach's full-sized avatar

Chen Liang liach

  • Oracle
  • ATX
  • 13:25 (UTC -05:00)
View GitHub Profile
@JamiesWhiteShirt
JamiesWhiteShirt / cursegradle.md
Last active October 18, 2021 15:59
How to publish your Fabric mod with CurseGradle

How to publish your Fabric mod with CurseGradle

CurseGradle is a Gradle plugin that lets you publish artifacts to CurseForge. Consult the CurseGradle wiki for the full details. It works out of the box for ForgeGradle projects, but requires a bit of configuration for Fabric projects, which is the subject of this gist.

CurseGradle will assume the environment is a ForgeGradle environment, so its integration has to be manually switched off. Without ForgeGradle, CurseGradle doesn't know which Minecraft version you are working with, so it has to be specified manually. The correct main artifact is the output of the remapJar task.

PhaseTracker

Current state is still in development

#####Preface By this point, you should already understand the object structure and concept of Causes and EventContexts. If you have not, do consider reading that aspect prior to reading this section as this section is about the implementation that powers creating these objects for all events.

A "node" is an element that looks like this:

{
    "type": "root|literal|argument",
    "parser": "", // only applicable if type is argument
    "properties": {}, // only applicable if type is argument, defaults to empty object
    "executable": true, // default if not specified is false, meaning it isn't a runnable command by itself
    "children": {}, // default if not specified is {}, meaning no children
    "redirect": [] // default if not specified is null, meaning no redirect
}
@pierrejoubert73
pierrejoubert73 / markdown-details-collapsible.md
Last active July 19, 2024 18:06
How to add a collapsible section in markdown.

How to add a collapsible section in markdown

1. Example

Click me

Heading

  1. Foo
  2. Bar
    • Baz
  • Qux
@kennwhite
kennwhite / 1944_OSS_Simple_Sabotage_Field_Manual.md
Last active July 7, 2024 09:26
1944 OSS Simple Sabotage Field Manual
<blockstate> == {
"forge_marker": 1,
"defaults": <variant>, // optional, added to all variants
"variants": {
"<property>": {
"<value>": <variant> // variant definition for the specified value of this property; variants for multiple values can be specified.
},
"<variant name>": <variant>, // variant definition for the full variant string
"<variant name>": [<variant1>, ...], // array of definitions for the full variant - result will be the random variant
}
@ryancdotorg
ryancdotorg / rsabd.py
Last active March 13, 2023 15:57
backdoored rsa key generation
#!/usr/bin/env python
import sys
import gmpy
import curve25519
from struct import pack
from hashlib import sha256
from binascii import hexlify, unhexlify
@xaeroverse
xaeroverse / TUTORIAL.md
Last active November 7, 2021 09:14
Updating MCP mappings in ForgeGradle

Updated mappings for Forge/FML development with ForgeGradle

Official support for updated SRG->MCP mappings is already completed, but in the event that you require local mappings, this 'hack' can serve to inject your own custom mappings faster than the official schedule.

Requirements

For Forge/FML, you will need to know basic directory management and git.

For LiteLoader, you will need to know the structure of Maven repositories, inspecting raw JSON files by hand, MCP's build tools, compiling LiteLoader from SVN sources, ANT, and some Google-fu.

Introduction

@asdfgh0308
asdfgh0308 / 主席树
Created October 16, 2012 12:26
主席树
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define NN 101000
int n,m,i,ord[NN],b[NN],totn,tott,root[NN],a,bb,c;
struct segtree{