PressTalk interpreter has changed in version 6, and many things that were allowed(often wrongly) are no longer possible.

I did came up with something for your code. It's a bit more advanced, but should work. First, create a global function, and use this code:

Code:
function @Superscript(&super:string, &x:measure, &y:measure)
  SetStyle(&Small)
  moveto(&x, &y - 0.06)
  show(&super)
  moveto(&x, &y)
endfunction()  
This displays whatever character you want slightly above the current y position. Then, in your presstalk, you can use this code:

Code:
define(&variable, string, @(72,1,20))

setstyle(&Default)
beginparagraph(0,6,0,'left',0.1598)
show('This line must be wrapped and must include the variable amount')
endparagraph
@SuperScript('*', &current.x, &current.y)
setstyle(&Default)
rmoveto(0, -0.1598)
beginparagraph(0,6,&current.x,'left',0.1598)
show(' of '+ &variable +', how do we do this?')
endparagraph
The idea is to split the paragraph in two blocks of code, and call the superscript function in between, and use & current.x as the first indentation of the second paragraph. I tested this code with both Helvetica and Courier(a proportional and non-proportional font), and both worked, also tried putting more text and that worked too, so this code seems good.

Regards,
Rapha