New to writing games and i really want to do this one. I'm creating a shop owner game. The NPCs are the shoppers. I'm having logic issues. I'm tryig to have each shopper be a particular type with each type buying only certain items. I want them to have a to be random in type and list. I only want logic help to point me in the right direction. please don't post code but controls or classes i might need would be great. Below are examples. Thanks
Customer type: old woman
buys: veggies, medicine, books
list 1: apples, carrots, stomach medicine
list 2: stomach medicine, potatoes
pick customer type
goto item location
pay for item
If no one can help me with this, is there at least some good site with help on creating npcs. I tried google but didn't come up with anything except one which is horribly written. The language doesn't matter as I can just get the logic from it. Thanks.
Your logic listed sounds fine to me at a high level. Perhaps you could be more specific with what you are looking for? What logic do you feel you are currently missing that you need?
I don't think many people on this forum use VB, so we probably can't help too much with VB classes and libraries. It seems to me like you might want some sort of logic for determining if the price is too high (go to another store), or if the quality of the products aren't good (go to another store). Aside from that I might look at path-finding algorithms to go to the products (if you are doing a 2D game instead of just text based).
This could be implemented with classes fairly easily. For instance, you could make a demographic class that stores an identifier for the demographic type and some list of types of items they'd likely buy.
Then in an items class you could add an item type member to group the products. Then all you'd have to do is give each customer a demographic and compare the item's type with the list of item types that customer type would likely buy, if there is a match, they buy. If not, they don't.
Using a design similar to this would allow you to easily expand or reduce the number of customer types you have as well as the kinds of items they would buy.