LtxProgrammer / LtxProgrammer/Changed-Vanilla
What features need to be added in the main mod to trickle down to this addon? [OPEN FOR COMMENT]
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 5
- Forks
- 5
- PR merge metrics
- No merged PRs in 30d
Description
This issue serves as the discussion for what API the Changed mod should provide to addon mods.
### Defining mob Assimilation
To start off, addon mods could define assimilation behavior of non-latex mobs and the variants they transfur humanoids into.
Data-driven example: (`data/changedvanilla/transfur_recipe/latex_fox.json`)
```json
{
"mob": "minecraft:fox",
"transfur_variants": [
"changedvanilla:latex_fox",
"changedvanilla:latex_fox_partial",
"changedvanilla:latex_fox_kit"
]
}
```
Pros: datapack configurable.
Cons: limited variant customization
Java example:
```java
ChangedTransfurVariants.registerLatexMob(Entities.FOX, transfurContext -> {
// Do decision making with transfurContext, or even modify the resulting variant to follow entity flags from the transfurring mob (i.e.: coat color).
return ChangedVanillaTransfurVariants.LATEX_FOX.get();
});
```
The expected chain of events is as follows:
1. A latex entity (player or npc) assimilates a mob.
2. That mob will attempt to assimilate other mobs around it (wont change the target entity into itself, rather turn the target entity into latex).
3. That mob will transfur any humanoids around it, with a higher priority than assimilation goal.
4. The humanoid will be transfurred into the variant for the transfur context.
5. The mob is discarded.
The assimilated mob will still be of the original `EntityType`, but the assim/transfur goals will be injected into their AI. They will also have the latex drip particle effect.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the proposed data-driven example in data/changedvanilla/transfur_recipe/latex_fox.json and the ChangedTransfurVariants.registerLatexMob Java example. Trace the five expected assimilation and transfur events described in the issue, then review the discussion comments for unresolved API requirements. Done means the addon API and its supported behavior are agreed and documented; no tests or implementation files are named.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api, game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100