Hoe creëer jij het universum?

Interesting Props/Game tweaks

User avatar
Team Llama
408 Posts
Post
The game can be modified to some extent with the 'prop' cheat. In this topic I want to add some information about interesting props that can be modified with this cheat, and perhaps make your game more interesting. First, some basics.

Usage instructions
Properties.txt: enabling access
To enable a prop, add the line to the bottom of C:Program FilesSporeDataConfigProperties.txt (location depends on your Spore installation directory). Each line is in the form "property name ID type", where name is the name through which you access it, ID is a number, a "code" starting with 0x, or something of the form "hash(something)". Type can be bool (boolean: on/off), int (number without decimal piont), uint32 (int, but non-negative, i.e. 0 or greater), float (number with decimal point -- use a dot (.) and not a comma for values!), a 'string' or 'string8' (just text), or some more complex type (vector etc). For example, this property defines whether to play the intro sequence or not, when starting up the game:

Code: Select all
property playOpeningMovie (hash(playOpeningMovie)) bool


Note that to get access to a property in the game, you'll need to restart the game after editing Properties.txt (i.e. Properties.txt won't be re-read when you modify it and the game is running, it is only updated when you start the game).

ConfigManager.txt: Default values
Next is setting the default values fpr these props, which may in some cases be necessary. Open up C:Program FilesSporeDataConfigConfigManager.txt, and add a line to change the default. It'll be like "typeProp name value", where "typeProp" can be "boolProp", "intProp", "floatProp" etc (depending on the type of the property). "name" is the property name as you added it to Properties.txt, value is the value you want to assign (for booleans for example on/off, true/false, or 1/0). For example, to disable the intro movie, add:

Code: Select all
boolProp playOpeningMovie false


ConfigManager.txt is read on start-up of the game and loads some default settings depending on your graphics card, system, etc. Some properties may be changed again afterwards, depending on (user) options etc., so you may not be able to successfully change all properties in this file.

In-game inspection and adjusting
To check the current value of an enabled property open up the cheat console (Ctrl+Shift+C), and type "prop name". E.g., to inspect the playOpeningMovie property:

Code: Select all
prop playOpeningMovie


If a value is set, and the property is properly accessible, the prop cheat will output the value and type to the console. If the property is not accessible it shows you nothing (iirc), if the type is too complex (vectors, keys and some others I believe) it'll just say "unknown".

To modify a property in-game, you use the same 'prop' in the cheat console. Note that you do not type the property's type in front of the cheat. Basically enter the same as for inspecting, but append the value you want to set. For example, to disable the opening movie:

Code: Select all
prop playOpeningMovie false


(That example is pretty useless as by the time you enter it in the cheat console, the movie will of course already have (not) played).

Some descriptions also mention a "listProps" cheat -- I can't test that one right now, so I'm unsure if that still works and how useful it is... Will try soon.

Finding props - for geeks/adventurers
Use Rick's Spore tools (link points to latest version at time of writing, check that site for updates). Using the Package viewer, open C:Program FilesSporeDataSpore_Game.package. Choose File->Save All and dump all files to a directory. In there, head to the trigger/#00000000 directory. It will have an appProperties.trigger file (and several others) which define existing props. Just open them in a simple text editor (like Notepad) and just search for interesting stuff, try it out as explained above (especially the ID field should match in Properties.txt).

The list
I'll update this opening post as I come across more props. Add your findings in replies please, and I'll add the nice stuff. Just copy the lines you want straight to your Properties.txt:

Note: the default values come from the original properties list. The actual default values may differ, since the game tends to change a few props through scripts because of the options you set, the graphics card you have, etc.

Code: Select all
property renderUI 2 bool

(Default: true) When set to false, the UI (user interface) is hidden. Do not set this to false by default, unless you want to cause yourself a lot of trouble. When using this in the game, first set it to true so you can use the cheat console history to bring your UI back (just press up, up, enter).

