Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / (a very) Dark Society

Author
Message
Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 1st Dec 2013 17:34 Edited at: 5th Feb 2014 10:42
Hi all!.
(a very)Dark Society will be a strategic simulation where two bunch of survived peoples facing difficult situations to survive and possibly enjoy the life.
These peoples will to face the flow of the time trying to have always the food, the water and trying to improve their life and their hard initial situation.
The simulation will be literally full of events, objects and situations and sure, these 2 groups of survived peoples will face the rules of a society..
peace,war,leadership,growing the number of peoples and maybe build a better society.. or maybe to finish in ruin after a war between 2 (or more) groups..
In this version we have 10 men (divided into 2 groups)trying to survive and to face the day after day life.


Thanks to the enormous help of this forum, I could do something interesting and until now is not expected to handle someone of these simulated men. Just they live their lifes (In next versions,probably, the player can interfere with the life of these men but I don't know how for now)

I was near to use Dark IA for this project but I like to face new and hard projects so I face the problematics about to write some IA routines! ALL FUN!

I am in a really first step of programmation but I achieved some good results on IA routine about find and follow a target while dodging obstacles and about priorities and actions, world meteo, night/day etc etc etc


Here some info about:

ACTUAL VERSION : V5.27



VISUAL WAVES
Each man have 21 visual waves to understand where obstacles/targets are, always considering the target coordinates and typology;
so they will try to find a good way to reach their goal. These visual waves are one of my biggest goal reached.
The sum of these 21 visual waves make a visual area of 170° to simulate the central view area, the side view area until the apex view area.

Each visual waves will run away from the human eyes in their right angle. Each visual waves has a life duration, a XYZ end run position and each of these waves will record all type of objects they are hitting:
a wall, a tree, an obstacle, an item like a jacket,a coconuts, a lake or another human (etc etc).
Each waves will know XYZ coords, angles and other things about the object they are hitting.
Over that, these visual waves will record a lot of other informations about man distance from an obstacle (the left side of the man, the frontal area of the man and the right side of the man too).
Again and again these visual waves will record a lot of data to make the IA MOVING BEHAVIOUR code can understand a lot of particular situations about man position, man angle, man situation according of the object is near to him and situations like how to aproach to another human or target or again to understand how to extricate from a particular obstacles scenario.




IA MOVE/WALK BEHAVIOUR
Each man have 7 methods (plus special moves) to run their optimized road to the target obviously profit by the visual waves.
Thanks to these 7 methods these humans can handle situations like outdoor situations, wide or thight obstacles too and they can use their apex visual wave to discover the target inside an house making they can change path.
The matter is really complex and sure I suffered a lot of head pain before all start to work good!

Some type of move behaviour:
1) Target reached
2) Go to target
3) Go to choosed dead view wave position (the best according to other IA calculations)
4) Apex eye see the target
5) To exit from an indoor situation
6) Faint stop
7) Rotate to 180°
And a lot of other IA code to check a lot of things..




PRIORITIES AND ACTIONS
But the real heart of this game is the list of the human priorities.
All men have a list of many theoretical (currently 17 but will be many others) priorities as hunger,thirst,sleep,urinating,doo a poo ( ),other human attraction,relax,to face another human,to explore boundaries,study,hot,cold,to fix own home,to improve life,to improve security,bring food to home.

These priorities has their own score to make a classification of priorities (from the first one to the last). The score of a priority is calculated from a lot of variables..(see the next chapter)

First priority is what the man want to do.
At this point the man have an idea about what he want to do so, depending on the chosen priority, he will chose one of the actions relative to the chosen priority.

There will be a lot of available actions for each of priorities and all of these actions will be the right action according to the actual situation the man is living.

In this moment I made just 9 actions (will be a lot more!):
1) too cold, go home to warm up (eventually wear a jacket)
2) too hot, go home to take off the jacket
3) too hot, go to a water source to refresh body
4) find a right place to do a poo!
5) to drink (reaching a water source)
6) too hungry so go to nearest tree to search some coconuts and eat it there!
7) go to nearest trees to find some coconuts and carries these coconuts to home (make a pantry)
8) hungry so go to home to find some filed coconut
9) to sleep.




