#Cannot use "Condensed resin" and modifying drop count by editing "DungeonDrop.json" is not working.

1 messages · Page 1 of 1 (latest)

unique osprey
#

Game version: 4.0.0
Grasscutter version: 1.7.4-38e963161
Cultivation version: 1.5.1

I want to drop double items in dungeon. I have condensed resins, but when I complete the dungeon, there is no way to use condensed resin. Then I changed the "DungeonDrop.json", but it still isn't working. I found some discussion that said modifying "Resources\Server\DropTableExcelConfigData.json and located in grasscutter\GC-Resources-4.0.zip file", but I cannot find where to modify it. Is there a way to double drop in dungeon?

calm coral
#

If you edited the DungeonDrop.json and it wasn't used (after restarting the server for such a change to apply), then you would indeed need to edit the resource instead.

unique osprey
calm coral
#

It sounded like you already found a post with that information. I'm lost on how you don't know how to edit a resource file though. You just said you edited a data file, which is the exact same thing (a json file).

#

You open it in notepad or whatever you want, make the changes you want, and save the file.

unique osprey
#

I found the information in this post #1174064638950908015 message

There are too many data in json. But I can't find anything related to the dungeon drops. For example, I want to modify the "Momiji-Dyed Court" drop count. But I can't find anything when I search "Momiji-Dyed" or search "5203" (the dungeon id in DungeonDrop.json).
I even search artifact id, but still can not find anything useful.

calm coral
#

That's because drop table excel isn't using dungeon ids.

unique osprey
#

Yes. So is it that there is no way to double the drop rate of the dungeon?

calm coral
#

If that is what you took away from it, then sure.

#

The post and my description both clearly say it is possible. If you believe it is not, then for you it is not.

unique osprey
#

okay. thank you.

calm coral
unique osprey
#

Wow! This is very useful. I see that there is a boolean doubleReward parameter on the function handleDungeonRewardDrop. It would be great if this could be used to adjust double drops in dungeons. It would be even better if we could find out why Condensed resin doesn't work. I still don't know how this countRange is calculated. I am not very familiar with the source code of grasscutter, but I am very interested in the double drop issue. I have cloned the source code and will try to investigate these issues later.

Thank you!

unique osprey
#

It seems that the requests sent by the client do not consume condensed resin. In GadgetInteractReq, there is a field resin_cost_type. Only when ResinCostType.RESIN_COST_TYPE_CONDENSE is present can condensed resin be consumed. But perhaps due to the lack of a reputation system or other reasons, a selection box for choosing whether to use condensed re
sin does not pop up in the game.
It seems that there is no other way except modifying countRange. I am not very clear about the working logic of the client (why the selection box for condensed resin does not pop up).

unique osprey
#

Finally, I modified the grasscutter source code and built it myself. It works. Now, always use condensed resin.

tribal kelp
# unique osprey Finally, I modified the grasscutter source code and built it myself. It works. N...

Translation: Hi, how did you edit it to be able to use Condensed Resin?
I opened the Grasscutter.jar file with winrar but there is only the file "GadgetRewardStatue.CLASS" I don't have the .java file like you.
All I have is "GadgetRewardStatue.JAVA" which is downloaded from " https://github.com/Grasscutters/Grasscutter/tree/development/src " but I don't know what to do next... please help me, thank you!

calm coral
tribal kelp
calm coral
#

Also if you compile it yourself with the default GC repo then yes, you will lose out on specific fixes and QoL changes

#

As for how to compile, yes, it's already on the GC repo/wiki how to do so. It's very simple as long as you have the proper requirements

tribal kelp
#

I'm not good at IT so I just want to use the default version and make some basic edits in "GC-Resources" and "Data", I don't want any more errors because I'm not good at it.
I understand what you guys are talking about because I read all your posts and comments before I asked a question when I haven't found a way yet. I don't want to touch too much on the default Grasscutter.jar because I'm afraid I'll break it so can you help me use "Condensed Resin" and limit the creation to more than 5?

calm coral
#

make some basic edits in "GC-Resources" and "Data"
This does not need you to touch the jar or the source code at all. The resources and data files can be directly edited with notepad.

can you help me use "Condensed Resin"
If you aren't presented the option when you have it, then it's due to an issue with the packets either not properly providing something or the protos having an issue that hasn't been fixed in many versions. You would need to make fixes in the source code if either one of those is the case. Otherwise you can do like the other user above and simply force it to always "use" resin.

limit the creation to more than 5?
Limits like this are typically set by the game and cannot be edited. If it's a limit defined as part of a packet or resource then you would need to find and edit it appropriately, but again that's usually an uneditable part of the game client not a function of the server.

tribal kelp
#

It's precious your time to spend with me when there are too many characters in your comment... I would be happy to buy you a cup of coffee via your donate channel from Vietnam.

...
Above, did "boh5" use that method directly from grasscutter.jar or did he download the SRC into the server's Grasscutter folder?

calm coral
# tribal kelp It's precious your time to spend with me when there are too many characters in y...

use that method directly from grasscutter.jar
This is not possible. Any changes always must be done through the source code and re-compiling. You cannot edit the compiled jar, you can only edit the source code and then compile it again. That is what compiling is, it means the source code is changed so that it can be read by the system but is no longer editable by the user.
So they downloded the source code, made the change, and then compiled again. Any changes in the source code will always need to be made this way.

Changes in the resources or data are different, they are not part of the source code and can be edited freely at any time.

tribal kelp
#

Awesome, I just remembered some time ago I did this with some file...it was like a video file from mkv > mp4.. and need a Program to do that or online. like "compiled" here need another program.. (before I thought that installing "java 17" is enough to edit all java files - stupid me :))) )
Now I googled and found out that "compiled" is online and I'm eager to do this...

calm coral
tribal kelp
#

I took the .java file in src and tried to change it to .class but it didn't work, even though I haven't edited anything?

calm coral
#

you're trying to compile individual files?

#

Don't do that. Compile Grasscutter, not individual files

tribal kelp
calm coral
#

I think you're still confused about the entire process

#

You do not touch the jar. You do not touch any class files.

#

Download the source code. Edit the .java files, that is the source files. Compile the jar by following the steps on the Grasscutter README or on the wiki.
Again, that is at https://github.com/Grasscutters/Grasscutter?tab=readme-ov-file#building
You do not compile individual files, and you don't use javac. Just follow the steps to compile it through gradle, you have to compile the entire project into a jar file via gradle.

tribal kelp
#

Where do I start and where do I end to make it a .jar file? :(

calm coral
tribal kelp
#

Step 2 I installed, then opened "cmd" and copied 3 then 4 and it was like this..

calm coral
#

just double click on gradlew.bat in your grasscutter folder

#

wait you don't have java 17

#

you're trying to use jre 8

calm coral
tribal kelp
calm coral
#

Right, but you're trying to use java 8. This is really off-topic for the thread now, so you should make your own thread where this can be continued