code logs -> 2006 -> Wed, 01 Nov 2006< code.20061031.log - code.20061102.log >
--- Log opened Wed Nov 01 00:00:53 2006
00:04
< McMartin>
Is that even Context-Free?
00:04
< McMartin>
... wait, it is.
00:05 * Vornicus-Latens can't see it.
00:06
< Vornicus-Latens>
hm
00:06
< Vornicus-Latens>
how do I dispose of a checkbook for a closed bank account?
00:06 EvilDarkLord is now known as EvilTotallyNotHereLord
00:06
< Stephenie>
cut it up in little pieces :)
00:06
< Vornicus-Latens>
ah, duh
00:06
< Stephenie>
dont write void on it because legally it doesn't count
00:07
< ToxicFrog>
Set it on fire.
00:07
< Stephenie>
okay pyro
00:07
< Stephenie>
lol
00:08 * McMartin writes out an answer.
00:10
<@Chalain>
Um
00:10
<@Chalain>
I don't know the formal grammar, but um.
00:10
<@Chalain>
y -> 01 | 0 y 1
00:10
<@Chalain>
x -> 0 y
00:11
< ToxicFrog>
Also has to include strings that start with one, etc
00:11
<@Chalain>
Then do the reverse; a -> 10 | 1 a 0; b -> a 0
00:11
<@Chalain>
The problem is that there are two parse trees, and I have no idea if it's legal to put the recursive bit in the middle. :-)
00:12
< ToxicFrog>
And it needs to be able to support things like 10101010100101010
00:12
< ToxicFrog>
Which I don't think the above does, but yes, that's the general idea.
00:12
< ToxicFrog>
And he didn't say anything about ambiguity or left|right-recursion.
00:12
<@Chalain>
That's an assembly of b's and x's.
00:12
<@Chalain>
Ohhhh.
00:12
< Vornicus-Latens>
1101000
00:12
<@Chalain>
Hmm.
00:12
< ToxicFrog>
I can make it as impossible to actually implement as I want as long as it's a valid CFG.
00:13
< ToxicFrog>
Hmm. I think it's something like:
00:13
< ToxicFrog>
S -> A 0 A
00:14
< ToxicFrog>
A -> 0 A 1 A | 1 A 0 A | epsilon
00:14
< McMartin>
Not good enough
00:14
< McMartin>
That's all strings with one more zero than 1.
00:14
< ToxicFrog>
...shit, you'r right.
00:14
< ToxicFrog>
So say that A can also -> to S
00:14
< ToxicFrog>
And I think that fixes it.
00:15
< McMartin>
Yeah. My answer only uses one nonterminal: s -> 0 | s0 | 0s | 1s0 | 0s1 | 01s | 10s | s01 | s10
00:15
< McMartin>
I'm not sure that gets them all though
00:15
< ToxicFrog>
And now, on to FIRST and FOLLOW sets, which I hate because they are tedious, but which are at least straightforward.
00:15
<@Chalain>
Okay, so you need a base case of some string that has more 0's than 1's. A good base case might be a 0 and no 1s. To this string you can then add any other string that has as many zeroes as ones.
00:16
< ToxicFrog>
Chalain: yeah. That's what the above does.
00:16
<@Chalain>
You can make an infinite set of those I think with the A -> 01 | 0 A 1; B -> 10 | 1 B 0 trick.
00:16
< ToxicFrog>
a -> 0a1a | 1a0a | epsilon is in fact any string with equal numbers of zeroes and ones.
00:16
<@Chalain>
Okay
00:16
< ToxicFrog>
So adding s-> a0a and a-> s establishes a string with one 0, plus a string with equal 0s and 1s.
00:17
< ToxicFrog>
And since a->s, it also establishes a string with one zero, plus a string with one zero, plus the above...
00:17
<@Chalain>
Then any string that has string of your a's plus a string of zeroes is legit.
00:17
<@Chalain>
correction. plus some strings of zeros
00:18
<@Chalain>
But any 1s require a parseout to find matching zeros.
00:19
< ToxicFrog>
"parseout"?
00:19
<@Chalain>
Yeah, parseout.
00:19
< ToxicFrog>
Define?
00:19 * Chalain makes a vague handwaving motion.
00:20
<@Chalain>
18:10:11 <@Chalain> Um
00:20
<@Chalain>
18:10:18 <@Chalain> I don't know the formal grammar, but um.
00:20 * Chalain makes a vague handwaving motion again.
00:20
< McMartin>
That's why I'm unclear whether my grammar actually works for all such strings.
00:20
< ToxicFrog>
I can't think of any strings offhand mine /doesn't/ work for, but that's not a formal proof.
00:21
<@Chalain>
What I mean is, if you encounter any ones, you are now in the case of having to either find a neighboring zero, or you have to find an adjacent equals-number-of-1s-and-0s expression and a zero on the other side of it.
00:22
< McMartin>
Chalain: That's my grammar.
00:22
< McMartin>
The 1s0 production.
00:22
<@Chalain>
Cool.
00:22
<@Chalain>
Like I said, I don't know the grammars.
00:22
< McMartin>
It sounds like TF has to actually write a parser for it, though, so there's no way on earth he's going to get to use mine.
00:22
< McMartin>
An LL(1) parser, even.
00:23
<@Chalain>
lol
00:23 * Vornicus-Latens spends waay too much on furniture and computer hardware.
00:23
<@Chalain>
However, if *I* can talk my way through the concept without being able to spec the grammar, then there's a good chance it's a workable solution to the problem. :-)
00:23 * McMartin casts hideous incantations
00:23
< McMartin>
He needs to find not just any solution, however.
00:24
<@Chalain>
Mm.
00:24
< McMartin>
The LL(1) class of grammars is pretty small, compared to the set of all langauges, and the one he gave will be easier to transform into it.
00:24
< McMartin>
When one actually writes a parser by hand, one is writing LL(k), typically
00:24
<@Chalain>
Well, if someone will tell me the meaningful portion of the difference between RD, LL(1), LALR, et al., I'd be happy to pitch in. :-)
00:24 * Reiver stares at the pretty concepts.
00:24
< McMartin>
And when one uses a parser generator, it's LALR(1).
00:24
< McMartin>
Well, when one uses bison.
00:24
< ToxicFrog>
McMartin: nope, don't have to write a parser.
00:25
<@Chalain>
Heh
00:25 * Reiver makes a note to learn what the hell it all means, one day. >.>
00:25
< ToxicFrog>
Just "write the CFG for the following grammar"
00:25
< McMartin>
FIRST and FOLLOW basically completely specifies an LL(1) parsor.
00:25
<@Chalain>
What's the (meaningful) difference between LL(1) and LL(k)?
00:25
< McMartin>
parser
00:25
< McMartin>
LL(k) gets some arbitrary but finite amount of lookahead, LL(1) only gets one.
00:25
<@Chalain>
What's a CFG?
00:25
< ToxicFrog>
LL(1) looks ahead exactly one token to determine what to do.
00:25
<@Chalain>
Ahh, okay.
00:25
< ToxicFrog>
LL(k) looks ahead...what McM said.
00:25
< ToxicFrog>
And it's a context-free grammar.
00:25
<@Chalain>
And you can't recurse, I take it?
00:26
< McMartin>
You can recurse.
00:26
< McMartin>
But you have to know at the beginning what to call.
00:26
< ToxicFrog>
A formal means of specifying a language in terms of token combinations.
00:26
< McMartin>
LL(k) corresponds exactly to "recursive descent" parsers.
00:26
<@Chalain>
context-free, meaning you can't say "now I'm in a string, now I'm in an identifier, now I'm in whitespace"?
00:26
< ToxicFrog>
Chalain: that's the lexer's job, generally.
00:27
< McMartin>
No, it means that an if/then/else statement is always the same concept, regardless of where you are.
00:27
< ToxicFrog>
It generates tokens (STRING IDENTIFIER and probably nothing for whitespace) which it feeds to the parser.
00:27
< ToxicFrog>
And yes.
00:27
< McMartin>
Oddly, "context-sensitive grammar" has no consistent definition.
00:27
< ToxicFrog>
What McM said. Again.
00:27
< McMartin>
The next agreed-upon level of complexity past CFG is "Turing-decidable".
00:27
< ToxicFrog>
Anyways. Since I /don't/ have to write a parser for it, I'm just using the CFG I proposed above, since no-one's poked any holes in it.
00:28
< McMartin>
Sounds good to me.
00:28
<@Chalain>
Ah, okay. So you just have to parse an already lexed set of tokens, and the program "compiles" if it has more 0 tokens than 1s. Inneresting.
00:28
<@Chalain>
And you can't specify a counter variable? :-)
00:28
< McMartin>
That would be using a Turing machine to decide it instead of a pushdown automaton.
00:29
< ToxicFrog>
That's how I'd implement this parser in practice, but that wouldn't be a PDA.
00:29
< ToxicFrog>
(and in this case the "lexer" part of it would be getch() or something)
00:29
< ToxicFrog>
(assuming we can be assured that the input stream consists only of 0s and 1s)
00:29
< McMartin>
(Regular languages can be decided by a Finite State Automaton; CFGs by a Finite State Automaton with a stack, Turing-decidable by a Turing Machine, which is a finite state automaton with an infinite register bank)
00:30
< McMartin>
(Then there's "Turing-Recognizable", in which a Turing Machine isn't guaranteed to actually conclude "no" in a finite amount of time)
00:31
< McMartin>
(I suggest Michael Sipser's book "Introduction to the Theory of Computation" for a full treatment of this topic)
00:31 * McMartin waves from the ivory tower
00:31
< ToxicFrog>
(I have been looking for a copy of that book that won't hideously rape my bank account for ages ;.;)
00:31
< ToxicFrog>
(goddamn textbook publishers)
00:31
< McMartin>
(No kidding ;_;)
00:32
< McMartin>
(It was my CS 172 text, so I just didn't sell it back~)
00:32
< McMartin>
(Note that the pattern language that is my thesis is weaker than Turing-Decidable but stronger than CFG. This makes classification entertaining)
00:32 * Chalain has a copy of Tremblay & Sorenson's book. He just hasn't made time to sit down and read it. It's not that sort of book. :-)
00:32
< ToxicFrog>
(the VHDL reference I was able to find online, the databases texts I was able to borrow from dad, the digital systems book was actually sanely priced, but for language theory all I have is the Dragon Book, which really isn't about theory.)
00:33
< McMartin>
Indeed
00:33
< ToxicFrog>
Well, the Dragon Book and my notes from Compilers last year, which help immensely.
00:33
< ToxicFrog>
Since the prof in that course, despite covering the same material in half the time, did it better.
00:34
< McMartin>
The Dragon Book was kind of written before 30 years of improvements in the theory.
00:34
< ToxicFrog>
I have a first edition!
00:34
< McMartin>
Even more years!
00:34
< ToxicFrog>
If you take the chapter on optimization at face value your compiler will not actually generate the right code~
00:35 * McMartin has a second edition, and is personally aware of work continuing on the third, because it interferes with his meeting schedules!
00:35
< ToxicFrog>
Hee.
00:35
< McMartin>
(My advisor is a new coauthor of the new edition, mostly covering the program analysis end of things, AIUI)
00:35
< ToxicFrog>
Since we aren't covering optimization, I actually haven't had any issues with it apart from the fact that it really isn't very easy to read.
00:36
< McMartin>
Indeed. My advisor hits me when I say it, but if you want something readable, get Appel's book on Modern Compiler Implementation in ML/C/Java.
00:36
< ToxicFrog>
It was very handy when we were writing lexers and parsers last year, before it went horribly wrong.
00:37
< ToxicFrog>
...three different branches of book, or does the book cover all three?
00:37
< McMartin>
It's essentially the same book in three editions.
00:37
< McMartin>
So, branches.
00:37
< McMartin>
I have the Java one.
00:37
< McMartin>
I've skimmed the other two.
00:37
< McMartin>
He speaks C with an ML accent, so if you're using a mainstream language, get the Java one~
00:37 * ToxicFrog would probably grab the C and ML ones in that order.
00:38
< ToxicFrog>
I wonder if the library has them.
00:38
< ToxicFrog>
I haven't used Java in three years, praise be to the numberless lords of chaos.
00:38
< McMartin>
The Java one ends up translating directly to C++; from what I saw of the C one he did a hand-translation of the ML edition.
00:38
< ToxicFrog>
Indeed, apart from MC68K ASM for microcomputers, VHDL for digital systems, and C++ for SGOS, it's been pretty much all Lua.
00:39
< ToxicFrog>
Hmm. Perhaps I should get the ML one and learn ML as I go, then.
00:39
< McMartin>
That would be my recommendation. It ports to C pretty directly; ML "constructors" are really tagged unions, and you mix those with switch()es for the win.
00:39
< ToxicFrog>
How do ML and SML differ?
00:40
< McMartin>
While ML does all that with its "pattern match on arguments" thing.
00:40
< McMartin>
SML is to ML as Common LISP is to LISP.
00:40
< McMartin>
ML is the metaclass, SML is a standardize instantiation of it.
00:40
< ToxicFrog>
Aha.
00:40
< McMartin>
*standardized
00:40
< ToxicFrog>
With the important difference that I hate CLISP, but from what I've seen so far rather like SML~
00:40
< McMartin>
Separate issues~
00:41
< ToxicFrog>
Indeed.
00:41
< McMartin>
I was going to use Scheme, but SML has more of a library than Scheme does
00:41
< ToxicFrog>
If I have one complaint about SML it's that there doesn't seem to be any way to generate shared libraries from it that can be linked with C.
00:41
< ToxicFrog>
And that it appears to have fewer libraries than Lua.
00:41
< McMartin>
That too
00:41
< ToxicFrog>
Ok, two complaints.
00:44
< McMartin>
I've been tempted to write up a parser for my language in ML to ease analysis and transforms on it but it would have to be OCaml since AMD64 has no decent SML compilers ;_;
00:45
< ToxicFrog>
Compiling to 32bit won't work?
00:46
< McMartin>
Well, I'll need to hand-build mlton or whatnot.
00:46
< McMartin>
Since it's not in Zinglon's repositories.
00:46
< McMartin>
I suppose I could add the 386 repositories to the x86_64 ones, but that sounds... hazardous.
00:57
< ToxicFrog>
Aah.
01:05
< McMartin>
Especially since I'm not sure if 32-bit apps require special relinking.
01:09 ThaquiSleep [~Thaqui@Nightstar-26630.broadband-telecom.global-gateway.net.nz] has quit [Ping Timeout]
01:10
< Vornicus-Latens>
gnar.
01:10
< ToxicFrog>
I really have no idea.
01:10 * McMartin checks the MLton mailing list
01:11 * Vornicus-Latens has a very nasty triangular array class.
01:11 ThaquiSleep [~Thaqui@Nightstar-26630.broadband-telecom.global-gateway.net.nz] has joined #code
01:12
< McMartin>
It appears they're still working on it.
01:14 ThaquiSleep is now known as Thaqui
01:15 Vornicus-Latens [~vorn@67.50.40.ns-3674] has quit [Quit: Leaving]
01:17 Vornicus [~vorn@Admin.Nightstar.Net] has joined #code
01:17 mode/#code [+o Vornicus] by ChanServ
01:17
< ToxicFrog>
....triangular array?
01:17
<@Vornicus>
Yeah
01:18
< ToxicFrog>
For what mad purpose?
01:18
< McMartin>
Half-matrices.
01:18
<@Vornicus>
Well, I needed, you know, a triangle.
01:18
< ToxicFrog>
...yes, but what for?
01:18
< Reiver>
Is that a square array and you only use half, Vorn?
01:18
< McMartin>
BLAS uses arrays that represent triangular matrices.
01:18
< ToxicFrog>
BLAS?
01:18
< McMartin>
Basic Linear Algebra Subprograms.
01:18
< ToxicFrog>
Aah.
01:18 * ToxicFrog rocks out to Freespace 2 - Briefing 4
01:18
< McMartin>
C and FORTRAN high-performance scientific computing libraries.
01:18
<@Vornicus>
This was for Geodesation - it's an array that holds coordinates of approximately evenly-spaced points on a spherical triangle.
01:19
< Reiver>
...Interesting thing to /rock out/ to.
01:19
< Reiver>
...
01:19
< Reiver>
A spherical triangle.
01:19
< ToxicFrog>
Don't think about it too hard.
01:19
< Reiver>
But but I *splode*
01:19
< McMartin>
Presumably that's a triangle drawn on the surface of a sphere.
01:19
< ToxicFrog>
Last time someone did that we ended up with a shining trapezedohedron.
01:19
< McMartin>
Which is, I suppose, non-Euclidean.
01:20
< Reiver>
...See, McM's version makes sense.
01:20
<@Vornicus>
McM has it
01:20
< Reiver>
Right. OK then.
01:20
<@Vornicus>
http://mathworld.wolfram.com/SphericalTriangle.html
01:20 * ToxicFrog mounts Reiver as a figurehead on the GTC Collossus
01:20 * McMartin denies Euclid's parallel postulate!
01:20
<@Vornicus>
technically, it is an area enclosed by three great circle segments.
01:20 * Reiver is a pretty grisly figurehead, but ok.
01:20
<@Vornicus>
or, the projection of a triangle onto a sphere.
01:21
< ToxicFrog>
Reiver: that's the point.
01:22
< Reiver>
TF: Are you not meant to be the good guys? >.>
01:22
< ToxicFrog>
Well, yes.
01:22
< ToxicFrog>
Your point being?
01:22
<@Vornicus>
but yeah, I have a triangular array, because I needed to store data that is shaped, rather appropriately, like a triangle.
01:23 * ToxicFrog idly consults the internets to see if a port of Wing Commander to FS2O has happened since last time he checked.
01:24
<@Vornicus>
FS2"O"?
01:24
< ToxicFrog>
Open.
01:25
<@Vornicus>
Freespace is open source now too?
01:25
< ToxicFrog>
The You Will Need More Video Memory Than God To Run This With Everything Turned Up, But It Looks Awesome open-source version of FS2.
01:25
< ToxicFrog>
FS2 is. I don't think FS1 is.
01:25
< ToxicFrog>
On the other hand, FS2O will load and play the FS1 data files, so who cares?
01:25
< ToxicFrog>
And it's been open source for ages.
01:26
< ToxicFrog>
And no port of Wing Commander ;.;
01:26
< ToxicFrog>
WCSaga is in beta testing now, but it's a fancampaign.
01:26
<@Vornicus>
...doesn't look like they have one for Mac
01:26
< Reiver>
Yeah, but no-one uses macs, Vorn
01:26
< Reiver>
It's just a myth.
01:26
< Reiver>
:p
01:27
< ToxicFrog>
At some point I need to learn dark necromantic arts that can somehow be applied to /corporations/ and /ideas/ as well as people, and raise Origin from the depths in order to create a remake of the first three Wing Commander games.
01:27 mode/#code [+oooooo Ev3 EvilTotallyNotHereLord Janus MahalEarn McMartin Raif] by Reiver
01:27 mode/#code [+ooooo Reiver Thaqui TheWatcher[zZzZ] ToxicFrog ToxicFrog|Lab] by Reiver
01:27
<@ToxicFrog>
I /weep/ when I think of what it would be like to fly over the surface of the Tiger's Claw in the FS2 engine.
01:28
<@Reiver>
TF: Or something newer, perhaps? :)
01:28 * Reiver has visions of a fully modern graphics engine, + Wing Commander.
01:28
<@ToxicFrog>
I really can't think of anything newer that looks significantly better, and FS2O, being /open source/, is likely easiest to develop for.
01:28
<@Vornicus>
from what I can tell, FS2O is pretty much fully modern
01:28
<@Reiver>
Eve?
01:29
<@Reiver>
Oh. Is FS2O prettier than the origional?
01:29
<@ToxicFrog>
Which is especially important since we have to implement the insanely detailed Wing Commander damage model to do it right.
01:29
<@ToxicFrog>
Much.
01:29
<@ToxicFrog>
Even before you start adding the uber-high-quality model and texture packs.
01:29
<@ToxicFrog>
And FS2 was pretty eye candy to begin with.
01:30
<@Reiver>
Hm.
01:30
<@Reiver>
My favourite mission in FS2
01:30
<@ToxicFrog>
I will concede that it might actually look better in EVE, but can we do the damage model in it?
01:30
<@ToxicFrog>
Can we do the launch tubes?
01:30
<@Reiver>
Was the black ops rescue run.
01:30
<@ToxicFrog>
Can we do the /medal ceremonies/?
01:30
<@ToxicFrog>
Special Operations Command got the coolest logo.
01:30
<@Reiver>
Where you had to fly into the storm, and all your electronics kept fizzling...
01:31 * Reiver /loved/ that. It drove him mad, but in a /good/ way. :)
01:31
<@ToxicFrog>
I'm not sure which one my favorite is.
01:31
<@ToxicFrog>
I think my top three would be:
01:31
<@ToxicFrog>
- Collossus vs Sathanas
01:31
<@Reiver>
It was the simultaneous "Grrr! Argh! This is /so annoying/... I love it..."
01:31 * Vornicus remembers playing Wing Commander for SNES, and not being able to figure out how to complete the mission, so he blew up the carrier.
01:31
<@ToxicFrog>
- Going through the gate into Shivan space, and seeing an entire armada of [spoiler]
01:32
<@ToxicFrog>
- Getting obliterated by an energy beam bigger than my ship in the first nebula mission
01:32
<@ToxicFrog>
Seriously, every time I fly that mission I deliberately fly into the beam the first time around.
01:32
<@Reiver>
Just for cool points?
01:32
<@ToxicFrog>
You catch a brief glimpse of something mind-buggeringly huge, and then reality tears apart in a wave of red light.
01:32
<@ToxicFrog>
brb
01:33 * Reiver hrm. He has to admit that one was kinda cool, but he died a lot in those beam weapons so it got a little old. ;)
01:36
<@ToxicFrog>
...how do you play WC on the SNES?
01:36
<@ToxicFrog>
It needs at least one more button and one more axis.
01:36
<@Vornicus>
I don't really know, really
01:36
<@McMartin>
Keychords.
01:37
<@Vornicus>
It was quite difficult to control, and yeah, chording came into play a lot.
01:37
<@Vornicus>
which is one of the reasons I couldn't figure out how to play, I couldn't find any usable chords.
01:37
<@ToxicFrog>
Aah.
01:37 * ToxicFrog highly recommends sticking 1 and 2 into Dosbox.
01:37
<@Reiver>
keychords?
01:38
<@Reiver>
AKA combo buttons? >.>
01:38
<@Vornicus>
yes
01:38
<@ToxicFrog>
Yeah.
01:38
<@ToxicFrog>
And I think you actually need two more buttons.
01:38
<@ToxicFrog>
At least three, if you want to be able to do stuff like pause, or quit in mid-mission.
01:39
<@ToxicFrog>
Pitch, Yaw, Roll, Fire guns, fire missiles, switch guns, switch missiles, comms, damage report, target, lock target, navigation, eject.
01:39
<@ToxicFrog>
Oh, and 8+ different viewpoints.
01:39
<@ToxicFrog>
And other metakeys like toggle cockpit, pause..
01:40
<@ToxicFrog>
Which is actually a pretty short list compared to, say, Freespace.
01:40
<@ToxicFrog>
While still managing to get across a greater sense of atmosphere, so, I'd say they did it right.
01:41
<@Reiver>
Freespace drove me slightly mad with their seven-thousand-buttons. :)
01:41
<@ToxicFrog>
Yeah. I ignored most of them.
01:41
<@Reiver>
"Fuck! I need to order my people to... um... Ah fuckit *Does it himself*"
01:41
<@McMartin>
Freespace: Descent and X-Wing all at once!
01:42
<@ToxicFrog>
I mean, Freespace was lots of fun, but atmosphere-wise? Wing Commander 4 life, yo.
01:42
<@ToxicFrog>
And yeah, wingmates in Freespace were pretty much useless and I giggled like a schoolgirl when they died.
01:42
<@ToxicFrog>
Which is a /really/ marked contrast to WC.
01:42
<@ToxicFrog>
...except for Iceman. I /still/ laugh when I think of that.
01:43
<@Reiver>
Reloading in Freespace drove me nuts.
01:43
<@Reiver>
I could never get the sod to dock without stopping movement completely for like, a minute and a half.
01:44
<@Reiver>
Of course, you never got a minute and a half between waves, so...
01:44
<@ToxicFrog>
...you didn't?
01:44 * ToxicFrog never had any problems
01:44
<@ToxicFrog>
Although I frequently damaged both the reloader and myself by kicking in the afterburners before he was finished undocking.
01:45
<@Reiver>
I dunno.
01:45
<@Reiver>
I watched one, once.
01:45
<@ToxicFrog>
Of course, in Wing Commander, you get five missiles /tops/ and no reloads.
01:45
<@ToxicFrog>
So.
01:45
<@Reiver>
(Five always seemed a silly number.)
01:45
<@ToxicFrog>
(why?)
01:45
<@ToxicFrog>
...I think five. Let me check JFS
01:46
<@Reiver>
(I can think of only two (Well, three if you just count a row) missile arrangements that justify 'five', and they are inexorably central-mounted.)
01:46
<@ToxicFrog>
(Yes. So are these.)
01:46
<@Reiver>
(Oh. OK then!)
01:46
<@ToxicFrog>
Hornet. Dart Dumbfire on each wing, Javelin Heatseeker in ventral mount.
01:46
<@Reiver>
(Just always struck me in games that give you two missile pods, and five shots. ¬¬)
01:47
<@Reiver>
Oh. You only get the one kind of fighter?
01:47
<@ToxicFrog>
Scimitar. One Dart and one Javelin on each wing, one Javelin ventral.
01:47
<@Reiver>
Ah, okay.
01:47
<@Reiver>
Were the missiles Awesome(tm), though?
01:47
<@Reiver>
Given you got so few shots?
01:48
<@ToxicFrog>
Raptor. Two Javelins, two Spiculum Aspect-Seeking, one Pilum friend-or-foe, one mine, and I don't remember exactly where those go.
01:48
<@ToxicFrog>
Rapier. Two Darts, one Spiculum, two Pilums. Again, don't recall where those go.
01:48
<@ToxicFrog>
Probably the Spiculum ventral and one Dart + one Pilum on each wing.
01:49
<@Reiver>
Friend or foe?
01:49
<@Reiver>
Is that a fire-and-forget, or?
01:49
<@ToxicFrog>
And...not awesome like the godly squadron-destroying cluster missiles in Freespace or anything, but higher damage as a % of average ship HP than freespace, yes.
01:49
<@ToxicFrog>
And fewer enemies per mission, overall.
01:50
<@ToxicFrog>
(it takes 1.6 missiles to destroy a Dralthi medium fighter!)
01:50
<@Reiver>
Ah, so less need for missile-spamming.
01:50
<@McMartin>
zomghax
01:50
<@Reiver>
And the cluster missiles amused me.
01:50
<@ToxicFrog>
Yeah. /no/ missile-spamming, really.
01:50
<@ToxicFrog>
You conserve your missiles and take each shot carefully.
01:51
<@Reiver>
But when you use them, they're actually worth something?
01:51
<@ToxicFrog>
As for the Pilum - from Joan's Fighting Spacecraft:
01:52
<@ToxicFrog>
"The Friend or Foe missile locks onto the nearest enemy ship. Capable of identifying the distinctive identification beacon carried by Terran vessels, it makes a beeline for the nearest ship not broadcasting such a beacon. WARNING: This weapon will target friendly ships with damaged communication systems, including the firer!
01:52
<@ToxicFrog>
Yes, damage actually /has effects/ in WC.
01:53
<@Reiver>
I more mean in-preferance-to-just-gunning-them-to-bits.
01:53
<@Reiver>
Which was always a minor issue I had in Freespace.
01:53
<@ToxicFrog>
You do not know tension until you are the last line of defence between the Kilrathi and your carrier, facing down the last remaining enemy fighter, and having to /ram/ it because all of your missiles were shot off long ago and all your guns have been destroyed. And the EJECT light has been on for the past five minutes and there's bits falling off your ship.
01:53
<@Reiver>
Where the difference between a (What's that four-shot missiles name?) and merely opening fire was as much a matter of speed/convinience as anything else. >.>
01:54
<@Reiver>
...
01:54
<@Reiver>
*snrk*
01:54
<@Reiver>
Awesome.
01:54
<@ToxicFrog>
(/somehow/ I made it back to the Claw after that. The hanger crew were not pleased with the state of my fighter.)
01:54
<@Reiver>
(Did they say so, or was this supposition?)
01:54
<@ToxicFrog>
(They said so.)
01:54
<@McMartin>
"You sure got yourself shot up, sir!"
01:55
<@McMartin>
Though usually if you're in that bad shape they'll say "Glad you made it back in one piece"
01:55
<@ToxicFrog>
(and the cutscene shows the relevant battle damage on your ship, too)
01:55
<@Reiver>
...Oh, classy.
01:55
<@ToxicFrog>
And I think the four-shot missile was the Hornet.
01:55
<@Vornicus>
yeah
01:56
<@Reiver>
So... hang on. Hm.
01:56
<@Reiver>
You're the last line of defense.
01:56 * ToxicFrog rocks out to the Wing Commander main theme
01:56
<@Reiver>
Yet the entire opposing force is one fighter, or?
01:56
<@ToxicFrog>
The /remaining/ opposing force is one fighter.
01:56
<@Reiver>
And you're the remaining defensive force.
01:56
<@Reiver>
And one fighter can threaten your carrier?
01:56
<@ToxicFrog>
The rest of the opposing force, and the wingmates I started the mission with, have either retreated or are so much debris.
01:57
<@ToxicFrog>
Yeah, the turret gunners on the Claw can't shoot worth anything.
01:57
<@McMartin>
I forget; if your comm was out, could you still land?
01:57
<@ToxicFrog>
And it has serious field-of-fire issues with the engines, too.
01:57
<@ToxicFrog>
McM: I /think/ so.
01:57
<@ToxicFrog>
If your ship is critically damaged, you get automatic emergency landing clearance.
01:57
<@ToxicFrog>
But it's been a while since I tested that.
01:57
<@ToxicFrog>
Reiver: capital ships didn't get serious defences against single fighters until WC2, with phased shields.
01:58
<@ToxicFrog>
It takes a long time to take out a capship on your own in WC1, but it can be done.
01:58 * Vornicus did it!
01:58
<@McMartin>
Had to be, for at least one mission.
01:58 * ToxicFrog did it many times.
01:58
<@McMartin>
With a Scimitar.
01:58
<@McMartin>
;_;, etc
01:58
<@ToxicFrog>
Yep.
01:58 * Vornicus did it in the first mission.
01:58
<@ToxicFrog>
Scimitar vs Ralari.
01:59
<@ToxicFrog>
You also get to take out at least one Fralthi later on, but at that point you're in a Rapier or a Raptor.
01:59
<@ToxicFrog>
Although technically you're not on your own there.
02:00
<@ToxicFrog>
Unless Paladin got iced earlier on in the mission, which is just this side of completely possible.
02:00
<@Reiver>
I did kinda like how Freespace had capships able to fend for themselves, and able to shred your own fighters.
02:00
<@Reiver>
Yet simultaneously, your fighters were actually dangerous back.
02:00 * ToxicFrog nods
02:00
<@ToxicFrog>
Capships are /dangerous/
02:00
<@ToxicFrog>
But a skilled fighter can avoid the flak and take them out.
02:00
<@Reiver>
(Well, by 'capship' I'm more meaning 'big lumbering tugboat compared to my wee lil' wispy thing'.)
02:01
<@Reiver>
But yes.
02:01
<@ToxicFrog>
And to answer your question waaay earlier on about missile use, generally you use guns simply because you save your missiles for emergencies.
02:01
<@Reiver>
Oh, and having an interceptor actually made a difference.
02:01
<@ToxicFrog>
When you and your wingmate are suddenly jumped by six Gratha, having those two IFF missiles can make all the difference.
02:01
<@Reiver>
(You took out the enemy Big Frickin Missiles...)
02:01
<@Reiver>
Hm. 'cuz then there are four!
02:01
<@ToxicFrog>
Especially since the enemy /also/ follows the damage model rules.
02:02
<@ToxicFrog>
So pasting an enemy with a single missile probably won't kill them, but it will cripple their ship.
02:02
<@ToxicFrog>
Especially if you soften up their shields first with a few shots from the main guns.
02:02
<@ToxicFrog>
Dumbfires you usually save for either capital ships, or heavy fighters.
02:03
<@ToxicFrog>
Anything more agile can trivially dodge them.
02:04
<@ToxicFrog>
Aaanyways. I take it from all these questions, Reiv, that you haven't played Wing Commander?
02:05
<@Reiver>
Nope!
02:06 * Reiver ponders. Guns kill things, but a missile will paste a bunch of the ship at once, sorta deal?
02:06
<@ToxicFrog>
I don't really know how the damage model works internally.
02:06
<@ToxicFrog>
I just know that missiles hurt a heck of a lot more than guns do.
02:06
<@ToxicFrog>
Except perhaps a close-range run with neutron guns, which are unbelievably nasty.
02:08
<@Reiver>
Are missiles a) Dodgeable, b) Reliable?
02:08 * Reiver always found the FS2 method of 'fly sideways and spam flares' sorta amusing.
02:08
<@ToxicFrog>
(a) Depends on the missile. Dumbfires yes. Heatseekers sometimes. IFF rarely. Aspect-seeking never.
02:08
<@ToxicFrog>
(b) See above.
02:09
<@ToxicFrog>
And you don't get countermeasures until WC2.
02:09 * ToxicFrog idly wonders if he still has the blueprints
02:10
<@ToxicFrog>
Hmm. If I do, I can't find them.
02:11
<@ToxicFrog>
Oh, here they are.
02:11
<@ToxicFrog>
Dammit, Origin Systems, you used to kick so much ass.
02:11
<@Reiver>
?
02:12
<@Vornicus>
Origin Systems: makers of Wing Commander and System Shock
02:12
<@ToxicFrog>
Wing Commander came with:
02:12
<@ToxicFrog>
Vornicus: publishers of SS1. LGS developed it.
02:12
<@Vornicus>
ah yes
02:12
<@ToxicFrog>
Wing Commander was in-house.
02:13 Vornicus [~vorn@Admin.Nightstar.Net] has quit [Quit: Leaving]
02:13
<@ToxicFrog>
Anyways. WC1 came with, as documentation: Claw Marks, "The Onboard Magazine of the TCS Tiger's Claw", Vol 1, No 4, Issue 4/2654 (hardcopy edition)"; a control quick reference; an installation guide; and impressive blueprints of the four player-pilotable spacecraft - the Hornet, Scimitar, Raptor, and Rapier.
02:14
<@ToxicFrog>
In addition to being extremely stylish, this was also part of the copy protection; when you fired up the game it would ask questions from the manual or blueprints.
02:14
<@ToxicFrog>
It is because of this that I will forever remember that the textbook speed for navigating an asteroid field is 250kps.
02:14 Vornicus [~vorn@Admin.Nightstar.Net] has joined #code
02:14 mode/#code [+o Vornicus] by ChanServ
02:15
<@ToxicFrog>
(in practice, I navigate both asteroid fields and mine fields at the maximum rated speed of my fighter, because I'm just that good)
02:15
<@ToxicFrog>
(and Iceman, sadly, isn't)
02:15
<@Vornicus>
I would like to stop accidentally hitting that button.
02:15
<@ToxicFrog>
Want a paste of what you missed?
02:15
<@Vornicus>
nah
02:15
<@Ev3>
That is a good thing to not do. That's why I've learnt to rightclick the taskbar and click "close"
02:15
<@Ev3>
It was just TF anyway :p
02:16
<@Vornicus>
no, my command key is sticking
02:16
<@Vornicus>
also my enter key
02:16
<@Vornicus>
I think there's plastic bits from a hackysack under them
02:16 * ToxicFrog poke poke poke pokes Reiv to play Wing Commander already :P
02:22 * ToxicFrog eyes Adobe.
02:22
<@ToxicFrog>
"audio/x-rpm"?
02:22
<@ToxicFrog>
That's one freaky webserver you people are running.
02:25 * Reiver informs TF that he will consider doing so after his exam, which is, y'know, tomorrow.
02:26
<@ToxicFrog>
Oh.
02:26
<@ToxicFrog>
Yeah.
02:27
<@ToxicFrog>
I probably shouldn't be waving the most addictive space sim of all time at you until after that.
02:38 * Ev3 bites ToxicFrog.
02:39 * ToxicFrog runs around bleeding
02:44
<@Reiver>
:p
02:51 ChalcySick is now known as ChalcyHalfDead
02:57 ChalcyHalfDead is now known as ChalcySickBed
03:03 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: bathipoo'n'bedibye]
03:23 mode/#code [+o Stephenie] by ToxicFrog
03:49 Ev3 [~Shemhazai@Nightstar-8502.ds1-ba.adsl.cybercity.dk] has quit [Connection reset by peer]
03:52 NSGuest-697 [~Shemhazai@Nightstar-8502.ds1-ba.adsl.cybercity.dk] has joined #Code
04:06 Syloq [Syloq@Admin.Nightstar.Net] has joined #code
04:07 Syloq is now known as Syloqs-AFH
04:14 Safyra_Away [Safyra@Nightstar-4370.ok.ok.cox.net] has joined #code
04:14 Stephenie [Safyra@Nightstar-4370.ok.ok.cox.net] has quit [Ping Timeout]
04:14 Safyra_Away is now known as Stephenine
04:15 Stephenine is now known as Stepheniez
04:15
< Stepheniez>
omg i cant spell
04:15 Stepheniez is now known as Stephenie
04:20
<@Vornicus>
"Can't say I do. Can't say I do. Clothing has never been what you might call a thingy of dog wossname." Gaspode scratched his ear. "Two metasyntactic variables there. Sorry."
05:00 Thaqui is now known as ThaquiWork
05:18 MahalEarn is now known as Mahal
05:24 Vornicus is now known as Vornicus-Latens
05:32 Mahal is now known as MahalAFK
06:50 Syloqs-AFH [Syloq@Admin.Nightstar.Net] has quit [Connection reset by peer]
07:34 You're now known as TheWatcher
08:49 EvilTotallyNotHereLord is now known as EvilDarkLord
08:54 ChalcySickBed [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
09:29 You're now known as TheWatcher[afk]
10:21 ThaquiWork is now known as Thaqui
10:43 You're now known as TheWatcher[wr0k]
11:48 NSGuest-697 is now known as Ev3
12:13 Thaqui [~Thaqui@Nightstar-26630.broadband-telecom.global-gateway.net.nz] has quit [Ping Timeout]
12:35 Thaqui [~Thaqui@125.236.150.ns-22031] has joined #code
12:52 Reiver is now known as ReivZzz
13:11 ReivZzz is now known as ReivSLEP
13:19 Thaqui [~Thaqui@125.236.150.ns-22031] has quit [Ping Timeout]
13:21 Thaqui [~Thaqui@Nightstar-26630.broadband-telecom.global-gateway.net.nz] has joined #code
14:33 Thaqui is now known as ThaquiSleep
16:11 You're now known as TheWatcher
16:50 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout]
17:01 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code
17:14 Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has joined #code
17:14 mode/#code [+o Vornicus] by ChanServ
17:14 * Vornicus pokes at Chalain
17:21 * jerith wanders back in.
17:22 You're now known as TheWatcher[afk]
17:33 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Client exited]
17:41 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code
17:41 mode/#code [+o ToxicFrog] by ChanServ
18:10 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
18:10 mode/#code [+o Chalcedon] by ChanServ
18:16 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
18:40 MahalAFK is now known as Mahal
18:45 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout]
18:50 You're now known as TheWatcher
18:50 mode/#code [+o TheWatcher] by ChanServ
18:55 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code
19:00 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
19:00 mode/#code [+o Chalcedon] by ChanServ
19:00 Chalcedon is now known as ChalcySick
19:07 Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
19:07 mode/#code [+o Chalcy] by ChanServ
19:09 ChalcySick [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
19:19 Mahal is now known as MahalWORK
19:23 ReivSLEP is now known as ReivClass
20:50 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code
22:04 Chalcy is now known as ChalcySick
23:18 ThaquiSleep is now known as Thaqui
--- Log closed Thu Nov 02 00:00:53 2006
code logs -> 2006 -> Wed, 01 Nov 2006< code.20061031.log - code.20061102.log >