PDA

View Full Version : Best way for 2 users to ATITD on one PC?


asktoby
16th September 2004, 13:28
Let me start by saying how impressed I am by the linux client! Installed easily, few minor hitches, ran really nicely - I was very pleasantly surprised.

However, the above experience was as a single user: I ran the downloaded script in my home directory and ran tale from there. Since getting my girlfirend addicted to Tale too, I need to allow her to play from her login aswell.

I asked on Usenet for the best protocol to follow and was told to run the installer script as a user in my home directory, and then copy the uncompressed files to /opt/games ( /opt being the standard location for pre-compiled packages) as root, and make a link to the executable in /usr/local/bin.

I tried this, and find that when I try to run Tale as the user who originally uncompressed it I get missing assets (the terrain is all grey and the models are replaced with purple cylinders). If I run Tale as the 2nd user then I get permission problems. (I'm not at the PC now, so I can't copy paste the exact error at this time, sorry.)

What is the best way to go about getting this working for both users of my PC? Should I swallow the hard-disk footprint inefficiency and let each user have a separate install in /home/<user>, or is there a better way ?

Mandrake 10 Official, btw.

Pluribus
16th September 2004, 15:23
However, the above experience was as a single user: I ran the downloaded script in my home directory and ran tale from there. Since getting my girlfirend addicted to Tale too, I need to allow her to play from her login aswell.

I asked on Usenet for the best protocol to follow and was told to run the installer script as a user in my home directory, and then copy the uncompressed files to /opt/games ( /opt being the standard location for pre-compiled packages) as root, and make a link to the executable in /usr/local/bin.

I tried this, and find that when I try to run Tale as the user who originally uncompressed it I get missing assets (the terrain is all grey and the models are replaced with purple cylinders). If I run Tale as the 2nd user then I get permission problems. (I'm not at the PC now, so I can't copy paste the exact error at this time, sorry.)

What is the best way to go about getting this working for both users of my PC? Should I swallow the hard-disk footprint inefficiency and let each user have a separate install in /home/<user>, or is there a better way ?

Mandrake 10 Official, btw.

Well heading into uncharted spaces... Here are the requirements for the client. Writing a script to handle them should not be hard...

1) the client needs write permission to ALL file in the client directory and all subdirectories.
2) the current working directory of elaunch and the client MUST be the base directory of the client install.
3) neither client nor launcher will permit themselves to run as root.

asktoby
16th September 2004, 17:14
Well heading into uncharted spaces... Here are the requirements for the client. Writing a script to handle them should not be hard...

1) the client needs write permission to ALL file in the client directory and all subdirectories.
2) the current working directory of elaunch and the client MUST be the base directory of the client install.
3) neither client nor launcher will permit themselves to run as root.

So, putting a script in /usr/local/bin a bit like the following?

cd /opt/eClient
./elaunch

The permissions is more tricky. Only root can write to /opt so that location won't do. Making a new directory below / with no write restrictions for all users is going to be a bit unsecure, isn't it?

I don't have a better suggestion though.

Decision
16th September 2004, 17:17
So, putting a script in /usr/local/bin a bit like the following?

cd /opt/eClient
./elaunch

The permissions is more tricky. Only root can write to /opt so that location won't do. Making a new directory below / with no write restrictions for all users is going to be a bit unsecure, isn't it?

I don't have a better suggestion though.

You can always create an atitd group, change the permissions of the files to be g+rw and the directories to be g+rwx, and add the specific users to that group.

Amtep
16th September 2004, 17:22
A lot insecure. Any user who can write to that location will be able to take over the account of anyone who runs that launcher.

One thing you could do is to create a new user group 'atitd', make all the client files writeable by that group, and add only users who trust each other to that group.

Another approach is to create a 'gamer' account and have people log into that account when they want to play. That's what I do. I don't trust games with access to my personal files anyway.

The best solution might be to just take the 300 MB hit and install multiple copies. Disks are cheap ;) (Bandwidth might not be, though -- you'll end up downloading updates separately for every copy)

Pluribus
3rd October 2004, 02:16
LOL, I dont trust them either... Why do you think that I make sure that the game doesnt have root perms when it starts :-) I dont even want a hint that I might be doing weird stuff with peoples files :-)

Amtep
3rd October 2004, 07:32
Pluribus, I'd like to thank you for that :) I've seen way too many games that go so far as to insist on having root permissions, usually for the installation script. Loki games were particularly bad about that. I often had to study their scripts and find some way to fake the install.

There's a paradox there, though. A program that runs under my user account has access to all the things I care about: my email, my source code, my logins to various websites, the parts of my memory that I store on disk. It can also corrupt my working environment, for example by placing fake programs in my command path. By contrast, a program that has root permission has access to all of that, plus some system files that I can easily replace. It's not much of a difference on a single-user computer!

That's what I meant about not trusting games with my personal files. By having a separate 'gamer' account, I can keep games in their own playground, and the worst they can do is eat each other's savefiles. Atitd has been a bit of an exception there, though, since I like to browse some web sites while playing, I take extensive notes, and I work on some game-related tools. Come to think of it, I should make backups of those :)

Oh, and I meant nothing personal with my comments... it's just that games tend to be binary-only, and often download updates or patches at runtime. I know that atitd pays more attention to security than the average game (the encrypted connection is very nice!), but I still only trust programs if their code is public.

Pluribus
3rd October 2004, 19:04
Actually, You are welcome to look at the animation engine :-) It is a modified Cal3d. (On the Other Downloads section on the main website :-) You WANT the tar.gz or tar.bz2 versions, it IS currently different than the windows version, since it has some performance tweaks in it.)

I do track current zlib, libpng and libjpeg, and FLTK libraries as well.