Does anyone here have any suggestions? Or any websites that could help here?
Well, it may sound like painfully obvious advice, and it sounds like you’re already working in this direction, but my suggestion would be to start from the ground, literally, and work your way up. It’s good to hear that you’ve already begun working with maps, because I feel that a well thought out map is the single most important element in constructing an artificial world. The physical landscape is the cornerstone of a naturalistic, believable world, insofar as every other element will interact with it on a regular basis. Everything from weather patterns to ideal city locations to indigenous plant and animal life to cultural diversity relies on the shape of the landscape. Mountains move men, not the other way around.
This is why my first suggestion is you buy a good globe and find some nice geographical and topographical relief maps. (A good place to start would be here) Study how Earth’s natural features relate to each other and incorporate those relationships into your map. Mountains are formed where landmasses have collided. Rain usually falls before a storm passes over a mountain chain. Water collects in the mountains and hills and flows downhill and toward the equator before emptying into the seas. Large cities are always situated near rivers or large bodies of water. Ocean currents are just as responsible for determining which areas will be temperate and which will be sub-arctic as latitude is (this is why New Orleans and Cairo share the same latitude but have radically different climates. As do Boston and Rome. And Newfoundland and Paris.)
Natural features also play an integral role in how people (or who ever you choose to populate your world with) are distributed and how their cultures develop. A group living in an arid climate may have set out centuries ago, following rivers, circumventing mountains, in search of new, fertile, temperate lands. Some settle along the way, forming new societies, some continue on coming into contact or conflict with the indigenous people they encounter when they arrive. Or you have examples where natural boundaries kept civilizations isolated from each other for centuries, allowing them to develop completely unique societies independently of each other (European and Asian cultures are a good example of this).
This brings me to my second suggestion, that a language should be one of the first things you create when designing a new society or people. A people’s history is painted on the evolution of its language. Creating a language (or parts of a language) early on has many practical advantages. For one, it makes creating names much easier. If you start naming people, places and things before you set any hard language rules, it makes maintaining any sort of natural consistency very difficult. In addition, nothing defines a cultural identity quite as well as language. And the best source for creating, or even understanding, artificial languages that I have found is the Language Construction Kit. More wars have been fought over land and language than any other cause, it acts as a good artificial boundary.
Ultimately, if you begin by thoroughly designing the physical constants of your world, you will have a much easier time creating the historical elements of your world, as the land shapes history. Once that history is in place, developing the cultures that sprung from it becomes almost automatic. Once you have believable cultures, populating them with interesting, natural characters becomes a snap. The only real difficulty is avoiding stereotyping your own cultures and characters.
-Phil.