Hard Light Productions Forums
Hosted Projects - FS2 Required => Blue Planet => Topic started by: Infamus on October 08, 2010, 07:13:40 pm
-
"The best diplomat that I know is a fully-loaded phaser bank." - Lt. Cdr. Montgomery Scott ("A Taste of Armageddon")
Yes!
Direct targeting pulse/gauss/rail guns?
manual rail guns? Now that would be awesome. Just like Allegiance. Only FS is one million times better. Plus it runs in good old C++ which is easy as pie. I am taking EGR-270 right now (this semester) and I am ace'ing that class. Next semester I'll take the advanced course. Maybe I can help you guize.
-
Maybe I can help you guize.
There's always the hope that humanity will go extinct first, I guess
-
Only FS is one million times better. Plus it runs in good old C++ which is easy as pie.
That just made my day. It really did. Thank you, Infamus.
Here's a hint. The FSO codebase is rather extensive. We're talking about 20 MB of code here, code that has been built organically on top of a codebase that, in its oldest parts, dates back to Descent (not Descent FreeSpace, I mean the original Descent). It takes even experienced coders anywhere from 2 to 4 months to get their bearings in there, and once you're past that, you're going to run into at least 3 coding WTFs, guaranteed. I do not want to make this sound overly negative, but getting the hang of things takes a rather large amount of concentrated effort.
-
Infamus, I think The E was talking about how the nuances/outright WTFs of the code written for FS make it harder than it looks to code for.
-
Dilmah G speaks the truth (yo). If you look at the actual codebase for FS- I'm not talking about the files, which you seem to be talking about in your last post, I'm talking about the actual 20MB worth of code they have to deal with- it's a nightmare. It's not something anyone without extensive programming experience, preferably game programming experience, can deal with at all and even then, the code has been slowly modified from the early 1990s, where bugs have been fixed or circumvented by intricate hacks and the entire codebase has evolved into some Lovecraftian horror that would drive any sane person away in a matter of seconds.
Check the code out from SVN sometime. See if you can follow exactly what even a single function is doing.
And wtf is this doing in the WiH thread
-
Its actually very true. Most programs today with all their fancy code are encrypted and cannot be edited sometimes even external mods are not accepted.
That's a core design thing, it has nothing whatsoever to do with the language in which the code is written. You can write a completely open, totally moddable engine in whatever language you want, just as you can write a completely locked-down one. Now, FS2 started off rather mod friendly, and we have done our best to make it even more accessible over the years, but it's not due to the language we use.
Which, for the record, is a sometimes horrifying mix of C++ and old-school C.
Plus, sometimes the editing programs cost money or they suck ass. Freespace, because of its simplicity can be easily modified, not only on a mission/campaign basis, but also Volition was full of awesome and gave us FS's source code.
Never, ever make the mistake of assuming that just because it's easy to build custom stuff on FSO, it's just as easy on the inside. When I said that it takes a good coder 2 to 4 months of concentrated work to get his bearings in the source, I wasn't kidding. The greatest hurdle for new guys is the lack of formal documentation and design documents; it's pretty much RTFS (http://www.retrologic.com/jargon/R/RTFS.html) from top to bottom.
Having a more understandable SRC, it can easily be modified at a code level. Also, the Descent-Network gave us: The Descent Manager Series. Awesome stuff.
Again, having the source and doing useful stuff with it are two very different things. There are a lot of things we have to keep in mind when working on the code, not the least of which are knock-on effects coming from the insane level of interconnectedness in the engine.
Freespace's coding for things that happen in missions, tables and suchlike are simple text files in universal ASCII (aka UTF-8) which in fact is the only text you can use for C++, FS's programing language.
Wrong. We use ANSI encoding, no UTF here, move along. What that has to do with C is something I do not know. (We could use EBCDIC and still be just fine)
FACT: Freespace, yes the original FS, is so awesome, that if you try to deprive it of your multiple cored CPU, it will actually slow down. No I'm not kidding. I had to set FS for Win95 compatibility mode, and XP only gave it one core, slowing down the game to a crawl. Setting FS to use both my CPU's cores fixed that problem.
FACT: FreeSpace doesn't know squat about cores. It's a single-thread application; it won't ever utilize more than one core. same goes for FS2. As for the slowdown you experienced, I guess XP tried to run it on the same core as the OS and other threads, thus causing slowdowns.
FSO is hardcoded to use Core 1 if there is more than a single core available. If you run it on a 2.2GHz Quad core you'll get the same performance as you'd expect from a 2.2GHz Dual Core.
-
Plus, sometimes the editing programs cost money or they suck ass. Freespace, because of its simplicity can be easily modified, not only on a mission/campaign basis, but also Volition was full of awesome and gave us FS's source code.
Never, ever make the mistake of assuming that just because it's easy to build custom stuff on FSO, it's just as easy on the inside. When I said that it takes a good coder 2 to 4 months of concentrated work to get his bearings in the source, I wasn't kidding. The greatest hurdle for new guys is the lack of formal documentation and design documents; it's pretty much RTFS (http://www.retrologic.com/jargon/R/RTFS.html) from top to bottom.
Exactly. I took a few C/C++ courses in college, and I've made it as far as downloading the source thinking I might be able to contribute in some small way, but I have no freaking clue where the heck I'd start poking around. I can open up a random file and say, "Oh hey, here's a function taking some dereferenced pointer arguments," but I don't know where those arguments are coming from, or necessarily what they do. It's a very complex codebase to wrap your head around.
-
:( :( :(
-
Yes Infamus, that's what a can of worms looks like. ;)
Don't worry, we've all done it at some stage dude. The best thing you can do is learn from it and think about how not to have a repeat of it.
-
I just read through this thread and am now convinced again that I'll never try code anything in the rest of my life. A simple calculator took me almost a week because I wanted to know some of the basics but I didn't even scratch the surface with that (but I remember it was able to extract roots :D ). Did this with pascal IIRC and that's... well never mind.
I have a lot of respect for you guys. Dealing a whole day with just some strings would break me, I think...
But it's an extremely interesting topic I will sometimes snoop into.
I stay with my visuals ;)
-
Have you ever seen a single episode of 'This Old House'? I mean yeah, some code lives far past its usefulness, but I think comparing code to a house is going a bit far. At least, houses that used to be built to last instead of the cookie cutter bargain **** they build nowadays. Give me quality over sq footage any day.
-
that, is so true, dood. It is the same with anything nowadays. Cars used to have a few display models, but they were mostly built on order (unconfirmed).
That hasn't been true ever since Henry Ford rolled out the Model T.
This was a bit hectic for the workers probably; however, nowadays we mass produce them, and waste unending amounts of capital, plus the cars are more likely to be 'lemons' than they used to be.
yeah, it has nothing to do with aging code, but it does have to do with quality control. Sometimes the simplest things are the best.
On the contrary. Cars today are much, MUCH safer and of higher quality than they used to be.
In conclusion, please try and do some research before posting unfounded opinions like that. You only end up making yourself look stupid.
-
yeah, cars aren't really lemons nowadays (stupid ass comment), I have bias against car companies for many reasons.
I assume the 'lemon' comment was what you were disagreeing with.
Vehicles these days are too damned expensive and car companies are just in it for the ****ing money as far as i can see, yet they make so many? What a waste; no wonder they are expensive in the first place.
-
Um, wasn't High Max supposed to be banned a while ago?
(I notice Infamus also deleted his earlier post. Why can users even do that, anyway? It's very rarely, if ever, useful to the forum.)
-
High Max?
-
I was talking about... what the ****...bad post, BAD post.
In the old days a person could learn the inner workings of his vehicle if he/she sought out to do so, hell they even had ****ing BOOKS that gave the details of the inner workings of the vehicles. Sure it was hard, but isn't school? new cars are next to impossible to work on because the equipment necessary is either outlandishly expensive or are hard as hell to get a hold of unless you truly know exactly what you are doing. And to even learn this, it would be like trying to get a PhD. There is a lot less room for error than there use to be, and a hell of a lot more things one can screw up.
about the only thing you can do is put gas or oil in it, change the tires, spark plugs, basic stuff. same with code. This only applies if someone else makes the car, and car companies are what I am talking about. Its more about money these days.
I wasn't talking about safety or crazy features like GPS, but durability. older engines may or may not shut off, have synchronization problems like the timing belt nor have any other systems to manage it, but the DURABILITY wasn't always a problem except for the electrical systems, which back then were definitely NOT the best. oh, and the AC too they were like prototypes back then (for cars anyhow). the older engines were built heavy, now if there was a crack in it, or something, yes we didn't have computers to test for stuff, but what if the car's mechanical parts didn't have any faults like that? what then?
Sure old cars had problems, but with a little education on mechanics, the inner workings of the vehicle in question, and the proper tools, one could fix the everyday 'bugs' instead of having to take it to a mechanic EVERY ****ING TIME.
But I digress, time is money, and one can't spend every moment working on a stalled machine. Plus, if one works to fast, he/she may **** up the whole thing.
Yes, parts are of much higher quality and car safety systems are exceptional, but companies today build the engines so that they break at a certain point; i have heard of parts breaking down just after the warranty gives. coincidence? maybe, maybe not.
and why, why, do cars these days cost so ****ing much if the technology used to build them has progress as much as the the technology used in each part? and no, don't say inflation.
I tried to quote and it was edited so that's what I'm replying to.
Yes. It was the same way with code too, once upon a time. A wizard could whip up some production quality stuff in his garage. Unfortunately, if you want more awesome in your car (or code) then it has to become more complex. Eventually all those ideas are too much to fit inside one person's mind and people need to specialize. It's kind of sad, but that's the price of having cool stuff like FSO.
-
true, bro, true...
-
I wish to apologize for deleting my previous posts, it was on impulse from feeling like a fool.