mirror of
https://github.com/ViaVersion/ViaFabricPlus.git
synced 2024-11-21 11:46:49 +01:00
Restructure MAINTAINING.md:
Moves general constant updating to the top and splits between the actual porting work
This commit is contained in:
parent
004579125a
commit
f9eceeb16a
@ -10,16 +10,20 @@ These steps are the usual process for updating ViaFabricPlus to a new version of
|
|||||||
- `supported_versions` (if necessary)
|
- `supported_versions` (if necessary)
|
||||||
|
|
||||||
As well as the versions in the `dependencies` block in the `build.gradle` file.
|
As well as the versions in the `dependencies` block in the `build.gradle` file.
|
||||||
2. Update the `NATIVE_VERSION` field in the ProtocolTranslator class to the new version
|
2. Increment the version number in `gradle.properties` by at least a minor version (e.g. 1.0.0 -> 1.1.0)
|
||||||
3. Check all mixins in the injection package if they still apply correctly, here is a list of some critical ones:
|
3. Check all data dumps and diffs in the fixes/data package and update them if necessary, here is a list of some critical ones:
|
||||||
- `MixinClientWorld#tickEntity` and `MixinClientWorld#tickPassenger`
|
|
||||||
- `MixinPlayer#getBlockBreakingSpeed`
|
|
||||||
4. Decompile the game source code with the tool of your choice.
|
|
||||||
5. Check all data dumps and diffs in the fixes/data package and update them if necessary, here is a list of some critical ones:
|
|
||||||
- `ResourcePackHeaderDiff` (add the new version at the top of the list)
|
- `ResourcePackHeaderDiff` (add the new version at the top of the list)
|
||||||
- `ItemRegistryDiff` (add all new items/blocks added in the new version)
|
- `ItemRegistryDiff` (add all new items/blocks added in the new version)
|
||||||
6. Try to compile the mod and start porting the code until all existing fixes are working again.
|
- `EntityDimensionDiff` (add entity dimension changes)
|
||||||
7. Diff the game code with the code of the previous version (e.g. using git) and implement all changes that could be relevant for ViaFabricPlus, those are:
|
4. Update the `NATIVE_VERSION` field in the ProtocolTranslator class to the new version
|
||||||
|
5. Update protocol constants in the `ViaFabricPlusProtocol` class
|
||||||
|
-------------
|
||||||
|
6. Check all mixins in the injection package if they still apply correctly, here is a list of some critical ones:
|
||||||
|
- `MixinClientWorld#tickEntity` and `MixinClientWorld#tickPassenger`
|
||||||
|
- `MixinPlayer#getBlockBreakingSpeed`
|
||||||
|
7. mDecompile the game source code with the tool of your choice.
|
||||||
|
8. Try to compile the mod and start porting the code until all existing fixes are working again.
|
||||||
|
9. Diff the game code with the code of the previous version (e.g. using git) and implement all changes that could be relevant for ViaFabricPlus, those are:
|
||||||
- General logic changes (e.g. `if (a && b)` -> `if (b || a)`)
|
- General logic changes (e.g. `if (a && b)` -> `if (b || a)`)
|
||||||
- Changes to the movement code (e.g. `player.yaw` -> `player.headYaw`)
|
- Changes to the movement code (e.g. `player.yaw` -> `player.headYaw`)
|
||||||
- Networking changes (e.g. sending a new packet / changing the packet structure)
|
- Networking changes (e.g. sending a new packet / changing the packet structure)
|
||||||
@ -30,7 +34,7 @@ These steps are the usual process for updating ViaFabricPlus to a new version of
|
|||||||
|
|
||||||
**Read more about which fixes should be added [HERE](../CONTRIBUTING.md#adding-protocol-new-fixes---which-are-important-and-which-arent)**
|
**Read more about which fixes should be added [HERE](../CONTRIBUTING.md#adding-protocol-new-fixes---which-are-important-and-which-arent)**
|
||||||
|
|
||||||
- From experience, the following packages contain the usual important changes:
|
- From experience, the following packages contain the usual important changes (mojang mappings):
|
||||||
- `net.minecraft`
|
- `net.minecraft`
|
||||||
- `net.minecraft.client`
|
- `net.minecraft.client`
|
||||||
- `net.minecraft.client.gui`
|
- `net.minecraft.client.gui`
|
||||||
@ -44,7 +48,7 @@ These steps are the usual process for updating ViaFabricPlus to a new version of
|
|||||||
- `net.minecraft.world.level`
|
- `net.minecraft.world.level`
|
||||||
- `net.minecraft.world.level.block`
|
- `net.minecraft.world.level.block`
|
||||||
|
|
||||||
- While the following packages can be skipped completely (most of the time):
|
- While the following packages (mojang mappings) can be skipped completely (most of the time):
|
||||||
- `com.mojang`
|
- `com.mojang`
|
||||||
- `net.minecraft.advancements`
|
- `net.minecraft.advancements`
|
||||||
- `net.minecraft.commands`
|
- `net.minecraft.commands`
|
||||||
@ -59,13 +63,12 @@ These steps are the usual process for updating ViaFabricPlus to a new version of
|
|||||||
- `net.minecraft.stats`
|
- `net.minecraft.stats`
|
||||||
- `net.minecraft.tags`
|
- `net.minecraft.tags`
|
||||||
|
|
||||||
8. Update protocol constants in the `ViaFabricPlusProtocol` class
|
10. Check the ViaVersion/upstream protocol implementation for issues and report them if necessary or if these issues can't be fixed,
|
||||||
9. Check the ViaVersion/upstream protocol implementation for issues and report them if necessary or if these issues can't be fixed,
|
|
||||||
without tons of work, implement a workaround in ViaFabricPlus.
|
without tons of work, implement a workaround in ViaFabricPlus.
|
||||||
10. Run the game and check all GUIs and other visuals for issues.
|
11. Run the game and check all GUIs and other visuals for issues.
|
||||||
11. Clean your code and make sure it is readable and understandable, clientside fixes are sorted by their protocol versions, having
|
12. Clean your code and make sure it is readable and understandable, clientside fixes are sorted by their protocol versions, having
|
||||||
newer fixes at the top of the file.
|
newer fixes at the top of the file.
|
||||||
12. Increment the version number in `gradle.properties` by at least a minor version (e.g. 1.0.0 -> 1.1.0)
|
-------------
|
||||||
13. Create a pull request and wait for it to be reviewed and merged.
|
13. Create a pull request and wait for it to be reviewed and merged.
|
||||||
14. You're done, congrats!
|
14. You're done, congrats!
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user