Code: Select all
property IsCSAApp 70 bool

(Default: false) No idea, just a note to self for now, so I remember it.

Code: Select all
property EditorAllowAsymmetry 73 bool

(Default: false) Should allow asymmetry when set to true. Unfortunately this does not seem to work, perhaps a special key combo is required to turn on asymmetry. Or it only works in debug mode, or it's a special editor prop that's now not used anymore.

Code: Select all
property InitialMode 0x00b33bb5 string

(Default: "") Seems to indicate the mode/state the game should start in. Set a value in ConfigManager.txt. I haven't tried this one, maybe it'll help us get into debug mode, but I suppose it can also let you open up one of the editors when you launch the game.

Code: Select all
property RefreshRate  0x00d77e98 int

(Default: 60) The refresh rate to use. Actually I now don't remember if you can pick it in the options screen, otherwise you can modify through here.

Code: Select all
property AlwaysFullscreen 0x05dd4647 bool

(Default: false, true for Mac) If set to true, you can't play the game in windowed mode (Alt+Enter to toggle). Set to true by default on Macs, probably because it doesn't support windowed playing... but someone with a mac could try to toggle this.

Code: Select all
property LowResMode 0x00d77e9f bool

(Default: false) Play in low resolution mode. Haven't tested this one, not sure what it does exactly or how much it differs. May speed up gameplay on lower-end computers. May even be set to true by default for some configurations.

Code: Select all
property messageBoxOnPropertyError  (hash(messageBoxOnPropertyError)) bool

(Default: true, though I suspect set to false somewhere else) Untested, from its meaning I suppose it would show a message box if you set a wrong/invalid property or so. Should try this one out...

Code: Select all
property useDebugServer 0x0546e93d bool

(Default: true) Not sure if this is set to false elsewhere in the game, or even forced as such. May allow HTTP debugging etc ("run with http debug server on by default" is its description).

Code: Select all
property maxActiveCreaturePlants 0x028bd2fd int

(Default: 5) "The total number of active creature plants allowed at any given time." -- I suppose that if you change this, you get a larger variety of plants in creature stage. Untested, again.

Code: Select all
property playOpeningMovie (hash(playOpeningMovie)) bool

(Default: true) Set this to false in ConfigManager.txt to disable to EA/Maxis/Spore logos, i.e. the opening movie.

Code: Select all
property disableRedPauseBorderUI 0x0387d0a9 bool

(Default: false) Fun stuff, negative props ("disable"). Anyway, if false, the pause border is enabled, if true it is not. I guess anyway, haven't tried yet.

The following properties help you tweak the recording movie settings, and may be overridden by your options (thus setting them in ConfigManager.txt is probably useless for most of them):
Code: Select all
property recordMovieLength  0x0456f974 float

(Default: 120) The (maximum?) length of a single movie, in seconds. Defaults to 2 minutes.

Code: Select all
property recordMovieWidth 0x0456f975 int

Code: Select all
property recordMovieHeight 0x0456f976 int

(Defaults: 320, 240) The movie resolution. Can be changed through options, but if you have a powerful PC (or not at all) you can increase (decrease) these even further to record your movies in higher (lower) resolution.

Code: Select all
property recordMovieFPS 0x0456f977 float

(Default: 15.0) The framerate of your recordings. Set higher for smoother movies (but requires more computer power).

Code: Select all
property recordMovieQuality 0x0456f978 float

(Default: 0.8) My guess: a value from 0-1 which defines the quality of your recordings. Set to 1 for highest quality (and probably also greatest filesize).

Code: Select all
property recordMovieAudio 0x0456f979 bool

(Default: true) Record audio (sound) with videos.

Code: Select all
property recordMovieNoUI 0x0456f97a bool

(Default: true) Again a negative property: if set to true, the UI is not captured in movies. Set to false to include your game's UI in movies.

