# dyntools/smithing
- technical documentation not included because readers are likely not coders
## dyntools
- dynamic tool system added on /item level
- any item can be a list of dynamic tool traits and associated qualities
- participating **predicates** (things people use tools on) can query items for one or more tool qualities. a radial menu allows the user to choose which quality to use if multiple are possible (on participating predicates that support this; default is single behavior check)
- all basic tool qualities (old tool act) are included
- things like airlock prying could, for example, check for >= 20 quality to pry an unpowered door without a delay. anything below incurs a delay. >= 80 (jaws of life, powerful things like armblades) would have prying of powered doors with a delay, with delay lower the higher it goes, etc etc
- no max cap on tool quality - aim 0 to 100 for softcaps
## smithing
- smithing system for construction of many kinds of tools/weapons/etc inspired by terrafirmacraft+tetra
### machinery
- forge
- heats ingots - insert x of material. only metals are supported.
- different ones have different heat rates and max temperatures
- can have reactions to materials for future cult stuff
- can destroy created parts into ingots, or revert ingots into sheets.
- makeshift marble/stone using welding fuels, other combustible chems
- portable combustion forge - can use gas fuel or solid phoron
- portable arc forge - can use cells and APC power.
- anvil
- used to shape ingots or weld them into double ingots, as well as modify tools
- modifications require certain tool qualities to do well; anvils can change this amount.
- TFC smithing system - ingots need to be hot enough to work. aim for specific progress amount (based on what you're making) to finish item.
- recipes can take single or double ingots
- requires hammer
- hammer impacts quality, as well as strike amount. 4-12 free hits based on hammer tool quality
- can re-melt things to redo quality attempt
- anvil type can impact quality and react to materials
- basic stone/marble anvils
- smithed anvils from metals
- high tech robotic arm assisted anvil
### materials
- materials split into smithing traits:
- binary traits:
- metallic - requires ingot to be worked, generally highly sturdy and weighted
- brittle - using this as tool head or handle is a horrible idea and will crack
- wrapping - can be used as handle material, e.g. leather
- reinforcing - can be used as tool head coating, e.g. diamonds, supermatter
- enum/value traits:
- difficulty - harder to work with crappy anvils and hammers
- resistance - requires higher temperatures to work/melt
- weight - too much slows user down, impacts attack speed, unwieldly weapons make awful smithing hammers
- hardness - useful on anything sharp, very good on armor piercing mitigation, good on hammers
- density - useful on blunt, very good on armor kinetic dampen and radiation soak, good on hammers
- padding - slightly useful on conductivity, useful for blocking concussion/bombs
- absorption - good on armor beam blocking
- grounding - conduction and energy absorbing
- nulling - magic/anomaly block (not going to be implemented for a while)
- special traits:
- supermatter - burn damage instead of brute, radioactive, tends to be a hazard
- uranium - emits radiation (not going to be implemented until SSradiation is written by someone with actual brain cells)
- all common materials added for support
- use smithing traits variable for now, don't tie normal game balance into this yet (normal hardness/melting point/etc variables are all unbalanced and i don't have the time to unfuck them yet)
### tools
- tools hard rendered, supporting up to 48x48 with a 64x64 centered canvas
- basic attachment point at 8, 8 from bottom left of the "normal" 32x32
- tool rod probably should extend to 24, 24 or 28, 28 - double headed and single headed rodded tool parts will render above it
- all tools contain removable parts
- any attached part makes tool usable
- funny things ensure if you use it without parts like slicing yourself without a handle/sword guard/etc
- all tools use a handle
- handle can be reinforced and wrapped
- reinforcing is usually pointless
- wrapping is usually good
- can add guard
- very important for long blades
- from there, choose between a rod and direct attach
- direct single attaches:
- longsword
- bastard sword
- broadsword
- dagger
- rod
- two headed attachments
- axe head
- pick head
- crowbar head
- small hammer head
- single attachments
- shovel head
- sledgehammer
- mace
### armors
- made from double ingot
- helmet
- chestpiece
- gauntlets
- boots
- stats affected by material
- can be reinforced by material
- careful - too mnuch weight slows user down
### modifications
- basic modifications
- wrapping handles on things
- reinforcing tool heads/rods
- tool head modifications
- honing - add AP, lessen damage
- sharpening - add sharpness, lessen blunt damage/less armor piercing for blunt (not implementable yet)
- discrete attachments
- none for now, add support later
- ~~implant soulshard for sentient weapons~~