JUST SOME VARIABLES OF A HUMAN..
Here some of variables:
Life comfort
Charitable
Religion faith
Bravery
Aggressiveness
Body energy
Curiosity
Body temperature
Morale
Fear
Hunger
Thirst
Healt
diseases
mental stability
awareness of the world
memories arrays

These variables will influence each other in a damn complex mechanics and will influence how a simulated human will act.
From priorities to the actions.. all start here, from these variables!




WORLD AND HUMAN TEMPERATURE
The game provide a world and human temperature engine.
This engine will change the world temperature according to the months and to the time of the day or night too.
The world temperature heavly affect the human temperature with a lot of semi/scientific codes (the human temperature, obviuosly, is affected by a lot of other variables)
The inside of an house can reduce the hot of the summer (but if too hot so this mechanism will be more little) and can reduce the cold of winter (or the cold of the night).
Another example can be the fresh air of a lake that can give a bit of peace from the hot of summer! or again the heat of a fire..
These mechanism are pretty complex and I am satisfied about.




RECOGNIZE HUMANS ENGINE
Currently I making the "recognize human" code.
Really fascinating and I will put a lot of cool code to make the recognize pretty realistic.
A man see (with one of his 21 visual waves) another human.
The man will check if he know that human, if that human is a friend or an enemy or a unknown human.
The man will check if that human is his relatives (blood relative or added relative).
BUT especially the man will check if he have some brain records about that human!.
All men in this game will have their memories and these memories will give a lot of informations to the man.
These informations will make the man choose his decision for the right action to do (in front of a man or a tree or an animal etc etc).
Some examples:

I see a thief and I can escape or to face him or trying to talk with him to convince him to stop robbery ecc ecc

I see a my friend and I can avoid him or I can call him to a friendly chat.. or for a violent chat.. or I can ask help to reach some of my desired goals.

Or maybe the man have a bad memories about this friend and he decide to see this friend as an enemy. Or maybe he can fall in love for his friend.. etc etc




LEADERSHIP ENGINE
Another good code I am working in is the leadership engine.
With this engine (depending on a lot of variables) a man can be watched as a leader from other humans.. So these humans will start to obey to the man orders... or maybe these humans stop to obey when they listen an order that is too opposite to their will... (reducing the leader idea they had about the man)
The possibilities are endless.. from the born of the parties to the riots.. from the try to save my leader to the possibility to kill him if he has become different from what I would..).




LIGHT AND SHADOWS
Last good code I remember to show to you is the day/night cycle. 24h on 24h the sun moving and the lights changing the scene colors.. A good one code!.




Ok I think I listed all major features..
The possibilities are pretty infinite... as the things to add!
Here some of these things to add (and some finished):

SEASONS/DAY/NIGHT CYCLE VISUALIZATION v1.0 - 100% done
RADAR SYSTEM (visual waves) - 100% done
WORLD AND HUMAN TEMPERATURE - 100% done
FIRST STEP GRAPHICS - 100% done
FIRST INVENTARY SYSTEM - 100% done
FIRST HANDLING OBJECTS SYSTEM - 100% done
IA MOVE/WALK BEHAVIOUR v1.0 - 100% done

PRIORITIES & ACTIONS SYSTEM - 40% done
RECOGNIZE HUMANS ENGINE - 60% done
MEMORIES & ACT ENGINE - 40% done
NEW GRAPHICS - 40% done
LEADERSHIP ENGINE - 55% done
POLITICAL PARTY & GROUPS ENGINE - 25% done
MUSIC AND SOUNDS - 0% done
ADVANCED INVENTORY SYSTEM - 30% done
SOCIETY RULES & LAWS ENGINE - 25% done
FIRST FIGHT SYSTEM - 5% done
LIFE BORN AND DEAD ENGINE - 30%
RELATIVES ENGINE - 40%
WHEATER ENGINE - 70% done
NEW SEASONS/DAY/NIGHT CYCLE VISUALIZATION 100% done

a lot of other code!









The simulation provide a key (a)to randomize the obstacles angle.
Another key (d) let you to move the target cube where you want to see how the men trying to reach it.

KEYS LIST...

CAMERA CHOOSE COMMANDS:
1 = BIRD VIEW (LIKE 2D)
2 = NEAR GROUND VIEW
0 = FREE CAMERA (arrow keys to rotate camera, mouse keys to move camera)


CAMERA ZOOM (when bird view on):
left mouse button = ZOOM IN
right mouse button = ZOOM OUT


TARGET COMMANDS:
d = DEBUG WALK as next priority
up key / down key / left key / right key = MOVE TARGET


SCROLL COMMANDS:
Mouse pointer on the screen sides = VIEW SCROLL WHEN USING BIRD VIEW


DEBUG COMMANDS:
v = DEBUG 3D

SCENARIO COMMANDS:
a = RANDOMIZE OBSTACLES ANGLES



SCREEN SHOTS:


Very soon some youtube vids and a playable demo!

Attachments

Login to view attachments
Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 5th Feb 2014 10:42
mr_d
DBPro Tool Maker
15
Years of Service
User Offline
Joined: 26th Mar 2007
Location: Somewhere In Australia
Posted: 5th Feb 2014 14:38
looks to be a very ambitious project, and looking at you screen shots, it looks like you're well on your way to achieving it
looking very good - keep it up!

Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 5th Feb 2014 15:17
Thank you mr_d!
Southside Games
12
Years of Service
User Offline
Joined: 1st Jan 2010
Location: Don\'t tell me what to do!
Posted: 5th Feb 2014 23:54 Edited at: 5th Feb 2014 23:55
at first I was wondering why on Earth you would want to write your own AI code (I hate path finding personally >.< ) but it seems to have served you well. I'm very interested and intrigued by this project. Can't wait to see were you take it.
Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 7th Feb 2014 10:06
Hi, Southside Games!.
haha I can say that, probably,if I had known all the difficulties I had to face witch "IA path finding".. then.. I probably would have used DarkIA.. but I need to say that was a great fun and was really interesting to do that!

Thank you for your words, I really hope, at least this time, to achieve this project! Sure I really do that!
I am happy about my rithm, so and so 2 days to have a new (debugged)event/action! for now there are 23 events available, from light a fire to warm the body, to take a poo, clean the body at the lake (if is not too cold outside!) meet other men to talk or quarrel (or maybe to agree with someone to attack and rob someone else... or maybe to help another man in a difficulty situation!), wear a jacket cause the man learn that last time without a jacket he was near to freeze.. or wait another men back in home with some food and then when he arrived, start a pool to choose if the fire need to be switched on!.. I could continue for hours about all ideas (many of these already done!)..

PLEASE TO ALL: If you would to advice me about events, actions or just generic ideas PLEASE DO THAT!
Chris Tate
DBPro Master
14
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 7th Feb 2014 11:29 Edited at: 7th Feb 2014 11:38
The extreme challenges of not only AI path finding but logic, formation and simulation of behaviour are frightening for many; it shows you like to take on major challenges; a very commendable trait!

The impression made by the screenshots you posted a link for feels promising and reflects great passion and skill.

A games development WIP thread, or DevBlog as I like to call it is a forceful and controlling image of you and what you do; attracting people to you and your game, or forcing them away from you and your project subconsciously, underestimating your ability.
A first-impression will either turn people away or keep them hungry for more; it can sometimes be an unfortunate decision maker; but it need not be unfortunate if the impression is good.

Alduce, brilliant looking project, but your WIP thread is not doing it any justice. It was posted in December 2013, but its first reply came in Febrary 2014; no doubt because of the fancy screenshots.

May I state that the thread is like a sign board which reads 'Please do not read any further, and do not bother view my screenshots'. While the project as a whole is brilliant, only a part of that whole is being shown.

