The final frontier

An area for discussing new ideas and additions to Oolite.

Moderators: winston, another_commander

User avatar
Cmdr James
Commodore
Commodore
Posts: 1357
Joined: Tue Jun 05, 2007 10:43 pm
Location: Berlin

Post by Cmdr James »

If he wants to rewrite game saves completrely then I guess its cool.

We *really* want to maintain backward compatability for existing save games. Also, if anyone (Frame?) does do this, then they should be aware that people will be mighty annoyed if a savegame ever gets corupted or fails to work as expected, and there will almost certainly be a large amount of support called for -- so I dont think anyone should volunteer lightly.

Edit: I dont use save-anywhere, so I dont know how it works. What happens if I dock with a station from an OXP, save, and then remove the OXP and reload? Does it randomly select another station? Will it still work if there is no main station at all.
User avatar
Micha
Commodore
Commodore
Posts: 815
Joined: Tue Sep 02, 2008 2:01 pm
Location: London, UK
Contact:

Post by Micha »

Maintaining backwards compatibility is reasonably simple (one of the nice things of XML) - just add a new section 'system' to the save-file. If it doesn't exist, spawn-generate the system data, otherwise populate the current system using the data in the save-file. This way even an older version of Oolite can load a 'new' savefile - it would just ignore the new data.

As for size, we could just zip up the savefile - it's what OpenOffice does for example.

However, those are just the 'simple' issues. There are loads of avenues for trickier problems, such as ensuring all loaded entities are in correct AI states, escorts have the correct mother, etc. etc. etc. It certainly wouldn't be a trivial task to ensure it all works correctly.
The glass is twice as big as it needs to be.
User avatar
Frame
---- E L I T E ----
---- E L I T E ----
Posts: 1477
Joined: Fri Mar 30, 2007 8:32 am
Location: Witchspace

Post by Frame »

Cmd. Cheyd wrote:
On potential caveat...

It would likely require recoding of all the "Look and Feel" OXP's... Could you imagine making the harrowing journey to a new system, never before encountered by GalCop society... And finding a Mall-Wart ConStore in orbit? Talk about a mood-killer :(
Since this is on the hard-code level... we could "disable" custom stations from spawning, unless they specific are flagged as "Frontier-station", that could even be implemented into roles.

Regarding me writing anything for Oolite Src. At this stage, the only thing I would promise was me tinkering with the code since, I only know C++. Java i picked up via Oolite, but it is much like C++. as is the Oolite code.

In fact, right now, I do not know the name of the language that Oolite was written in.

But it would be fun to tinker with... And I'm sure I would find a solution.. and regarding all that stuff with viewing code as "relics".. My response to that.. Why reinvent the wheel... ? You cannot possibly compare software to hardware...

Writing Oolite was a massive effort, therefore a rewrite of some of the fundamentals would not be without effort.

Galaxy Expansion, hell yeah, but with reasonable caution. in regard to continuity and everything else.

Its funny, cause i have project going on, in my text editor, that is an OXP for Oolite, that will use the jump-gate code, to create places that you can explore.. But on a much simpler level.. than creating solar systems...

Of which many bugs that prevented it from being completed has since been, solved by Kaks I believe. And I may return to that, when 1.73 is released..oO { and I fix that major error I found :oops: }
Bounty Scanner
Number 935
User avatar
DaddyHoggy
Intergalactic Spam Assassin
Intergalactic Spam Assassin
Posts: 8515
Joined: Tue Dec 05, 2006 9:43 pm
Location: Newbury, UK
Contact:

Post by DaddyHoggy »

Oolite is Objective C, not C++, the differences are enough to get you into trouble...
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
User avatar
Frame
---- E L I T E ----
---- E L I T E ----
Posts: 1477
Joined: Fri Mar 30, 2007 8:32 am
Location: Witchspace

Post by Frame »

DaddyHoggy wrote:
Oolite is Objective C, not C++, the differences are enough to get you into trouble...
my middle name.. ;-)..

Well I started with C, but was quickly turned to C++

@Cmdr James

Code: Select all


"Frame_SAVE_brief3" = "---SAVE ANYWHERE OXP MESSAGEE\n\nSorry Commander, you cant save in this system, there is no main stations which is a prerequiste";

"Frame_SAVE_brief9" = "---SAVE ANYWHERE OXP MESSAGEE\n\nSorry Commander, You have loaded a SAVE ANYWHERE OXP commander file.\nBut the OXP containing the station seems not to be installed or is in a non working state";
Complete with typos , I could list the code for these checks too, but they are there...
Bounty Scanner
Number 935
User avatar
Cmdr James
Commodore
Commodore
Posts: 1357
Joined: Tue Jun 05, 2007 10:43 pm
Location: Berlin

Post by Cmdr James »

If save-anywhere requires a main station, then is it still posssible to adapt this approach to work in "new regions of space" where there is no main station.

I guess there is always a way. We could have alient "stations", which dont even need to have a dock but would work from a saving perspective.
Post Reply