Persistent Destructible Universe
-
Just create a invisible object with dockmount “jump” (a jumphole without fx and NONTARGETABLE).
To this object you add in your system ini:
base = destructible_base
dock_with =destructible_base
parent = destructible_solarYou will ever dock at the normal solar, but if it doesn’t exist anymore, you can just dock out via this object, because non targetable will stop selecting the object.
-
Yeah locking chars docked at a destroyed base would be cool, I was thinking about adjusting attributes on the fly something along these lines. The wrecked base would allow docking similar to the derelict and being built bases I’m putting into my mod but would have no or very limited services available based on condition of various parts of the station ie if the area assigned as the equipment market place is completely wrecked you can’t buy equipment. This would then allow the base to be damaged/ destroyed without worrying about it causing a system crash when patrols try to return.
You could even take this one step further and have players bring in goods required to fix/build the station. Using a plugin to track what the damaged base buys from players. Like say Boulder is damaged it might require 400 tons of optronics, 290 ship hull panels and some other stuff as the players bring this stuff in the plugin tracks sales at the base and deducts the stuff from the list when the list is filled the base is repaired and back to full operations. This premise would be good not just for NPC owned bases but also on RP servers that allow players/clans to build their own bases. To go even further the plugin could be used to make the RPer’s maintain their base by requiring them to bring in supplies to maintain the base if they don’t bring in the supplies then the base could start to degenerate giving their enemies an opening to attack and destroy the base.
Sorry I think I got a little off topic but I do like some of the ideas this thread is giving me
-
It would be easier just to kill anyone docked with a base that was destroyed and respawn them at a previous or predefined location that still exists.
-
LouvaDeus wrote:
… predefined location …yesyesyes
-
easy with hook when the server restarts just destroy the bases at server start up
just make a list of time and date
when the it hits that date the base will be there again
basicly remove it from the destroy list
and when the player launches just beam them to a safe
place
or instantly beam them back to the same base
so it refuses to launch -
Hey adoxa
Is it possible to check destroyed parts of ships to?Wrecks of ships in FL have already fuses for destroyed parts, but in multiplayer they will respawn.
Would be good to for big solars (like battleships) with destructible parts. -
Ah, okay. I was just tired of people saying “a plugin can do that” with seemingly no idea of just what it takes. “Freelancer 2? Yeah, a plugin can do that!”
I think it’s time for a break m8…… a well deserved break
-
@Skotty: I was looking into it, but got sidetracked by my TV tuner. I don’t expect fuses will work, not sure if actually blowing them off is any different (that’s what I was about to test). For fuses, I expect the server knows its run it once, so doesn’t run it again. For the wrecks, the initial fuse should run each time, but the loot fuse should only run once. I don’t think there’s really any way to distinguish which should run more than once and which not, so that’s probably going to have to remain.
-
Don’t know how long I tried variation of fuses
(including fuses starting other fuses) to keep
a destroyed clanbase burning and smokin’ ……
… without success. -
eh wait a sec there wee all ready have control of the fuses
void __stdcall HkLightFuse(IObjRW *ship, uint iFuseID, float fDelay, float fLifetime, float fSkip); void __stdcall HkUnLightFuse(IObjRW *ship, uint iFuseID, float fDelay); __declspec(naked) void __stdcall HkLightFuse(IObjRW *ship, uint iFuseID, float fDelay, float fLifetime, float fSkip) { __asm { lea eax, [esp+8] //iFuseID push [esp+20] //fSkip push [esp+16] //fDelay push 0 //SUBOBJ_ID_NONE push eax push [esp+32] //fLifetime mov ecx, [esp+24] mov eax, [ecx] call [eax+0x1E4] ret 20 } } __declspec(naked) void __stdcall HkUnLightFuse(IObjRW *ship, uint iFuseID, float fDunno) { __asm { mov ecx, [esp+4] lea eax, [esp+8] //iFuseID push [esp+12] //fDunno push 0 //SUBOBJ_ID_NONE push eax //iFuseID mov eax, [ecx] call [eax+0x1E8] ret 12 } } HkUnLightFuse(ship, iFuseID, 0.0f); HkLightFuse(ship, iFuseID, 0.0f, 0.5f, -1.0f);
motah worked it out ages ago
thats a example of a ship can also be a base ore eny object -
Does this plugin work as advertised?
I made the domes on FP9 destructible. Added in the plugin, added it to the Libraries section in dacom.ini and nothing happens. I destroy the base part, reload my character and the broken part just respawns as normal.
-
You just used it not as advertized.
-
Yep. How about destructible movable parts?
For example destructible docking ring:
- Killed bay doors
- They fly away
- Docked
- Undocked - they are in place
Think this is more fuse control than object, hmhmhmhm…
-
@adoxa Interesting Server-Side Effect with PersistentDestructibles at Client-Side
[Object]
…
Archetype = bruh ; <-- absent archetype at SolarArch.ini
…But side-effect is… when you go from this system by jumphole or jumpgate and then go back - the station appeared again.
Seems to be plugin does not send packets when the player comes from the other system