Code: Select all
property recordMovieFrameUI 0x0641021a bool

(Default: true) "show REC frame when recording, can be disabled only when gameUI is enabled". I haven't really seen the frame myself yet, but I don't really record movies either. Set to true to make the game show a frame when recording movies, false to disable it (but "renderUI" must be set to true, if the original description is correct).

The following are probably all about the GIF avatar captures that Spore makes in the creature editor:
Code: Select all
property GIFOutputSize               0x05893ed4 uint32

(Default: 150) The resolution (width and height) of GIF image captures.

Code: Select all
property GIFNumFramesPerRow  0x05893ee8 uint32

(Default: 6) This included description is the best explanation I guess:
GIF Animation
the animations are captured in a single texture flipbook and then exported for best performance for eg. you can capture 36, 100x100 frames in a 600x600 texture with 6 frames per row in this case OutputSize would be 100 and NumFramesPerRow would be 6 length in seconds determines the framerate of the capture


Code: Select all
property GIFLength                   0x05893ef5 uint32

(Default: 2) Length (in seconds?) of a captured GIF animation, I guess.

Code: Select all
property GIFOutputFPS                0x05893f01 float

(Default: 15.0) The amount of frames per second to put in the GIF captures.

Code: Select all
property GIFEditFPS                  0x06243d0a float

(Default: 6.0) My guess: the amount of frames (per second) captured from editors. If this equals GIFOutputFPS, then the output GIF will play in realtime. If it's lower (like the default), the GIF will play faster, otherwise either slower or it'll just drop frames that it does not output to the file.

Code: Select all
property GIFPlanetFPS                0x069710d4 float

(Default: 10.0) Same as above, but I guess this one is for planet GIFs.

Code: Select all
property GIFDither                   0x05d2c085 uint32

(Default: 0) Dither method for GIF captures. Values 0: none; 1: FloydSteinberg; 2: Burkes; 3: Stucki.

Code: Select all
property GIFAntiAlias                0x05d2c51b bool

(Default: true) Antialias ("smooth edges") GIF captures. "works better with a background color since no translucency in GIF" (from original description).

Code: Select all
property GIFBGColor                  0x05d2c54b colorRGBA

(Default: (0,0,0,0) ) A collection of four numbers 0-1 (float) This defines the GIF background color to use, in Red/Green/Blue/Alpha order (Alpha is transparency: 0 is transparent, 1 is completely opaque). For red, for example, set (1,0,0,1) -- don't forget the parentheses.

Code: Select all
property GIFFramingPad               0x05d2cbfb float

(Default: 1.3) "values greater than one push camera back, smaller than one push camera in" -- Probably the camera position (zoom) for GIF captures. Set high to zoom out, set low (close to 0) to zoom in.

Code: Select all
property GIFAnimIndex                0x05d2e91b uint32

(Default: 0) "value between 1 - 14 will play animation at that index, 0 will cycle throught them in order" -- The animation to use in GIF captures. Set to 0 (default) to capture a different animation every time (in order), or to a specific number to capture the indicated animation.

Back to other properties again, non movie/gif related:
Code: Select all
property enableYouTubeVideoUpload    0x0566387e bool

(Default: false) Enable YouTube video uploading straight from the game (I believe only in the creature editor). Haven't tested, like most of these listed properties here...

Code: Select all
property SpaceStartupLocation        0x01c29572 int

(Default: 0) Not sure, seems to tell where to start a (new) space game: values are 0: planet; 1: solar system; 2: galactic

Code: Select all
property AngrySpaceMode              0x023ba1fb int

(Default: 0) Values: 0: normal; 1: immediate combat -- Have angry empires try to kill you straight from the start? Not sure what this one does... May only work for a newly started space game.

Code: Select all
property InvincibleSpaceMode         0x023ba1fc int

(Default: 0) Set to 0 for normal space UFOs, 1 to make them invincible (reported to work here). Not sure if this applies to all UFOs, or only your own.

