So no Core Code rewrite for Elite in Odyssey?

That's actually the largest reason why I suspected a core rewrite was underway. The game engine seems so incredibly fragile, small updates seem to break unrelated random things with every single patch. That persistent behavior screams spaghetti code to me, a patchwork game engine which needs serious refactoring to clean up and stabilize.

You're mixing up what a game engine is, with the game coded within the engine.

Yes, you are right, it does look super spaghetti, but that's not the engine -the engine is also used to make their other games.

It's elites code base which seems.... somewhat dubious in places.
 
I've mentioned it before, but the version of the game running in the dev diary is clearly from an earlier branch than what we have now, looks like pre the September update based on the lack of chevrons on the thruster reading.

It's quite possible it's a reworked branch as many of us hoped, and it's also just as possible it's just the same code.

edit - it's also possible that footage is quite old.
 
We'll know if there's been a core rewrite when Frontier tell us, or when they launch Odyssey and fifteen existing features in the game don't break.
Speaking of which, any signs that we'll be able to loot megaships again any time soon as in "before Odyssey?"
 
I've mentioned it before, but the version of the game running in the dev diary is clearly from an earlier branch than what we have now, looks like pre the September update based on the lack of chevrons on the thruster reading.

It's quite possible it's a reworked branch as many of us hoped, and it's also just as possible it's just the same code.

edit - it's also possible that footage is quite old.

My guess is they put together a build specifically for that "B-roll" footage around the time they were working specifically on new planet tech, the marketing dept. would have asked for something they use at press events and eventually in marketing material like this. My personal experience of this kind of thing is it's disruptive as a bunch of 'feature branches' being used to develop additional stuff on old versions have to be merged together 'untested' so you have something that's sort of playable to get some footage with all the new assets and the new HUD and whatever other new stuff needs to be in the footage. Then you just get the sound guys to add whatever they're working on straight into the video.

That might have been years ago, many of the developers working on art type stuff won't use a complete engine build and likely use more lighweight view tools so they can run additional heavyweight applications in the background without their machines being unusable all day. So, in order to get the latest "cool planetary tech" with a Cobra flying over it and a cockpit your probably going to have to ask three different teams to bring their work together for a "hot build" and pray you can get it to work well enough to take some footage.

I don't know how Frontier work exactly, but the focus is most likely to have since been on more involved game stuff like the actual FPS, NPC interactions and social hubs since that footage was taken. So we will probably see more "b-roll" footage from later builds showing NPCs or FPS, but those may also include other elements that are outdated.
 
Last edited:
I would guess that 'core code rewrite' actually is code refactoring.

That tends to be about making code more "maintainable" without affecting its "external behaviour". I don't the average player will know how much of that goes on.

I don't know what people here think "core code rewrite" means. For Odyssey I'm guessing they will have new geralised API stuff for graphics, sound, whatever hardware specific stuff as part of an updated "Cobra API" they've upgraded alongside the other games.

The actual game logic and specific stuff like network architecture, typically this gets updated in small safe iterations unless you have the time and budget to develop and test a whole new product version - in which case you throw a load of stuff out and spend a good few months cherry picking the bits that work.
 
That tends to be about making code more "maintainable" without affecting its "external behaviour". I don't the average player will know how much of that goes on.
Remember, the quote was from someone attending the AGM and not an average player. He said that 'the codebase needs to be rationalized'. Sounds pretty much like refactoring to me.
 
Remember, the quote was from someone attending the AGM and not an average player. He said that 'the codebase needs to be rationalized'. Sounds pretty much like refactoring to me.

Maybe, purely from a symantic standpoint "refactoring" does not involve changing the functionality of code.

If there's a "God function" that's getting huge and many developers are making changes to it, the merging becomes a nightmare right? Your working on your bit, I'm working on my bit, we're changing the same files and tripping over each other in a months time when we're trying to bring it all together - no matter how good the tools are now days - if we're changing the same line, we have to go through the "merge" line by line and say "do we keep your change or my change?"

Seperate out those concerns into different smaller classes/functions/files - bring in some standard design patterns, whatever. The God function becomes a small function that splits out into smaller seperate "concerns" (different files, less code) you can, in theory, work together on stuff that's less likely to become a merging nightmare in a months time. It's also easier to read. The output of the function was X and is still X

That's refactoring. The functionality generally isn't changing as far as the end user is concerned.

If I rewrite the god function to do something different, faster - or drop it completely and add a whole new additional "better" game loop. The output of the function is now Y or gone completely. That's a rewrite.
 
Last edited:
Maybe, purely from a symantic standpoint "refactoring" does not involve changing the functionality of code.

If there's a "God function" that's getting huge and many developers are making changes to it, the merging becomes a nightmare right? Your working on your bit, I'm working on my bit, we're changing the same files and tripping over each other in a months time when we're trying to bring it all together - no matter how good the tools are now days.

Seperate out those concerns into different smaller classes/functions/files - design patterns, whatever. Now you can, in theory, work together on stuff that's less likely to become a merging nightmare in a months time.

That's refactoring. The functionality generally isn't changing as far as the end user is concerned.

If I rewrite the god function to do something different, faster - or drop it completely and add a whole new additional "better" game loop. That's a rewrite.
Sorry, I don't understand what you are trying to tell me. I known what code refactoring means, otherwise I wouldn't use the term...
 
Sorry, I don't understand what you are trying to tell me. I known what code refactoring means, otherwise I wouldn't use the term...

I'm just saying, it means something specifically. If it's just refactoring as you say, nobody here will know about it. The game won't be improved in an immediatly noticable way or rather it's a development process/maintanability imrpovement rather than chucking out the games logic and architecture and bringing in something new that changes the way it plays.
 
I'm just saying, it means something specifically. If it's just refactoring as you say, nobody here will know about it. The game won't be improved in an immediatly noticable way or rather it's a development process/maintanability imrpovement rather than chucking out the games logic and architecture and bringing in something new that changes the way it plays.
Yes, that's what I am saying. 🤷‍♂️
 
I'd settle for a "finish what they started" write. You know, all these things currently in the game that are half-baked (multicrew, wings, codex, CGs, Galnet, Powerplay, etc). It sure would be nice if these things were put back into the oven and fully cooked as part of the work done on Odyssey.
They would come out as Carbon materials we could collect... :)
 
I found that ~100 people working on ED combined with the low progress of the actual game for about 2 years to be a valid indication that the game would get a complete overhaul. At least FDev told us very often that this large number of people focusses on the new era and that's why we cannot expect too much for the actual thing. So what were these 100 people doing?
Living out "Dilbert". :(
 
I'm just saying, it means something specifically. If it's just refactoring as you say, nobody here will know about it. The game won't be improved in an immediatly noticable way or rather it's a development process/maintanability imrpovement rather than chucking out the games logic and architecture and bringing in something new that changes the way it plays.

Yep, the way we'd "know about it" is if updates come with less/no regression bugs, less random bugs in one area when an entirely different area was updated, etc.

Which... would be quite nice.
 
To add fuel to the fire of this discussion. The Destructoid article states the following

Art director Jonathan Bottone called Odyssey "one of the largest updates where we've taken the technology that we had originally, reworked it based on the simulation, and created an even more immersive experience than before."
 
Back
Top Bottom