Ok so I had a massive pirate fight and got my a** handed to me. After I re-spawned my ship was no where to be found. I had fought in sector 5 15 5. Searching did not turn up any results, ( maybe I typed it in wrong) so I looked at the index database thing and found that my ship was magically in sector 0 0 0 (it gets better). So when I recovered my ship, I found a few damage marks but nothing that went to the core (I have no idea why i died). Well I built myself a repair ship and began work. I noticed that as I was healing my ship the missing blocks re-appeared. The blocks were certainly gone, but as I used the technobeams the missing blocks came back.. Poof! a perfect battle ready ship. While this is odd I came up with an idea:
If the devs are up to it and if it does not impede on performance. I have come up with a repair/damage system. When destroyed, the blocks are "Marked" as destroyed (they still exist in memory but do not get drawn/updated) this way when exposed to a repair beam they magically re-appear. It would be cool if they could only re-appear if the player has that block in his/her inventory.
This may solve the "repair from blueprint" requests. I think it may be easier to implement.
Although with my programming background it may break previous ships because it would involve a block object change:
For example, I imagine the block object is something like this: (more or less)
This change would require an additional field
This post is more for the developers, but all are welcome to review this idea.
All in all when a block is destroyed it does not get deleted (this may even help lag issues with damage?) it just gets a property change.
If the devs are up to it and if it does not impede on performance. I have come up with a repair/damage system. When destroyed, the blocks are "Marked" as destroyed (they still exist in memory but do not get drawn/updated) this way when exposed to a repair beam they magically re-appear. It would be cool if they could only re-appear if the player has that block in his/her inventory.
This may solve the "repair from blueprint" requests. I think it may be easier to implement.
Although with my programming background it may break previous ships because it would involve a block object change:
For example, I imagine the block object is something like this: (more or less)
Code:
Class Block{
int blocktype; // Wedge/Corner/Block
int blockid;
}
Code:
Class Block{
int blocktype; // Wedge/Corner/Block
int blockid;
boolean destroyed; //-> required for the game engine to know not to do anything with that block
}
All in all when a block is destroyed it does not get deleted (this may even help lag issues with damage?) it just gets a property change.