Code: Select all
property InvincibleTurrets           0x06297f2a bool

(Default: false) Similar as above, but this time a proper boolean (true/false or on/off). Set to true to make turrets invincible ("for Automated Testing"). Again, not sure if this applies to all or just your own turrets. Also not sure if this works in Civ and/or (just) space game.

Code: Select all
property InvincibleBuildings         0x064d431f bool

(Default: false) See turrets, this time for buildings.

Code: Select all
property UseAnimWater 0x5baf2e0a bool

(Default: false) Animate water? I'm not sure - try it out by setting it to true, and see if your water starts animating... Set to false in low planet quality, medium or high have it enabled by default.

Code: Select all
property spaceshipsCollide           (hash(spaceshipsCollide)) bool

(Default: false) Perhaps if you set this to true, you can crash (and damage) your spaceship into others.

Code: Select all
property BakeBeforeEnteringPlanet    (hash(BakeBeforeEnteringPlanet)) bool

(Default: false) "throw up a splash screen and chug on baking" -- not sure what it does, but I like apple pie. Bake me some :P Will test this one out some time.

Code: Select all
property SpaceWalkAroundBan (hash(SpaceWalkAroundBan)) bool

(Default: true) "enable ban mode whileout of ufo" -- I suppose this means that you can enable/disable banning creatures while walking around with your hologram scout.

Code: Select all
property  EditorRenderingQuality    0x0400178a int

(Default: 1) The graphical quality in editors (0: low, 1: medium, 2: high)

Code: Select all
property  disableValidation         0x055d7ca1 bool

(Default: false) Set to true to disable some validations... Perhaps this way you can create vehicles etc. without any parts? Not sure, haven't tested...

Code: Select all
property  disablePerformanceLimits  0x0677d3ea bool

(Default: false) I suppose if you set this to true you won't be bothered with the complexity meter? Similar to freedom cheat then. Haven't tested, as usual...

Code: Select all
property  enableEditorDevUIButton   0x056c5721 bool

(Default: false) I'd love to see that button... but I don't believe this one works.

Code: Select all
property  EditorAllowXMLFileDrop    0x0594a0fb bool

(Default: false) Allow dropping XML files (creature definitions etc) to editors? Haven't tested, might be possible to copy creatures this way, perhaps even by manually manipulating XML files and going to some extremes...

Code: Select all
property  AntiAliasPlayModePhotos   0x05c8af84 bool

(Default: true) Anti-alias (smooth edges) for pictures taken in test drive, I guess. Best kept "true", looks nicer, but false might improve performance.

Code: Select all
property  enableLimbExportMode 0x06529e22 bool

(Default: false) I have no clue, but sounds interesting...

Code: Select all
property  EditorAlwaysAllowDrop     0x0678f3f1 bool

(Default: false) Allow dropping of... files, parts/limbs/etc? Dunno, but sounds interesting!

Code: Select all
property  EditorEnableInspection    0x068df418 bool

(Default: true) May default to false without patch. I suppose this enables inspection of parts (with 'i' key) in editors.

Code: Select all
property  EditorEnablePlayModeDrop  0xD7F24DCF bool

(Default: false) We're dropping stuff again. Note that "PlayMode" probably refers to the Test Drive mode... I think. Still don't know what we're dropping...

Code: Select all
property pollinatorAPIHost           0x05384c3f  string8

Code: Select all
property communityHost               0x053dd8c2  string8

(Defaults: "ml-latest.spore.rws.ad.ea.com") Don't bother setting these, they're hardcoded in the EXE file (pollinator.spore.com, community.spore.com). These props are ignored. Just placing them here so you know I've inspected these...

Code: Select all
property insecureHTTP                0x05387295  bool

(Default: false) I love Maxis and those negative props... Set to true and the game will use plain "http" instead of SSL ("https"). Login procedure always uses SSL though...