I can continue to let you know what I feel, but it is your decision to do what you want because it is your project. But I recommend practicing your English writing skills; reducing the word length until you can write it more effectively. Even with 100% perfect spelling and grammar, it is difficult to arouse interest; making mistakes in the first sentence is an absolute no no.

Use spelling and grammar checking; keep on reading and practice writing in English because what one does in practice and for a living defines their upmost abilities.

Not that you have to be perfect, since English may not be your first language; just keep practicing and ask for any help. If I am correct in saying you probably know what it is like to read poorly written text in your language of birth, you will then understand the point I am trying to put across.

Personally I would have posted at least 5 of those brilliant screenshots on the thread; 80-90% of the time your fans will not follow a link, they want to skim read and glance at the screenshots then move on; but that is not possible in your post at the moment. Pay attention to game development blogs on TGC and around the internet to put a clear image in the forefront of your mind; an image of development blog standards.

We all make mistakes; I did; I posted a big poster linking to screenshots on my first page, something similar to what you did only with an image tag inside of the link tags. The problem is that even clicking on such a big pretty looking image is something that takes a great deal of persuasion; even if it would help the individual improve their quality of life, they and their subconscious needs persuasion, which is why we have graphic design and marketing industry.

Keep up the good work and well done for at least continuing with your work as most people give up in a few months. The people who work on their project for more than 3 or 4 months are the best because they show that they care about what they do and so will their fans.

Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 7th Feb 2014 12:53
Hi Chris, in first I would to tell you : Your post fascinating me.
You touched many important aspects about me and my project too.
unfortunately I have always been a donkey at school.. and never accepted to open books to study.. just what I wanted and when I wanted. This is equivalent to having so many knowledge holes, from math to english and you can understand this is not the optimal situation to be a programmer..

Think about the fact, I am using google translator to help me.. without this help, probably, I never make this WIP thread.. and I would not have written half of my thread..

Your words really motivate me to get better and I love to find motivations in my life! (as hungry cats try to find some mouses to be catched!)
Over that, I know what mean to be a single programmer making design, development, "marketing", sound, graphics etc.. No one of these aspects will be how I would.. and this make me dream to be part of a software house.. What a beautiful dream that would!

But dreams are dreams and real life is just real life! So, my projects are always "great ideas" but never I finish the job! (never I accept that I have no more ideas to fit in my projects! So I fall in the "never I understand that I can't continue to add things to my project.." syndrome..)

This time, I hope, it's different, I really want to make something cool and, please believe me, posts like yours are really instructive.
About pics and video to let the people see what I making, so, I always think that never these pics or video will right and appropriate, probably it's just a matter of shyness (
also due to my bad English ).. .

I hope to have the time (in the next days) necessary to continue, constantly to develop this project (a lot of debug days made me go crazy, near to stop.. , lucky I kept hard and now no more true bugs )and also to enhance this space WIP, as you wrote, for the sake of myself and my project too!.
Thanks a lot for your interest and advices!
Chris Tate
DBPro Master
14
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 10th Feb 2014 10:03 Edited at: 10th Feb 2014 10:10
Many thanks for your understanding; and I share your feelings on the lack of time for your dreams. I work 35-40 hours of below average warehouse work each week. It is however a simple job I prefer over higher paying yet energy and time demanding jobs for reducing the stress level; freeing up more energy and concentration for my Sports Fiction project.

Things are looking bright at the moment because I am starting to create things I would never have expected could be produced by one person on budget equipment. My limitations force me to invent ways to overcome such limitations, and may your limitations do the same. At the end of each year you will give to yourself what you create, but if you do not commit to the work, you have nothing much to reflect back on, and will not have much to work with next year, and so on.

The only reason I am currently able to work on the next up and coming update featuring dynamic scenes and a fantastic editor is because I never stopped working on the SAME project; I do not start new projects, except sub-projects (project inside of the main project). I am only working on scenes, sound and animation now because 2 years ago I did all the boring learning, testing and foundational work.

