First, the limit on tps is only minimally affected by the number of nodes, since the core bottleneck is in every node processing the full set transactions. The cost of transferring transactions and blocks between peers is relatively low, and each node only retrieves each transaction and block once from its peers.
Second, the simplest way to work out the transaction size is to just to create some transaction of the type you need, and see how large it is by retrieving the raw transaction data, counting hexadecimal characters, and dividing by two.
Third, some basic guidelines for the size of common transaction types (assuming non-multisig inputs/outputs) are as follows:
- 10 bytes fixed per transaction
- 180 bytes per input
- 34 bytes per redeemable output (covers native currency only, even if there is none)
- For redeemable outputs containing issued assets, add 4 bytes plus 24 bytes per asset type
- 11 bytes + data length per non-redeemable raw metadata output
- 39 bytes + key length + data length per non-redeemable stream item output
This ignores a few extra bytes that can result from various "variable integer" representations.