One of the fun things, the Vasil hardfork gives us is the ability to reduce the size of transactions and so put more of them into a block (speeding up the chain).

My question is how to change the preexisting Plutus smart contracts I have written to take advantage of this? I think the following would be nice to have if you could point me to them please:

  1. example of an old plutus contract and its vasil counterpart (highlighting the changes made and why)

  2. A list of all possible changes I could make.

1 Answer 1


The existing V1 Plutus script just needs to be recompiled and serialised as V2. See this example of a minting policy serialised as both V1 and V2 for guidance, https://github.com/james-iohk/plutus-scripts/blob/master/src/TokenNamePolicy.hs.

Then you can create an output with the V2 script attached to be referenced in a transaction. See example using cardano-cli here: https://github.com/input-output-hk/cardano-node/blob/master/scripts/babbage/example-babbage-script-usage.sh

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.