Keep working on Dark Society, even if you think a little 15 minutes to 30 minutes work in a day means nothing. The most physically fit guys in the gym are not the ones who train the most! No, they are the guys who train for only 30 - 45 minutes a day 3 to 5 days a week , and they take plenty of rest and eat the right foods. They do not lift the heaviest weights! No, they lift manageable weights whilst maintaining perfect form. Consistency and quality over quantity. As an illustration, those little 30 minutes and hours do add up; but you only see those hours at the end of a year of consistent effort, good habits and taking seriously even a 15 minute work slot.

Some people say it is about having fun, and I agree 50% with that. I am the odd one out who does not see it as fun; but you can see it as fun if you like. I view this activity as a battle against obstacles; and myself as a warrior in a demanding and dangerous world in warrior code society! I am not exactly smiling about debugging 5 hours straight to just get a shader to stop crashing; not my idea of fun; but I haven't stopped because I do not need fun, you can have plenty of that when you play test your game later on.

50% of the time I play my game music whilst I work, helps me focus on the project; and also helps me critique the music as I work on the soundtrack, since I need to test the music anyway.

About the struggle to write clearly

In my experience, if you write your posts from the heart, or deep felt feeling like you did in the previous post, it would improve the thread; I read 100% of your last post because it felt human, and my feelings told me 'I must read all of it, or be punished with curiosity', but I could not read 10% of the main initial post because my feelings told me 'do not dare read or I will make you feel sick'; more like the last one, less like the first.

Keep on writing about how you feel about what you are doing, just like you did. Have the courage to post even the most basic screenshot demonstrating a technical experiment, these can entertain those interested in such subjects. If you saw something interesting today in your project work, talk about it; write it directly on the thread, or do what I do, write it in a Word document so you can post all of your thoughts in one big post.

You can also use the syntax of well written articles you find online; you are already programming in near English because you know the programming syntax, now use the same principle with the syntax of English.

For example: One could come across the following made up syntax:

Quote: "The construction project will bring about exciting and rewarding improvements long overdue for the local community"


The italics could be seen as parameters to produce the following alteration:

Quote: "The Dark Society project will bring about exciting and rewarding improvements long overdue for the strategy gaming community.... such as, and so on"


Just like that you have a decent English sentence.

As a programmer you can appreciate the similarities of computer programming languages and every-day language; there is syntax and parameters bound by rules of grammar.

Enough of that now.I will leave you to what you are doing whilst looking forward to seeing more of Dark Society.

Alduce
20
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 13th Feb 2014 10:16
Quote: "
The only reason I am currently able to work on the next up and coming update featuring dynamic scenes and a fantastic editor is because I never stopped working on the SAME project; I do not start new projects, except sub-projects (project inside of the main project). I am only working on scenes, sound and animation now because 2 years ago I did all the boring learning, testing and foundational work.
"

Yes, I understand you; I am a bit sad 'cause I was programming a VERY BIG project for 9 years (a geopolitical/strategic simulator), I was following your same thought, keep hold on ever! keep continue in the same project but in 9 years the desire to change was too high and I left that project.. From today I can think that project was a true coding school for me but I continue to think that if in 9 years I can't achieve that project so.. probably was just a dream than a project. After that I start to develop a flight simulator using DarkDynamix, very exciting! really cool but after over 6 months of develope I understand that this project was just another dream, just it's impossible to simulate thousand of air particles using My PC + DarkBasicPRO.. so the desire about this flight sim fell down.. again . But the desire of develop is too high so a new project born (this one, darkSociety).. and I really hope this time it's THE TIME! so and so I started 5 months ago, pratically all day coding (from 2 to 5/6 hours) and it's nice to see how this project is growing up!

Quote: "Some people say it is about having fun, and I agree 50% with that. I am the odd one out who does not see it as fun; but you can see it as fun if you like. I view this activity as a battle against obstacles; and myself as a warrior in a demanding and dangerous world in warrior code society! I am not exactly smiling about debugging 5 hours straight to just get a shader to stop crashing; not my idea of fun; but I haven't stopped because I do not need fun, you can have plenty of that when you play test your game later on."

