I fixed the redirect a couple ways... Although I think the plugin edit is the only thing needed I added the rest of my edits because they make sense.
In the "Creates Extra Profile Field Page" plugin add this just after $userdata->save();
PHP Code:
$vbulletin->url = 'profile.php?' . $vbulletin->session->vars['sessionurl'] . 'do=extra';
eval(print_standard_redirect('redirect_extra_options_updated', true, true));
And then overwrite the "page" template with this
Code:
<form action="profile.php?do=updateextra" method="post">
<input type="hidden" name="do" value="{vb:raw updateextra}" />
<h2 class="blockhead">{vb:rawphrase edit_extra_options}</h2>
<div class="blockbody formcontrols">
<h3 class="blocksubhead">{vb:rawphrase extra_options}</h3>
{vb:raw customfields.extra}
</div>
<div class="blockfoot actionbuttons">
<div class="group">
<input type="submit" class="button" value="{vb:rawphrase save_changes}" accesskey="s" />
<input type="reset" class="button" value="{vb:rawphrase reset_fields}" accesskey="r" />
<input type="hidden" name="s" value="{vb:raw session.sessionhash}" />
<input type="hidden" name="securitytoken" value="{vb:raw bbuserinfo.securitytoken}" />
<input type="hidden" name="do" value="updateextra" />
</div>
</div>
</form>
There were two inputs with the name do which I think confused the browser, at least it confused me. Also it appears that the forms are now submitted to profile.php?do=(updatepage) So I changed that as well and removed duplicate inputs for s and securitytoken, again not needing a duplicate of everything.