Can I create say 100 unique Ethereum addresses for the same wallet/smart contract? I can then assign the different addresses to 100 different affiliates.
No you can't. This is supported in Bitcoin but Ethereum uses a different system for tracking account balances - there is only one balance per account. That means there is also only one (public) address for the balance.
As said, you can use a smart contract to forward the Ether to multiple accounts.
Also your link https://www.reddit.com/r/ethereum/comments/5yeb4n/ethereum_vanity_address_generator/ does not claim to be able to create vanity addresses that point to the same account, it's just for creating addresses that point to different accounts.
Not sure exactly what you are trying to accomplish so can't help with suggestions, but to answer your question, one contract can only have one address. You can of course create multiple contracts with different addresses that call the same "main" contract. – xgabrielx Jul 11 '17 at 15:10 1 Thanks , yes sounds like it will be too much. Keeping it simple is the key. – Duncan Ridgley Jul 11 '17 at 17:47 I am confused so here it says you can create more address for your wallet reddit.com/r/ethereum/comments/5yeb4n/… or is that a private user can create more than one address but a wallet with a smart contract can only have one address. The point is, if I can have 100 different addresses I can run an affiliate campaign. Makes a huge difference to the marketing of the ICO. – Duncan Ridgley Jul 12 '17 at 6:35 So maybe the question should be " How do you make 100 variations or vanity addresses for the same address connected to a smart contract. – Duncan Ridgley Jul 12 '17 at 6:50 Making 100 unique account-addresses is simple, but there is no way of making them "point" to ONE smart contract (which in itself has an unique address). Maybe try and buy an ENS domain and use sub-domains? ex: reserve example.eth and then create a.example.eth, b.example.eth ... and point them all to the same contract address. – xg