Haha mate, I agree with you at 100%! I spent days in debug hunt and yeah.. not propely "funny" haha but when you see all these dead bugs laid on the ground eheh sure it's a good satisfaction!
Many times bugs making me thinking about to stop and to say a good F**K THE WORLD WITH ALL THE PEOPLES ON IT too!! haha but lucky, I always had the strength and patience and the lucky to back to fight

Quote: "About the struggle to write clearly

In my experience, if you write your posts from the heart, or deep felt feeling like you did in the previous post, it would improve the thread; I read 100% of your last post because it felt human, and my feelings told me 'I must read all of it, or be punished with curiosity', but I could not read 10% of the main initial post because my feelings told me 'do not dare read or I will make you feel sick'; more like the last one, less like the first.

Keep on writing about how you feel about what you are doing, just like you did. Have the courage to post even the most basic screenshot demonstrating a technical experiment, these can entertain those interested in such subjects. If you saw something interesting today in your project work, talk about it; write it directly on the thread, or do what I do, write it in a Word document so you can post all of your thoughts in one big post.

You can also use the syntax of well written articles you find online; you are already programming in near English because you know the programming syntax, now use the same principle with the syntax of English.

For example: One could come across the following made up syntax:

Quote: "The construction project will bring about exciting and rewarding improvements long overdue for the local community"

The italics could be seen as parameters to produce the following alteration:

Quote: "The Dark Society project will bring about exciting and rewarding improvements long overdue for the strategy gaming community.... such as, and so on"

Just like that you have a decent English sentence.

As a programmer you can appreciate the similarities of computer programming languages and every-day language; there is syntax and parameters bound by rules of grammar.
"

This is the worst thing for me.. I am Italian, my nation never though about to give a good english base to his peoples.. Probably Italians are the worst english speakers of the world and I really suffering that.
I am sad when I understand I can't catch exactly what you mean when I read english threads.. And I REALLY sad when I think never I coild never make you understanding what I mean or what I wrote

I hope to find time and desire to get better in english but believe me... I think I am already on my top
I am always forced to find my best way to express a concept and always this mean to make a giant loop of words.. I understand I never can make a decent AD page for my projects.

Thank you again for your support Chris! and again, compliments for your immense work! I was just amazed watching your thread about
Chris Tate
DBPro Master
14
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 13th Feb 2014 20:39 Edited at: 13th Feb 2014 21:05
9 years is a long time, much no doubt has been learned in that time. It took roughly 200 people to create the video game La Noire in 7 years if I remember correctly. Please correct me if I am wrong.

Arguably, I have been contemplating building Sports Fiction for about 10 years; it took about 6 years persuade myself to give it a go as a non-programmer who couldn't tell the difference between a class and a structure; and an unskilled 3D modeller who was afraid of Blender; I only knew how to make a bit of game music; that was all. Now people come to me for help. Learn, learn, learn it all; then you get to teach.

The timespan of our effort show that it is good to work on something you intend to stick with for a long time, not so much a single game, but a brand or series of games under one concept; based on topics which interest you, and will interest you later in life.

There is nothing wrong with being an Italian game developer; you do not need to write a novel when pictures paint a 1000 words. Screenshots are your friend; use them more on the thread; you have very nice ones.

I much prefer the way you are writing your English now than in the first post. Make it nice and short if you are uncomfortable with writing at the moment.

About the 1000 air particles; why 1000? Why not 10 that look like 100 in each? Why do they need to be particles, why not a 3D mesh?. You should ask for some help in the forums, you never know; someone might have a solution.

Often asking the right questions gets more work done than simply asking the obvious question. And sometimes you can waste time creating features the game does not need.

Chris Tate

Login to post a reply

Server time is: 2022-12-01 20:16:33
Your offset time is: 2022-12-01 20:16:33