#Porting a really simple mod from NeoForge 1.21.1 to Fabric 1.21.1

72 messages · Page 1 of 1 (latest)

unique plinth
#

So here is the last version made for 1.21.1

#

My budget is not huge but it could still be a commision

violet bolt
#

this server doesnt support commissions. only free

torpid timber
#

You'll have to go elsewhere for that

unique plinth
#

I said it COULD

#

But I would love to be helped for free

#

This mod only add 1 item similar to a backpack

#

2 crafting recipes

#

It’s based on the badge box that we can see in the Pokémon anime/games

torpid timber
#

Making a backpack is not as easy as it looks

#

at least without having dupe bugs

unique plinth
# unique plinth

this is the complete mod on for NeoForge, could be a good base

torpid timber
#

the problem is that it's ARR and I don't see any source links so it would need to be made from scratch

#

although why couldn't you use an existing backpack mod and rename it?

violet bolt
#

i assume based on the name the "R" that is being "R"'d are being granted for porting by the person that holds those rights

unique plinth
#

Still looking for someone

small stratus
torpid timber
#

The only 100% reliable way I've seen is doing it through leveldata

#

unless the new item components are more reliable

unique plinth
#

That’s the goal of my mod

#

Just a badge box to put ONE badge per slot

violet bolt
#

yes, and lock the slot to specific badges

unique plinth
violet bolt
#

ah, so not like pokemon badges

#

if nobody else picks this up, I can do it assuming you are the copyright owner. I'll likely re-use assets

unique plinth
#

I would be thankful

violet bolt
#

i forgot how annoying cobblemon is to develop against -_-

violet bolt
unique plinth
#

That’s why I created that side mod

#

with my own badges

violet bolt
#

i mean, the mod description specifically says it just adds a badge box 😛

I'll add the items as well, just wanted to point out that the description was lacking

unique plinth
#

My bad it’s a new feature from the last update I should update it

violet bolt
#

there is probably a bit of work left to do until its "production ready" but it gave me a chance to go through all the different parts of mod dev as a dev instead of as a helper person. decided to use architectury to allow the same code to build for neoforge and fabric just because (still in yarn mappings, mwahaha)

#

after running into some bugs in architectury in relation to their events and making some workarounds, its mostly usable and builds for both neoforge and fabric from the same code.

I also have a couple things set up to make transitions to later mc versions easier as well as a custom recipe type to ensure badges are copied to the upgraded box

#

have been alternating neo and fabric testing

unique plinth
#

WOW

#

TYSM

#

That’s really impressive to me and I’m so thankful for your work

violet bolt
#

Back from vacation. completely forgot what was left. have you had a chance to try it?

#

if you are logged into github, there should be a link to the artifact

unique plinth
#

Just have a question

#

Can you turn back « fancy badge box » to « badge box » but with gold rarity ?

violet bolt
#

ah, sure

#

I assume "gold" is uncommon rarity (yellow)

violet bolt
#

The ribbon was not added. The badge box's ribbon slot is limited to those in the badgebox:ribbons item tag.

In case you decide you want to change names or add some things to the code:

data generation is in these classes
https://github.com/Linguardium/BadgeBox/tree/1.21.1/datagen/src/main/java/mod/linguardium/badgebox/datagen

running datagen is done by running
./gradlew datagen:runDataGen
from the main project folder and must be done if things are added/removed/changed in the datagen code (datagen folder)

building the mod is done by running
./gradlew build
note: if datagen changes were made, run datagen first.

adding items requires a few parts:
Creating the item
adding the item itself to https://github.com/Linguardium/BadgeBox/blob/1.21.1/common/src/main/java/mod/linguardium/badgebox/common/registration/ModItems.java
note: badges are made from a list there. adding things to the list will create more badges.

The Datagen stuff
Item model jsons are generated in https://github.com/Linguardium/BadgeBox/blob/1.21.1/datagen/src/main/java/mod/linguardium/badgebox/datagen/ModModelProvider.java
This is automatically done for badges

Item tags are registered in https://github.com/Linguardium/BadgeBox/blob/1.21.1/datagen/src/main/java/mod/linguardium/badgebox/datagen/ModTagProvider.java
badges are automatically added to the badgebox:badges tag

Recipes can be added in https://github.com/Linguardium/BadgeBox/blob/1.21.1/datagen/src/main/java/mod/linguardium/badgebox/datagen/ModRecipeProvider.java
only 2 recipes exist: the badge box and the badge box with ribbon slot (a special type of recipe that looks like a shaped recipe but uses a custom recipe type).

Translations are added in https://github.com/Linguardium/BadgeBox/blob/1.21.1/datagen/src/main/java/mod/linguardium/badgebox/datagen/ModLangProvider.java
Nothing is automatic here. This is for en_us only. other language can be added but requires a little java knowledge

#

(the fun part is that basically the entire mod except datagen is in common, so you can build for both neo and fabric using the same code)

unique plinth
#

Wow

unique plinth
#

That’s kind of insane to me

unique plinth
#

Hi ! I'm sorry to bother you after such a long time,

I've been able to add the rest of the badges, but I have some problems...
Also i dont know how to add the master ribbon by myself could you help with that ?
I just need to add a single item with the name badgebox:master_ribbon with the lore "A testament to your unrivaled might among legends, a symbol that you stand above all, the ultimate proof that you are the very best, like no one ever was"
this is the problem I'm facing when trying to add the badges

#

at least the tag works, because I can put the in the badgebox

#

@violet bolt (sorry for the ping)

violet bolt
#

so after adding the badges to the badge list in ModItems, and the language translations to the ModLangProvider file, you would need to run the datagen gradle task ./gradlew datagen:runDataGen

this should regenerate the files in src/main/generated automatically

then you can test it by using ./gradlew runClient (if you arent using a development tool like vscode or intellij) and make the jar file with ./gradlew build

#

how do you obtain the master ribbon?

unique plinth
#

btw tysm for your fast reply

unique plinth
violet bolt
#

from a command prompt thats running from the project's folder

#

or a terminal, or powershell

#

i dont have time at the moment but can do that this evening (its early morning now)

unique plinth
#

dont worry ! I'm already so grateful that you help me that much

unique plinth
#

Here is the texture for the Master Ribbon