[freespace2] a couple of questions

Taylor Richards mtrs at bellsouth.net
Sun May 9 19:15:57 EDT 2004


On Sun, 2004-05-09 at 17:27, Mihai Rusu wrote:
> On Sun, 9 May 2004, Taylor Richards wrote:
> > Hmm, that shouldn't happen.  You are using FS2 and not FS1 right?  Did
> > you compile it yourself or use one of ravage's installers?  Is this the
> > English version of the game or some other language?
> 
> FS2 english (installed "full" in Windows, then updated to 1.20 then copied
> all those files in a linux partition wher the user running fs has write
> privileges). I compiled it myself (first with original CVS Makefile,
> second with MVE, NDEBUG, -O3 -march=athlon -funroll-loops but this has not
> changed). My compiler is gcc 3.3.2 20031218 (Gentoo Linux 3.3.2-r5,
> propolice-3.3-7), my glibc is 2.3.2. If you have a binary that doesnt do
> that please send it to me (email should work fine, dont know if those 16mb
> freespace2 executable compress too much with bzip2 -9 ;)).

Download ravage's installer and try the executable from that:
http://icculus.org/~ravage

If that doesn't work then please let me know which mission (only need
one) does it for you every time.  Please include your difficulty level
and whether or not it matters how many objectives you get done as well.

> I also noticed that even if I select to have "movies" instaled in the 
> setup it doesnt do that (I dont have any .mve files installed). But if I 
> copy then to the proper location (Data/Movies) they work. Also I noticed 
> that movie playing is case sensitive when it shouldnt (it works with 
> Data/Movies, doesnt with data/movies as I have them copied from win32).

There is no easy way around this, it's case sensitive no matter what. 
It has to be one way or the other and since the game has been out for 2
years now I think it's too late to change the current behavior (which is
Data/Movies over data/movies).  The way it is now is the way it was
written in the first place.  It's just that we have to deal with it in a
case sensitive manner when Win32 doesn't.

> So by streaming you mean that a huge file needs to be played little by 
> little while with normal FX sounds they are little files loaded into 
> memory and played. So one thing you can do is using mmap(). On a "good" 
> Unix mmap() doesnt do a thing (meaning it doesnt actually load/read 
> anything from the file), then when you hit a "page" not loaded it does a 
> "page fault" triggering loading of that page into memory (mapping it). 
> What it means is that the OS will manage this memory very nice (its also 
> very multithreaded/multiprocess friendly couse with readonly/shared use 
> many processes can share the same mmaped region transparently and safely) 
> and you can read from it with very little coding logic.

I'm using SDL_RWops.  It's easy to use and I don't have to worry about
cross platform issues.  All that's really missing from the streaming
code now is OpenAL.  All of the OpenAL commands need to be put in and
plugged into the current sound management in the game.  Then the OpenAL
buffer queuing can be finished and it should work.  But the code that
actually deals with the files is already there.

> > 3D sound is done but I don't really know the math/physics involved to
> > fix the position bug.  As soon as I can get that fixed the code will be
> > added to CVS.
> 
> Ah, that should explain some things hehe.

If you want to take a crack at it I'll be happy to send you my 3D sound
changes.  It's just one of those things where I sit there, staring at
the screen, scratching my head, wishing I had something better to do at
that particular moment ;)

> > If you want to make a tarball of a CVS checkout and make that available
> > then I don't see anything wrong with that.  There isn't really a point
> > in making CVS snapshots since it's only myself and tigital (OSX port)
> > that are working on the game at the moment.  New movie code, 3D sound,
> > standalone server and streaming audio are the only missing parts and
> > I've started on all of them.  When it all works I'll update CVS but it
> > will probably be a couple of months before I get everything done.
> 
> Just let me know how can I help. I am an experienced C coder who loves 
> games (Im curently the lead developer and maintainer of PvPGN a fork of 
> the "frozen" bnetd project which emulated Battle.Net network gaming 
> protocol, hey this reminds me, I also wanted to extend pvpgn to support 
> fs2 too ;)).

There is actually PXO (non-compatible with the old version) support in
FS2_Open now.  There is also another implementation on the way
apparently.  The guy from Volition who wrote the original code is
apparently working on an open source version.  When that gets done I
plan to add it to the icculus.org code.

> > I'm working more on the Linux version of FS2_Open right now and will
> > start bringing over some fixes, a large reduction in memory footprint
> > being the main thing, in the next couple of weeks.  Since I have to get
> > streaming audio and all of that working for FSO as well I'm writing so
> > that it's pretty much a drop in for icculus.org code.
> 
> FS2_Open ?!

aka "The Source Code Project".  We're talking big time engine changes,
new AI, weapon effects, 32-bit textures, HT&L, etc.  It's not a straight
port of the original game like the icculus.org project is.  I've finally
gotten Linux FSO (FS2_Open) current with the Windows version except for
the things mention here already that are also missing from the
icculus.org version.  Try the website and forums at
http://www.3dap.com/hlp if you are interested.  If those screen shots
done get your attention, nothing will.  The Linux version will finally
hit CVS this week. 


Taylor

-- 
Taylor Richards <mtrs at bellsouth.net>




More information about the freespace2 mailing list