Code: Select all
property cacheXHTML                  0x03e42efa bool

(Default: true) Cache the web pages (MVJCache directory iirc).

Code: Select all
property BuddiesOnly                 0x05de7b4b bool

(Default: false) This is in fact an option, but now you can edit it through the prop cheat (or set a system default other than false). Woot!

Code: Select all
property expireOldContent            0x06270df7 bool

(Default: true) Option to remove old content from your game.

Code: Select all
property expireOldContentDays        0x06270df8 uint

(Default: 30) Amount of days before content is considered old.

Code: Select all
property archiveExpired              0x06270df9 bool

(Default: false) Even if content has expired, keep it somewhere (archive it).

Code: Select all
property downloadCacheSize           0x0685c490 uint

(Default: 1024) Cache/restrictive size (in Mb I suppose) of downloads/pollinated content.

Code: Select all
property limitFeedUpdate             0x0685c57a bool

(Default: false) Only download recent content (I guess)

Code: Select all
property limitFeedUpdateDays         0x0685c598 int

(Default: 7) Amount of days considered recent (I guess).

Code: Select all
property youTubeHost                 0x055bdfd6  string8

(Default: "www.google.com") The host of YouTube

Code: Select all
property youTubeUploadHost                   0x055e9027      string8

(Default: "uploads.gdata.youtube.com") Where to upload movies to YouTube to...

Code: Select all
property PartsModeColor  0x03d1bc93      bool

(Default: true) (This is in a section about the Tribal game) I suppose if you set this to false, the game does not change the coat color of your creature anymore. Not sure though.

Code: Select all
property maxAnimalsPerStage 0x04a5bf9e int

(Default: depends on game quality: low = 8, medium = 14, high = 20) Amount of different creatures in creature/tribal stage?

Code: Select all
property HardCodeSpaceHomePlanet     (hash(HardCodeSpaceHomePlanet)) bool

(Default: true) "if false, home planet is procedurally generated on game start" -- set to false to get more randomized home planets for new games, I guess

Code: Select all
property UnlockAllLevels             0x046149df                      bool

(Default: false) "whether to default to all levels playable" -- If you haven't already unlocked 'em all, set this to true and you should be able to access all stages of the game.

Code: Select all
property EditorShowTutorialOnStart     0x05949bf1  bool

(Default: false) Show an editor tutorial when you start it.

Code: Select all
property ShowPartUnlockUI 0x043c5160 bool

(Default: true) Show the unlock UI of parts (I guess these are the yellow stars behind recently unlocked creature parts?)

Code: Select all
property ShowCreatureEncounteredCard 0x043eefca bool

(Default: true) Show the Sporepedia card when you encounter a new creature (untested).

Code: Select all
property assetBrowserBanMode (hash(assetbrowserbanmode)) bool

(Default: false) Allow banning of creatures in Sporepedia??

Code: Select all
property assetBrowserSkipShopping (hash(assetbrowserskipshopping)) bool

(Default: false) Erm... skip having to create that building/vehicle when entering civ?? No clue...

Code: Select all
property assetBrowserEnableTraitDebugMode 0xb4daca6a bool

(Default: false) Debug traits in Sporepedia...???

Code: Select all
property SPGAutoSave (hash(SPGAutoSave)) bool

(Default: false) Set to true to enable autosave in SPG (SPaceGame).

Code: Select all
property GonzagoDebugging        0x051c534d bool

(Default: false) This seems to do nothing... but the exe mentions "gonzago" in front of some debug mode cheats, gonzago probably refers to the creature game prototype. How can we get this to work?!

Code: Select all
property ShowPollinationStatsInCRE 0x05c408e3 bool

(Default: false) Pollination statistics in CREature game?

Code: Select all
property ShowPollinationStatsInCRE_ScreenCoodinates 0x06048fd2 vector2

(Default: (350, 100) ) The position of aforementioned pollination stats...

