Author Topic: FSO Coding (Split from What do you want in WiH?)  (Read 3076 times)

0 Members and 1 Guest are viewing this topic.

Offline Infamus

  • 26
FSO Coding (Split from What do you want in WiH?)
"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.
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah

 

Offline Shivan Hunter

  • 210
  • FRED needs lambdas!
FSO Coding (Split from What do you want in WiH?)
Maybe I can help you guize.

There's always the hope that humanity will go extinct first, I guess

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
FSO Coding (Split from What do you want in WiH?)
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.
« Last Edit: October 08, 2010, 07:27:06 pm by The E »
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Dilmah G

  • Failed juggling
  • 211
  • Do try it.
FSO Coding (Split from What do you want in WiH?)
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.

 

Offline Shivan Hunter

  • 210
  • FRED needs lambdas!
FSO Coding (Split from What do you want in WiH?)
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

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
FSO Coding (Split from What do you want in WiH?)
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.

Quote
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 from top to bottom.

Quote
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.

Quote
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)

Quote
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.
« Last Edit: October 08, 2010, 08:25:43 pm by The E »
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Mongoose

  • Rikki-Tikki-Tavi
  • Global Moderator
  • 212
  • This brain for rent.
    • Minecraft
    • Steam
    • Something
Re: FSO Coding (Split from What do you want in WiH?)
Quote
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 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.

 

Offline Infamus

  • 26
Re: FSO Coding (Split from What do you want in WiH?)
 :( :( :(
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah

 

Offline Dilmah G

  • Failed juggling
  • 211
  • Do try it.
Re: FSO Coding (Split from What do you want in WiH?)
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.

 

Offline T-LoW

  • 28
  • Planet Earth is blue and theres nothing left to do
    • German Freespace-Galaxy
Re: FSO Coding (Split from What do you want in WiH?)
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 ;)
The german Freespace-Galaxy

"There was a time before we were born. If someone asks this is where I'll be."

 

Offline chief1983

  • Still lacks a custom title
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: FSO Coding (Split from What do you want in WiH?)
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.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Re: FSO Coding (Split from What do you want in WiH?)
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.

Quote
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.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Infamus

  • 26
Re: FSO Coding (Split from What do you want in WiH?)
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.
« Last Edit: October 12, 2010, 06:23:17 pm by Infamus »
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah

 

Offline Shivan Hunter

  • 210
  • FRED needs lambdas!
Re: FSO Coding (Split from What do you want in WiH?)
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.)

 

Offline Infamus

  • 26
Re: FSO Coding (Split from What do you want in WiH?)
High Max?
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah

 

Offline Qent

  • 29
Re: FSO Coding (Split from What do you want in WiH?)
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.

 

Offline Infamus

  • 26
Re: FSO Coding (Split from What do you want in WiH?)
true, bro, true...
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah

 

Offline Infamus

  • 26
Re: FSO Coding (Split from What do you want in WiH?)
I wish to apologize for deleting my previous posts, it was on impulse from feeling like a fool.
OOOOOOOOOOOOOOOOOOOOH
BARRA
BARRA
BARRA CUDA
yeah