Rewrote README

- Rewrote README based on my understanding of "Under the hood of The Sims" with a section on the Motive Engine
- Redid the needs CSVs to focus on weights
This commit is contained in:
Anthony Leland 2020-10-28 03:05:03 -04:00
parent 101e420489
commit bf46949981
3 changed files with 95 additions and 87 deletions

View file

@ -1,6 +1,14 @@
# Servo
Servo is a experimental re-implementation of SimAntics using ML.NET.
Servo is a experimental re-implementation of SimAntics using ML.NET based on [Under the hood of The Sims](https://users.cs.northwestern.edu/~forbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/v3_document.htm). I have wanted to write my own version of SimAntics for a while but the process of rewriting the engine from scratch pr even maintaining an existing re-implementation, such as FreeSO's, has proven to be tedious. Current machine learning technologies, such as ML.NET, can streamline the process.
That being said, Servo is not intended to be used to rewrite The Sims itself. The models are intended for building new games based on it's design.
## Motive Engine
SimAntics is based on opposing weights. An object signals it's presence if the Sims' need is low. The need is the motive and that drives a Sims' decision. All games in the franchise are based on this dynamic at it's core. For example, if hunger is low then the fridge's presence is high and vice versa.
The sum of all the Sims' needs is it's mood. A Sim will only choose the fridge if it increases it's overall mood. The individual needs is the classification while the mood is the prediction.
## License

View file

@ -1,43 +1,43 @@
Need,Percentage,Priority
Bladder,24,TRUE
Bladder,58,FALSE
Bladder,24,FALSE
Bladder,54,TRUE
Bladder,55,TRUE
Bladder,42,FALSE
Bladder,30,TRUE
Hunger,34,TRUE
Hunger,25,TRUE
Hunger,37,FALSE
Hunger,27,TRUE
Hunger,50,FALSE
Hunger,64,FALSE
Hunger,59,FALSE
Social,29,TRUE
Social,52,FALSE
Social,38,TRUE
Social,50,FALSE
Social,44,FALSE
Social,20,TRUE
Social,55,FALSE
Fun,52,FALSE
Fun,35,TRUE
Fun,26,TRUE
Fun,46,FALSE
Fun,40,FALSE
Fun,51,FALSE
Fun,24,FALSE
Energy,32,TRUE
Energy,43,FALSE
Energy,40,FALSE
Energy,59,FALSE
Energy,30,TRUE
Energy,46,FALSE
Energy,68,FALSE
Hygiene,33,TRUE
Hygiene,68,FALSE
Hygiene,61,FALSE
Hygiene,68,TRUE
Hygiene,22,TRUE
Hygiene,39,TRUE
Hygiene,53,FALSE
Need,Percentage,Weight
Bladder,-24,+24
Bladder,+58,-58
Bladder,-24,+24
Bladder,-54,-54
Bladder,+55,-55
Bladder,-42,+42
Bladder,-30,+30
Hunger,-34,+34
Hunger,-25,+25
Hunger,+37,-35
Hunger,+27,-27
Hunger,-50,+50
Hunger,+64,-64
Hunger,-59,+59
Social,+29,-29
Social,-52,+52
Social,+38,-38
Social,+50,-50
Social,-44,+44
Social,+20,-20
Social,-55,+55
Fun,-52,+52
Fun,+35,-35
Fun,-26,+26
Fun,+46,-46
Fun,-40,+40
Fun,+51,-51
Fun,-24,+24
Energy,-32,+32
Energy,+43,-43
Energy,-40,+40
Energy,+59,-59
Energy,-30,+30
Energy,+46,-46
Energy,-68,+68
Hygiene,+33,-33
Hygiene,-68,+68
Hygiene,-61,+61
Hygiene,+68,-68
Hygiene,+22,-22
Hygiene,-39,+39
Hygiene,+53,-53

1 Need Percentage Priority Weight
2 Bladder 24 -24 TRUE +24
3 Bladder 58 +58 FALSE -58
4 Bladder 24 -24 FALSE +24
5 Bladder 54 -54 TRUE -54
6 Bladder 55 +55 TRUE -55
7 Bladder 42 -42 FALSE +42
8 Bladder 30 -30 TRUE +30
9 Hunger 34 -34 TRUE +34
10 Hunger 25 -25 TRUE +25
11 Hunger 37 +37 FALSE -35
12 Hunger 27 +27 TRUE -27
13 Hunger 50 -50 FALSE +50
14 Hunger 64 +64 FALSE -64
15 Hunger 59 -59 FALSE +59
16 Social 29 +29 TRUE -29
17 Social 52 -52 FALSE +52
18 Social 38 +38 TRUE -38
19 Social 50 +50 FALSE -50
20 Social 44 -44 FALSE +44
21 Social 20 +20 TRUE -20
22 Social 55 -55 FALSE +55
23 Fun 52 -52 FALSE +52
24 Fun 35 +35 TRUE -35
25 Fun 26 -26 TRUE +26
26 Fun 46 +46 FALSE -46
27 Fun 40 -40 FALSE +40
28 Fun 51 +51 FALSE -51
29 Fun 24 -24 FALSE +24
30 Energy 32 -32 TRUE +32
31 Energy 43 +43 FALSE -43
32 Energy 40 -40 FALSE +40
33 Energy 59 +59 FALSE -59
34 Energy 30 -30 TRUE +30
35 Energy 46 +46 FALSE -46
36 Energy 68 -68 FALSE +68
37 Hygiene 33 +33 TRUE -33
38 Hygiene 68 -68 FALSE +68
39 Hygiene 61 -61 FALSE +61
40 Hygiene 68 +68 TRUE -68
41 Hygiene 22 +22 TRUE -22
42 Hygiene 39 -39 TRUE +39
43 Hygiene 53 +53 FALSE -53

View file

@ -1,43 +1,43 @@
Need,Percentage,Priority
Social,20,TRUE
Hunger,64,FALSE
Hunger,59,FALSE
Bladder,55,TRUE
Energy,43,FALSE
Fun,24,FALSE
Hunger,25,TRUE
Fun,40,FALSE
Fun,46,FALSE
Hygiene,68,TRUE
Bladder,30,TRUE
Bladder,42,FALSE
Hygiene,39,TRUE
Social,50,FALSE
Bladder,24,TRUE
Bladder,24,FALSE
Fun,35,TRUE
Social,38,TRUE
Fun,51,FALSE
Bladder,58,FALSE
Fun,52,FALSE
Energy,46,FALSE
Energy,59,FALSE
Hunger,37,FALSE
Social,55,FALSE
Hygiene,68,FALSE
Energy,30,TRUE
Energy,68,FALSE
Bladder,54,TRUE
Hunger,34,TRUE
Hygiene,53,FALSE
Hygiene,61,FALSE
Hygiene,33,TRUE
Hunger,50,FALSE
Social,29,TRUE
Social,52,FALSE
Energy,32,TRUE
Fun,26,TRUE
Social,44,FALSE
Hygiene,22,TRUE
Energy,40,FALSE
Hunger,27,TRUE
Need,Percentage,Weight
Energy,-30,+30
Hygiene,-39,+39
Hunger,+27,-27
Social,+29,-29
Fun,-26,+26
Energy,-32,+32
Bladder,+55,-55
Social,-55,+55
Fun,-24,+24
Bladder,-30,+30
Social,-44,+44
Fun,-52,+52
Energy,-68,+68
Hunger,-59,+59
Bladder,-42,+42
Energy,+43,-43
Social,+20,-20
Energy,-40,+40
Bladder,+58,-58
Hygiene,+33,-33
Social,+38,-38
Social,+50,-50
Hygiene,+53,-53
Bladder,-24,+24
Hygiene,+68,-68
Fun,+46,-46
Hunger,+64,-64
Hunger,+37,-35
Hunger,-50,+50
Energy,+46,-46
Bladder,-24,+24
Hygiene,-61,+61
Social,-52,+52
Fun,+51,-51
Hygiene,+22,-22
Hunger,-25,+25
Bladder,-54,-54
Fun,-40,+40
Energy,+59,-59
Hunger,-34,+34
Hygiene,-68,+68
Fun,+35,-35
1 Need Percentage Priority Weight
2 Social Energy 20 -30 TRUE +30
3 Hunger Hygiene 64 -39 FALSE +39
4 Hunger 59 +27 FALSE -27
5 Bladder Social 55 +29 TRUE -29
6 Energy Fun 43 -26 FALSE +26
7 Fun Energy 24 -32 FALSE +32
8 Hunger Bladder 25 +55 TRUE -55
9 Fun Social 40 -55 FALSE +55
10 Fun 46 -24 FALSE +24
11 Hygiene Bladder 68 -30 TRUE +30
12 Bladder Social 30 -44 TRUE +44
13 Bladder Fun 42 -52 FALSE +52
14 Hygiene Energy 39 -68 TRUE +68
15 Social Hunger 50 -59 FALSE +59
16 Bladder 24 -42 TRUE +42
17 Bladder Energy 24 +43 FALSE -43
18 Fun Social 35 +20 TRUE -20
19 Social Energy 38 -40 TRUE +40
20 Fun Bladder 51 +58 FALSE -58
21 Bladder Hygiene 58 +33 FALSE -33
22 Fun Social 52 +38 FALSE -38
23 Energy Social 46 +50 FALSE -50
24 Energy Hygiene 59 +53 FALSE -53
25 Hunger Bladder 37 -24 FALSE +24
26 Social Hygiene 55 +68 FALSE -68
27 Hygiene Fun 68 +46 FALSE -46
28 Energy Hunger 30 +64 TRUE -64
29 Energy Hunger 68 +37 FALSE -35
30 Bladder Hunger 54 -50 TRUE +50
31 Hunger Energy 34 +46 TRUE -46
32 Hygiene Bladder 53 -24 FALSE +24
33 Hygiene 61 -61 FALSE +61
34 Hygiene Social 33 -52 TRUE +52
35 Hunger Fun 50 +51 FALSE -51
36 Social Hygiene 29 +22 TRUE -22
37 Social Hunger 52 -25 FALSE +25
38 Energy Bladder 32 -54 TRUE -54
39 Fun 26 -40 TRUE +40
40 Social Energy 44 +59 FALSE -59
41 Hygiene Hunger 22 -34 TRUE +34
42 Energy Hygiene 40 -68 FALSE +68
43 Hunger Fun 27 +35 TRUE -35