So in HikaShop, we have that event registration system:
www.hikashop.com/en/support/documentatio...ikashop-entries.html
The only limit which will be problematic to you is that a product can only be linked to one of the values of a custom field. So it works great when you have yes/no questions in your form. But if you want to have a selection between several values with one product for each value, then that's not possible for now.
There is a way though to do it. You create one custom entry field which is a dropdown with all your values.
Then, you create one custom entry field for each value so that the user can enter the name of the person and you limit it to the corresponding value of the other custom field.
In the same manner, you create a yes/no custom entry field for each value and you set the default value to yes and you limit it to the value of the first custom field and assign it to the corresponding product.
Finally, you can add CSS to hide the yes/no custom entry field.
You might end up with quite a bunch of custom entry fields, but that should allow you to do what you want.
If you use options instead on a product page:
One option is a product and each values of the options is a variant of that option product, and each variant can have a price. So in that respect, it might meet your need. But then, you can't limit custom fields to options selection. Either they always display, or never. So that won't do.