Project Landslide (Script Mod) by Consort


This little tool is a text-only cheatcode to modify the sliders of entire populations of Sims in your town. Since it's a boring and time-consuming task to take each individual townie into CAS, why not do it Cycl0n3 Sw0rd style via command line - Quick and easy like compiling a Linux kernel.


Overview

How does this work?

Download & install the mod like any other mod.
Open the cheat console by pressing Ctrl+Shift+c
Type your slider command.
(As a first test I would suggest you list the weight of all Sims by typing slider weight list)


The output will be displayed in the top right corner as a notification (those under the tab with the letter symbol)



Quick Walkthrough

Let's just start with a quick walkthrough to give you an idea of what we're talking about:

You can read out a slider value of all Sims
slider NostrilHeight list

You can reset a slider for all Sims
slider alienears setto 0

You can undo the last operation for all Sims that were modified
slider undo

You can randomize a slider for all Sims
slider weight setto rand -0.5 1

You can copy the value of one slider to another for all Sims:
slider simheightbycmar setto simheight
(Translation: the "Sim Height by cmar" slider is set to the value of the "Sim Height" slider (by Bloom, but he chose to name it just "Sim Height", so that's our handle). In other words: simheight is copied to simheightbycmar)

All operations can be filtered:
slider weight setto 1 if isfemale if youngadult if couchpotato
(Translation: set the weight of all young adult females to maximum if they have the couch potato trait)

All operations can be modified by basic arithmetics:
slider shoulderwidth setto fitness mult 2 max 1 min rand 0.5 1 if athletic
(Translation: copy the fitness value to the (custom) shoulderwidth slider, but multiply the value by 2, don't allow values higher than 1, and set a minimum random value between 0.5 and 1). Oh and only for Sims with the athletic trait please.)
 
Please Read
Syntax

Fixed keywords are in bold
Varibles are in italic
[] indicate optional things. Never type [ and ]

Main Modes:

slider someslider setto value [optional arguments]
Sets someslider to value for ALL sims (filtered by optional arguments)

slider someslider list [optional arguments]
Lists the setting of someslider for each Sim in the game (filtered by optional arguments)

slider undo [optional arguments]
Undo the last change (filtered by optional arguments)

slider dump
Dumps a list of all sliders, Res key instances, EA boolean values and trait names available in your game.
The file created is a ScriptError{somethingsomething}.xml file in your Sims3 directory.

Variables:

someslider

value

Representation of a slider setting as a floating point value. Most sliders have a legal range of -1.0 to 1.0 with 0 representing the (vanilla) middle. There are some exceptions though: Some run from 0 to 1.0. Among these exceptions are Skintone, Definition, VoicePitch and a few facial sliders like AlienEars.

Optional Arguments

Switches (type them or leave them out)

Arithmetic Arguments (multiple allowed, processed from left to right)


Conditional Agruments (multiple allowed)
Examples

Make males taller than females

I've read this question in forums quite often. Let's see what we can do.
In this example I'm using Cmar's height slider, but it should work quite similarly with other sliders.
CAS lists the slider as "Sim Height by cmar" so the handle to use is simheightbycmar. You can also use #F9E284139E1F88CF. You can download it from here.
I toyed with the slider in CAS a bit and decided that full slider left and full slider right (-1.0 resp. 1.0) is too extreme. I think I'd like my females to be about -0.3 and the males +0.3.
Let's write those values:

slider Simheightbycmar setto -.3 if isFemale
slider simheightbycmar setto .3 if ismale


An alternative way would be to randomize males and females within a certain range. This way every Sim is a different height but most females are shorter than most males. Let's roll something between -0.4 and 0.1 for females and for males I use -0.1 to 0.4
slider simheightbycmar setto rand -.4 .1 if isfemale
slider simheightbycmar setto rand -.1 0.4 if isMale


Let's assume I'm happy with this setting and play my town for a while and some new families have settled down in my neighbourhood. How do I randomize only the newcomers without re-randomizing the existing Sims?
Simply type the two lines again, but add the skipset parameter at the end. This way all Sims with already set height will be left untouched.

Advanced random
Or: Nerdy fun with arithmetic arguments

Most body dimensions among a population are not "plain" random but follow a certain distribution. A large quantity of people have an average body height while only very few are extremely short or extremely tall. This is called a normal ditribution.

The sizes of almost all body parts follow this distribution. I want to randomize everyone's ear size according to normal distribution.

In order to roll random values with a normal distribution I have to combine several random rolls. This is explained here with 6 sided dice. I'm not using dice, I'm using 3 random rolls. Finally, I will divide the result by the number of times i rolled (multiplying by 0.3333 is the same-ish as dividing by 3).

slider earsscale setto rand -1 1 add rand -1 1 add rand -1 1 mult 0.3333

I ran this command on a town with 123 Sims and plotted the distribution in OpenOffice:


Not perfect, but with some imagination resembles a bell curve. Most Sims have an ear scale in the middle, only a few have really large or really small ears.

I ran the command 4 more times and since I had OpenOffice open, plotted the results: Image
And yea, the shift to the right is likely to be caused by my inability to operate OpenOffice Calc. But I think you get the idea :)

Download

ConsortModProjectLandslide0.9.zip 29 Oct 2013


ConsortModProjectLandslide0.91.zip 2 Nov 2013
Bugfix: Slider dump command should produce a notepad-readable file for many languages now. Chinese encoding still seems to be bugged.

ConsortModProjectLandslide0.92.zip 8 Nov 2013
Bugfix: Slider dump is hopefully readable in notepad, if you have problems, use notepad++
Change: Multiple arithmetic arguments are now allowed and processed from left to right.

Compatibility

Compiled against patch level 1.63
Tested with 1.57
Compatibility with earlier and later versions is likely.

Click here to go to original support thread...