News PLEASE READ: Module storage and unique modules!

Status
Thread Closed: Not open for further replies.
Seriously? The programmers 'd this?! It's a simple check, people!

class UniqueShipModuleException : Exception
class ShipModule
class UniqueModule : ShipModule
class Ship {
private:
Ship Module ship.shipModules[]
}
function Ship:InstallModule(ShipModule shipModule)
try {
if shipModule.isUnique() and ship.contains(shipModule.getModuleType())
throw(UniqueShipModuleException())
} catch() {

}
 
Seriously? The programmers 'd this?! It's a simple check, people!

class UniqueShipModuleException : Exception
class ShipModule
class UniqueModule : ShipModule
class Ship {
private:
Ship Module ship.shipModules[]
}
function Ship:InstallModule(ShipModule shipModule)
try {
if shipModule.isUnique() and ship.contains(shipModule.getModuleType())
throw(UniqueShipModuleException())
} catch() {

}

Very good. Have a cookie. Just because a bug slipped past testing doesn't mean it's not hard to fix. The ones that get through are the obscure ones and the bigger the system and number of combinations, the more likely it is that some weird things get past, especially if they only fail in certain circumstances.

But I guess an awesome programmer like you never ships code with any bugs in at all. Ever.
 
So can I move a power plant from my python to my Ana with no problem ?

Wouldn't risk it. Before 2.1, I switched modules between ships via the Sell/Rebuy Sold Items feature of Outfitting, switching ships to and fro via the Shipyard in the process. This was kind of cumbersome, but worked quite reliably, but don't know if it still does [noob]
 
Last edited:
Seriously? The programmers 'd this?! It's a simple check, people!

class UniqueShipModuleException : Exception
class ShipModule
class UniqueModule : ShipModule
class Ship {
private:
Ship Module ship.shipModules[]
}
function Ship:InstallModule(ShipModule shipModule)
try {
if shipModule.isUnique() and ship.contains(shipModule.getModuleType())
throw(UniqueShipModuleException())
} catch() {

}

I'm sure FD know how to implement simple condition checks. Plus, I'm sure their code compiles, doesn't mix up class and instance methods, does proper null checks and also ensures thread safety. Apart from that, I'm confident too that the fix will be easy once the exact cause is identified, but that's another matter.

The overall level of quality ED delivers in such a complex scenario has always impressed me, and bugs just happen regardless of whatever QA level you apply, even nasty ones. YMMV [noob]
 
Last edited:
Seriously? The programmers 'd this?! It's a simple check, people!

I have criticised FDev countless times. As much as I'm a fanboy regarding the (series of) game(s), I can not be called a gentle fluffypuffy towards FDev.

BUT

What's wrong with you?

If you have the slightest idea of working on larger scale software projects you will realise there's always something slipping through and going wrong and going undetected.

Keep in mind: This is not the 30 kilo source code of your coffee maker, this thing is really big and it's not a security thing, so doublechecking and catching on and on and on is neither the goal nor is it what you wish to do performance wise.

CUDOS to FDev for creating a HUGE upgrade to the product with MINOR bugs and LOTS of stability in NO TIME AT ALL.

It's always sooooo easy to abolish something or someone from a cushy sofa.
 
Last edited:
Isn't the point that, this bug leads to a corruption of the commander data ? I mean it is not about the move module bug, but why that leads to corrupt commander data.

Anyway I would not chance using a bugged feature with so severe consequence.
 
I have some modded Shield Boosters on my Conda that I want to swap onto my FdL.

Does the old method of selling them, swapping ships and then rebuying them still work or is that bugged now too?
 
This happened to me yesterday but i was just re fitting a huge multi cannon to the ship id already taken it off so be careful with ALL mod storage as now i cant even log in ..i did this within minutes of the upgrade too so was zero warning and now cant play the game nevermind check out the upgrades [cry]
 
Isn't the point that, this bug leads to a corruption of the commander data ? I mean it is not about the move module bug, but why that leads to corrupt commander data.

Anyway I would not chance using a bugged feature with so severe consequence.

I don't know how this feature is handled internally, but I assume module storage is implemented as an attribute of the CMDR data somehow, and then the integrity checks validate the entire data structure as a whole (mosty probably via hash algorithms or other checksums). So, if one part is corrupt, the CMDR data is globally marked as invalid, even though other parts of the structure are still intact. Or that's how I would explain it to me, at least [noob]
 
