But what role did he play (if any) in this contract deployment?
He didn't.
Just like all the other token deployments featuring his address.
(I'm assuming this is for the token named SPAGINU🍝, which I worked out from the timestamp.)
Looking at the constructor of the contract:
constructor (address payable FeeAddress, address payable marketingWalletAddress) {
_FeeAddress = FeeAddress;
_marketingWalletAddress = marketingWalletAddress;
_rOwned[_msgSender()] = _rTotal;
_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[FeeAddress] = true;
_isExcludedFromFee[marketingWalletAddress] = true;
emit Transfer(address(0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B), _msgSender(), _tTotal);
}
All it's doing is emitting an event with Vitalik's address hard-coded as the sender.
Now that Etherscan has implemented its Labels feature - which allows Vitalik to be labelled as Vb - this is presumably a good way to advertise a new coin, on the assumption that lots of people like watching Vitalik's address, and may in some way associate him (as you did) with a token that's unlikely to be a good investment... :-)