protonscr

[Cogs] Player info are not saved in game configuration directory

steamclosed reviewed3rd party game
ValveSoftware/steam-for-linux#551 · opened 2013-01-05 by meden · updated 2013-01-19 · 6 comments · github
Mmeden 2013-01-05 github

I played Cogs before installing it in Steam (registering my HumbleBundle key). On first run the Steam client correctly imported my existing in game progress (and assigned me achievements), but further progress playing in Steam are not available to a standalone installation, i.e. are not saved in Cogs data directory. To be clear:

  • On first run Steam copies ~/.local/share/Cogs/playerInfo.dat in ~/.local/share/Steam/userdata/120250983/26500/remote/playerinfo.dat (notice the different file name casing -- Linux filesystem is almost ever case sensitive)
  • Any progress is correctly saved in my (remote) Steam profile
  • Any progress is only locally saved in ~/.local/share/Steam/userdata/120250983/26500/remote/playerinfo.dat, not in ~/.local/share/Cogs/playerInfo.dat (nor ~/.local/share/Cogs/playerinfo.dat, standalone game works with both casing).

BTW ~/.local/share/Cogs/cogs.ini is correctly updated if I change my game configuration.

Not a major issue, of course, but it would be better to avoid things like that became widespread across many games. Thanks!

MMrSchism 2013-01-06 github

I didn't even know it imported the save data, much less that it'd award you achievements for that progress.

Please include the information requested at https://github.com/ValveSoftware/steam-for-linux for any additional information.

As for case-sensitivity, that's usually dictated by the file system and the difference in case is probably to prevent issues on older, case-sensitive file systems.

Mmeden 2013-01-06 github

I didn't even know it imported the save data, much less that it'd award you achievements for that progress.

We all know here how Linux is better than Windows... ;)

Please include the information requested at https://github.com/ValveSoftware/steam-for-linux for any additional information.

Sorry...

Informazioni sul processore:
    Produttore:  GenuineIntel
    Velocità:  2001 MHz
    Processori logici 8
    Processori fisici 4
    HyperThreading:  Supportato
    FCMOV:  Supportato
    SSE2:  Supportato
    SSE3:  Supportato
    SSSE3:  Supportato
    SSE4a:  Non supportato
    SSE41:  Supportato
    SSE42:  Supportato

Informazioni sulla rete:
    Velocità rete:  

Versione di Windows:
    Ubuntu 12.10 (64 bit)
    Nome del kernel: Linux
    Versione del kernel: 3.5.0-21-generic
    Produttore dell'X Server: The X.Org Foundation
    Versione dell'X Server: 11300000

Scheda video:
    Driver:  Intel Open Source Technology Center Mesa DRI Intel(R) Sandybridge Mobile x86/MMX/SSE2

    Versione driver: 3.0 Mesa 9.0
    Intensità colore desktop: 24 bit per pixel
    Frequenza di aggiornamento del monitor: 59 Hz
    VendorID: 0x10de
    DeviceID: 0xdf4
    Numero di monitor: 1
    Numero di schede video logiche: 2
    Risoluzione visualizzazione primaria: 1366 x 768
    Risoluzione desktop: 1366 x 768
    Dimensioni visualizzazione primaria: 13,54" x 7,64"  (15,51" diag)
                                            34,4cm x 19,4cm  (39,4cm diag)
    VRAM primaria non rilevata

Scheda audio:
    Periferica audio: 

Memoria:
    RAM: 3865 Mb

Varie:
    Lingua IU:  Italiano
    LANG:  it_IT.UTF-8
    Microfono: Not set
    Spazio totale disponibile su disco rigido:  239976 Mb
    Blocco libero più ampio del disco rigido:  59207 Mb

Software installato:

Rapporti Fallimenti Recenti: 

As for case-sensitivity, that's usually dictated by the file system and the difference in case is probably to prevent issues on older, case-sensitive file systems.

Any modern file system (including NTFS) must be case sensitive to be POSIX-compliant. AFAIK ext? file system cannot even be configured as case insensitive (NTFS can and normally it is, of course).


Regarding this bug: it seems that games keep using their usual user-specific configuration/data paths (usually dot-files in the home directory or an XDG compliant path), but in Cogs case this works only partially. As an example, World of Goo preserved my in game profile and progress achieved before installing Steam, and keeps saving any further progress in ~/.WorldOfGoo/ (not XDG compliant dot folder...).

What I don't know is what Steam wants to do:

  1. saving all game data in ~/.local/share/Steam/userdata/<userid>/<gameid>/remote ( _please_ don't)
  2. let the games have their usual behavior

In both cases, there is a bug, either in Cogs (case 2) or at least in World of Goo (case 1).

I reckon that the approach 2 does not allow to have multiple profiles stored in the same home folder, but why would I want to keep different game profiles? And anyway that feature should be provided by the game itself (WoG, Waveform, Osmos and many others actually do it).

From a Linux POV, the approach in 2 is the correct one: in Linux world everything is saved in a per user fashion and each user has its home, so there is no point in having multiple Steam user profiles within the same Linux profile, but each Steam profile should be bound to related Linux user.

My two cents...

MMrSchism 2013-01-07 github

Fat32 is not case sensitive and is still in wide use as an intermediary format for both Windows and Linux (and BeOS, OSX, Haiku, BSD, Solaris...) to interact with files mutually without having major issues.

Mmeden 2013-01-07 github

Fat32 is not case sensitive and is still in wide use as an intermediary format for both Windows and Linux (and BeOS, OSX, Haiku, BSD, Solaris...) to interact with files mutually without having major issues.

Indeed FAT* is not POSIX-compliant neither modern at all... And beware that not only vfat file system driver in Linux can be configured to be case sensitive, but it is a very common default configuration too...

BTW, that's not the point of this bug report, just an added information to take into account for a proper fix and to avoid to incur in more bugs.

Mmeden 2013-01-07 github

Well, in case you would need other proofs... #577 :)

Ggdrewb-valve maintainer 2013-01-19 github

This bug was closed because the issue concerns the game and not the Steam client. Please contact the game developer on their official website with this information.

Nothing extracted yet.