Skip to content

Crafting - #146

Open
seelad wants to merge 5 commits into
OpenRune:mainfrom
seelad:feature/crafting
Open

Crafting#146
seelad wants to merge 5 commits into
OpenRune:mainfrom
seelad:feature/crafting

Conversation

@seelad

@seelad seelad commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Implements crafting along with like 200+ recipes

For issue #49

Below are the notes I kept on accuracy/implemented features/deferments:

Done

NOTE: For individual items listed, only the RECIPE is implemented and NOT passive effects, level requirements, extra ops, or other qualities unless specified otherwise.

Locations:
+ Crafting Guild

Interfaces:
+ Tanner Interface
+ Silver Crafting interface
+ Gold Crafting interface

NPCs (No quest related parts):
+ Ellis Tanner
+ Crafting Guid Tanner
+ Thakkrad Sigmundson (Yak hide tanning)
+ Chouani
+ Mary
+ Eodan
+ Sbott
+ Crafting Guide
+ Master Crafter 1-3

Facilities:
+ Spinning Wheel
+ Loom
+ Pottery Wheel
+ Pottery Oven
+ Sandpit (Filling bucket with sand)

Crafting Types:
+ Leatherworking
+ Glassblowing
+ Gold Ring/Amulet/Necklace/Bracelet Crafting
+ Silver Ring/Amulet/Necklace/Bracelet Crafting + Other Miscellaneous recipes associated with the interface
+ Gem cutting
+ Amulet Stringing

Tools:
+ Costume Needle (No thread req or usage)
+ Imcando Hammer + Swap
+ Sand Bucket (Emptying)

Other:
+ Battlestaffs
+ Birdhouses
+ Slayer Mask and Ring - with recipe gate
+ Noxious Halberd
+ Amulet of Rancour
+ Confliction Gauntlets
+ Necklace of Rupture
+ Limestone brick
+ Crab Helmet and Claw
+ Snelms
+ Pheasant Costume
+ Serpentine Helmet
+ Dramen staff
+ Damaged Monkey Tail to Sinew
+ Light Orb
+ Breaking down Armadylean armour and fortify Masori armour
+ 99 Crafting Skillcape + Boost + Teleport (uplifted from @ashish-rama's work on teleportation)

Couldn't verify message, synth, animation, or process, but a basic recipe exists for combining the required items:
+ Toxic Staff of the Dead
+ Trident of the Swamp
+ Accursed Sceptre
+ Bone Staff

Deferred (I will not be implementing)

  • Purging Staff - Probably better in its own script given the special xp and damage code, but also wasn't able to verify animations and such.
  • Crystal Singing - I think this was already done in smithing.
  • Aside from birdhouses, clockwork recipes were not implemented since they were dependent on a construction facility.
  • Dark Essence Fragments - Has special stacking/counting code, so its probably better off in its own script.
  • Most quest related content (E.g. Lunar equipment) - Better off being added when the quests are added. Anything in the silver crafting interface was still added though. Quest gating does exist though, see the slayer helmet recipe as an example.
  • Various pouches (Fur pouch, Clothes pouch, Gem pouch, etc) - Requires the pouch to be empty, and without an accompanying implementation, these felt out of scope.
  • Silklined Herb Sack - Should probably be implemented alongside the herb sack, since it requires an empty sack and the method for determining that doesn't exist yet.
  • Cosmetics (Items like the Masori Crafting kit) - These shouldn't be hard to implement but out of scope.
  • Zaryte crossbow would be easy to add, but I wasn't able to find its animation or spot animation.
  • Etched Elder Venator Fang - Has some special menu options and requires coding up a bank proximity check.
  • Ultor, Venator, Bellator, Magus Rings - The full crafting process is a bit involved, so it should probably be revisited when it can be implemented in full.
  • Filling bowl/jug/bucket/etc with water - I considered it, but it probably needs special attention given the variety of water sources, plus it'd be better off in its own module.
  • Soda Ash Recipe - I did implement a rudimentary version using the cooking module, but took it out because the cooking module doesn't already support the multiskill menu, custom cook/burn messages, or provide a gap in its recipe gamevals. Implementing it on the crafting side would require recipes for fire, cooking range, and the hosidius range (due to the success rate changes and animations). I felt it was better to just defer it for now.

Couldn't Verify Accuracy

  • Limestone failure message not verified.
  • Does emptying a bucket send a spam message? And does it play a sound effect? Currently it does not.
  • Crab claw / helmet crafting messages.
  • Slayer helmet missing recipe message. It's currently: "You need to learn how to combine these items first. Speak to a
    Slayer master about the 'Malevolent masquerade' ability."
  • Slayer Ring's appearance in the gold crafting UI when its not yet unlocked. Currently the component in the menu is just hidden.
  • The varbit for thread usage. Currently using a custom attribute to track it.
  • Does swapping the imcando hammer while worn keep it in the worn slots? Or does it always go back into the inventory?
  • The necklace of rupture message was guessed from the amulet of rancour message.
  • Eodan NPC spellbook varbits are pretty much just guesswork.
  • Eodan prices are currently based on the highest available diary tier. I think I read some stuff about diary rewards requiring all prior tiers as well, though I couldn't confirm how or if that applies to Eodan's prices.
  • The pot lid should be gated by the One Small Favour quest, but it isn't currently.
  • There is two animations for spinning wheels, human_spinningwheel_60 and human_spinningwheel_90. 90 goes for 1 extra cycle and I did confirm it was the animation used on the lumbridge spinning wheel. There is code for the 60 animation spinning wheels, but since I don't know which ones these are, currently they all default to 90.

Known Bugs

( Fixed by #154 )Noxious halberd, Necklace of Rupture, Amulet of Rancour, Confliction Gauntlet, and any other recipe that uses confirmation messages have weird spacing. The <br> does two lines instead of one, or sometimes it just adds too much vertical spacing between lines.
Screenshot 2026-07-22 145701

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant