>What's the big fuss about the FFE sources anyway? Curiosity? I love the game
>as well but i'm not THAT interested in looking at the source.Whatever turns
>you on, I guess...
>Call me a flamebaiting troll or whatever you will, but if in these years of
>constant bitching you people had actually got off your arses and done
>something, you could have a 100% accurate clone of FFE by now. Look at all
All right you flamebaiting troll ;-) many people have tried to do this
and failed, or if not failed given up half way. Besides which it is
*much* less effort to sit on your ass and bitch than it is to code an
FFE clone. A lot of successful open-souce projects really began to
gather momentum after a big lump of code has been dumped on them. Or
at least a working program.
>the elite clones out there. FFE is such an ancient game, it's almost like
>asking the original pong author to release the source for christ's sake.
>There are 1000s of ball'n'paddle games and anyone with half a brain and very
>little coding knowledge can make an exact clone of pong in what, 5 minutes?
>With all the free APIs out there and all the intelligent programmers in this
>newsgroup and others, it would only take a few months to code up an exact
>replica of FFE, bugs included.
I reckon most intelligent programmers wouldn't have enough time to
dedicate to a few moths of coding. Unless they are uni students, which
still doesn't mean they'll have enough time.
>Heck we even have JJFFE's reverse engineered sources and updated EXE. What's
Well having grew up on C (and subsequently been ruined by Java ;-) I
don't really wan't to wade through tonnes of undocumented assembly
code YMMV. If you have a spare half an hour mabye you can use you're
RAD tools and API knowledge to pop an OpenGL interface into the
>Getting the FFE source isn't your god-given right for crying out loud.Ppl
>today think they are entitled to every damn thing they happen to want.
>Personally we should be kissing Frontier's feet for even taking you
>seriously. Go ask MICROSOFT for the source code to WINDOWS!!! what would
>they say to you eh? Jeez.
No it isn't a god-given right (but then again neither is copyright of
the code) but that's beyond the point. FD teased people by saying
"sure you can have it, just let us work out a license" and they never
finished it off. FYI Microsoft does make a fair bit of source code
available, but really I'm only interested in the FFE source at the
"Don't run, there's no place to hide
Today or tomorrow it will get you
Don't move, the knife is right at your throat
And whatever you do, there's no way out
When the shroud comes down on this place
To bury us all alive
We'll know the time has come, to face the heat" -Scorpions
Tom "Moretom" Morton
> What's the big fuss about the FFE sources anyway?
> Curiosity? I love the game as well but i'm not THAT
> interested in looking at the source.
With the source code it would be a little faster to make
a FFE clone. With the source code it would be much faster
to make 'clone' with exact same features. That would be
very very hard without the original source code.
> if in these years of constant bitching you people had actually
> got off your arses and done something, you could have a 100%
> accurate clone of FFE by now.
I have been working on glElite / Teddy for several years now.
Unfortunately Elite/Frontier spinoff projects are quite separate,
and while I have contacted most other projects, I'm still working
> Look at all the elite clones out there.
I look at them constantly. Unfortunately the development
is not focused, not organized. And it seems to be way too
hard to organize developers to work together. Most developers
are working on 'My Elite Project', and unwilling to share
their work with other projects.
> With all the free APIs out there
There is no good Elite clone API I am afraid.
> and all the intelligent programmers in this newsgroup
> and others,
The intelligent programmers are not organized. They might
have skills, but they have other things to do. And if they
actually spend time on Elite/Frontier projects, it is the
'my very own project' on which they work like I said.
> it would only take a few months to code up an exact
> replica of FFE
The original was not written in a few months sorry.
AFAIK mr. Braben et al spent ten years fulltime on Frontier
and FFE. Frontier Developments are smart people. How could
couple of hobbyist possibly do same work in less time?
-- Timo Suoranta -- tksu...@cc.helsinki.fi --
> are working on 'My Elite Project', and unwilling to share
'My' Elite Project in particular, TEP, is now GPLed.
> 'My' Elite Project in particular, TEP, is now GPLed.
Very nice. Especially
Now let me look at it closely.
What would you think about working together, glElite / Teddy
> Tom Ford <fl...@spiffy.ox.compsoc.net> wrote:
>> 'My' Elite Project in particular, TEP, is now GPLed.
Ok, I had a quick look. Where is the GUI code?
It might be nice to make the graphics to work in
OpenGL. I have some very simple GUI stuff in
Teddy, we could glue these together maybe?
Teddy is at http://glelite.sf.net
> Timo K Suoranta <tksu...@cc.helsinki.fi> wrote:
>> Tom Ford <fl...@spiffy.ox.compsoc.net> wrote:
>>> 'My' Elite Project in particular, TEP, is now GPLed.
> Ok, I had a quick look. Where is the GUI code?
> It might be nice to make the graphics to work in
> OpenGL. I have some very simple GUI stuff in
> Teddy, we could glue these together maybe?
> Teddy is at http://glelite.sf.net
http://126.96.36.199/tep/ includes CVS snapshots as well as browable tree...
Intereseting that you're using TinyGL. I played around with it a bit, and
added some functionality, such as packed 16-bit texture loading
supports,etc... If you're interested, I still have the source code around
>First off, the decompiled source code is in assembler.
You don't say :)
> If that's not hard enough, there are no taglines, making it virtually
impossible to do anything > with.
Well it could be in 1s and 0s hehehe :P
I never understood why programmers are so afraid of assembly.I love asm and
think it's fairly intelligible... The hard part of converting asm into a
more readable c source is understanding which functions are there, which I
believe JJ has already done, and sorting out what all those messy INTs do
which can be achieved more or less easily with an MSDOS programming
I actually have a program that converts an EXE into C, but I havent messed
with it so I have no idea how good it would be.
> Also, most of FFE was developed with proprietized tools and years of
> sophisticated programming experience. Programming a game as huge as FFE
> stuffing it all into a three meg executable is no easy feat, even by
> standards. I believe that having the source code to FFE would be highly
> beneficial because it is possible to re-render the whole game. Think,
> seeing FFE in 1024x768 in openGL.
Yeah I know, it would be cool.To tell you the truth what i'd really like to
see is more plot and all the bugs fixed, but eye candy would be nice as
well.As long as it still retains the blocky feel of elite games. Ah, and
throw the cool FE2 faces back in. And the blue FE2 hyperspace sequence with
the soft high pitched sound instead of that ugly FFE cloud thing. And also
the laser sound effects were way cooler in FE2. I think DB & co. just
changed that so they would be able to say "we are l33t, we have digitized
sfx instead of that OLD midi shit"... which is understandable as it was a
common trend back in the day.
>> Why do you say things without knowing anything about programming?
>LOL dude, who said I didnt know anything about programming?
It was probably just the impression you gave.
>I am now 21, in the process of finishing college, and have
>had some professional experience as well.
This professional experience wouldn't involve the expression 'Do you
want fries with that?' would it ?
>I'm just saying this because to me it is ridiculous to have watched this ng
>in the past few years, seen projects come and go, and people always whining.
>I was never too good with math so I couldn't easily code up a physics engine
>or a lot of graphics related stuff, and heck I reckon if i knew my way
>around math and physics I would've done an FFE clone myself.
So you don't know how 90% of a 3D space game works but you somehow
feel qualified to comment on other peoples abilities to write one.
Why don't you learn some graphics, math and physics, write an FFE
clone and then people might take your posts seriously.
>I'm itching to start an open source project of any kind,
Are that's what I like to see... focus.
If you are concerned about the plethora of failed projects why don't
you contribute to an existing one rather than start another.
>What the elite community really needs is a MANAGER.
Oh...dear... When you've left uni and you've spent a few years at work
you'll realise that the last thing anyone needs is a 'manager'.
>Someone to open up a sourceforge account and generate a lot of hype that will
>attract good coders from other open source projects.
Of course, as everyone knows, all a project needs to succeed is a
sourceforge account and lots of hype.
>All we really need is for the work force to grow, so each of us will need to
>devote less of his spare time to this.
Ah I see... if it takes one man 5 years to write a Frontier type game
,say about 9000 hours, then if we had 1000 coders we'd have it done in
a day and still have time for tea.
>The hard part of converting asm into a more readable c source is understanding
>which functions are there,
Where were you two years ago... If someone had just told me that all I
needed to do was work out what functions Elite was made up of all that
messy asm code what have instantly turned into C.
>which I believe JJ has already done, and sorting out what all those messy INTs do
>which can be achieved more or less easily with an MSDOS programming reference.
Well I never... so it actually turns out that all we needed to do was
buy John Jordan a MSDOS programming reference book and we'd have had
the FFE C source by now.
>I actually have a program that converts an EXE into C, but I havent messed
>with it so I have no idea how good it would be.
You wouldn't happen to have some funny looking little stone that turns
base metals in to gold kicking around anywhere would you?
>How about a dynamically generated HTML n-ary tree interface built from the
>contents of an SQL database AND that maintains consistency with the DB as it
Does that improve your understanding of the scope of creating an FFE clone,
or reverse engineering FFE for that matter?
>Anyone with half a brain can reverse
>engineer a program.
If you have half a brain, perhaps you could reverse engineer some functions
in FFE? Let's say you only have to reverse engineer one function to prove
Err, he could just do some piss-easy function like F20.
OTOH, at least two people got that one *wrong*. It has a certain
What I'm planning in "my" version of FE2 (FE2, _NOT_ FFE) is the
multiplayerability through Internet and the possibility to scavenge
ships that float around in space. The ability to collect parts of wreks,
have the repaired, and then assemble them to a custom built ship, is
also an idea I'm working on.
My problem is not coming up with ideas. Anyone could. But putting those
ideas into real code and making a game out of it, takes a whole effort
I'm not able to give. So, in other words, I need someone to ally with on
Want to join?
Commander Soulflys aka. Flying Fungus
The fact that I `drew' that in late 1996 probably is enough comment in
> What would you think about working together, glElite / Teddy
> and TEP?
What I'd really like is just some general work done on TEP :) I'm
sitting here half asleep in front on my terminal, with 1/5 of my
Condensed Matter assignment (due in for 5pm) complete, panicing over
generating enough publicity for Microsoft who are coming down with an
XBox tonight for a meeting of one of the societies I run.
Anyway, I'd be interested in working together, though I wonder if TEP
isn't so obfuscated as to be entirely inoperable with everything else.
And I have lectures...cya.
Christian Pinder <chri...@newkind-remove-this.co.uk> wrote in message
Tom Ford <fl...@spiffy.ox.compsoc.net> wrote in message
> Ah I see... if it takes one man 5 years to write a Frontier type game
> ,say about 9000 hours, then if we had 1000 coders we'd have it done in
> a day and still have time for tea.
HEY, you forgot the cream scones!
Love YOUR game by the way Christian.
>Err, he could just do some piss-easy function like F20.
>OTOH, at least two people got that one *wrong*. It has a certain
Well if I wanted to have a function that we might for arguments sake
call F20 (or any other name) then I might want it to be something
unsigned int repack (unsigned char **byte_ptr)
unsigned int rv;
unsigned char *ptr;
ptr = *byte_ptr;
rv = ptr + (ptr << 8) + (ptr << 16) + (ptr << 24);
ptr += 4;
*byte_ptr = ptr;
What someone might want to do with such a function I leave as an
exercise for the reader.
Any similarity this code might have to any part of the FFE code is
purely coincidental. ;-)
Well, firstly, it's not the fact that FDL haven't released the source,
it's the fact that they said they would then didn't do it. If they'd just
come out and say "No" it'd be a lot better than dropping a load of teasers
over a period of two years, then not releasing it but still saying they
would at some later date.
As for the rest of your comments...well, you go on about everyone bitching
then write an ill-informed flame. You flamed Christian Pinder who happened
to re-engineer Elite in C (which is portable, it runs under Windows and
Linux, and I dare say I could get it to work under Solaris on my SPARC too).
You flamed John Jordan too. Just ask JohnJ about the RSI he got from
decoding the FFE asm. Drop in on the channel #alt.fan.elite on the IRC
server irc.thaumic.com some time.
Like you, I started off with the Spectrum. Like you, I did Speccy BASIC
then went on to learn Z80 asm (and followed up with 6502 on the BBC Micro.
Z80 was piss easy by comparison, register pairing, instructions like LDIR,
lots of registers - not like 6502 where you were stuck with A, X and Y
and no advanced instructions).
But unlike you, I've spent a little more time in the Real World Of Software
Development. I know that managing programmers is very much like herding
cats (I don't recall who originated that quote, but it's true). It wasn't
long ago that I was 21 years old and naive. I thought I was invincible,
coding small projects in an afternoon. Then after leaving uni, I ended
up working on a >1MLOC project. It was an eye-opener. Not to mention learning
how 100 hour weeks just wreak havoc with your mind, turning it into
something somewhat less powerful than a ZX-81 with a wobbly RAM pack.
That's something I'll never do again. It's somewhat unpleasant finding
yourself powered only by Maxwell House.
If I was still in Uni, I may have written the flamebait you just did.
Not any more. The project I'm on now has stripped my naivety about the
complexity of software like a nuclear powered blowlamp.
Decoding FFE is no mean feat. It's not a 48K Spectrum game where someone
competent in Z80 could do a fair bit of hacking in an afternoon. If
you think that being able to work your way around a Spectrum game means
you can instantly decode FFE, you've got another thing coming.
Having the source would make FFE orders of magnitude easier to work with.
It'd also make it a damned sight more portable.
Now you go on about Christian Pinder's negativity, when Christian has done
a lot more for the Elite community than you ever hope to at this stage.
Why not put your money where your mouth is - join TEP (which is GPLed) -
I can't speak for the TEP team, but I'm sure they'll be glad for an
eager and talented programmer. Or do something with the Elite:TNK sources.
Or talk to PaulR and see if they could use some help with Millennium 3.
Otherwise, your rant is nothing more than a bunch of hypocritical hot
>On Wed, 14 Nov 2001 06:44:22 +0000, John Jordan
>unsigned int repack (unsigned char **byte_ptr)
> unsigned int rv;
> unsigned char *ptr;
> ptr = *byte_ptr;
> rv = ptr + (ptr << 8) + (ptr << 16) + (ptr << 24);
> ptr += 4;
> *byte_ptr = ptr;
> return rv;
OTHO the following will produce the exact same asm code...
unsigned char a;
unsigned char b;
unsigned char c;
unsigned char d;
unsigned int repack (struct seed **seed_ptr)
unsigned int rv;
struct seed *ptr;
ptr = *seed_ptr;
rv = ptr->a + (ptr->b << 8) + (ptr->c << 16) + (ptr->d << 24);
*seed_ptr = ptr;
No difference as far as the assembler sees but makes quite a bit of
difference to the C source. It's the early ours of the morning and
I'm kinda tired but bear with me here... ;-) The point I'm trying to
make is that converting ASM -> C is one thing, making sense of it is
quite another. The really tricky bit is understanding the data, how
it's formated, how it's used and then using that info to put the code
Come on JJ, what does F20() really look like???
Oh, your first version was probably pretty accurate. The remarkable
thing about the function is its apparent pointlessness. Both of the
mistaken people I referred to assumed that the bulk of the function did
something useful and described it as "reversing the bytes" of the value.
In fact the following code would have done the same thing:
unsigned int something (unsigned char **ptr)
return *((unsigned int *)*ptr)++;
The difference between the two versions lies in the results when
compiled on a platform with a big-endian CPU, such as the Amiga. The
version of the function used in FFE would effectively force little-
endian reading of a 32-bit value, regardless of the CPU.
As it happens, this function is used only to read constants from the
mission bytecode. The bytecode is otherwise non-architecture-specific,
so it makes some sense to follow this through with the constants.
>In article <msp8vtoduo2sp29un...@4ax.com>, Christian
>Pinder <chri...@newkind-remove-this.co.uk> writes
>>Come on JJ, what does F20() really look like???
>Oh, your first version was probably pretty accurate.
Well I have to confess that I downloaded the Borland 5.5 compiler
(which is now a free download :-) and checked the ASM output before I
posted the code.
Almost makes feel like carrying on and doing the rest of it. FDL would
probably have a fit though ;-) Luckily I don't have the time.
>The difference between the two versions lies in the results when
>compiled on a platform with a big-endian CPU, such as the Amiga. The
>version of the function used in FFE would effectively force little-
>endian reading of a 32-bit value, regardless of the CPU.
Nice to see that some thought went in to portability. I would guess
that an Amiga port was lurking at the back of DBs mind when he wrote
> something somewhat less powerful than a ZX-81 with a wobbly RAM pack.
Yeah! The ZX81 wobbly RAM packs! Ahh, the memories...
Also, spot on with your other comments. If it were that easy someone would
have done it already. It's not as if there isn't the talent around here!
(/me waves at JohnJ)
Can you explain why you need to know about binary trees when you are
dealing with an SQL database?
If you are so fluent with ASM shouldn't pointers have been cake to pick up?