luxtorpeda-dev / packages

Package build scripts and support for luxtorpeda client
https://luxtorpeda.org
zlib License
37 stars 28 forks source link

Creatures Docking Station #608

Closed JoshuaFern closed 2 years ago

JoshuaFern commented 2 years ago

Project Link

https://archive.org/download/lgp-demos/creatures/

Project License

Proprietary

Steam App Ids

https://store.steampowered.com/app/1659050/Creatures_Docking_Station/

Additional Context

Currently not working out of the box in Proton because the game requires 16bit color.

There's also an open source engine, though it looks unfinished. https://openc2e.github.io/

Other helpful links:

d10sfan commented 2 years ago

It looks like from the title that the closed source one is some sort of demo, so that wouldn't probably work, unless I misunderstood.

I could look at implementing openc2e but doesn't look like it's in a good playable state yet.

JoshuaFern commented 2 years ago

It looks like from the title that the closed source one is some sort of demo, so that wouldn't probably work, unless I misunderstood.

It's not a demo, Docking Station has always been a free standalone game - although one could see it as a "demo" for Creatures 3.

There's also this download for Creatures "Internet Edition" which is just Creatures 3 + Docking Station for Linux https://archive.org/details/linuxcie

And some additional downloads for Docking Station from fan sites: http://www.computerpetz.com/creatures/dockingstation.php http://www.creaturesdockingstation.com/

I could look at implementing openc2e but doesn't look like it's in a good playable state yet.

Indeed, it hasn't been updated in years - until recently.

JoshuaFern commented 2 years ago

I believe whoever is re-releasing this might not have access to the source code, instead the game is being patched using typical modding techniques.

Like Steam/steamapps/common/Creatures Docking Station/Docking Station/Bootstrap/010 Docking Station Patches/login_disabler.cos is a simple script designed to disable the online functionality in-game as the servers are down.

The good news is that we should be able to apply the patches and fixes from this release to the linux version of the game as well, as they're just mods.

d10sfan commented 2 years ago

@JoshuaFern Do you have any steps that you were able to use to get the installer to work from archive (the first link)?

So far, it looks like it needs some manual work, as it asks for a license agreement as part of the install script. Preferably, there would be a way to automate the extraction and all, similar to the prey or quake 4 engines.

JoshuaFern commented 2 years ago

I don't really understand what a 'run' file is made up of, how to extract it, or even how it works. I've only encountered such files a handful of times but I imagine there's some standard way to extract the data from it.

d10sfan commented 2 years ago

@JoshuaFern Normally you can do a command line switch to disable the script and have it just extract whatever it has, which I've done for some other engines. Although in this case, the extracted result had an additional script needed to extract from multiple archives the file has.

There is a dstation-install script that it uses to show the license agreement and then extract the libraries, about 20 of them.

Where I've gotten so far in terms of automation is the following:

But it looks like the script itself does not work. When it runs, it gets this error

./dstation-install: line 83: type: creatures3: not found

Then later on, it gets this error when it's trying to convert images:

./imageconvert: error while loading shared libraries: libgtk-1.2.so.0: cannot open shared object file: No such file or directory

Then if I try to run the launch script, I get this:

./dockingstation: line 83: type: creatures3: not found

Another possible issue is since it's trying to extract these archives, the steam runtime environment does not have every linux command that is usually required.

So it seems like their setup script has issues running on modern environments, which is why I was wondering if you had managed to get it to work.

It may be beneficial to see if the re-creation github project gets further and implement that instead, unless we figure out workarounds for these issues.

JoshuaFern commented 2 years ago

I have found a workaround for getting this title working with Proton, Go into the game folder and open up user.cfg, simply change FullScreen from 0 to 1 and save the file. This completely bypasses the need for the expected color depth to be used.

This at least makes it playable on Linux without the weird Xephyr stuff. Luxtorpeda support would still be nice, of course, but if it's not feasible let's close this and move on for now. This game is really old and the engine recreation is not ready yet.