├── .gitignore
├── LICENSE
├── README.md
├── addon-templatinator
├── .browserslistrc
├── .eslintrc.cjs
├── .gitignore
├── babel.config.js
├── eslint
├── package-lock.json
├── package.json
├── public
│ ├── favicon.ico
│ ├── fonts
│ │ └── kg-red-hands.outline.ttf
│ ├── icons
│ │ ├── anvil.svg
│ │ ├── cargo-crane.svg
│ │ ├── flowers.svg
│ │ ├── power-generator.svg
│ │ └── rolled-cloth.svg
│ ├── images
│ │ └── create-logo.png
│ └── index.html
├── src
│ ├── App.vue
│ ├── api
│ │ └── types
│ │ │ └── FormTypes.ts
│ ├── components
│ │ ├── BannerVue.vue
│ │ ├── BigCheckbox.vue
│ │ ├── FooterVue.vue
│ │ ├── FormSection.vue
│ │ ├── TemplateForm.vue
│ │ └── icons
│ │ │ ├── ArchitecturyLogo.vue
│ │ │ ├── DatagenIcon.vue
│ │ │ ├── FabricLogo.vue
│ │ │ ├── ForgeLogo.vue
│ │ │ └── QuiltflowerIcon.vue
│ ├── main.ts
│ ├── router
│ │ └── index.ts
│ ├── shims-vue.d.ts
│ ├── theme
│ │ ├── global.scss
│ │ └── theme.scss
│ └── views
│ │ ├── AboutView.vue
│ │ └── HomeView.vue
├── tsconfig.json
└── vue.config.js
├── dist
├── css
│ └── app.9de3c8bd.css
├── favicon.ico
├── fonts
│ ├── kg-red-hands.outline.82a6cb2e.ttf
│ └── kg-red-hands.outline.ttf
├── icons
│ ├── anvil.svg
│ ├── cargo-crane.svg
│ ├── flowers.svg
│ ├── power-generator.svg
│ └── rolled-cloth.svg
├── images
│ └── create-logo.png
├── index.html
└── js
│ ├── about.50bec076.js
│ ├── about.50bec076.js.map
│ ├── app.7eaaf96f.js
│ ├── app.7eaaf96f.js.map
│ ├── chunk-vendors.b7d296e3.js
│ └── chunk-vendors.b7d296e3.js.map
├── forge-template-legacy
├── .gitattributes
├── .gitignore
├── CREDITS.txt
├── LICENSE.txt
├── build.gradle
├── changelog.txt
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── main
│ ├── java
│ │ └── com
│ │ │ └── rabbitminers
│ │ │ └── addontemplate
│ │ │ ├── AddonTemplate.java
│ │ │ ├── index
│ │ │ ├── AddonBlocks.java
│ │ │ ├── AddonItems.java
│ │ │ └── AddonTileEntities.java
│ │ │ └── mixin
│ │ │ └── MixinDemo.java
│ └── resources
│ │ ├── META-INF
│ │ └── mods.toml
│ │ ├── addontemplate.mixins.json
│ │ ├── assets
│ │ └── addontemplate
│ │ │ └── lang
│ │ │ └── en_us.json
│ │ └── pack.mcmeta
├── readme.md
└── workflows
│ └── build.yml
├── package-lock.json
└── package.json
/.gitignore:
--------------------------------------------------------------------------------
1 | # eclipse
2 | bin
3 | *.launch
4 | .settings
5 | .metadata
6 | .classpath
7 | .project
8 |
9 | # idea
10 | out
11 | *.ipr
12 | *.iws
13 | *.iml
14 | .idea
15 |
16 | # gradle
17 | build
18 | .gradle
19 |
20 | # other
21 | eclipse
22 | run
23 |
24 | # Files from Forge MDK
25 | forge*changelog.txt
26 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Creative Commons Legal Code
2 |
3 | CC0 1.0 Universal
4 |
5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12 | HEREUNDER.
13 |
14 | Statement of Purpose
15 |
16 | The laws of most jurisdictions throughout the world automatically confer
17 | exclusive Copyright and Related Rights (defined below) upon the creator
18 | and subsequent owner(s) (each and all, an "owner") of an original work of
19 | authorship and/or a database (each, a "Work").
20 |
21 | Certain owners wish to permanently relinquish those rights to a Work for
22 | the purpose of contributing to a commons of creative, cultural and
23 | scientific works ("Commons") that the public can reliably and without fear
24 | of later claims of infringement build upon, modify, incorporate in other
25 | works, reuse and redistribute as freely as possible in any form whatsoever
26 | and for any purposes, including without limitation commercial purposes.
27 | These owners may contribute to the Commons to promote the ideal of a free
28 | culture and the further production of creative, cultural and scientific
29 | works, or to gain reputation or greater distribution for their Work in
30 | part through the use and efforts of others.
31 |
32 | For these and/or other purposes and motivations, and without any
33 | expectation of additional consideration or compensation, the person
34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35 | is an owner of Copyright and Related Rights in the Work, voluntarily
36 | elects to apply CC0 to the Work and publicly distribute the Work under its
37 | terms, with knowledge of his or her Copyright and Related Rights in the
38 | Work and the meaning and intended legal effect of CC0 on those rights.
39 |
40 | 1. Copyright and Related Rights. A Work made available under CC0 may be
41 | protected by copyright and related or neighboring rights ("Copyright and
42 | Related Rights"). Copyright and Related Rights include, but are not
43 | limited to, the following:
44 |
45 | i. the right to reproduce, adapt, distribute, perform, display,
46 | communicate, and translate a Work;
47 | ii. moral rights retained by the original author(s) and/or performer(s);
48 | iii. publicity and privacy rights pertaining to a person's image or
49 | likeness depicted in a Work;
50 | iv. rights protecting against unfair competition in regards to a Work,
51 | subject to the limitations in paragraph 4(a), below;
52 | v. rights protecting the extraction, dissemination, use and reuse of data
53 | in a Work;
54 | vi. database rights (such as those arising under Directive 96/9/EC of the
55 | European Parliament and of the Council of 11 March 1996 on the legal
56 | protection of databases, and under any national implementation
57 | thereof, including any amended or successor version of such
58 | directive); and
59 | vii. other similar, equivalent or corresponding rights throughout the
60 | world based on applicable law or treaty, and any national
61 | implementations thereof.
62 |
63 | 2. Waiver. To the greatest extent permitted by, but not in contravention
64 | of, applicable law, Affirmer hereby overtly, fully, permanently,
65 | irrevocably and unconditionally waives, abandons, and surrenders all of
66 | Affirmer's Copyright and Related Rights and associated claims and causes
67 | of action, whether now known or unknown (including existing as well as
68 | future claims and causes of action), in the Work (i) in all territories
69 | worldwide, (ii) for the maximum duration provided by applicable law or
70 | treaty (including future time extensions), (iii) in any current or future
71 | medium and for any number of copies, and (iv) for any purpose whatsoever,
72 | including without limitation commercial, advertising or promotional
73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74 | member of the public at large and to the detriment of Affirmer's heirs and
75 | successors, fully intending that such Waiver shall not be subject to
76 | revocation, rescission, cancellation, termination, or any other legal or
77 | equitable action to disrupt the quiet enjoyment of the Work by the public
78 | as contemplated by Affirmer's express Statement of Purpose.
79 |
80 | 3. Public License Fallback. Should any part of the Waiver for any reason
81 | be judged legally invalid or ineffective under applicable law, then the
82 | Waiver shall be preserved to the maximum extent permitted taking into
83 | account Affirmer's express Statement of Purpose. In addition, to the
84 | extent the Waiver is so judged Affirmer hereby grants to each affected
85 | person a royalty-free, non transferable, non sublicensable, non exclusive,
86 | irrevocable and unconditional license to exercise Affirmer's Copyright and
87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the
88 | maximum duration provided by applicable law or treaty (including future
89 | time extensions), (iii) in any current or future medium and for any number
90 | of copies, and (iv) for any purpose whatsoever, including without
91 | limitation commercial, advertising or promotional purposes (the
92 | "License"). The License shall be deemed effective as of the date CC0 was
93 | applied by Affirmer to the Work. Should any part of the License for any
94 | reason be judged legally invalid or ineffective under applicable law, such
95 | partial invalidity or ineffectiveness shall not invalidate the remainder
96 | of the License, and in such case Affirmer hereby affirms that he or she
97 | will not (i) exercise any of his or her remaining Copyright and Related
98 | Rights in the Work or (ii) assert any associated claims and causes of
99 | action with respect to the Work, in either case contrary to Affirmer's
100 | express Statement of Purpose.
101 |
102 | 4. Limitations and Disclaimers.
103 |
104 | a. No trademark or patent rights held by Affirmer are waived, abandoned,
105 | surrendered, licensed or otherwise affected by this document.
106 | b. Affirmer offers the Work as-is and makes no representations or
107 | warranties of any kind concerning the Work, express, implied,
108 | statutory or otherwise, including without limitation warranties of
109 | title, merchantability, fitness for a particular purpose, non
110 | infringement, or the absence of latent or other defects, accuracy, or
111 | the present or absence of errors, whether or not discoverable, all to
112 | the greatest extent permissible under applicable law.
113 | c. Affirmer disclaims responsibility for clearing rights of other persons
114 | that may apply to the Work or any use thereof, including without
115 | limitation any person's Copyright and Related Rights in the Work.
116 | Further, Affirmer disclaims responsibility for obtaining any necessary
117 | consents, permissions or other rights required for any use of the
118 | Work.
119 | d. Affirmer understands and acknowledges that Creative Commons is not a
120 | party to this document and has no duty or obligation with respect to
121 | this CC0 or use of the Work.
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Create Addon Template Generator
2 | (The Template-inator)
3 |
4 | ---
5 |
6 | Based on the template generator for Fabric mods found [here](https://fabricmc.net/develop/template/) this generator allows you to quickly generate a template project for a create addon for numerous versions and platforms without the hastle of refactoring each file with your mods id and needs.
7 |
8 | ---
9 |
10 | You can still use the old template by pulling from the `master` branch
11 |
--------------------------------------------------------------------------------
/addon-templatinator/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1%
2 | last 2 versions
3 | not dead
4 | not ie 11
5 |
--------------------------------------------------------------------------------
/addon-templatinator/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | /* eslint-env node */
2 | require('@rushstack/eslint-patch/modern-module-resolution')
3 |
4 | module.exports = {
5 | root: true,
6 | 'extends': [
7 | 'plugin:vue/vue3-essential',
8 | 'eslint:recommended',
9 | '@vue/eslint-config-typescript',
10 | '@vue/eslint-config-prettier/skip-formatting'
11 | ],
12 | parserOptions: {
13 | ecmaVersion: 'latest'
14 | }
15 | }
--------------------------------------------------------------------------------
/addon-templatinator/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 | pnpm-debug.log*
15 |
16 | # Editor directories and files
17 | .idea
18 | .vscode
19 | *.suo
20 | *.ntvs*
21 | *.njsproj
22 | *.sln
23 | *.sw?
24 |
--------------------------------------------------------------------------------
/addon-templatinator/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/addon-templatinator/eslint:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/addon-templatinator/eslint
--------------------------------------------------------------------------------
/addon-templatinator/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "addon-templatinator",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "serve": "vue-cli-service serve",
7 | "build": "vue-cli-service build"
8 | },
9 | "dependencies": {
10 | "core-js": "^3.8.3",
11 | "oh-vue-icons": "^1.0.0-rc3",
12 | "vue": "^3.2.13",
13 | "vue-router": "^4.0.3"
14 | },
15 | "devDependencies": {
16 | "@vue/cli-plugin-babel": "~5.0.0",
17 | "@vue/cli-plugin-router": "~5.0.0",
18 | "@vue/cli-plugin-typescript": "~5.0.0",
19 | "@vue/cli-service": "~5.0.0",
20 | "sass": "^1.32.7",
21 | "sass-loader": "^12.0.0",
22 | "typescript": "~4.5.5"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/addon-templatinator/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/addon-templatinator/public/favicon.ico
--------------------------------------------------------------------------------
/addon-templatinator/public/fonts/kg-red-hands.outline.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/addon-templatinator/public/fonts/kg-red-hands.outline.ttf
--------------------------------------------------------------------------------
/addon-templatinator/public/icons/anvil.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addon-templatinator/public/icons/cargo-crane.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addon-templatinator/public/icons/flowers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addon-templatinator/public/icons/power-generator.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addon-templatinator/public/icons/rolled-cloth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addon-templatinator/public/images/create-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/addon-templatinator/public/images/create-logo.png
--------------------------------------------------------------------------------
/addon-templatinator/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | <%= htmlWebpackPlugin.options.title %>
9 |
10 |
11 |
12 | We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/addon-templatinator/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
20 |
21 |
--------------------------------------------------------------------------------
/addon-templatinator/src/api/types/FormTypes.ts:
--------------------------------------------------------------------------------
1 | import { Component } from "vue";
2 |
3 | export interface Section {
4 | title: string,
5 | timeline?: string,
6 | description?: string,
7 | icon: string,
8 | body: Component
9 | open: boolean
10 | };
11 |
12 | export interface Input {
13 | type: InputType,
14 | label: string,
15 | platform: Platform
16 | icon?: string,
17 | placeholder?: string,
18 | description?: string,
19 | id: string
20 | };
21 |
22 | export type Platform = "forge" | "fabric" | "architectury" | "all";
23 |
24 | export type InputType = "text" | "textarea" | "radio" | "checkbox";
--------------------------------------------------------------------------------
/addon-templatinator/src/components/BannerVue.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
16 |
21 |
22 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/BigCheckbox.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 | {{ label }}
14 |
15 |
16 |
17 |
18 |
19 |
42 |
43 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/FooterVue.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
31 |
32 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/FormSection.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
{{ title }}
5 |
6 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
54 |
55 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/TemplateForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
125 |
126 |
127 |
149 |
150 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/icons/ArchitecturyLogo.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/icons/DatagenIcon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/icons/FabricLogo.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/icons/ForgeLogo.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/addon-templatinator/src/components/icons/QuiltflowerIcon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/addon-templatinator/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue'
2 | import App from './App.vue'
3 | import router from './router'
4 |
5 | import './theme/global.scss'
6 | import './theme/theme.scss'
7 |
8 | createApp(App).use(router).mount('#app')
9 |
--------------------------------------------------------------------------------
/addon-templatinator/src/router/index.ts:
--------------------------------------------------------------------------------
1 | import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'
2 | import HomeView from '../views/HomeView.vue'
3 |
4 | const routes: Array = [
5 | {
6 | path: '/',
7 | name: 'home',
8 | component: HomeView
9 | },
10 | {
11 | path: '/about',
12 | name: 'about',
13 | // route level code-splitting
14 | // this generates a separate chunk (about.[hash].js) for this route
15 | // which is lazy-loaded when the route is visited.
16 | component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
17 | }
18 | ]
19 |
20 | const router = createRouter({
21 | history: createWebHashHistory(),
22 | routes
23 | })
24 |
25 | export default router
26 |
--------------------------------------------------------------------------------
/addon-templatinator/src/shims-vue.d.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | declare module '*.vue' {
3 | import type { DefineComponent } from 'vue'
4 | const component: DefineComponent<{}, {}, any>
5 | export default component
6 | }
7 |
--------------------------------------------------------------------------------
/addon-templatinator/src/theme/global.scss:
--------------------------------------------------------------------------------
1 | :root {
2 | --colour-white: #ffffff;
3 | --colour-white-soft: #f8f8f8;
4 | --colour-white-mute: #f2f2f2;
5 | --colour-black: #181818;
6 | --colour-black-soft: #222222;
7 | --colour-black-mute: #282828;
8 | --colour-indigo: #2c3e50;
9 | --colour-divider-light-1: rgba(60, 60, 60, 0.29);
10 | --colour-divider-light-2: rgba(60, 60, 60, 0.12);
11 | --colour-divider-dark-1: rgba(84, 84, 84, 0.65);
12 | --colour-divider-dark-2: rgba(84, 84, 84, 0.48);
13 | --colour-text-light-1: var(--colour-indigo);
14 | --colour-text-light-2: rgba(60, 60, 60, 0.66);
15 | --colour-text-dark-1: var(--colour-white);
16 | --colour-text-dark-2: rgba(235, 235, 235, 0.64);
17 | --colour-primary: #7494f1;
18 | --colour-primary-light: #9eb9fb;
19 | --colour-primary-dark: #637fd4;
20 | --colour-primary-very-dark: #2e234e;
21 | --colour-off-white: #e9fdfe;
22 | --colour-off-white-dimmed: #dcf1f2;
23 | }
24 |
25 | :root {
26 | --color-background: var(--colour-white);
27 | --color-background-soft: var(--colour-white-soft);
28 | --color-background-mute: var(--colour-white-mute);
29 | --color-border: var(--colour-divider-light-2);
30 | --color-border-hover: var(--colour-divider-light-1);
31 | --color-heading: var(--colour-text-light-1);
32 | --color-text: var(--colour-text-light-1);
33 | --section-gap: 160px;
34 | }
35 |
36 | @media (prefers-color-scheme: dark) {
37 | :root {
38 | --color-background: var(--colour-black);
39 | --color-background-soft: var(--colour-black-soft);
40 | --color-background-mute: var(--colour-black-mute);
41 | --color-border: var(--colour-divider-dark-2);
42 | --color-border-hover: var(--colour-divider-dark-1);
43 | --color-heading: var(--colour-text-dark-1);
44 | --color-text: var(--colour-text-dark-2);
45 | }
46 | }
--------------------------------------------------------------------------------
/addon-templatinator/src/theme/theme.scss:
--------------------------------------------------------------------------------
1 | *,
2 | *::before,
3 | *::after {
4 | box-sizing: border-box;
5 | margin: 0;
6 | position: relative;
7 | font-weight: normal;
8 | }
9 |
10 | body {
11 | min-height: 100vh;
12 | color: var(--color-text);
13 | background: var(--color-background-soft);
14 | transition: color 0.5s, background-color 0.5s;
15 | line-height: 1.6;
16 | font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
17 | font-size: 15px;
18 | text-align: center;
19 | text-rendering: optimizeLegibility;
20 | -webkit-font-smoothing: antialiased;
21 | -moz-osx-font-smoothing: grayscale;
22 | }
23 |
24 | #app {
25 | margin: 0 auto;
26 | font-weight: normal;
27 | }
28 |
29 | a,
30 | .green {
31 | text-decoration: none;
32 | color: var(--colour-primary-light);
33 | transition: 0.4s;
34 | }
35 |
36 | .full-width {
37 | width: 100%;
38 | }
39 |
40 | .center {
41 | margin: auto;
42 | }
43 |
44 | .horizontal-spaced-row {
45 | display: flex;
46 | flex-direction: row;
47 | justify-content: space-around;
48 | }
49 |
50 | ::-webkit-scrollbar {
51 | background-color: var(--color-background);
52 | &-thumb {
53 | border-radius: 10px;
54 | border-color: var(--colour-primary-dark);
55 | background-color: var(--colour-primary);
56 | }
57 | }
--------------------------------------------------------------------------------
/addon-templatinator/src/views/AboutView.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
TODO
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/addon-templatinator/src/views/HomeView.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
15 |
--------------------------------------------------------------------------------
/addon-templatinator/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "esnext",
4 | "module": "esnext",
5 | "strict": true,
6 | "jsx": "preserve",
7 | "moduleResolution": "node",
8 | "skipLibCheck": true,
9 | "esModuleInterop": true,
10 | "allowSyntheticDefaultImports": true,
11 | "forceConsistentCasingInFileNames": true,
12 | "useDefineForClassFields": true,
13 | "sourceMap": true,
14 | "baseUrl": ".",
15 | "types": [
16 | "webpack-env"
17 | ],
18 | "paths": {
19 | "@/*": [
20 | "src/*"
21 | ]
22 | },
23 | "lib": [
24 | "esnext",
25 | "dom",
26 | "dom.iterable",
27 | "scripthost"
28 | ]
29 | },
30 | "include": [
31 | "src/**/*.ts",
32 | "src/**/*.tsx",
33 | "src/**/*.vue",
34 | "tests/**/*.ts",
35 | "tests/**/*.tsx"
36 | ],
37 | "exclude": [
38 | "node_modules"
39 | ]
40 | }
41 |
--------------------------------------------------------------------------------
/addon-templatinator/vue.config.js:
--------------------------------------------------------------------------------
1 | const { defineConfig } = require('@vue/cli-service')
2 | module.exports = defineConfig({
3 | transpileDependencies: true
4 | })
5 |
--------------------------------------------------------------------------------
/dist/css/app.9de3c8bd.css:
--------------------------------------------------------------------------------
1 | @import url(https://fonts.googleapis.com/css?family=Raleway);@import url(http://weloveiconfonts.com/api/?family=entypo);.site-header{background-color:var(--colour-primary);justify-content:left;display:flex;height:7em;margin-bottom:3em}.site-header>*{box-sizing:border-box;border-radius:2em}.site-header-icon-image{width:7em;height:7em;padding:10px;position:relative}.site-header-icon-image:hover{border-radius:100%;box-shadow:10px 10px 10px #000}.site-header-title{font-size:1.5em;text-align:left;font-weight:800;padding:10px;color:var(--colour-off-white)}.site-footer{background-color:var(--colour-primary);color:var(--colour-off-white);height:-moz-fit-content;height:fit-content;display:flex;flex-wrap:wrap;gap:1em}.site-footer>*{box-sizing:border-box;padding:10px}.site-footer-section{padding:10px;flex:1 1;margin-right:10px;min-width:20em}.site-footer-section-title{text-decoration:underline}.site-footer-section-body{color:var(--colour-off-white-dimmed)}a{color:var(--colour-primary-dark)}.site-wrapper{display:flex;flex-direction:column;min-height:100vh}@font-face{font-family:outlined;src:url(/fonts/kg-red-hands.outline.82a6cb2e.ttf) format("truetype")}.checkbox-input{clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.checkbox-input:checked+.checkbox-tile{border-color:var(--colour-primary);box-shadow:0 5px 10px rgba(0,0,0,.1);color:var(--colour-primary)}.checkbox-input:checked+.checkbox-tile:before{transform:scale(1);opacity:1;background-color:var(--colour-primary);border-color:var(--colour-primary)}.checkbox-input:checked+.checkbox-tile .checkbox-icon,.checkbox-input:checked+.checkbox-tile .checkbox-label{color:var(--colour-primary)}.checkbox-input:checked+.checkbox-tile path{fill:var(--colour-primary)}.checkbox-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;width:7rem;min-height:7rem;border-radius:.5rem;border:3px solid #b5bfd9;box-shadow:0 5px 10px rgba(0,0,0,.1);transition:.15s ease;cursor:pointer;position:relative}.checkbox-tile:before{content:"";position:absolute;display:block;width:1.25rem;height:1.25rem;border:2px solid #b5bfd9;border-radius:50%;top:.25rem;left:.25rem;opacity:0;transform:scale(0);transition:.25s ease;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='192' height='192' fill='%23FFF' viewBox='0 0 256 256'%3E%3Cpath fill='none' d='M0 0h256v256H0z'/%3E%3Cpath fill='none' stroke='%23FFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='32' d='M216 72.005 104 184l-56-55.995'/%3E%3C/svg%3E");background-size:12px;background-repeat:no-repeat;background-position:50% 50%}.checkbox-tile:hover{color:var(--colour-primary);border-color:var(--colour-primary)}.checkbox-tile:hover:before{transform:scale(1);opacity:1}.checkbox-tile:hover path{fill:var(--colour-primary)}.checkbox-icon{transition:.375s ease;color:var(--color-text);font-family:Courier New,Courier,monospace}.checkbox-icon h1{font-size:2.75em;font-family:outlined}.checkbox-icon h2{font-family:outlined;font-size:2.25em;padding-bottom:.15em;border-bottom:1px solid #777}.checkbox-icon svg{width:3rem;height:3rem}.checkbox-label{color:var(--color-text);transition:.375s ease;font-size:x-small;text-align:center}[class*=entypo-]:before{font-family:entypo,sans-serif}[class*=entypo-]{width:1em;height:1em}body{font-family:Raleway,sans-serif}a,h1,h2,h3,span{text-decoration:none;color:var(--colour-text)}a:hover{color:#777}h1,h2{font-family:Raleway,sans-serif;letter-spacing:1.5px;color:var(--colour-text);font-weight:100}h1{font-size:2.4em;margin:0;border-bottom:1px solid #777;padding-bottom:.2em}h2{font-size:1em}#content{flex-grow:1;margin-top:50px;margin:auto;text-align:center}.timeline{border-left:.25em solid var(--colour-primary);background:var(--color-background-mute);margin:2em auto;line-height:1.4em;padding:1em;padding-left:3em;list-style:none;text-align:left;margin-left:10em;margin-right:3em;border-radius:.5em;min-width:22em;max-width:50em}.timeline .event{min-width:20em;width:100%;vertical-align:middle;box-sizing:border-box;position:relative}.timeline .event:after,.timeline .event:before{position:absolute;display:block;top:1em}.timeline .event:before{left:-15em;color:var(--colour-text);content:attr(data-date);text-align:right;font-weight:100;font-size:.9em;min-width:9em}.timeline .event:after{box-shadow:0 0 0 .2em var(--colour-primary);left:-3.5em;background:var(--color-background-mute);border-radius:50%;height:.75em;width:.75em;content:""}.timeline .event .member-location,.timeline .event .member-parameters{max-height:0;overflow:hidden;transition:max-height .9s ease}.timeline .event .open{max-height:60em}.member-infos{padding:10px;text-align:left;position:relative}.member-infos>h1{font-weight:700;font-size:1.4em}.member-location a:before{margin-right:5px}.member-location{text-indent:2px}.follow,.options{width:30px;height:30px;text-align:center;line-height:30px;background:#d3d3d3;text-shadow:0 1px 0 hsla(0,0%,100%,.4);box-shadow:0 2px 0 0 silver;border-radius:3px;display:inline-block}.follow:hover,.options:hover{box-shadow:0 1px 0 0 silver;box-sizing:border-box;vertical-align:bottom;margin-bottom:-1px}.member-socials{font-weight:700;vertical-align:bottom;line-height:8px;float:right}.member-socials,.member-socials li{display:inline-block}.followers,.shots-number{font-weight:400;display:block;margin-top:10px;font-size:.9em}.member-contact{position:absolute;right:10px;top:10px}.member-contact li{display:inline-block;margin-left:10px}.member-input{display:flex;color:var(--colour-primary)}.member-input input[type=checkbox]{display:grid;place-content:center}.member-input input[type=checkbox]:before{content:"";width:.65em;height:.65em;transform:scale(0);transition:transform .12s ease-in-out;box-shadow:inset 1em 1em var(--colour-primary)}.member-input input[type=checkbox]:checked:before{transform:scale(1)}.member-shots-number{padding-right:6px;border-right:1px solid rgba(0,0,0,.06);margin-right:6px;margin-left:6px}.form-section-summary{padding-bottom:1em}.form-section-subheading{font-size:x-large;font-weight:500;text-align:center;padding-bottom:.7em}.mod-details{flex-direction:row;width:100%;display:flex;gap:2em}.mod-details label{width:50%}.mod-details label>h4{margin-bottom:.3em}.mod-details input[type=text]{width:100%;background-color:transparent;border-radius:2em;border-radius:.5rem;border:3px solid #b5bfd9;padding:10px;color:var(--colour-primary);transition:.25s ease}.mod-details input[type=text]::-moz-placeholder{color:var(--colour-text-light)}.mod-details input[type=text]::placeholder{color:var(--colour-text-light)}.mod-details input[type=text]:hover{border-color:var(--colour-primary)}input[type=submit]{font-family:Raleway,sans-serif;font-weight:800;background-color:transparent;border:none;text-align:left;font-size:1.5em;color:var(--colour-text);margin:0;padding-bottom:.2em;transition:.25s ease}input[type=submit]:hover{color:var(--colour-primary);border-color:var(--colour-primary)}:root{--colour-white:#fff;--colour-white-soft:#f8f8f8;--colour-white-mute:#f2f2f2;--colour-black:#181818;--colour-black-soft:#222;--colour-black-mute:#282828;--colour-indigo:#2c3e50;--colour-divider-light-1:rgba(60,60,60,.29);--colour-divider-light-2:rgba(60,60,60,.12);--colour-divider-dark-1:rgba(84,84,84,.65);--colour-divider-dark-2:rgba(84,84,84,.48);--colour-text-light-1:var(--colour-indigo);--colour-text-light-2:rgba(60,60,60,.66);--colour-text-dark-1:var(--colour-white);--colour-text-dark-2:hsla(0,0%,92%,.64);--colour-primary:#7494f1;--colour-primary-light:#9eb9fb;--colour-primary-dark:#637fd4;--colour-primary-very-dark:#2e234e;--colour-off-white:#e9fdfe;--colour-off-white-dimmed:#dcf1f2;--color-background:var(--colour-white);--color-background-soft:var(--colour-white-soft);--color-background-mute:var(--colour-white-mute);--color-border:var(--colour-divider-light-2);--color-border-hover:var(--colour-divider-light-1);--color-heading:var(--colour-text-light-1);--color-text:var(--colour-text-light-1);--section-gap:160px}@media(prefers-color-scheme:dark){:root{--color-background:var(--colour-black);--color-background-soft:var(--colour-black-soft);--color-background-mute:var(--colour-black-mute);--color-border:var(--colour-divider-dark-2);--color-border-hover:var(--colour-divider-dark-1);--color-heading:var(--colour-text-dark-1);--color-text:var(--colour-text-dark-2)}}*,:after,:before{box-sizing:border-box;margin:0;position:relative;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background-soft);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-align:center;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{margin:0 auto;font-weight:400}.green,a{text-decoration:none;color:var(--colour-primary-light);transition:.4s}.full-width{width:100%}.center{margin:auto}.horizontal-spaced-row{display:flex;flex-direction:row;justify-content:space-around}::-webkit-scrollbar{background-color:var(--color-background)}::-webkit-scrollbar-thumb{border-radius:10px;border-color:var(--colour-primary-dark);background-color:var(--colour-primary)}
--------------------------------------------------------------------------------
/dist/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/dist/favicon.ico
--------------------------------------------------------------------------------
/dist/fonts/kg-red-hands.outline.82a6cb2e.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/dist/fonts/kg-red-hands.outline.82a6cb2e.ttf
--------------------------------------------------------------------------------
/dist/fonts/kg-red-hands.outline.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/dist/fonts/kg-red-hands.outline.ttf
--------------------------------------------------------------------------------
/dist/icons/anvil.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/icons/cargo-crane.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/icons/flowers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/icons/power-generator.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/icons/rolled-cloth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/images/create-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/dist/images/create-logo.png
--------------------------------------------------------------------------------
/dist/index.html:
--------------------------------------------------------------------------------
1 | addon-templatinator We're sorry but addon-templatinator doesn't work properly without JavaScript enabled. Please enable it to continue.
--------------------------------------------------------------------------------
/dist/js/about.50bec076.js:
--------------------------------------------------------------------------------
1 | "use strict";(self["webpackChunkaddon_templatinator"]=self["webpackChunkaddon_templatinator"]||[]).push([[443],{4466:function(n,t,a){a.r(t),a.d(t,{default:function(){return l}});var e=a(3396);const r={class:"about"},u=(0,e._)("h1",null,"TODO",-1),o=[u];function c(n,t,a,u,c,s){return(0,e.wg)(),(0,e.iD)("div",r,o)}var s={name:"about"},d=a(89);const i=(0,d.Z)(s,[["render",c]]);var l=i}}]);
2 | //# sourceMappingURL=about.50bec076.js.map
--------------------------------------------------------------------------------
/dist/js/about.50bec076.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"js/about.50bec076.js","mappings":"gMAEA,MAAMA,EAAa,CAAEC,MAAO,SACtBC,GAA0BC,EAAAA,EAAAA,GAAoB,KAAM,KAAM,QAAS,GACnEC,EAAa,CACjBF,GAGI,SAAUG,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAOb,EAAYI,EAC/D,CCTA,OACEU,KAAM,S,QCGR,MAAMC,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAASV,KAEpE,O","sources":["webpack://addon-templatinator/./src/views/AboutView.vue?aeb2","webpack://addon-templatinator/./src/views/AboutView.vue?f245","webpack://addon-templatinator/./src/views/AboutView.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"about\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"TODO\", -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, _hoisted_3))\n}","\nexport default {\n name: \"about\"\n}\n","import { render } from \"./AboutView.vue?vue&type=template&id=7f983ab3&ts=true\"\nimport script from \"./AboutView.vue?vue&type=script&lang=ts\"\nexport * from \"./AboutView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"/home/charlie/Projects/create-addon-template-inator/templatinator/addon-templatinator/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_createElementVNode","_hoisted_3","render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","name","__exports__"],"sourceRoot":""}
--------------------------------------------------------------------------------
/dist/js/app.7eaaf96f.js:
--------------------------------------------------------------------------------
1 | (function(){"use strict";var e={9120:function(e,t,l){var n=l(9242),o=l(3396);const r={class:"site-wrapper"};function a(e,t,l,n,a,i){const c=(0,o.up)("banner-vue"),s=(0,o.up)("router-view"),u=(0,o.up)("footer-vue");return(0,o.wg)(),(0,o.iD)("article",r,[(0,o.Wm)(c),(0,o.Wm)(s),(0,o.Wm)(u)])}const i={class:"site-header full-width"},c=(0,o._)("section",{class:"site-header-icon"},[(0,o._)("img",{class:"site-header-icon-image",src:"images/create-logo.png",alt:"logo"})],-1),s=(0,o._)("section",{class:"site-header-title"}," Create Addon Template-intator ",-1),u=[c,s];function m(e,t,l,n,r,a){return(0,o.wg)(),(0,o.iD)("article",i,u)}var d={name:"Header"},f=l(89);const p=(0,f.Z)(d,[["render",m]]);var h=p,b=l(7139);const v={class:"site-footer full-width"},g={class:"site-footer-section"},w={class:"site-footer-section-title"},y=["innerHTML"];function _(e,t,l,n,r,a){return(0,o.wg)(),(0,o.iD)("article",v,[((0,o.wg)(!0),(0,o.iD)(o.HY,null,(0,o.Ko)(r.sections,(e=>((0,o.wg)(),(0,o.iD)("section",g,[(0,o._)("h3",w,(0,b.zw)(e.title),1),(0,o._)("p",{class:"site-footer-section-body",innerHTML:e.body},null,8,y)])))),256))])}var z={name:"Footer",data(){return{sections:[{title:"About Us",body:"This project is open source you can find the source code here , and maintained by Rabbitminers' development team if you want to contact us, find any issues or would like a new feature you can contact us on Discord here"},{title:"Where From Here?",body:"Documentation about making create addons is limited to non-existent, but we reccomend reading through existing addon's source code aswell as create's"}]}}};const k=(0,f.Z)(z,[["render",_]]);var x=k,M={components:{BannerVue:h,FooterVue:x}};const W=(0,f.Z)(M,[["render",a]]);var D=W,F=l(2483);function C(e,t,l,n,r,a){const i=(0,o.up)("TemplateForm");return(0,o.wg)(),(0,o.j4)(i)}const L={id:"content"},j={class:"timeline"},T=(0,o._)("h3",{class:"form-section-subheading"},"Mod Platform",-1),H=(0,o._)("a",{class:"form-section-summary"},"Please note that features not available to your platform will be hidden, i.e in a forge mod Porting lib will not be made available",-1),S=(0,o._)("br",null,null,-1),O=(0,o._)("br",null,null,-1),Z={class:"horizontal-spaced-row"},B=(0,o._)("br",null,null,-1),E=(0,o._)("p",{class:"form-section-summary"},"Only one platform can be picked, Forge and Fabric will allow you to build to those respective platforms and architectury will allow you to build to both simultaneously, however keep in mind this can add additional complexity to the project especially when utilising platform specific features such as fluids or networking",-1),I=(0,o._)("h3",{class:"form-section-subheading"},"Mod Version",-1),P=(0,o._)("a",{class:"form-section-summary"},"More versions will be added as availabe, there are currently no plans to backport these templates prior to 1.18.2, if you would like to port them yourself we would appreciate the help",-1),A=(0,o._)("br",null,null,-1),U=(0,o._)("br",null,null,-1),N={class:"horizontal-spaced-row"},V=(0,o._)("h2",null,"1.18.2",-1),Q=(0,o._)("h2",null,"1.19.2",-1),R=(0,o._)("h2",null,"1.20",-1),q=(0,o._)("br",null,null,-1),Y=(0,o._)("p",{class:"form-section-summary"},"We reccomend you develop on 1.18.2 first then porting to future versions later in development to stay in parity with other addons and official development",-1),J=(0,o._)("h3",{class:"form-section-subheading"},"Mod Details",-1),$=(0,o._)("a",{class:"form-section-summary"},"These will automatically be used across your project saving you time refactoring, especially in architectury projects.",-1),G=(0,o._)("br",null,null,-1),K=(0,o._)("br",null,null,-1),X=(0,o._)("section",{class:"mod-details"},[(0,o._)("label",null,[(0,o._)("h4",null," Mod Name"),(0,o._)("input",{type:"text",placeholder:"Some Mod Name"})]),(0,o._)("label",null,[(0,o._)("h4",null," Package Name "),(0,o._)("input",{type:"text",placeholder:"com.yourname"})])],-1),ee=(0,o._)("br",null,null,-1),te=(0,o._)("p",{class:"form-section-summary"},'Your mods name will automatically be converted to a valid mod id, for example "Example Mod" will be converted to "example-mod"',-1),le=(0,o._)("a",{class:"form-section-summary"},"You can select as many recipe browsers as you like, they will all be added to the buildscript and can be switched between by changing the recipe_browser entry in gradle.properties",-1),ne=(0,o._)("br",null,null,-1),oe=(0,o._)("br",null,null,-1),re={class:"horizontal-spaced-row"},ae=(0,o._)("h1",null,"JEI",-1),ie=(0,o._)("h1",null,"REI",-1),ce=(0,o._)("h1",null,"EMI",-1),se=(0,o._)("br",null,null,-1),ue=(0,o._)("p",null,"Note EMI is only available for fabric (and quilt), and some builds of REI have had crashes with specific recipe types from create, this is not a bug with your recipes and is safe in production",-1),me=(0,o._)("a",{class:"form-section-summary"},"These are tools to help speed up development by making some tasks easier or removing repatative jobs",-1),de=(0,o._)("br",null,null,-1),fe=(0,o._)("br",null,null,-1),pe={class:"horizontal-spaced-row"},he=(0,o._)("br",null,null,-1),be=(0,o._)("p",null,"Quiltflower is a modern, general purpose decompiler focused on improving code quality, speed, and usability. Quiltflower is a fork of Fernflower and Forgeflower.",-1),ve=(0,o._)("ul",{class:"timeline"},[(0,o._)("input",{class:"event",type:"submit",value:"Download!"})],-1);function ge(e,t,l,n,r,a){const i=(0,o.up)("ArchitecturyLogo"),c=(0,o.up)("BigCheckbox"),s=(0,o.up)("ForgeLogo"),u=(0,o.up)("FabricLogo"),m=(0,o.up)("FormSection"),d=(0,o.up)("DatagenIcon"),f=(0,o.up)("QuiltflowerIcon");return(0,o.wg)(),(0,o.iD)("form",L,[(0,o._)("ul",j,[(0,o.Wm)(m,{title:"Project Structure",timeline:"General Settings",open_by_default:!0},{default:(0,o.w5)((()=>[T,H,S,(0,o.Uk)(),O,(0,o._)("section",Z,[(0,o.Wm)(c,{label:"Architectury",name:"platform",type:"radio",ref:"arch"},{default:(0,o.w5)((()=>[(0,o.Wm)(i)])),_:1},512),(0,o.Wm)(c,{label:"Forge",name:"platform",type:"radio",ref:"forge"},{default:(0,o.w5)((()=>[(0,o.Wm)(s)])),_:1},512),(0,o.Wm)(c,{label:"Fabric",name:"platform",type:"radio",ref:"fabric"},{default:(0,o.w5)((()=>[(0,o.Wm)(u)])),_:1},512)]),B,E,I,P,A,(0,o.Uk)(),U,(0,o._)("section",N,[(0,o.Wm)(c,{label:"Caves & Cliffs",name:"version",type:"radio",ref:"arch"},{default:(0,o.w5)((()=>[V])),_:1},512),(0,o.Wm)(c,{label:"Wild Update",name:"version",type:"radio",ref:"forge"},{default:(0,o.w5)((()=>[Q])),_:1},512),(0,o.Wm)(c,{label:"Tales & Trails",name:"version",type:"radio",ref:"forge"},{default:(0,o.w5)((()=>[R])),_:1},512)]),q,Y,J,$,G,(0,o.Uk)(),K,X,ee,te])),_:1}),(0,o.Wm)(m,{title:"Recipe Browsers",timeline:"Development QOL"},{default:(0,o.w5)((()=>[le,ne,(0,o.Uk)(),oe,(0,o._)("section",re,[(0,o.Wm)(c,{label:"Just enough items"},{default:(0,o.w5)((()=>[ae])),_:1}),(0,o.Wm)(c,{label:"Roughly enough items"},{default:(0,o.w5)((()=>[ie])),_:1}),(0,o.Wm)(c,{label:"There's no acronym"},{default:(0,o.w5)((()=>[ce])),_:1})]),se,ue])),_:1}),(0,o.Wm)(m,{title:"Development Features"},{default:(0,o.w5)((()=>[me,de,(0,o.Uk)(),fe,(0,o._)("section",pe,[(0,o.Wm)(c,{label:"Datagen"},{default:(0,o.w5)((()=>[(0,o.Wm)(d)])),_:1}),(0,o.Wm)(c,{label:"Quiltflower"},{default:(0,o.w5)((()=>[(0,o.Wm)(f)])),_:1})]),he,be])),_:1})]),ve])}const we={class:"checkbox"},ye={class:"checkbox-wrapper"},_e=["name","type"],ze={class:"checkbox-tile"},ke={class:"checkbox-icon"},xe={class:"checkbox-label"};function Me(e,t,l,r,a,i){return(0,o.wg)(),(0,o.iD)("div",we,[(0,o._)("label",ye,[(0,o.wy)((0,o._)("input",{class:"checkbox-input",name:l.name,type:l.type,"onUpdate:modelValue":t[0]||(t[0]=e=>a.isChecked=e)},null,8,_e),[[n.YZ,a.isChecked]]),(0,o._)("span",ze,[(0,o._)("span",ke,[(0,o.WI)(e.$slots,"default")]),(0,o._)("span",xe,(0,b.zw)(l.label),1)])])])}var We={name:"BigCheckbox",props:{label:{type:String,default:""},type:{type:String,default:"checkbox"},name:{type:String}},data(){return{isChecked:!1}}};const De=(0,f.Z)(We,[["render",Me]]);var Fe=De;const Ce=["data-date"],Le={class:"member-infos"},je={class:"member-contact"},Te={key:0,class:"member-website"},He=["href"],Se=(0,o._)("br",null,null,-1);function Oe(e,t,l,n,r,a){return(0,o.wg)(),(0,o.iD)("li",{key:l.title,class:"event","data-date":l.timeline},[(0,o._)("div",Le,[(0,o._)("h1",{class:"member-title",onClick:t[0]||(t[0]=e=>a.expand())},(0,b.zw)(l.title),1),(0,o._)("ul",je,[l.icon?((0,o.wg)(),(0,o.iD)("li",Te,[(0,o._)("a",{class:(0,b.C_)(l.icon),target:"_blank",href:l.icon},null,10,He)])):(0,o.kq)("",!0)]),(0,o._)("div",{class:(0,b.C_)(["member-parameters",{open:r.open}])},[Se,(0,o.WI)(e.$slots,"default")],2)])],8,Ce)}var Ze={name:"FormSection",props:{title:{type:String,default:"Invalid title"},timeline:{type:String,default:""},icon:{type:String,default:"entypo-globe"},open_by_default:{type:Boolean,default:!1}},data(){return{open:this.open_by_default}},methods:{expand(){this.open=!this.open}}};const Be=(0,f.Z)(Ze,[["render",Oe]]);var Ee=Be;const Ie={class:"checkbox-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},Pe=(0,o._)("path",{d:"M0 0h512v512H0z",fill:"#000","fill-opacity":"0"},null,-1),Ae=(0,o._)("g",{class:"",transform:"translate(0,0)",style:{}},[(0,o._)("path",{d:"M306.875 18.22c-.47-.002-.935.014-1.406.03-.158.005-.313.024-.47.03-1.583.056-3.176.204-4.78.47-3.61.597-7.01 1.7-10.158 3.22L49.595 120.062c-.918.42-1.808.877-2.688 1.343-.598.318-1.2.63-1.78.97-13.697 7.67-22.918 21.836-24.188 37.655-.058.635-.094 1.27-.125 1.907-.363 7.292.943 14.76 4.156 21.844 10.908 24.058 39.464 34.588 64.25 23.407l.093-.03L321.375 90.968l.156-.095.158-.063c19.685-8.925 28.3-31.436 19.656-50.5-6.28-13.85-19.92-22.07-34.47-22.093zm.28 18.718c8.924.308 16.542 6.77 18.064 15.968 1.737 10.51-5.208 20.23-15.72 21.97-10.512 1.738-20.2-5.21-21.938-15.72-1.738-10.51 5.208-20.23 15.72-21.968 1.313-.218 2.6-.295 3.874-.25zM354 86.656c-5.762 8.854-14.006 16.267-24.28 21-.108.05-.206.108-.314.156l-16.47 8.25 57.533 97.907c7.09-11.768 19.637-19.107 33.06-19.845 1.59-.087 3.18-.07 4.783.03L354 86.656zM67.906 135.03c.484-.005.96.015 1.438.032 13.393.478 24.876 10.217 27.156 24 2.606 15.75-7.873 30.426-23.625 33.032-15.752 2.606-30.426-7.906-33.03-23.656-2.607-15.75 7.903-30.395 23.655-33 1.477-.245 2.955-.387 4.406-.407zm60.188 73.595l-16.813 8.438 7.814 21.625-50.78-8.22-.064-.187c-7.272-.066-14.432-1.293-21.22-3.593l59.5 163.344-.405.783.75.187 16.906 46.406c4.612-4.79 9.704-9.125 15.22-12.875l-10.28-28.217 51.624 12.562h.03c3.962-.504 8-.78 12.095-.78 2.655 0 5.272.128 7.874.342l-72.25-199.812zm277.437 4.094c-.365 0-.73.012-1.092.03-8.72.434-16.66 5.983-19.844 14.78-4.244 11.733 1.706 24.414 13.437 28.657 11.733 4.244 24.445-1.705 28.69-13.437 4.243-11.734-1.707-24.412-13.44-28.656-2.565-.93-5.186-1.376-7.75-1.375zm39.158 9.81c2.728 8.395 2.806 17.714-.407 26.595-.456 1.264-.994 2.497-1.56 3.688l27.936 5-4.375 51.25-19.405 11.562 9.563 16.063 23.53-14.032 4.126-2.437.406-4.783 6.313-73.937.937-10.78-2.03.124-45.033-8.313zm-80.094 12.376l-44 26.78-.094.033v.03l-.063.03.157.158 4.47 9.5 31.498 67.187 2.032 4.344 4.72.874 26.905 5 3.436-18.375-22.22-4.126-21.467-45.813 26.842-16.186c-7.77-7.738-12.248-18.393-12.218-29.438zM75.656 250.594l35.156 5.687-18.593 39.845-16.564-45.53zm52.406 12.906l18.344 50.78-37.812-9.06 19.47-41.72zm-26.093 59.344l35.31 8.47-19.03 36.31-16.28-44.78zm52.968 15.03l18.093 49.97-39.28-9.53 21.188-40.44zm37.53 88.907c-39.29 0-71.475 29.325-76.062 67.345h22.5c4.46-25.5 26.83-45.03 53.563-45.03 26.73 0 49.074 19.53 53.53 45.03h22.5c-4.587-38.02-36.74-67.344-76.03-67.344zm0 41c-16.555 0-30.22 11.145-34.312 26.345h68.594c-4.092-15.2-17.725-26.344-34.28-26.344z",fill:"#fff","fill-opacity":"1"})],-1),Ue=[Pe,Ae];function Ne(e,t){return(0,o.wg)(),(0,o.iD)("svg",Ie,Ue)}const Ve={},Qe=(0,f.Z)(Ve,[["render",Ne]]);var Re=Qe;const qe={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},Ye=(0,o._)("path",{d:"M0 0h512v512H0z",fill:"#000","fill-opacity":"0"},null,-1),Je=(0,o._)("g",{class:"",transform:"translate(0,0)",style:{}},[(0,o._)("path",{d:"M128.688 115.594v147.75h285v-147.75h-285zm-111.844 20.47c17.374 47.14 54.372 80.413 94.906 93.81v-93.81H16.844zm414.375 12.31v88.657c21.457-9.083 42.92-25.257 64.374-47.374-21.52-22.562-42.633-35.173-64.375-41.28zm-226.25 132.47c-12.15 38.536-33.897 71.5-60.595 100.47l257.844-.002c-28.705-29.016-49.952-62.054-61.5-100.468H204.97zM101.843 400v43.78h337.562V400H101.844z",fill:"#fff","fill-opacity":"1"})],-1),$e=[Ye,Je];function Ge(e,t){return(0,o.wg)(),(0,o.iD)("svg",qe,$e)}const Ke={},Xe=(0,f.Z)(Ke,[["render",Ge]]);var et=Xe;const tt={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},lt=(0,o._)("path",{d:"M0 0h512v512H0z",fill:"#000","fill-opacity":"0"},null,-1),nt=(0,o._)("g",{class:"",transform:"translate(0,0)",style:{}},[(0,o._)("path",{d:"M165.446 34.793c-23.17.023-45.634 12.97-54.612 36.323l-83.67 326.167c-12.673 94.537 81.04 88.742 137.957 65.396 81.422-33.396 181.723-29.213 263.244-8.26l6.45-17.218c-7.38-2.638-15.334-5.988-22.252-8.039.473-4.364.955-8.72 1.437-13.074l23.038 4.118 3.234-18.1c-8.074-1.441-16.147-2.885-24.221-4.328.615-5.403 1.238-10.799 1.87-16.189l22.134 3.278 2.693-18.186c-7.548-1.12-15.098-2.238-22.647-3.355.456-3.765.91-7.53 1.375-11.29 7.615 1.092 15.231 2.183 22.847 3.273l2.607-18.2-23.164-3.316c.46-3.593 1.29-9.988 1.76-13.577l22.781 2.55 2.045-17.57c-7.467-.834-14.935-1.671-22.402-2.508.783-5.767 1.917-11.182 2.728-16.943 7.67 1.12 15.341 2.244 23.012 3.368l2.31-17.139c-7.683-1.127-15.366-2.25-23.05-3.374.792-5.415 1.252-10.129 2.071-15.542 7.074 1.264 14.149 2.528 21.223 3.79l3.232-18.1-21.654-3.866c.736-4.676 1.473-9.35 2.23-14.026 6.978 1.673 13.955 3.347 20.932 5.022L465.276 208c-7.401-1.778-14.803-3.554-22.204-5.33a2809.25 2809.25 0 0 1 2.132-12.477c6.98 1.583 13.961 3.165 20.942 4.746l4.064-17.93c-7.271-1.65-14.543-3.298-21.815-4.946.769-4.267 1.55-8.535 2.342-12.805l20.742 5.151 4.431-17.843-21.751-5.405c.741-3.847 1.494-7.696 2.254-11.548l20.28 5.014 4.413-17.849-21.057-5.207a2444.47 2444.47 0 0 1 2.571-12.374c8.386 2.41 13.13 2.364 21.41 4.99L486 88.456c-83.808-26.776-179.25-33.22-244.192-6.453-24.337 114.036-37.305 221.4-68.032 338.64-3.407 13-14.47 21.89-27.342 28.064-27 11.608-64.033 13.778-84.63-4.91-10.971-10.34-16.174-27.036-12.467-47.579 2.303-12.762 10.883-21.986 20.834-26.378 19.749-7.074 43.492-4.25 58.893 7.95 12.463 9.302 12.318 38.283-3.882 31.82-9.639-6.17-1.964-11.851-8.615-17.378-11.6-7.428-26.42-10.872-38.972-5.57-5.564 2.455-8.887 5.737-10.166 12.822-2.94 16.29.685 24.996 6.985 30.933 18.333 13.49 45.279 10.495 64.068 1.712 10.045-4.82 16.277-11.436 17.511-16.147 30.538-116.518 43.443-224.123 68.293-339.964-11.796-28.344-35.67-41.247-58.84-41.225z",fill:"#fff","fill-opacity":"1"})],-1),ot=[lt,nt];function rt(e,t){return(0,o.wg)(),(0,o.iD)("svg",tt,ot)}const at={},it=(0,f.Z)(at,[["render",rt]]);var ct=it;const st={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},ut=(0,o._)("path",{d:"M0 0h512v512H0z",fill:"#000","fill-opacity":"0"},null,-1),mt=(0,o._)("g",{class:"",transform:"translate(0,0)",style:{}},[(0,o._)("path",{d:"M239.283 27.155l-29.615 59.229-12.412-37.23L153 71.281v20.125l33.742-16.87 19.59 58.767 34.387-68.77 47.998 80 35.308-70.613L359 91.407V71.282l-43.025-21.511-28.694 57.384zM89 70.845v46h46v-46zm288 0v46h46v-46zm-304 64v302h94v-112h178v112h94v-302h-79.973l-32 128H184.973l-32-128zm101.027 10l4.5 18h154.946l4.5-18zm8.5 34l4.5 18h137.946l4.5-18zm208.473 27c13.7 0 25 11.3 25 25s-11.3 25-25 25-25-11.3-25-25 11.3-25 25-25zm-336 .816l-30 20v146.184h30zm136.027 6.184l4.5 18h120.946l4.5-18zm199.973 57c13.7 0 25 11.3 25 25s-11.3 25-25 25-25-11.3-25-25 11.3-25 25-25zm66 57v46h30v-46zm-66 7c13.7 0 25 11.3 25 25s-11.3 25-25 25-25-11.3-25-25 11.3-25 25-25zm-206 9v46h17.438L224 345.72l34.467 68.931 9.804-9.806H327v-62zm39 43.127l-10.438 20.873H185v46h142v-30h-51.271l-22.194 22.193zm233 4.873v46h30v-46zm-390 64l-40 30h108v-30zm310 0v30h108l-40-30z",fill:"#fff","fill-opacity":"1"})],-1),dt=[ut,mt];function ft(e,t){return(0,o.wg)(),(0,o.iD)("svg",st,dt)}const pt={},ht=(0,f.Z)(pt,[["render",ft]]);var bt=ht;const vt={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},gt=(0,o._)("path",{d:"M0 0h512v512H0z",fill:"#000","fill-opacity":"0"},null,-1),wt=(0,o._)("g",{class:"",transform:"translate(0,0)",style:{}},[(0,o._)("path",{d:"M85.16 16.84c-29.3.38-53.4 25.41-42.7 70.22l40.3 11.46c3.92-16.7 20.04-27.12 35.34-29.94l1.9-40.46c-11.2-7.76-23.44-11.43-34.84-11.28zm87.64 1.79c-10.2-.1-21.8 3.62-34.2 12.26l-1.8 38.02c14.7 3.29 27.5 13.58 33.4 28.11l32.4-11.85c14.8-35.76-1.3-66.25-29.8-66.54zm230.3 1.06c-9.7-.1-19.5 4.95-16.3 15.6 6 20.14 23.7 16.73 31-.34 4.2-9.92-5.1-15.16-14.8-15.25zm-112.3 5.65c-12.4-.14-24.2 11.9-12.9 35.55-34.2-.71-21.3 46.81 4.4 33.51-13.4 41.4 40.7 47.9 33.5 4.92 32.3 20.28 46.9-12.15 14.7-27.33 42.2-9.17 7.4-59.04-19.8-23.92-.1-15.13-10.2-22.61-19.9-22.72zm10.3 39.21c6.3 0 11.4 5.08 11.4 11.34 0 6.27-5.1 11.34-11.4 11.34-6.3 0-11.3-5.07-11.3-11.34 0-6.26 5-11.34 11.3-11.34zm138.1 1.31c-17.4-.11-28.3 22.49 6.1 35.84-18.3 24.8 32.7 47.4 24.4 5.4 42.7-1.3 17.2-56.74-8-26.56-6.7-10.55-15.2-14.64-22.5-14.68zM119.4 87.38C104.1 91.46 95.36 106.9 99.36 122c4.04 15.3 19.44 24.2 34.64 20.1 15.2-4 24.1-19.5 20-34.7-3.4-12.9-15-21.25-27.7-21.01-2.3.1-4.9.46-6.9.99zm91.3 14.72l-37 13.5c-.3 11.7-4.8 22.6-12.4 31l28.3 28.8c43.7 3.5 62.4-49.3 21.1-73.3zm-178.64 1.4c-36.199 29.3 5.9 104.9 44.2 92l23.5-42.2c-13.88-10.5-19.37-21.5-19.9-36.2zm367.24 20.8c-15 .2-31.8 9.8-46.5 32l11.4 49.3c1.5-.1 3 0 4.5.1 12.5.9 24.5 6.3 33.4 15.6l39.4-27.7c5.4-39.9-14.8-68.7-40.8-69.3zm79.1 28.1c-21 .6-22.3 18.6-7.7 30.1 17 13.2 29.9-30.7 7.7-30.1zm-165.3 3.5c-40.1.4-74.3 32.3-43.4 88.4l46.1.1c3.3-18.7 15.2-28.7 30.1-35.1l-11.8-50.7c-6.9-1.9-14.1-2.8-21-2.7zm-167 1.8c-9.1 4.1-20.5 4.9-29.2 3.1l-22.14 39.9c35.34 42.4 66.94 18.7 77.84-16zm298 57L412.3 237c4.8 11.9 4.9 24.8.8 36.3l36 21.3c51.6-7.4 55.5-71.5-5-79.9zm-78.9 9.5c-5.5 0-11 1.4-16.1 4.3-15.5 9-20.7 28.5-11.8 44 9 15.5 28.5 20.8 44 11.8 15.5-8.9 20.8-28.5 11.8-44-5.6-9.7-15.3-15.4-25.6-16.1zM79.66 235.6c-34.7.5-57.8 31.9-33.3 81.6l53.2 16.7c7.64-14 21.24-24.2 37.44-27.3l-3-48.8c-18.1-15.5-37.54-22.5-54.34-22.2zm113.94 2.8c-13.1.2-27.7 6.9-40.7 22.4l2.8 45.4c13.3 2.1 25.1 9.1 33.4 19.1l39.2-22.2c15.1-35.7-6.5-65.2-34.7-64.7zm73 24.5c-30.8 56.4 24.9 96.3 68.2 80.7l11.3-40.1c-10.1-4.1-19.1-11.5-24.9-21.6-3.5-6-5.5-12.3-6.4-18.8zm137.2 26.6c-3.6 4.3-8 8-13.1 11-8.3 4.7-17.3 6.9-26.2 6.8l-12 42.6c33.6 38 90.6 1.2 86.5-39.6zM233 322l-34.6 19.5c5.7 15.8 2.9 34.4-5.1 47.4l30.2 31.7c67.6-28.1 48.5-74.9 9.5-98.6zm-85.7 2.2c-19.9 0-35.8 16-35.8 35.8 0 19.9 15.9 35.8 35.8 35.8 19.8 0 35.7-15.9 35.7-35.8 0-19.8-15.9-35.8-35.7-35.8zM40.46 334.9c-36.699 38.3-23 115.2 44 109.5l25.84-44.5c-14.61-13.3-19.79-30.8-16.74-48.3zm425.94 22c-15.5.1-41.5 23.1-13.8 29-3.3 38 49.1 5.5 23-14 2-11.1-2.7-15.1-9.2-15zm-119.2 24.4c-8 0-16.3 7.1-19.4 25.4-23.9-30.7-58.2 4.6-20.5 26.8-47.6 24.4 2.6 57 21.9 27.5 4.3 49.5 60.8 18.2 29.1-10.8 40.2 6.6 40.1-32.2 1-31 13.6-18.7 1.2-38-12.1-37.9zm-166.4 21.5c-18.1 11.8-36 15.2-54.8 7.3l-28.94 49.8C118.7 511.3 218.5 487 217.4 439.3l-.9.9zm156.4 20.8c6.3 0 11.3 5.1 11.3 11.3 0 6.3-5 11.4-11.3 11.4-6.3 0-11.3-5.1-11.3-11.4 0-6.2 5-11.3 11.3-11.3zm108.1 7c-12.2-.4-16.2 20.1 6.4 32.9-21.5 28.8 29.4 50.7 23.8 6.8 36.7 7 9.6-36.1-8.5-20.7-7.8-13.5-15.7-18.8-21.7-19z",fill:"#fff","fill-opacity":"1"})],-1),yt=[gt,wt];function _t(e,t){return(0,o.wg)(),(0,o.iD)("svg",vt,yt)}const zt={},kt=(0,f.Z)(zt,[["render",_t]]);var xt=kt,Mt={name:"Form",components:{BigCheckbox:Fe,FormSection:Ee,ArchitecturyLogo:Re,ForgeLogo:et,FabricLogo:ct,DatagenIcon:bt,QuiltflowerIcon:xt}};const Wt=(0,f.Z)(Mt,[["render",ge]]);var Dt=Wt,Ft={name:"HomeView",components:{TemplateForm:Dt}};const Ct=(0,f.Z)(Ft,[["render",C]]);var Lt=Ct;const jt=[{path:"/",name:"home",component:Lt},{path:"/about",name:"about",component:()=>l.e(443).then(l.bind(l,4466))}],Tt=(0,F.p7)({history:(0,F.r5)(),routes:jt});var Ht=Tt;(0,n.ri)(D).use(Ht).mount("#app")}},t={};function l(n){var o=t[n];if(void 0!==o)return o.exports;var r=t[n]={exports:{}};return e[n].call(r.exports,r,r.exports,l),r.exports}l.m=e,function(){var e=[];l.O=function(t,n,o,r){if(!n){var a=1/0;for(u=0;u=r)&&Object.keys(l.O).every((function(e){return l.O[e](n[c])}))?n.splice(c--,1):(i=!1,r0&&e[u-1][2]>r;u--)e[u]=e[u-1];e[u]=[n,o,r]}}(),function(){l.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return l.d(t,{a:t}),t}}(),function(){l.d=function(e,t){for(var n in t)l.o(t,n)&&!l.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}}(),function(){l.f={},l.e=function(e){return Promise.all(Object.keys(l.f).reduce((function(t,n){return l.f[n](e,t),t}),[]))}}(),function(){l.u=function(e){return"js/about.50bec076.js"}}(),function(){l.miniCssF=function(e){}}(),function(){l.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){l.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="addon-templatinator:";l.l=function(n,o,r,a){if(e[n])e[n].push(o);else{var i,c;if(void 0!==r)for(var s=document.getElementsByTagName("script"),u=0;u
51 | - 40.1.43 [1.18] Avoid exclusive synchronisation in block render type lookups (#8476)
52 | - 40.1.42 [1.18] Fix command redirects by replacing Commands#fillUsableCommands (#8616)
53 | Commands#fillUsableCommands does not handle redirect nodes properly. It
54 | blindly pulls from the cached node map for a redirect node, which may
55 | have no result because the target node of the redirect has not been
56 | visited yet.
57 | CommandHelper#mergeCommandNode is better in this regard, because it
58 | visits the target node of the redirect instead of blindly pulling from
59 | the node map.
60 | Fixes #7551
61 | - 40.1.41 [1.18] Fix tags command suggestion to include dynamic registries (#8638)
62 | Manually entering the names of dynamic registries work as expected. The
63 | suggestions for registries didn't include dynamic registries because
64 | they queried the static registries rather than querying all registries
65 | from the server's `RegistryAccess` (which includes both static
66 | registries and dynamic registries).
67 | - 40.1.40 Low code language provider (#8633)
68 | Co-authored-by: Curle <42079760+TheCurle@users.noreply.github.com>
69 | - 40.1.39 [1.18.x] Add checkJarCompatibility task (#8644)
70 | - 40.1.38 [1.18.x] Fix Banner Patterns not being extensible (#8530)
71 | Co-authored-by: Curle <42079760+TheCurle@users.noreply.github.com>
72 | - 40.1.37 1.18.x Port BiomeDictionary over to biome tags (#8564)
73 | - 40.1.36 [1.18.x] Enable the Forge light pipeline by default (#8629)
74 | - 40.1.35 [1.18.x] Allow Modders to add custom data-pack registries through RegistryBuilder (#8630)
75 | Co-authored-by: Silverminer007 <66484505+Silverminer007@users.noreply.github.com>
76 | Co-authored-by: Curle <42079760+TheCurle@users.noreply.github.com>
77 | - 40.1.34 [1.18] Allow custom rarities to directly modify the style (#8648)
78 | - 40.1.33 [1.18] Fix reload listener registration in ModelLoaderRegistry (#8650)
79 | - 40.1.32 Fix wrong position in Level#hasChunk() call in IForgeBlockGetter (#8654)
80 | - 40.1.31 Add ItemStack context to Enchantment#getDamageBonus (#8635)
81 | - 40.1.30 Fix attack cooldown bar showing when out of reach of target. Closes #8639 (#8640)
82 | - 40.1.29 Improve TagsUpdatedEvent by adding update case information. (#8636)
83 | - 40.1.28 Deprecate patched-in Style methods for removal, vanilla variants exist. (#8615)
84 | - 40.1.27 Add pack-type-specific format versions in pack metadata. Fixes #8563 (#8612)
85 | - 40.1.26 Catch and aggregate exceptions during NewRegistryEvent (#8601)
86 | - 40.1.25 Added removeErroringEntities config option (#8627)
87 | Counterpart to removeErroringBlockEntities
88 | - 40.1.24 Add missing patches for not lowering mipmap level for small textures (#8622)
89 | - 40.1.23 Make TransformType enum extensible, includes the possibility to specify a fallback type for cases where models don't specify the transform explicitly. (#8566)
90 | Makes it possible to add new perspectives.
91 | - 40.1.22 Fix CheckSAS to actually validate that the SAS line will do something.
92 | This removes all method level lines as they are not necessary now.
93 | - 40.1.21 Add Attack Range attribute and Update Reach Distance (#8478)
94 | - 40.1.20 Implement PlayerNegotiationEvent (#8599)
95 | - 40.1.19 Fire EntityTravelToDimensionEvent in all expected cases (#8614)
96 | Fixes #8520
97 | - 40.1.18 Fix isEdible crash (#8613)
98 | Fixes #8602
99 | - 40.1.17 Fix typo in Snow Golem patch causing them to destroy blocks they shouldn't. Closes #8611
100 | - 40.1.16 Re-introduce an attribute for entity step height in a non-breaking way (#8607)
101 | - 40.1.15 Revert step height attribute (#8604)
102 | - 40.1.14 [1.18.x] Fix ContextNbtProvider serializing the wrong name (#8575)
103 | - 40.1.13 Let BaseRailBlock decide if the calculated RailShape for placement or connection to neighbors is valid (#8562)
104 | - 40.1.12 Fix shears not playing a breakage sound (#8600)
105 | - 40.1.11 Update IExtensionPoint javadoc to be correct (#8568)
106 | - 40.1.10 Fix IDs of Multi-part entities being desynced across client and server. (#8576)
107 | - 40.1.9 Expose ICondition$IContext to modded reload listeners. (#8596)
108 | - 40.1.8 Fix undead causing chunkloading leading to extensive lag (#8583)
109 | - 40.1.7 Accomodate Bukkit-like Servers not sending Command Args (#8582)
110 | Note to modded server devs:
111 | Please, please, please implement full compatibility with [Brigadier](https://github.com/Mojang/Brigadier) instead of hacking around it.
112 | - 40.1.6 Restore translation key comments to ForgeConfigSpec (#8584)
113 | - 40.1.5 Fix entity parts being ignored when collecting entities in an AABB (#8588)
114 | Previously entity parts are only taken into consideration when the parent entity is in a chunk that intersects with the AABB
115 | - 40.1.4 Fix EntityInteraction event running twice on client side (#8598)
116 | - 40.1.3 Introduce an attribute for step height additions (#8389)
117 | - 40.1.2 Fix shears passing on a client when interacting with a shearable entity (#8597)
118 | Caused the offhand item to also interact with the entity, possibly sending a packet to the server causing both hands to interact
119 | - 40.1.1 Allow Exception passed through CommandEvent to propagate (#8590)
120 | - 40.1.0 Mark 1.18.2 Recommended Build.
121 | Co-authored-by: sciwhiz12
122 | Co-authored-by: Marc Hermans
123 | Co-authored-by: Curle
124 | Co-authored-by: SizableShrimp
125 | Co-authored-by: David Quintana
126 |
127 | 40.0
128 | ====
129 | - 40.0.54 Add event for hooking into StructuresBecomeConfiguredFix Fixes #8505
130 | Pass-through unknown structure IDs with "unknown." prefix
131 | This avoids the fixer throwing an exception due to the unknown
132 | structure, which causes the chunk data to be dropped (and freshly
133 | regenerated later). The deserializer logs and ignores the unknown
134 | structure ID, avoiding full chunk data loss.
135 | - 40.0.53 Fix missed patch for loading modded dimensions on Dedicated Server start (#8555)
136 | - 40.0.52 Fix potential concurrency issues with BiomeDictionary. Closes #8266
137 | - 40.0.51 Fix debug text being rendered slightly wrong.
138 | - 40.0.50 Fix intrusive handlers on dummy objects.
139 | - 40.0.49 Amend license header to include contributors and apply to FML subprojects (#8525)
140 | After internal discussion, it was decided that we need to include
141 | "contributors" to the license header. This avoids claiming that the
142 | Java source files are under the exclusive copyright ownership of Forge
143 | LLC, which excludes contributors that still hold copyright ownership
144 | over their contributions (but is licensed under the LGPLv2.1 as stated
145 | in the Forge CLA).
146 | - 40.0.48 Add modern implementation of the Slider widget and deprecate the old one (#8496)
147 | - 40.0.47 Implement ItemStack and LivingEntity sensitive method to get the FoodProperties for an Item (#8477)
148 | - 40.0.46 Add use context and simulate flag to getToolModifiedState, enabled HOE_TILL action. (#8557)
149 | - 40.0.45 Remove bad patch for AbstractFurnaceBlockEntity (#8561)
150 | The patch prevented the entity from being marked as changed when an
151 | item finished smelting.
152 | - 40.0.44 Fix issues with custom forge ingredients causing sub ingredients to be prematurely and invalidly cached (#8550)
153 | Add config option and skip checking for empty ingredients in shapeless recipe deserialization
154 | - 40.0.43 Add EnderManAngerEvent to make it possible to prevent endermen getting angry at a player based on more then their helmet. (#8406)
155 | - 40.0.42 Fix misaligned patch in BlockEntity.save.
156 | - 40.0.41 Expose `getHolder()` method on RegistryObject, as helper for when absolutely necessary to pass into Vanilla code. (#8548)
157 | It is recommended you avoid if you can.
158 | - 40.0.40 Fix return value of Recipe#isIncomplete being inaccurate for empty tags (#8549)
159 | - 40.0.39 Simplfy default behavior of isSimple (#8543)
160 | isSimple should only return true if the ingredient is any more sensitive then JUST itemA == itemB
161 | It used to take metadata and damage into account, but that was removed in the flattening.
162 | Also prevents fetching tag values too early, as tags are not ready during the ingredient constructor
163 | - 40.0.38 Implement IPlantable in BambooBlock (#8508)
164 | - 40.0.37 Fix compiler error in eclipse, bump MCPConfig for FF/Record fix.
165 | - 40.0.36 Fix TagEmptyCondition by passing tag context into conditional and recipe deserializers. (#8546)
166 | - 40.0.35 Allow using DeferredRegisters for vanilla registries (#8527)
167 | Catch and aggregate exceptions when applying object holders
168 | - 40.0.34 Remove cut copper from copper storage blocks tag. Closes #8403 (#8539)
169 | - 40.0.33 Fix brewing stand input placement not auto-splitting stackable potions. (#8534)
170 | - 40.0.32 Fix lost validation of registry data on singleplayer world load (#8533)
171 | Fix some leftover 1.18.2 TODOs
172 | - 40.0.31 1.18 Allow mod menus to have their own recipebook (#8028)
173 | - 40.0.30 [1.18.x] Add 3 new ingredient types, and make existing ingredients compatible with datagen (#8517)
174 | - 40.0.29 [1.18.x] Add the projectile search event. (#8322)
175 | Co-authored-by: noeppi_noeppi
176 | - 40.0.28 Allow confirm-and-save of the Experimental Settings warning. (#7275)
177 | - 40.0.27 Add hook for powdered-snow shoes (#8514)
178 | - 40.0.26 Add some helper Access Transformers (#8490)
179 | - 40.0.25 Fix incorrect method used in getStream (#8532)
180 | The original correct method is getPath, but the patch uses getLocation.
181 | The former is the actual resource path to the sound OGG file, while the
182 | latter is the sound's location.
183 | Fixes #8531
184 | - 40.0.24 [1.18] Make it easier to register custom skull blocks models (#8351)
185 | - 40.0.23 Rework fog events (#8492)
186 | - 40.0.22 Update Forge Auto Renaming Tool to the latest version (#8515)
187 | - 40.0.21 Add patches to enable MobEffects with IDs > 255 (#8380)
188 | - 40.0.20 Allow sound instances to play custom audio streams (#8295)
189 | - 40.0.19 Fix NPE caused by canceling onServerChatEvent (#8516)
190 | - 40.0.18 [1.18.2] Fix tags for custom forge registries. (#8495)
191 | Tag-enabled registries must now be registered to vanilla's root registry. See RegistryBuilder#hasTags.
192 | Modded tag-enabled registries have to use the format `data//tags///.json`
193 | This format is to prevent conflicts for registries with the same path but different namespaces
194 | EX: Registry name `AddonTemplate:shoe`, tag name `blue_shoes` would be `data//tags/AddonTemplate/shoe/blue_shoes.json`
195 | RegistryEvent.NewRegistry has been moved and renamed to NewRegistryEvent.
196 | RegistryBuilder#create has been made private. See NewRegistryEvent#create
197 | Created new ITagManager system for looking up Forge tags. See IForgeRegistry#tags.
198 | Add lookup methods for Holders from forge registries. See IForgeRegistry#getHolder.
199 | - 40.0.17 Lower custom item entity replacement from highest to high so mods can cancel it during a specific tick (#8417)
200 | - 40.0.16 Fix MC-176559 related to the Mending enchantment (#7606)
201 | - 40.0.15 [1.18.x] Allow blocks to hide faces on a neighboring block (#8300)
202 | * Allow blocks to hide faces on a neighboring block
203 | * Allow blocks to opt-out of external face hiding
204 | - 40.0.14 [1.18.x] Fix FMLOnly in forgedev and userdev (#8512)
205 | - 40.0.13 Clear local variable table on RuntimeEnumExtender transformation (#8502)
206 | - 40.0.12 Pass server resources to reload listener event (#8493)
207 | - 40.0.11 Use UTF-8 charset for Java compilation (#8486)
208 | - 40.0.10 Use wither as griefing entity when it indirectly hurts an entity (#8431)
209 | - 40.0.9 Provide access to the haveTime supplier in WorldTickEvent and ServerTickEvent (#8470)
210 | - 40.0.8 Fix durability bar not respecting an item's custom max damage (#8482)
211 | - 40.0.7 Add event for controlling potion indicators size (#8483)
212 | This event allows forcing the rendering of the potion indicators in the
213 | inventory screen to either compact mode (icons only) or classic mode
214 | (full width with potion effect name).
215 | - 40.0.6 Introduce system mods to mod loading (#8238)
216 | Core game mods are mods which are required to exist in the environment
217 | during mod loading. These may be specially provided mods (for example,
218 | the `minecraft` mod), or mods which are vital to the framework which
219 | FML is connected to (for example, Forge and the `forge` mod).
220 | These core game mods are used as the only existing mods in the mod list
221 | if mod sorting or dependency verification fails. This allows later
222 | steps in the which use resources from these mod files to work correctly
223 | (up to when the error screen is shown and the game exits).
224 | - 40.0.5 Add missing module exports arg to server arguments list (#8500)
225 | - 40.0.4 Fixed swim speed attribute (#8499)
226 | - 40.0.3 Fix incorrect movement distance calculation (#8497)
227 | - 40.0.2 Add support to Forge registry wrappers for new Holder system. Closes #8491
228 | Fix TagBasedToolTypesTest not generating needed data correctly.
229 | - 40.0.1 Fix JNA not working at runtime and causing issues with natives.
230 | - 40.0.0 Update to 1.18.2
231 | Co-authored-by: sciwhiz12
232 | Co-authored-by: Marc Hermans
233 | Co-authored-by: LexManos
234 | Co-authored-by: Curle
235 |
236 | 39.1
237 | ====
238 | - 39.1.2 1.18.x Omnibus (#8239)
239 | - 39.1.1 Bump modlauncher and securejarhandler version (#8489)
240 | - 39.1.0 Update license headers to compact SPDX format.
241 | License has not changed, this is just more compact and doesn't include years.
242 | Bump version for RB.
243 |
244 | 39.0
245 | ====
246 | - 39.0.91 Remove - from allowed characters in mod ids.
247 | The Java Module System does not allow them in module ids.
248 | Closes #8488
249 | - 39.0.90 Fix static initializer crash when loading BakedRenderable.
250 | - 39.0.89 Fix regressions for onAddedTo/RemovedFromWorld and related events (#8434)
251 | - 39.0.88 [1.18] Integrate the gametest framework with Forge (#8225)
252 | - 39.0.87 Re-add missing Shulker patch for EntityTeleportEvent (#8481)
253 | - 39.0.86 Fix entity type in conversion event to Drowned (#8479)
254 | - 39.0.85 Add VanillaGameEvent to allow for globally listening to vanilla's GameEvents (#8472)
255 | - 39.0.84 Provide damage source context to Item#onDestroyed(ItemEntity) (#8473)
256 | - 39.0.83 Add missing shear and elytra game events (#8471)
257 | - 39.0.82 Fix comment for permission handler config setting (#8466)
258 | - 39.0.81 Apply nullable annotations to LootingLevelEvent (#8422)
259 | - 39.0.80 Fix Mob Spawner logic with CustomSpawnRules. Closes #8398
260 | - 39.0.79 Fix LivingDropsEvent not having all drops for foxes (#8387)
261 | - 39.0.78 Add missing Locale parameter to String.format calls, Fixes getArmorResource functionality on some locaales. (#8463)
262 | - 39.0.77 Allow items to hide parts of their tooltips by default (#8358)
263 | - 39.0.76 Prevent 1.x Branches being treated as Pull Requests. (#8443)
264 | - 39.0.75 Fix RegistryObject not working if created after registry events (#8383)
265 | - 39.0.74 Add support for tagging StructureFeatures (#8408)
266 | - 39.0.73 Re-added the patch for LivingExperienceDropEvent and enable it for dragons (#8388)
267 | - 39.0.72 Implement getPickupSound on ForgeFlowingFluid (#8374)
268 | - 39.0.71 Add getCodec method in ForgeRegistry (#8333)
269 | - 39.0.70 Fix #8298 (MobBucketItem) and add test mod (#8313)
270 | - 39.0.69 Deprecate IForgeAbstractMinecart::getCartItem (#8283)
271 | - 39.0.68 Fix HoeItem patch incorrectly applied during migration. (#8384)
272 | - 39.0.67 Fix issues with client only commands in combination with server only commands not using MC's command system. (#8452)
273 | - 39.0.66 Fix FoliagePlacerType and TreeDecoratorType registry (#8394)
274 | - 39.0.65 Fix PlayerChangeGameModeEvent (#8441)
275 | - 39.0.64 Fix comparison of custom ParticleRenderTypes leading to broken particle effects. (#8385)
276 | - 39.0.63 Fix cases where null is potentially sent to Screen events. Closes #8432
277 | - 39.0.62 Ensure ScreenEvent doesn't accept null screens (#8296)
278 | - 39.0.61 Update cobblestone tags (#8292)
279 | - 39.0.60 Prevent release of custom payload packet buffer on the server side. (#8181)
280 | - 39.0.59 Make `MinecraftLocator` respect non-`MOD` FML Mod Types Fixes #8344 (#8346)
281 | - 39.0.58 Fix vanilla worlds being marked experimental (#8415)
282 | - 39.0.57 Simplify usage of IItemRenderProperties::getArmorModel (#8349)
283 | - 39.0.56 Hide mod update notification while screen is still fading in (#8386)
284 | - 39.0.55 Revert "Hooks to allow registering and managing custom DFU schemes and types. (#8242)"
285 | - 39.0.54 Provide NPE protection against out of order init of the TYPES and REF (#8410)
286 | - 39.0.53 Add ShieldBlockEvent (#8261)
287 | - 39.0.52 Add renderable API to allow easier rendering of OBJ and other custom models, from Entity and BlockEntity renderers. (#8259)
288 | This is a redesign of a discarded section of my initial model system rewrite, back in 1.14.
289 | In order to use it with the OBJ loader, you can use OBJLoader.INSTANCE.loadModel to get the OBJModel, and then call OBJModel#bakeRenderable() to get a SimpleRenderable object to render with.
290 | The SimpleRenderable support animation, by providing different transformation matrices for each part in the MultipartTransforms.
291 | Additionally, a BakedRenderable helper exists to turn an arbitrary BakedModel into a renderable.
292 | After trying to get the B3D loader to work, I decided it wasn't worth the trouble and marked it for removal instead.
293 | - 39.0.51 Merge values of defaulted optional tags, Fixes issue where multiple mods declare the same optional tag. (#8250)
294 | - 39.0.50 Added new 1.18 biomes to the BiomeDictionary (#8246)
295 | - 39.0.49 Hooks to allow registering and managing custom DFU schemes and types. (#8242)
296 | - 39.0.48 Ping data compression (#8169)
297 | - 39.0.47 Expand the LevelStem codec to allow dimension jsons to specify that the dimension's chunk generator should use the overworld/server's seed (#7955)
298 | - 39.0.46 Add Client Commands (#7754)
299 | - 39.0.45 Remove references to the now-broken `BlockEntity#save(CompoundTag)` method (#8235)
300 | - 39.0.44 update McModLauncher libraries to newer versions...
301 | - 39.0.43 add extra keystore properties
302 | - 39.0.42 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
303 | - 39.0.41 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
304 | - 39.0.40 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
305 | - 39.0.39 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
306 | - 39.0.38 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
307 | - 39.0.37 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
308 | - 39.0.36 fix crowdin key
309 | - 39.0.35 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
310 | - 39.0.34 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
311 | - 39.0.33 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
312 | - 39.0.32 fix secondary branches builds
313 | - 39.0.31 TeamCity change in 'MinecraftForge / MinecraftForge' project: parameters of 'Build - Secondary Branches' build configuration were updated
314 | - 39.0.30 TeamCity change in 'MinecraftForge / MinecraftForge' project: VCS roots of 'Build - Secondary Branches' build configuration were updated
315 | - 39.0.29 TeamCity change in 'MinecraftForge / MinecraftForge' project: VCS roots of 'Build - Secondary Branches' build configuration were updated
316 | - 39.0.28 TeamCity change in 'MinecraftForge / MinecraftForge' project: VCS roots of 'Build - Secondary Branches' build configuration were updated
317 | - 39.0.27 TeamCity change in 'MinecraftForge / MinecraftForge' project: parameters of 'Build - Secondary Branches' build configuration were updated
318 | - 39.0.26 TeamCity change in 'MinecraftForge / MinecraftForge' project: parameters of 'Build - Secondary Branches' build configuration were updated
319 | - 39.0.25 TeamCity change in 'MinecraftForge / MinecraftForge' project: VCS roots of 'Build - Secondary Branches' build configuration were updated
320 | - 39.0.24 Remove primary branches from building on secondary branch configuration and publish crowdin data. (#8397)
321 | * Remove the normalized branch names also from the filter.
322 | * Add the additional publishing arguments to get the crowdin information.
323 | * TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
324 | * Fix the configuration.
325 | * Remove the required patch and use the base script.
326 | * Make a note about the reference.
327 | Co-authored-by: cpw
328 | - 39.0.23 TeamCity change in 'MinecraftForge / MinecraftForge' project: project parameters were changed
329 | - 39.0.22 Correct the build configuration to support a setup. (#8395)
330 | * Add a setup task and publish the correct versions.
331 | * Reconfigure build task and disable the normal build and test cycle on everything but pull requests, run an assemble there.
332 | * Fix the derp in the build configuration.
333 | - 39.0.21 Enable the TeamCity CI pipeline (#8368)
334 | * Setup the build.gradle
335 | * Setup the teamcity toolchain.
336 | * Revert the usage of the local build of GU.
337 | * Automatically add it now, it will always exist and is added to maven automatically by GU.
338 | * Implement the branch filter and move the constant for the minimal changelog tag to a constant in the extension.
339 | * Adding the JDK and Gradle version to the build script.
340 | - 39.0.20 Fix and improve Ingredient invalidation (#8361)
341 | - 39.0.19 Rework world persistence hooks to fix the double registry injection when loading single player worlds. (#8234)
342 | - 39.0.18 Update tags for new 1.17 and 1.18 content (#7891)
343 | - 39.0.17 Fix TerrainParticle rendering black under certain conditions (#8378)
344 | - 39.0.16 Allow modded tools to work on glow lichen (#8371)
345 | - 39.0.15 Fix custom climbable blocks not sending a death message (#8372)
346 | Fixes #8370
347 | - 39.0.14 Provide access to the blockstate in BucketPickup#getPickupSound for multiply-logged blocks (#8357)
348 | - 39.0.13 Fix clients being unable to deserialize tags for custom registries (#8352)
349 | - 39.0.12 Fix particles going fullbright for a few frames when first spawning (#8291)
350 | - 39.0.11 Also create parent directories when creating config files (#8364)
351 | - 39.0.10 Fix crash with PermissionsAPI (#8330)
352 | Fixes a crash in singleplayer, when the internal server didn't shut down correctly between world loads.
353 | - 39.0.9 Re-add missing default spawn lists in features (#8285)
354 | Fixes #8265
355 | Fixes #8301
356 | - 39.0.8 Fixed incorrect generic in PermissionAPI (#8317)
357 | - 39.0.7 Redo of the whole PermissionAPI (#7780)
358 | Co-authored-by: LexManos
359 | - 39.0.6 Fix misplaced patch in SpreadingSnowyDirtBlock.
360 | Fixes #8308.
361 | - 39.0.5 Add RenderArmEvent to make overriding just the arm rendering not require copying nearly as much vanilla code (#8254)
362 | - 39.0.4 Add MobEffect tags (#8231)
363 | - 39.0.3 Log missing or unsupported dependencies (#8218)
364 | - 39.0.2 Fix datagen test for sounds definitions provider (#8249)
365 | - 39.0.1 Fix wrong stage being declared in transition to common (#8267)
366 | - 39.0.0 Update to 1.18.1
367 | Co-Authored by:
368 | - Curle
369 | _ Orion
370 |
371 |
--------------------------------------------------------------------------------
/forge-template-legacy/gradle.properties:
--------------------------------------------------------------------------------
1 | # Sets default memory used for gradle commands. Can be overridden by user or command line properties.
2 | # This is required to provide enough memory for the Minecraft decompilation process.
3 | org.gradle.jvmargs=-Xmx3G
4 | org.gradle.daemon=false
5 | mixingradle_version=0.7-SNAPSHOT
6 |
7 | jei_version=9.7.0.229
8 |
9 | # 1.18.2
10 | create_version = 0.5.0.i-249
11 | flywheel_version = 0.6.8.a-99
12 | registrate_version = MC1.18.2-1.1.3
13 |
14 | # 1.19.2
15 | # create_version = 0.5.0.i-23
16 | # flywheel_version = 0.6.8.a-14
17 | # registrate_version = MC1.19-1.1.5
18 |
19 | maven_group = com.rabbitminers
20 | archives_base_name = addontemplate
21 | mod_version = 0.0.1
22 |
23 | # For 1.19.2 use - 43.2.0
24 | forge_version = 40.1.68
25 | # For 1.19.2 use 1.19.2
26 | minecraft_version = 1.18.2
27 |
28 |
--------------------------------------------------------------------------------
/forge-template-legacy/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/forge-template-legacy/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/forge-template-legacy/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 |
--------------------------------------------------------------------------------
/forge-template-legacy/gradlew:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Rabbitminers/Create-Mod-Addon-Template/924beebd9b53e6257cfd64af7b1b41ab838c9faf/forge-template-legacy/gradlew
--------------------------------------------------------------------------------
/forge-template-legacy/gradlew.bat:
--------------------------------------------------------------------------------
1 | @rem
2 | @rem Copyright 2015 the original author or authors.
3 | @rem
4 | @rem Licensed under the Apache License, Version 2.0 (the "License");
5 | @rem you may not use this file except in compliance with the License.
6 | @rem You may obtain a copy of the License at
7 | @rem
8 | @rem https://www.apache.org/licenses/LICENSE-2.0
9 | @rem
10 | @rem Unless required by applicable law or agreed to in writing, software
11 | @rem distributed under the License is distributed on an "AS IS" BASIS,
12 | @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | @rem See the License for the specific language governing permissions and
14 | @rem limitations under the License.
15 | @rem
16 |
17 | @if "%DEBUG%" == "" @echo off
18 | @rem ##########################################################################
19 | @rem
20 | @rem Gradle startup script for Windows
21 | @rem
22 | @rem ##########################################################################
23 |
24 | @rem Set local scope for the variables with windows NT shell
25 | if "%OS%"=="Windows_NT" setlocal
26 |
27 | set DIRNAME=%~dp0
28 | if "%DIRNAME%" == "" set DIRNAME=.
29 | set APP_BASE_NAME=%~n0
30 | set APP_HOME=%DIRNAME%
31 |
32 | @rem Resolve any "." and ".." in APP_HOME to make it shorter.
33 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
34 |
35 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
36 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
37 |
38 | @rem Find java.exe
39 | if defined JAVA_HOME goto findJavaFromJavaHome
40 |
41 | set JAVA_EXE=java.exe
42 | %JAVA_EXE% -version >NUL 2>&1
43 | if "%ERRORLEVEL%" == "0" goto execute
44 |
45 | echo.
46 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
47 | echo.
48 | echo Please set the JAVA_HOME variable in your environment to match the
49 | echo location of your Java installation.
50 |
51 | goto fail
52 |
53 | :findJavaFromJavaHome
54 | set JAVA_HOME=%JAVA_HOME:"=%
55 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
56 |
57 | if exist "%JAVA_EXE%" goto execute
58 |
59 | echo.
60 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
61 | echo.
62 | echo Please set the JAVA_HOME variable in your environment to match the
63 | echo location of your Java installation.
64 |
65 | goto fail
66 |
67 | :execute
68 | @rem Setup the command line
69 |
70 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
71 |
72 |
73 | @rem Execute Gradle
74 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
75 |
76 | :end
77 | @rem End local scope for the variables with windows NT shell
78 | if "%ERRORLEVEL%"=="0" goto mainEnd
79 |
80 | :fail
81 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
82 | rem the _cmd.exe /c_ return code!
83 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
84 | exit /b 1
85 |
86 | :mainEnd
87 | if "%OS%"=="Windows_NT" endlocal
88 |
89 | :omega
90 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/java/com/rabbitminers/addontemplate/AddonTemplate.java:
--------------------------------------------------------------------------------
1 | package com.rabbitminers.addontemplate;
2 |
3 | import com.mojang.logging.LogUtils;
4 | import com.rabbitminers.addontemplate.index.AddonBlocks;
5 | import com.rabbitminers.addontemplate.index.AddonItems;
6 | import com.rabbitminers.addontemplate.index.AddonTileEntities;
7 | import com.simibubi.create.AllBlocks;
8 | import com.simibubi.create.foundation.data.CreateRegistrate;
9 | import com.tterrag.registrate.util.nullness.NonNullSupplier;
10 | import net.minecraft.world.item.CreativeModeTab;
11 | import net.minecraft.world.item.ItemStack;
12 | import net.minecraft.world.level.block.Block;
13 | import net.minecraft.world.level.block.Blocks;
14 | import net.minecraftforge.common.MinecraftForge;
15 | import net.minecraftforge.event.RegistryEvent;
16 | import net.minecraftforge.eventbus.api.IEventBus;
17 | import net.minecraftforge.eventbus.api.SubscribeEvent;
18 | import net.minecraftforge.fml.InterModComms;
19 | import net.minecraftforge.fml.common.Mod;
20 | import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
21 | import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent;
22 | import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent;
23 | import net.minecraftforge.event.server.ServerStartingEvent;
24 | import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
25 | import org.slf4j.Logger;
26 |
27 | import java.util.stream.Collectors;
28 |
29 | // The value here should match an entry in the META-INF/mods.toml file
30 | @Mod(AddonTemplate.MODID)
31 | public class AddonTemplate {
32 | public static final String MODID = "addontemplate";
33 | private static final NonNullSupplier registrate = CreateRegistrate.lazy(AddonTemplate.MODID);
34 | // Directly reference a slf4j logger
35 | public static final Logger LOGGER = LogUtils.getLogger();
36 |
37 | // TODO: Add new icon for your mod's item group
38 | public static final CreativeModeTab itemGroup = new CreativeModeTab(MODID) {
39 | @Override
40 | public ItemStack makeIcon() {
41 | return new ItemStack(AllBlocks.FLYWHEEL.get());
42 | }
43 | };
44 |
45 | public AddonTemplate()
46 | {
47 | IEventBus eventBus = FMLJavaModLoadingContext.get().getModEventBus();
48 |
49 | /*
50 | For adding simple kinetic blocks this is all you need but for fluids etc.
51 | see the Create GitHub repo -
52 | https://github.com/Creators-of-Create/Create/tree/mc1.18/dev/src/main/java/com/simibubi/create
53 | */
54 |
55 | AddonBlocks.register();
56 | AddonItems.register(eventBus);
57 | AddonTileEntities.register();
58 | }
59 |
60 | private void setup(final FMLCommonSetupEvent event) {}
61 |
62 | public static CreateRegistrate registrate() {
63 | return registrate.get();
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/java/com/rabbitminers/addontemplate/index/AddonBlocks.java:
--------------------------------------------------------------------------------
1 | package com.rabbitminers.addontemplate.index;
2 |
3 | import com.rabbitminers.addontemplate.AddonTemplate;
4 | import com.simibubi.create.foundation.data.CreateRegistrate;
5 |
6 | public class AddonBlocks {
7 | private static final CreateRegistrate REGISTRATE = AddonTemplate.registrate().creativeModeTab(
8 | () -> AddonTemplate.itemGroup
9 | );
10 |
11 | // See create git for how to register blocks
12 | // - https://github.com/Creators-of-Create/Create/blob/mc1.18/dev/src/main/java/com/simibubi/create/AllBlocks.java
13 |
14 | public static void register() {}
15 | }
16 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/java/com/rabbitminers/addontemplate/index/AddonItems.java:
--------------------------------------------------------------------------------
1 | package com.rabbitminers.addontemplate.index;
2 |
3 | import com.rabbitminers.addontemplate.AddonTemplate;
4 | import com.simibubi.create.foundation.data.CreateRegistrate;
5 | import net.minecraftforge.eventbus.api.IEventBus;
6 |
7 | public class AddonItems {
8 | private static final CreateRegistrate REGISTRATE = AddonTemplate.registrate()
9 | .creativeModeTab(() -> AddonTemplate.itemGroup);
10 |
11 | // See create git for how to register items
12 | // - https://github.com/Creators-of-Create/Create/blob/mc1.18/dev/src/main/java/com/simibubi/create/AllItems.java
13 | public static void register(IEventBus eventBus) {
14 |
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/java/com/rabbitminers/addontemplate/index/AddonTileEntities.java:
--------------------------------------------------------------------------------
1 | package com.rabbitminers.addontemplate.index;
2 |
3 | import com.rabbitminers.addontemplate.AddonTemplate;
4 | import com.simibubi.create.foundation.data.CreateRegistrate;
5 |
6 | public class AddonTileEntities {
7 | private static final CreateRegistrate REGISTRATE = AddonTemplate.registrate();
8 |
9 | // See create git for how to register tile entities
10 | // - https://github.com/Creators-of-Create/Create/blob/mc1.18/dev/src/main/java/com/simibubi/create/AllTileEntities.java
11 | public static void register() {}
12 | }
13 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/java/com/rabbitminers/addontemplate/mixin/MixinDemo.java:
--------------------------------------------------------------------------------
1 | package com.rabbitminers.addontemplate.mixin;
2 |
3 | import com.rabbitminers.addontemplate.AddonTemplate;
4 | import net.minecraft.client.gui.screens.TitleScreen;
5 | import org.spongepowered.asm.mixin.Mixin;
6 | import org.spongepowered.asm.mixin.injection.At;
7 | import org.spongepowered.asm.mixin.injection.Inject;
8 | import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
9 |
10 | @Mixin(TitleScreen.class)
11 | public class MixinDemo {
12 | @Inject(method = "init", at = @At("TAIL"))
13 | private void exampleMixin(CallbackInfo ci) {
14 | AddonTemplate.LOGGER.info("Hello World From {}", AddonTemplate.MODID);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/resources/META-INF/mods.toml:
--------------------------------------------------------------------------------
1 | modLoader="javafml" #mandatory
2 |
3 | loaderVersion="[40,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions.
4 |
5 | license="All rights reserved"
6 |
7 | [[mods]] #mandatory
8 |
9 | modId="addontemplate" #mandatory
10 |
11 | # If you prefer this can be manually set
12 | version="${file.jarVersion}" #mandatory
13 |
14 | # TODO: Add your mods name
15 | displayName="Create Addon Template" #mandatory
16 |
17 | logoFile="AddonTemplate.png" #optional
18 |
19 | credits="Rabbitminers" #optional
20 |
21 | # TODO: Add your name here
22 | authors="yourname" #optional
23 | # The description text for the mod (multi line!) (#mandatory)
24 | # TODO: Describe your mod
25 | description='''
26 | A template for create addons on Create 0.5.i
27 | '''
28 | # A dependency - use the . to indicate dependency for a specific modid. Dependencies are optional.
29 | [[dependencies.addontemplate]] #optional
30 | # the modid of the dependency
31 | modId="forge" #mandatory
32 | # Does this dependency have to exist - if not, ordering below must be specified
33 | mandatory=true #mandatory
34 | # The version range of the dependency
35 | versionRange="[40,)" #mandatory
36 | # An ordering relationship for the dependency - BEFORE or AFTER required if the relationship is not mandatory
37 | ordering="NONE"
38 | # Side this dependency is applied on - BOTH, CLIENT or SERVER
39 | side="BOTH"
40 | # Here's another dependency
41 | [[dependencies.addontemplate]]
42 | modId="minecraft"
43 | mandatory=true
44 | # This version range declares a minimum of the current minecraft version up to but not including the next major version
45 | versionRange="[1.18.2,1.19)"
46 | ordering="NONE"
47 | side="BOTH"
48 |
49 | [[dependencies.addontemplate]]
50 | modId="create"
51 | mandatory=true
52 | versionRange="[0.5.0.d,)"
53 | ordering="NONE"
54 | side="BOTH"
55 |
--------------------------------------------------------------------------------
/forge-template-legacy/main/resources/addontemplate.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": true,
3 | "minVersion": "0.8.2",
4 | "package": "com.rabbitminers.addontemplate.mixin",
5 | "compatibilityLevel": "JAVA_17",
6 | "mixins": [
7 | ],
8 | "client": [
9 | "MixinDemo"
10 | ]
11 | }
--------------------------------------------------------------------------------
/forge-template-legacy/main/resources/assets/addontemplate/lang/en_us.json:
--------------------------------------------------------------------------------
1 | {
2 | "itemGroup.addontemplate": "Create Addon Template"
3 | }
--------------------------------------------------------------------------------
/forge-template-legacy/main/resources/pack.mcmeta:
--------------------------------------------------------------------------------
1 | {
2 | "pack": {
3 | "description": "AddonTemplate resources",
4 | "pack_format": 9,
5 | "forge:resource_pack_format": 8,
6 | "forge:data_pack_format": 9
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/forge-template-legacy/readme.md:
--------------------------------------------------------------------------------
1 | # Create Addon Template
2 | [Forge 1.18.2] - (Update Instructions Included) A minimal template for creating Create 0.5 addons
3 |
4 | ## Setup
5 |
6 | Clone the repository or select "use this template" on the github page
7 | ```
8 | git clone https://github.com/Rabbitminers/Create-Mod-Addon-Template
9 | ```
10 | Open the project in an IDE of your choice, and generate the correct Gradle Runs for your IDE, Create, Flywheel
11 | Registrate and JEI (jei is not mandatory but can be useful when testing) have all been added to your enviroment already
12 | aswell as a registry for blocks, items and tile entities.
13 |
14 | Before running the client follow the provided list of TODO's which will guide you through what needs to be changed/updated
15 | from the default template such as your mod id.
16 |
17 | ## Documentation / Resources
18 |
19 | For more information on Forge you can find the docs here -
20 |
21 | https://docs.minecraftforge.net/en/1.18.x/
22 |
23 | For more information on depending on Create you can find that here -
24 |
25 | https://github.com/Creators-of-Create/Create/wiki/Depending-on-Create
26 |
27 | For more information on working with create you can find that here -
28 |
29 | https://github.com/Creators-of-Create/Create/tree/mc1.18/dev/src
30 |
--------------------------------------------------------------------------------
/forge-template-legacy/workflows/build.yml:
--------------------------------------------------------------------------------
1 | name: build
2 | on: [ pull_request, push ]
3 |
4 | jobs:
5 | build:
6 | strategy:
7 | matrix:
8 | java: [ 17 ]
9 | runs-on: ubuntu-latest
10 | steps:
11 |
12 | - name: checkout repository
13 | uses: actions/checkout@v2
14 |
15 | - name: setup jdk ${{ matrix.java }}
16 | uses: actions/setup-java@v1
17 | with:
18 | java-version: ${{ matrix.java }}
19 |
20 | - uses: actions/cache@v2
21 | with:
22 | path: |
23 | ~/.gradle/caches
24 | ~/.gradle/wrapper
25 | key: ${{ runner.os }}-gradle-${{ hashFiles('**/gradle-wrapper.properties') }}
26 | restore-keys: ${{ runner.os }}-gradle
27 |
28 | - name: make gradle wrapper executable
29 | run: chmod +x ./gradlew
30 |
31 | - name: build
32 | run: ./gradlew build
33 |
34 | - name: capture build artifacts
35 | uses: actions/upload-artifact@v2
36 | with:
37 | name: Artifacts
38 | path: build/libs/
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "templatinator",
3 | "lockfileVersion": 2,
4 | "requires": true,
5 | "packages": {}
6 | }
7 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------