FreeOrion

Forums for the FreeOrion project
It is currently Sun May 19, 2013 12:16 pm

All times are UTC




Post new topic Reply to topic  [ 6 posts ] 
Author Message
 Post subject: How much Extensibility should be allowed outside the Code?
PostPosted: Fri Dec 22, 2006 11:32 pm 
Offline
Design & Graphics Lead
User avatar

Joined: Sat Sep 23, 2006 7:09 pm
Posts: 3693
Location: USA — midwest
I hope this is the appropriate sub-forum:

Spilt from planetary specials thread.
Geoff the Medio wrote:
eleazar wrote:
Which leads to another question: "how extensible is FO supposed to be?"
I haven't found discussion of this topic. Some elements, like much of universe creation are highly changeable from a text document, but the number of planet types and the position on the EP wheel is hardcoded. If FO was supposed to be highly moddable without a recompile, arguments like, "There are effects that can add specials... Therefor the UI needs to support it" would be more powerful, because it's hard to guess what a Babylon 5 Mod (for instance) might do with specials.
If somebody has a lot to say about extensibility please start and/or link to a new thread.

I think the way to think about it is that game content and balancing is very moddable, but the basic game mechanics aren't. It's easy to add buildings or techs or specials, or to change the distribution frequency of star colours when generating a universe, or (in future) the power and other characteristics of weapons and other ship components. However, it's not easy to remove the concept of starlanes from the game, or to add/remove planet environment types or star types or add/remove resources from the economic model. These latter things are what the above game content is defined in terms of, and is thus hard-coded... If this distinction is hard to see from a the perspective of someone who hasn't played around with the code or scripted up some game content, I'm not surprised... though I'm not sure how to describe it more clearly.

I'm quite familiar with using/editing text files to mod game content. I'd agree that keeping content accessible, and the core game-mechanics is a good plan. I disagree that planet/star types need to be defined in code. I'd guess it's more likely a stop-gap measure, than a purposeful choice. It's certainly not a coding necessity. The core game-play, rules and interface are not effected at all, if a modder could change it to 30 planet/star types or just 3. I'd like to see other content aspects available outside of the code, like the pixel widths of the various planet sizes in the sidebar. Even though we're a long way from needing it, i'd like to do a modest EP-wheel for gas giants, with some variation of size, to make systems look better (3 gas giants in a row, all exactly the same size looks very unnatural).

I'm not trying to bust on the coders for not having done this yet, i'm just arguing that it would be a good thing.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 23, 2006 7:38 pm 
Offline
Vacuum Dragon
User avatar

Joined: Fri Dec 26, 2003 12:42 pm
Posts: 872
Location: Germany, Berlin
I think you could also make planet types moddable, but it's not as easy as changing weapon size/power/... Because for instance alien races might prefere a special planet type or like to dwell there most (and the ai have to concern about it). If you want to abstract from planet type you would have to introduce a set of planet attributes, for instance temperatur, atmosphere, .... That might be a add to the game, but there is no real need to do so...

_________________
Press any key to continue or any other key to cancel.
Can COWs fly?


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 23, 2006 11:20 pm 
Offline
Design & Graphics Lead
User avatar

Joined: Sat Sep 23, 2006 7:09 pm
Posts: 3693
Location: USA — midwest
noelte wrote:
I think you could also make planet types moddable, but it's not as easy as changing weapon size/power/... Because for instance alien races might prefere a special planet type or like to dwell there most (and the ai have to concern about it). If you want to abstract from planet type you would have to introduce a set of planet attributes, for instance temperatur, atmosphere, .... That might be a add to the game, but there is no real need to do so...

Umm, it really sounds like you don't know how planet types work.
Here in the v.3 reqs it describes the EP wheel. Sure different aliens have different planetary preferences, but the wheel is symmetrical. Figuring out which planet types are useful for a any alien race can be done with the same formula— all you have to provide is the alien's favorite planet type. It should be easy to make the same formula work with an EP wheel of any number of planets.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 23, 2006 11:50 pm 
Offline
Vacuum Dragon
User avatar

Joined: Fri Dec 26, 2003 12:42 pm
Posts: 872
Location: Germany, Berlin
Hmm, i wasn't going to tell how planet wheel is now working (which is rather simple), i just took your saying and imagine what you try to do. So where is the point in expanding/make planetwheel more complex without taking into account the effects on different race or would the effect be the same for all races? Maybe i just missed why and how you want change things....

imo we already have enough different types.

_________________
Press any key to continue or any other key to cancel.
Can COWs fly?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Mar 11, 2007 4:35 am 
Offline
Design & Graphics Lead
User avatar

Joined: Sat Sep 23, 2006 7:09 pm
Posts: 3693
Location: USA — midwest
noelte wrote:
Hmm, i wasn't going to tell how planet wheel is now working (which is rather simple), i just took your saying and imagine what you try to do. So where is the point in expanding/make planetwheel more complex without taking into account the effects on different race or would the effect be the same for all races? Maybe i just missed why and how you want change things....

imo we already have enough different types.

Sorry for the mix up.

I'm not suggesting that the code should support different attributes of planets that aren't used by the mainline game. I'm not suggesting (here) that the wheel of planets should be changed. I just don't think it should be all hardcoded.

I'm simply noting that the 9 planet types (+ gas & asteroids) are hardcoded by name. Without changing code it's impossible to make a mod with 8 planet types, or 10. It's impossible to vary the size of Gas Giants. It's impossible to rearrange the position of a planet on the wheel.

If FO ever gets anywhere people are going to want to make mods that replace many of the surface assets. In my experience with Wesnoth, it's a great thing to allow tweaking in text files whenever reasonable. Developers and lurkers benefit.

For example:
If it's not eventually included, someone will want to make a mod that introduces Gas Giant dwelling races. Currently it's not possible without changing the code. (Gas giants are absolutely uninhabitable and can have no variety other than visual) Rather than having no recourse but to argue (on the forum) about these additional aliens, their fans could actually do something semi-constructive and make a mod that includes them. The developers could more easily examine the merits of a playable proposal, than an interminable series of forum posts.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Mar 14, 2007 10:55 am 
Offline
Space Floater

Joined: Tue May 25, 2004 1:59 pm
Posts: 37
It also makes it easier to play-balance the game. Say you decide you want an additional 3 planets - now you have to hard code them which is annoying (edit->compile->test->edit... etc) and means only a few people will have the familiarity / knowledge to do it. If it's in a config/script file then it makes it a lot more accessible and you can share the changes more easily making it easier to test / tweak the game as a group.

At the same time you have to balance this with the end goal of the project; there's no point deciding to rip out half the code base to make it extensible if it does not really serve the purpose of creating the FreeOrion game.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 

All times are UTC


Who is online

Users browsing this forum: Google [Bot] and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group