Code: Select all
property CaptureUI 0x06316068 bool

(Default: false) Capture the UI (in screenshots etc. I guess, see above for movies)

Code: Select all
property enableLoadingCards    0x064a44a8 bool

(Default: true) "turn on loading cards"... Are the loading cards the Sporepedia cards when you encounter a new creature? Unsure about this one...
Image
Webmaster The Sims Zone - Webmaster The Spore Zone - Blokjeseliminator - SNWeblogs!

User avatar
Team Llama
408 Posts
Post
Some more info on property types, from trigger file Group #00000000, instance #658B0AB2 (trigger/#00000000/#658B0AB2.trigger):

Code: Select all
# Property types:
#
# Type                Example                   More examples
# bool                false
# int                 0
# float               0.5
# string              hello
# key                 name                      group!name, group!name.extension, 0x12341234, 0x12341234!0x12341234
# vector2             (1, 1)
# vector3             (1, 1, 1)
# vector4             (1, 1, 1, 1)
# colorRGB            (1, 0, 0)
# colorRGBA           (1, 0, 0, 0.5)
# transform           (t_x, ty, tz) [scale [(rot_x, rot_y, rot_z)]]
# bbox                (min_x, min_y, min_z) (max_x, max_y, max_z)
# text                "placeholderText" <tableID>!<instanceID>
#
# bools               false true false
# ints                0 1 2 3
# floats              0.5 1.0 2.3
# strings             label1 label2 label3
# keys                name1 name2 name3
# vector2s            (1, 1) (2, 1)
# vector3s            (1, 1, 1) (0, 0, 0)
# vector4s            (1, 1, 1, 1) (1, 2, 3, 4)
# colorRGBs           (1, 0, 0) (1, 0, 0) (1, 0, 0)
# colorRGBAs          (1, 0, 0, 0.5)
# transforms          ((1, 2, 3) 1 (1, 2, 3)) ...
# bboxes              ((1, 2, 3) (4, 5, 6)) ((7, 8, 9) (10, 11, 12)) ...
# texts               ("placeholderText" <tableID>!<instanceID>) ("placeholder2Text" <tableID2>!<instanceID>)...
# ...


Basically the plurals (bools, ints, floats) mean they are an array/sequence of values of the type. Note that the 'string8' type (and its plural) is missing here. Not sure how string8 differs from the regular string, perhaps a localized or unicode-enabled string?

The same file reads the appproperties, optionproperties and castingmanagerproperties files. It declares a few property groups and basically a whole, huge, long list of properties. I assume most of those are properties of objects, and not so much settable using the cheat (at least they probably won't have any effect), but some might be useful. Guess we'll have to try to figure that out...
Image
Webmaster The Sims Zone - Webmaster The Spore Zone - Blokjeseliminator - SNWeblogs!

User avatar
Team Llama
410 Posts
Post
That's a long list ;) perhaps i've read over it, but is it possible to get a blue background in the creator editor test room? instead of the black background?

Nooboo
12 Posts
Post
I imagine that should be possible. I'm not sure how though atm.

User avatar
Team Llama
408 Posts
Post
I saw the parts pack adds new backgrounds... so I assume the background is in the form of content rather than through props. You'd have to find the background in the package files, then modify it, I guess. I haven't seen anything related to it in the props, but I could have overlooked it.
Image
Webmaster The Sims Zone - Webmaster The Spore Zone - Blokjeseliminator - SNWeblogs!

User avatar
SNW Webmiss
14293 Posts
Post
dekdes wrote:That's a long list ;) perhaps i've read over it, but is it possible to get a blue background in the creator editor test room? instead of the black background?

I'd actually like a black/transparent background for the other editors... Hmmz


  • Stats
  • Who is online

    In total there is 1 user online :: 0 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
    Most users ever online was 97 on Jun 05, 2013 4:06pm

    Users browsing this forum: No registered users and 1 guest

cron