Game Development Community

Love the game, but....

by Timothy Miller · in ThinkTanks · 04/29/2003 (6:40 pm) · 16 replies

I had a couple of { wants | needs } :

-- It would be nice to be able to change tanks without quitting the server;

-- It would be nice to be able to chat while a new round is loading;

-- Voice? Even a quickkey voice like Tribes 2 would make teamplay a little more coordinated;

-- Say it with me: Custom tank skins!

-- Like most OS X games, it's not very multi-login aware; i.e., I had to 'chomd -R o+w' the installation in order for the other users of my Mac to use it effectively. Unix systems keep all user-specific customizations in the home directory (~username/Library/Application Support or Preferences on OS X) rather than in system directories.

Note this last is a problem for virtually every OS X game I currently own, not just y'all.

Other than those, this has got to be the best $20 I've spent since ... Enigmo. 8) It's been a good week for high-quality low-cost games. Can't wait to see what's next.

Seriously, the game is simple awesome. I'm almost tempted to pick up a copy of Torque just to see what I can do with it. Thanks for bringing it fruition.

-- Cerebus

#1
04/29/2003 (7:27 pm)
Hmm, interesting about the multi-login thing. I'm not altogether sure what control I have over that... maybe I can do a chmod on the original files on the disk image? hmmm...

Just figured that in a drag-drop environment, there shouldn't be a permissions issue -- but OSX adds a whole layer that isn't exposed well to the programmer. ;)

d
#2
04/29/2003 (7:37 pm)
I suppose we could add some instructions to the readme? (we already have instructions on how to do this for Linux.) and let the user take care of it if they want to do that?

I am wondering how mac users feel about this. You (Timothy) understood well enough what needed to be done in order get it to work.
#3
04/29/2003 (8:44 pm)
Most Mac users rarely ever deal with file permissions (some by choice, some out of ignorance). When they have to, there's usually some utility app or shell script to take care of it. You might be able to write a shell script to fix the file permissions, so the game can run in a multi-user environment. I haven't tried this myself, but it's worth looking into.
#4
04/29/2003 (8:57 pm)
I think the whole multi-login solution would be good for all platforms, and have it supported directly by the engine... so when reading or writing scripts you could do:

exec("$pref/config.cs");
exec("$pref/foo.cs");

where pref.cs and foo.cs would exist in some directory like:

~/.thinktanks on mac/linux and "Documents and Settings"/currentuserdir/.thinktanks

or something like that...

Shouldn't be too hard to support in a cross-platform way...

ignition files could be stored there as well, so that reinstalling the game, or installing an upgraded version wouldn't axe settings or require the user to type in the key.
#5
04/29/2003 (9:06 pm)
Well, sure, if we had control over the ignition file, that'd be great... I wanted to try and do that, but it gets really messy if I have to 'fake' ignition to put its file somewhere by flipping around the active directory. Ignition should call into the app and request a directory string, or probably more appropriate call into the app to open/create/read a file from the 'per-user directory'.

But again, I saw no reason to go to the trouble without a ignition-inclusive solution.

And yes, I'd prefer something supported cross-platform. ;)

However, the security/permissions thing is almost an ortho issue at some point. I mean, why should I have to re-install/-key the product for multiple users? That could get annoying too...

Seems like a script would be best. Assuming that you don't need su or root access to change the permissions to world access/exec. That can be thrown together and packaged up with TGE games, as well as made available as a support file for existing users.

d
#6
04/29/2003 (9:25 pm)
It seems to me that the ignition file, being a system-wide config, belongs either in the installation directory (where it currently resides) or in /etc (on Linux) or in /Library/Applicaion Support on OS X.

Of course, it depends on what you're using it for. Since all I see in mine is the registration ticket, I assume that's all that's supposed to go there.

The cleanest solution is to support user environment configuration in TGE itself, but I understand the mess that it makes. Both OS X and Linux can potentially use the same method-- while it won't be the 'Mac Way', using ~/.thinktanks/ would work, given OS X's UNIX-like filesystem. Windows, having only just recognized that multiple users even exist on home systems, is more problematic. The "Documents and Settings" hierarchy is only spottily supported as it is.

Yeah, I knew how to fix it locally, but I've been doing UNIX for about 12 years now. However, I would consider chmod'ing the package to be a workaround, not a fix; leaving the game files world-writeable is a violation of local security policies.

Since ThinkTanks is a drag-n-drop package, the installing user (i.e., whoever has write permissions to /Applications) owns the ThinkTanks package, and can do the chmod without sudo'ing.

FWIW the Tribes 2 port Loki did seemed to handle multiple users just fine by using ~/.somedirectory/ to store preferences the 'UNIX Way'.
#7
04/29/2003 (9:58 pm)
I wouldn't recommend storing unix preferences in just ~/.gamename . There is a potential for global namespace collisions there. The linux platform in Torque emulates the Tribes 2 behavior, with a slight variation: the preference directory is ~/.companyname/gamename. So for ThinkTanks this is ~/.bravetree/thinktanks . You can override this behavior with a -nohomedir command line parameter, but then you need write access to the game's installation directory.

Dave, you might be able to stick this code in the OSX platform. The code is nasty though. It handles weird cases like what happens when a redirected file is appended. Plus it also emulates a case-insensitive filesystem.

It would be nice to have the redirection supported in the engine as Mark suggests.
#8
04/30/2003 (3:31 am)
I'll add some of my wishes for the game:

- a few more well-thought through game-modes, maybe tag and football (Joe know what kind of football mode I'm talking about already ;P ). Also a game mode similar to the classic Kill the Guy With the Ball mode in Marathon II/? (try to hold the ball for as long time as possible without being able to shoot while holding it and being slowed down by it).

- a few more powerups. I'd like to see a short range burst "shotgun" and maybe a slow fire lobbing mortar (similar to area effect, but slower firing rate, larger impact and lobbing shot that would be really hard to aim with. Maybe a power down as well, or power down shot (sniper presicion but harmless... giving the opponent hit inversed controls or aiming, locked fire for a few secs or something like that).

- if not more looks on the tanks then at least team textures. As it is now with the text above the tanks it doesn't get the same "team" feel over it. And I keep having to look in the list to see what team I'm on.

- I'd also like a quick command to switch to windowed mode... if I just haven't missed it :P

I love the game and feel it's my best spent $20 in a long time (and Enigmo was well spent $20 as well :P )
#9
04/30/2003 (8:53 am)
Tim (and John) -

Seems like the answer here is a script in the directory, and an associated readme, called something like For Multi-User Machines.

The readme would explain for the average end user what is going on, and that the script should be run AFTER the Ignition Key has been entered and the product registered.

The script would do the right thing to touch the ignition file to be properly priveledged.

For the moment, the script can poke into the App bundle. If in the future we redirect where the ignition file goes, we can change the script.

This can be reasonably genericized and recreated for all Torque Ignition products.

So, what exactly is the permission that is screwing things up, and what's a suitable script to solve it? (Tim, sounds like you already gave one answer, but I want to double-check this...)

Regards,

d
#10
04/30/2003 (11:00 am)
I didn't investigate fully. My kids complained that the game wasn't storing their chosen handles between game sessions; everything else seemed to work flawlessly.

At this point (having had this same problem with multiple games) I tend to shotgun the problem by adding the 0002 perm bit to everything in the appdir (specifically I ran 'chmod -R o+w ').

If that's not enough info I can try to fully debug it later tonight. It would be preferable to change permissions only on the required files & folders.

-- Cerebus
#11
05/01/2003 (10:48 pm)
all good suggestions above. the only one i dislike is the reverse controls-make everything crazy shot. Maybe because it's because im hitting my late 20s and getting older :), but i think that would flat out make me nuts. more forms of shots, the shotgun is a gooten one.

my own idea is to bring in clans.

thats all i got. finals just ended, and my brain is coming off simmer.

to the batmo-
#12
05/02/2003 (8:23 pm)
Clans are an idea not to be brought in rashly. Some of the guys in those clans are psychos.

I think their just needs to be more variety in tanks, 3 ain't good enough, that goes for power ups too.
#13
05/02/2003 (8:52 pm)
Wanted to point something out here...we made this game simple and fun for a reason. Notice that nobody agrees on what would make it better, but everybody agrees that it's a blast to play.
#14
05/03/2003 (4:28 am)
Clark, I think everyone (especially you) would agree TT needs more players! Its kinda a shame there are so few servers that use maps that aren't included in the demo. Heck, I don't even think I've played all the maps in the game seeing how I suck horribly at single player.

One suggestion that I liked: the team textures would be nice. Simply just tinting the textures as Neon Green and Blue would do the trick; nothing fancy. Its hard to tell who's who in team to the point of being ridiculous. If you're fighting from any distance you're constantly looking up at the player names trying to remember who's friendly or not. This seems feasible and doesn't seem to introduce any radical gameplay changes that move away from the idea of simplicity.
#15
05/03/2003 (10:47 am)
Greg,

With the impending release of the Linux and Windows version, we are going to ramp up the number and variety of servers out there. As the community grows, we would love to have one of every map style and game out there so that it is easy to find your favortie game type on your favorite map.

As more and more demo players convert, we plan to add many more of the 'retail only' maps and games.

Joe
#16
05/14/2003 (5:27 pm)
I wholeheartedly agree that the simplicity of this game is what makes it so much fun. It isn't overloaded with wacky powerups or game types, and you only need four movement keys and a single-button mouse to play it.

I do, however, agree that the ability to switch tanks mid-game would be a very good thing. It might introduce a bit more variety--as it is everyone pretty much just takes a light tank when playing free-for-all scrum, but they might experiment more and switch up strategies if they weren't married to one tank class for the entire game.