Author Topic: Question about the dev roadmap  (Read 2625 times)

0 Members and 1 Guest are viewing this topic.

Question about the dev roadmap

I was looking over the dev roadmap for 3.6.10 and saw this little gem:

"dynamicification' of MAX_PARSE_OBJECTS (Goober)"

I was wondering what exactly 'dynamification' refers to.

 

Offline Shade

  • 211
Re: Question about the dev roadmap
The ongoing effort to remove hard limits from the game.
Report FS_Open bugs with Mantis  |  Find the latest FS_Open builds Here  |  Interested in FRED? Check out the Wiki's FRED Portal | Diaspora: Website / Forums
"Oooooooooooooooooooooooooooooooooooooooh ****ing great. 2200 references to entry->index and no idea which is the one that ****ed up" - Karajorma
"We are all agreed that your theory is crazy. The question that divides us is whether it is crazy enough to have a chance of being correct." - Niels Bohr
<Cobra|> You play this mission too intelligently.

 

Offline blowfish

  • 211
  • Join the cult of KILL MY ROUTER!!!!!!!!!!1
Re: Question about the dev roadmap
An effort that sadly, won't be over anytime soon :(
« Last Edit: April 26, 2008, 10:30:30 pm by blowfish »

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: Question about the dev roadmap
I've coded quite a bit of C in college, and one thing that baffles me is why professional programmers still code in so many hard limits.  Is it really that hard to make it all dynamic the first time around?  Or is it just a 'this needs to be done yesterday, cut corners' thing?
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 Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Question about the dev roadmap
i hate programming for dynamic memory. and i figure other programmers do too. :v:'s goal was to make a game, which they did. it was not to make a game engine. when you look at idtech engines you find that since its primarily a game engine that is being sold and not just the game (which in id's case is usually to market the engine), there are very few hard limits. hard limits are just easier to program that dynamic limits. so when you're out to just make a game (you don't plan to sell the engine), you tend to favor the faster easier solution.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline blowfish

  • 211
  • Join the cult of KILL MY ROUTER!!!!!!!!!!1
Re: Question about the dev roadmap
Though I bet that once you find an effective way to dynamicify some limits you will be able to apply the same technique to the rest.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Question about the dev roadmap
It's not finding a way to do it that's the problem. It's editing hundreds of references to the old way of doing it that is the pain in the arse. :D
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 
Re: Question about the dev roadmap

For those us of not well-versed in programming (i.e. maybe just me), what would the removal of hard limits mean for the actual in-game experience?

 

Offline Shade

  • 211
Re: Question about the dev roadmap
In an unmodded game? Nothing. It's for mods that it really matters. It means they can have more ships, more types of weapons, that sort of thing. The inferno builds, for example, were made to circumvent a hard limit as their mod has more ships than the game allows. Dynamic limits would eliminate the need for special (and incompatible) builds for that sort of thing.
Report FS_Open bugs with Mantis  |  Find the latest FS_Open builds Here  |  Interested in FRED? Check out the Wiki's FRED Portal | Diaspora: Website / Forums
"Oooooooooooooooooooooooooooooooooooooooh ****ing great. 2200 references to entry->index and no idea which is the one that ****ed up" - Karajorma
"We are all agreed that your theory is crazy. The question that divides us is whether it is crazy enough to have a chance of being correct." - Niels Bohr
<Cobra|> You play this mission too intelligently.

 

Offline blowfish

  • 211
  • Join the cult of KILL MY ROUTER!!!!!!!!!!1
Re: Question about the dev roadmap
I know that a mutable array would solve the problem, but I'm sure there are drawbacks to mutable arrays (I'm not even quite sure how they work).

 

Online Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: Question about the dev roadmap
I know that a mutable array would solve the problem [...] (I'm not even quite sure how they work).
Then how on earth do you know they would solve the problem? :rolleyes:

It's easier, faster, and less bug-prone to use hard-coded limits, so they're heavily favored in game design.  However, if you want to make an engine, not just a game, flexible limits are worth the effort, as Nuke said.

FYI, the MAX_PARSE_OBJECTS limit prevented any mission from having more than 100 ships (aside from additional wing waves, which are just clones of the first wave).

 

Offline blowfish

  • 211
  • Join the cult of KILL MY ROUTER!!!!!!!!!!1
Re: Question about the dev roadmap
Then how on earth do you know they would solve the problem? :rolleyes:

I've worked with mutable arrays before.  They seem to get the job done.

Though if they work the way I think they do, then they are performance hogs.

The only other solution I can think of is going through the tables (or whatever) twice.  Once to count the number of entries, and second to parse them.

 

Offline Shade

  • 211
Re: Question about the dev roadmap
Quote
The only other solution I can think of is going through the tables (or whatever) twice.
Linked lists.
Report FS_Open bugs with Mantis  |  Find the latest FS_Open builds Here  |  Interested in FRED? Check out the Wiki's FRED Portal | Diaspora: Website / Forums
"Oooooooooooooooooooooooooooooooooooooooh ****ing great. 2200 references to entry->index and no idea which is the one that ****ed up" - Karajorma
"We are all agreed that your theory is crazy. The question that divides us is whether it is crazy enough to have a chance of being correct." - Niels Bohr
<Cobra|> You play this mission too intelligently.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: Question about the dev roadmap
Counting the entries doesn't do you much good, it would still have to be a dynamic value since the max isn't known at compile time.  So if you're going to have to make it dynamic, Shade's right, a linked list is the way to go.  It's just hard to switch all that code over like they're saying.
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 Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Question about the dev roadmap
The only other solution I can think of is going through the tables (or whatever) twice.  Once to count the number of entries, and second to parse them.

thats the way i used to parse models in my own engine, then i rewrote it to allocate a block, and reallocate when that becomes full as data is loaded from file. but it turns out that it is not the best way to do things. so im thinking about dynamically allocating memory to store the whole file as text, then go through it twice, once to count, allocate memory, once to store data. then the text block is freed and the load is complete.

i dont know how freespace parses its files, but i hear that it is a convoluted mess.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN