-
Notifications
You must be signed in to change notification settings - Fork 790
Tinkers' Construct 3 Roadmap
Last updated after this commit
- Strong bones and boon of sssss will no longer function if cheated onto a non-helmet. before they partly functioned but some features required helmets.
- Fix conditional mining speed module not checking the holder condition (affects airborne trait)
- Fix being able to cast water on oxidized copper to make oxidized copper
- Fix tank module serializer having the wrong default keys
- Fix extra ingredients in tool recipes being ignored in the tinker station under some circumstances
- Fix feather falling not being marked as an incremental modifier
- Fix part builder not always updating the material value when materials change
- Fix tool pages in materials and you loading from the wrong folder
- Fix book index links not working for sections with modifiers in multiple groups
- Fix tooltip overlap on material pages
- Added
ModifierHookProvider
, interface to create modules that don't serialize to JSON. It just adds default hooks so you don't have to manually specify them in the module map builder. - Added
BasicModifier
, extraction of the base class forComposableModifier
which includes a builder for registering a modifier with modules statically. - Added modifier priority command, to list all modifiers, the hooks they implement, and their priority value. Useful for ensuring hooks run in the right order.
- Moved modifier usage command from
/tconstruct modifier_usage
to/tconstruct report modifier_usage
. Partly for organization, partly to make tab completion on/tconstruct modifiers
easier.
- Backport broken tool item predicate
- Add default value to
ModifierPredicate
- Add broken tool item property predicate to tinker tools to help addons prepare for 1.19
- Use
no-load
data key to stop sections with no data file from erroring. - Fix spilling fluid packet not setting handled, which for some dumb reason is something you have to do even though there is no case you would not.
- Fix mob effect module serializing target condition to
entity
instead oftarget
. - Fix conditional melee damage module not serializing attacker condition.
- Fix incremental recipes returning wrong leftovers
- Fix magnetic not triggering on bow firing
- Fix momentum level scaling being broken
- Fix wrong blocking model on broad axes
- Added magma embellishement from magma blocks and magma cream
- Add melting ore rate type
none
- 1.19.2 had a race condition between material render info and tool/tool part models, is this also on 1.18?
Last updated after this commit
Tinkers' JSON Things has a 1.19 port in the works. In addition to porting, it has the following changes:
- Hematite blocks now work as an "anvil metal".
- Hematite is now alloyed using iron instead of blood (blood was removed).
- Hematite is now a valid plating material, granting +2 defense slots and -5% protection per level.
- Added silky cloth as a maille exclusive trait, granting +1 ability slot and -3 health. Serves as an example of a part builder material.
- Fix various modifiers lacking salvage recipes (so no slots are returned on removal).
- Armor now has 3 tool parts: two armor plating (averaged) and a shield core (traits).
- Shields now have 2 parts: shield plating (example of a custom tool part), and a second shield plating casted on top.
- Armor now starts with 1 ability slot an 2 upgrades. Shields have 1 ability and 3 upgrades. (Compare to plate which is 2 upgrades, 3 defense).
- Has +1 toughness and a 150% durability multiplier on all pieces as a bonus for the higher cost.
- Removed the starting overcast trait on laminar, as slimesteel is a material option.
- Reduce contrast on textures
This section has info if you have a JSON addon and wish to know what updating to 1.19.2 Tinkers takes.
- Split generated resources into their own folder instead of saving them in the
src/
folder. This is not a required change for others, I just found it way easier to work with when I wanted to regenerate textures and remove "stale" generated resources. For instance, bloodbone and chain both no longer exist. Feel free to copy and adapt the build script which merges these two folders when building the jar. - Added a setup script to setup for live editing of resources using thingpacks.
- Swapped
tconstruct:extra
fortconstruct:binding
in material stats. - Added broken tool models and use the broken predicate to dispatch them.
- Update bow pulling predicates to the new IDs.
- Updated to the new wood palettes.
- Added wing textures to laminar and makeshift armor, so they render the new wings modifier.
- Swapped
tconstruct:extra
fortconstruct:binding
in texture generator JSON and render info. - Removed level from modifier recipe JSONs (result is now just a string).
- Updated tool definitions to the new module format.
- Added recipes to create sand casts in the part builder.
- Updated usages of fluid ingredients to the new
fluid
key (was previouslyname
) - Removed tool repair recipes (were merged into tool definitions) and updated modifier repair recipes (now require a stat type set).
- Remove metal embellishments (no longer exist).
Tags
- Added tools to
modifiable/bonus_slots
and makeshift armor tomodifiable/armor/golden
. - Move tools from tag
modifiable/one_handed
tomodifiable/interactable/right
. - Moved tag
modifiable/melee
tomodifiable/melee/weapon
(root tag now also includes unarmed).
- Updated fluid definition to use fluid types (JSON Things change)
- Switched the type of the armor to
tconstruct:multilayer_armor
. - Switched the type of shields and staff to
tconstruct:tool
(staff no longer exists). - Set max stack size to 1 for all relevant tools.
See also #5064
Our next target is 1.19.2 as it seems to be more popular than 1.19.4. 1.20 will be considered after we have a 1.19 port. We currently have the code mostly ported, but it is not well enough tested for a release. In addition, we have some content and API changes we want to make before a release, which is not limited to what is described in this section.
- Implement fluid physics now that Forge has an API for it.
- Mud cleanup, since vanilla has mud now. Consider a blood fluid with an in world flowing form, but that is not strictly needed.
- Move away from named section transformers in books.
- Fix or remove EFLNs, they have been broken in their explosion logic for too long.
- Figure out what to do with creative modifiers. Possibly ditch them as their true use is handled by commands and they get misused in poorly made modpacks too often.
We are considering one last 1.16.5 bug fix release with some of the bugs that have been compiled since that version. 1.18.2 will continue to receive support as well.
The sublimery is currently targeted for an early 1.19 build, likely before the first stable 1.19 release.
- Upside-down smeltery unlocked at the end of the nether.
- Created using slimestone (slime on quartz or calcite) and cobalt.
- Allows melting items into gases, processing redstone, ichor, glowstone, experience, lapis, and dragon's breath.
- Can melt entities into experience.
- Cannot hold liquids, only gases.
- Inverted faucets and casting channels will be made out of quartz bricks from casting molten quartz.
- Instead of having a casting basin and a casting table, will just have 1 casting block, name pending.
- This is partly for thematics, as gas infusing a block or item does not make sense in an open block.
- This is partly for visuals, as both current casting blocks would make items inside difficult to see when upsidedown.
- This is partly for gameplay, as there will just be fewer gas casting recipes.
- In addition, slimestone may be used for some new channel variants to allow pumping fluid upwards or gas downwards.
- Slimestone will be used to create a new block that extracts fluid from an item into an adjacent tank. Unlike melting, this is designed for items that have an explicate container (e.g. a bucket).
- Another block for filling a fluid container from an adjacent tank will also likely be included.
- Both blocks will extract or fill on a redstone pulse, and allow hopper interaction to place the container inside and extract it.
- Chromata
- General tier 4 material alloyed from redstone, glowstone, and lapis.
- Trait will relate to light in some way, details to be decided.
- Slimebronze
- Harvest tier 4 material alloyed from ichor, redstone, and copper. Since it requires both liquids and gases, an alloyer will be required to make this.
- Trait will increase drop rates of "dust" ore blocks (redstone, lapis, etc.) by consuming additional overslime.
- Lifebone
- Weapon tier 4 material composite from pouring liquid experience on bones.
- Trait is raging (previously belonging to bloodbone) which increases tool damage at low player health.
Ancient tools are being considered for 1.19, but may be held off until 1.20.
- Ancient tools are unique tools that appear as loot and cannot be crafted.
- Each type of tool will have a unique method of obtaining.
- Each tool features a randomized head material which determines stats and repair material. They can additionally be modified, and may start with some random modifiers.
- Each tool combines two functions in a way not previously seen in craftable tools.
- New tools potentially include:
- War Pick: a cross between a pickaxe and a bow, can be discovered in illager outposts or raids
- Knight's Shovel: the shovel wielded by one of the greatest warriors of the past, found in dungeons or in the hands of zombies
- Battle Sign: The Zisteaonian combat shield of legend, found in nether fortresses and pigmen hands
- Ancient Trident: a throwable high range weapon, found in deep sea chests and wielded by drowned
- Boxing Gloves: chestplate ideal for unarmed combat
- Metal Wings: does what it says on the tin
- And more!
- Expect the tools to be slightly stronger than craftable tools on average but weaker than a well designed crafted tool.
- Tools will have some randomized stats balancing them in favor of one of the two functions.
The soul forge at earliest will come in 1.19, though 1.20 or later is more likely.
- End multiblock, suck the souls out of materials and put into other materials.
- Allow for the creation of hollow, soul steel, and other cool tool materials.
- New way to add modifiers to tools, replacing embossments from 1.12.
- Originally, enderslime staffs were going to get 3 starting soul slots, however further consideration suggested a new staff was better suited.
- The addition of the soul forge will lead to enderslime staffs starting with 1 soul slot.
- Crafted from a hollow gem, hollow ingots, and whatever in hollow seems most like wood.
- Starts with 2 upgrade slots, 2 ability slots, and 3 soul slots.
- Unstable ore of the end
- Will explode if mined improperly
- To properly mine the ore, you need to use the melting modifier and obtain it as a liquid
- If casted into ingots, the ingots will explode after a short time
- To process the ore:
- Place the teantium ingot in the soul forge, and extract the shaluth and soulsteel souls. This leaves behind hollow
- Place the two souls back into separate hollow ingots to use
- Shaluth and soulsteel will be tier 4 materials used in alloys. Unstable may be used in other crafting recipes but cannot be used as a material
- Dragonstone
- Tier 3 material made used as the building block for the soul forge.
- Composite from dragons breath and endstone.
- Trait will increase tool speed against all blocks (even ineffective) at the cost of loss of block drops (like blasting in 1.12).
- Shaluth
- Tier 4 material made from splitting teantium.
- Soulsteel
- Tier 4 melee material made from splitting teantium.
- Temporarily lowers the targets max health at the cost of consuming the attackers XP.
- If the attacker runs out of XP, their max health will lower.
- Re'dar
- Tier 4 harvest material made from casting liquid teantium on quartz, then shaping it in the part builder.
- Causes explosions when mining blocks.
- Hollow
- Tier 4 special material made from removing the soul from metals.
- Grants the tool 1 additional soul slot.
- KnightSlime
- Tier 5 general material alloyed from enderslime, shaluth, and dragonstone.
- Converts picked up XP into overslime.
- Ebonite
- Tier 5 weapon material made by forging the souls of blazing bone, lifebone, and soulsteel.
- Charges as the player takes wither damage, then unleashes powerful effects based on the charge.
- Matthium
- Tier 5 harvest material alloyed using soulsteel and some undecided gases.
- Temporarily boosts mining speed after attacking, and boosts attack speed after mining.
- Alexandrite
- Tier 5 special material made by forging the souls of diamond, emerald, and shaluth.
- Hollow gem
- Grants a tool an additional soul slot.
- Gardite
- Modifier in a composite using rainbow slime and likely a hollow gem.
- Applies a stat boost to the tool based on how many low tier materials it contains.
- Soul slots
- Obtained using either hollow gems, or the hollow material.
- Can be filled with souls from various materials, granting their trait.
- May have additional methods of adding more soul slots at the cost of applying curses to your tool.
This section contains ideas with no direct target on the roadmap. They may get included at random times among other features discussed above.
Smeltery interface
- Allows accessing the UI fluid tank
- Comparator signal for tank level
- On pulse, switches fluid order (bottom to top? Top to bottom?)
Ichor Islands
- Ichor slimes?
- Ichor slime islands?
- Would all be on the ceiling
- Geodes may partially replace this, not sure
Boomerangs
- Replacement for shurikens
- Way to deal melee damage from far away
- Should come back, hopefully
- Bring back multipart ammo reworked
- No durability and no modifier slots, but 2 materials granting material traits
- Exist as shurikens and arrows
- Will have a curated set of materials to ensure each one is unique
- Make plate armor from 2 tool parts: armor plating (variant for helmet, chestplate, leggings, and boots), and armor mail
- Will have a curated set of metal materials to ensure each one is unique
- Port over Makeshift Armor from Tinkers' JSON Things to act as the base for the casts.
Mending
- Consumes experience fluid from the tools tank to repair the tool
- Replaces mending moss
- May end up being a trait of one of the tier 4 or 5 materials
Some modifier with a cool name
- Consumes experience orbs to fill the tool's tank with XP
- Pairs well with mendings, hint hint
- You may also wish to pair some tanks with mending, goal is for mending to take fewer slots than unbreakable but more than overslime
Throwing
- Shiny is obsessed with this modifier
- Will be cool, but will never live up to Shiny's expectations
- Ideally will have different effects based on the tool
Dual Harvesting
- Like dual wielding, but for harvest
- Will let you harvest blocks with the tool in the offhand in some way. May just clone the 1.12 logic, may require you to hold right click.
Charge attack
- Way to upgrade broad tools by granting them a special ability on holding right click
Quick ability
- Way to upgrade small tools by granting them a non-combat ability on pressing right click