Last edited:
Sorry, but i am not sure that what you say is 100% correct. Some player is already check this. And while his ship was really emty - he have no issue at all. Hope your problem will be fix soon cmdr :)

As you can see below, PhantomWolf has had it happen to him under conditions that aren't defined by the current warning; Multicannon are definitely NOT "Unique" by Frontiers definitions, you can have more than one on a ship.

This happened to me yesterday but i was just re fitting a huge multi cannon to the ship id already taken it off so be careful with ALL mod storage as now i cant even log in ..i did this within minutes of the upgrade too so was zero warning and now cant play the game nevermind check out the upgrades [cry]

That it doesn't trigger when others move shields about doesn't mean my speculation (which is all it was) is inaccurate; it just means there's other factors involved too. My point is that if you follow Frontiers warning, which I did, you can STILL brick your account because there's a wider set of triggers than they understood and warned you about. The risks for falling into an unknown case are extremely high. So why take them?

Hence don't play with storage for now. Really, don't. The shield I may end up losing was Prismatic, and Grade 5 engineered. That's literally months of gameplay to get back again, as I dropped powerplay instantly after getting a Prismatic for my trading ships.
 
Last edited:
My cannon was engineered (if that makes a difference) ..just hope they can get me back in the game again soon ..i've also stored engineered shields and other modded parts to increase my jump range ready for a trip to the other side of the galaxy! ..really hope they can fix my account without any loss, they will take ages to get all the items for engineering again and just want to explore for a bit
 
Visitors @ FD

Reception: "Mr Braben?"
Braben: "Yes?"
Reception: "You have visitors"
Braben "Ok, show them in"
Reception: "It's, it's them again, sir!"
Braben: "What!, oh no, not again!"
Door opens "Hello, we're the screw-up fairies [squeeeee]"
 
As you can see below, PhantomWolf has had it happen to him under conditions that aren't defined by the current warning; Multicannon are definitely NOT "Unique" by Frontiers definitions, you can have more than one on a ship.

That it doesn't trigger when others move shields about doesn't mean my speculation (which is all it was) is inaccurate; it just means there's other factors involved too. My point is that if you follow Frontiers warning, which I did, you can STILL brick your account because there's a wider set of triggers than they understood and warned you about. The risks for falling into an unknown case are extremely high. So why take them?

Hence don't play with storage for now. Really, don't. The shield I may end up losing was Prismatic, and Grade 5 engineered. That's literally months of gameplay to get back again, as I dropped powerplay instantly after getting a Prismatic for my trading ships.

Not suggesting for a moment that you are wrong to urge caution, but as I posted on your own thread regarding this, I have used module storage / transfer just fine with no problems. Here's what I did:

1. Stored my Asp's (engineered) C5 shield gen so I could buy and upgrade a higher class C5 for my FDL.
2. Removed C4 shield gens from Cobra Mk III and Viper IV, stored them. Both had existing engineer mods.
3. Flew in Asp to Khun and transferred both C4 shield gens to Khun.
4. Engineered new C5 shield gen in Asp, stored it.
5. Transferred first C4 shield gen to Asp, re-engineered it. Stored it.
6. Transferred second C4 shield gen to Asp, re-engineered it. Stored it.
7. Transferred previously engineered C5 shield gen back to Asp. Flew back to home base. Transferred both C4 shield gens back from Khun to home base. Stored C5 engineered shield gen.
8. Stored C3 shield gen (previously engineered) from Imp Courier. Transferred it to Asp. Flew to Khun, and re-engineered C3 shield gen. Flew back to home base, stored shield gen and transferred it back to Imp Courier.
9. Transferred C4 shield gens back to their respective ships.
10. Transferred C5 shield gen from storage to FDL.
11. Transferred original C5 shield gen back to Asp.

Five ship's shield generators successfully stored, transferred and upgraded then re-installed in the correct ship. No issues, even logged out to main menu and back in to check that it was all working. I did all this messing around because the Asp was only 6 jumps to Khun, and other ships would have been from 10 to 20.

So while clearly you have had an issue, it would seem it is not universal.

As I said, good of you to urge caution. :) But to those suggesting that module storage / transfer is totally broken, I'd have to say it doesn't look that way to me.
 

Brett C

Frontier
Hi all, the engineering team has applied a temporary fix, server side, for the time until we get a hotfix for the client out. Thanks for understanding. :)
 
Status
Thread Closed: Not open for further replies.
Back
Top Bottom