Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework the Getting Started section #28

Merged
merged 7 commits into from
Dec 11, 2023

Conversation

IchHabeHunger54
Copy link
Member

@IchHabeHunger54 IchHabeHunger54 commented Nov 27, 2023

This PR reworks and updates the Getting Started section. Specifically, it:

  • Replaces the old "Download MDK" process with the new "Use GitHub template" process
  • Replaces the old build.gradle modifications with an explanation of the gradle.properties file
  • Adds links to the IntelliJ, Eclipse, Git and GitHub websites
  • Removes the copypasted mods.toml template, replacing it with a link to the MDK mods.toml
  • Replaces the weird (?) versioning recommendations with an explanation of versioning for Minecraft, NeoForge, and popular mods (with references to widely-used mods that use a specific versioning scheme)
  • Removes all mentions of Forge, replacing them with NeoForge where applicable
  • Reformats and rewords major sections
  • Adds examples, where applicable

Disclaimer: I am not 100% certain on the correctness of what I wrote, simply because I am not familiar with everything mentioned (especially the Gradle stuff). Please point out any mistakes I made, so that they can be fixed.


Preview URL: https://pr-28.neoforged-docs-previews.pages.dev

@neoforged-pages-deployments neoforged-pages-deployments bot deployed to neoforged-docs-previews (Preview) November 27, 2023 20:21 Active
@neoforged-pages-deployments
Copy link

neoforged-pages-deployments bot commented Nov 27, 2023

Deploying with Cloudflare Pages

Name Result
Last commit: 7da4029502bdcbb85503abfc61a9078b7e1e9de0
Status: ✅ Deploy successful!
Preview URL: https://213ce2f1.neoforged-docs-previews.pages.dev
PR Preview URL: https://pr-28.neoforged-docs-previews.pages.dev

docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/modfiles.md Outdated Show resolved Hide resolved
docs/gettingstarted/modfiles.md Show resolved Hide resolved
docs/gettingstarted/modfiles.md Outdated Show resolved Hide resolved
docs/gettingstarted/modfiles.md Outdated Show resolved Hide resolved
docs/gettingstarted/modfiles.md Show resolved Hide resolved
docs/gettingstarted/versioning.md Outdated Show resolved Hide resolved
docs/gettingstarted/versioning.md Outdated Show resolved Hide resolved
Co-authored-by: Matyrobbrt <65940752+Matyrobbrt@users.noreply.github.com>
@neoforged-pages-deployments neoforged-pages-deployments bot deployed to neoforged-docs-previews (Preview) December 2, 2023 14:12 Active
Copy link
Contributor

@ChampionAsh5357 ChampionAsh5357 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bunch of random comments.

docs/gettingstarted/index.md Outdated Show resolved Hide resolved
- Open the [Mod Developer Kit (MDK)][mdk] GitHub repository, click "Use this template" and clone the newly-created repository to your local machine.
- If you do not want to use GitHub, or if you want to get the template for an older commit or a non-default branch (which would be the case e.g. for older versions), you can also download the ZIP of the repository (under Code -> Download ZIP) and extract it.
- Open your IDE and import the Gradle project. Eclipse and IntelliJ IDEA will do this automatically for you. If you have an IDE that does not do this, you can also do it via the `gradlew` terminal command.
- When doing this for the first time, Gradle will download all dependencies of NeoForge, including Minecraft itself, and decompile them. This can take a fair amount of time (up to an hour, depending on your hardware and network strength).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably should provide an average time (probably 3-5 minutes) so that models have a better sense of where their hardware may land.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not exactly sure what you mean with "models"? I stated that depending on your hardware and network, it can take some time.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant modders. Just have a slight concern where people will choose a different platform because they see it'll take an hour to set up.

docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/index.md Outdated Show resolved Hide resolved
docs/gettingstarted/modfiles.md Show resolved Hide resolved
docs/gettingstarted/modfiles.md Outdated Show resolved Hide resolved
:::note
There must be a 1-to-1 matching of mods in the `mods.toml` file and `@Mod` entrypoints. This means that for every mod defined, there must be exactly one `@Mod` annotation with that mod's id.
:::

### `lowcodefml`

`lowcodefml` is a language loader used as a way to distribute datapacks and resource packs as mods without the need of an in-code entrypoint. It is specified as `lowcodefml` rather than `nocodefml` for minor additions in the future that might require minimal coding.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably should explicitly state that there is no @Mod needed for any mods.toml mod id.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please elaborate?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm pretty sure for lowcodefml that the @Mod annotation is not needed on a class. To avoid confusion, I was suggesting to make an explicit reference to javafml saying that the @Mod annotation is unnecessary.

docs/gettingstarted/versioning.md Outdated Show resolved Hide resolved

### Work In Progress
Depending on how often a mod is updated, these numbers can be smaller or larger. For example, [Supplementaries][supplementaries] is on version `2.6.31` (at the time of writing). Triple- or even quadruple-digit numbers, especially in the `patch`, are absolutely possible.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would rather use a mod we control or no mod at all. Otherwise, we should let the mod authors know we are using their mod as an example here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Personally, I think real-world examples are the best we can use here. It's not like the NeoForged team develops a lot of user-facing mods. I will get in contact with the developers of each mod mentioned and ask them for their approval.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool

@neoforged-pages-deployments neoforged-pages-deployments bot deployed to neoforged-docs-previews (Preview) December 6, 2023 23:34 Active
@IchHabeHunger54
Copy link
Member Author

Moved the gradle.properties docs out of the Getting Started article, to the Mod Files article, and documented all values in the MDK's gradle.properties. Didn't include the mappings values (mapping_channel and mapping_version) on purpose, as those are pending removal (see neoforged/MDK#23).

@neoforged-pages-deployments neoforged-pages-deployments bot deployed to neoforged-docs-previews (Preview) December 7, 2023 01:24 Active
Copy link
Contributor

@ChampionAsh5357 ChampionAsh5357 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool, I think this is fine. Assuming nothing else major changes by the end of the week, will merge.

| `mod_group_id` | See [The Group ID][group]. | `mod_group_id=com.example.examplemod` |
| `mod_authors` | The authors of the mod, shown in the mod list. | `mod_authors=ExampleModder` |
| `mod_description` | The description of the mod, as a multiline string, shown in the mod list. Newline characters (`\n`) can be used and will be replaced properly. | `mod_authors=Example mod description.` |
| `pack_format_number` | The version number of your mod's data and resource pack. Mojang bumps this without something that could be considered a consistent scheme, so it's best to just look up what the current number is. As of Minecraft 1.20.2, the pack version is `18`. | `pack_version_number=18` |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just a note for the future, but instead of doing replacement here, it should be generated via datagen in the mdk example.

Copy link
Member

@XFactHD XFactHD left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@Technici4n Technici4n merged commit deb4ddc into neoforged:main Dec 11, 2023
1 check passed
@Technici4n
Copy link
Member

:shipit:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants