-
Notifications
You must be signed in to change notification settings - Fork 339
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
make teslas great again #1916
make teslas great again #1916
Conversation
THE GRAND RETURN OF LORD TESLOTH! |
consider changing it so that the tesla only loses energy when it eats something. i think making it require the pa to run removes some of the uniqueness of it. you might be able to cannibalize the code for that from the singulo code (singulo should gain energy as it consumes stuff. if it doesnt then that particular mechanic from 13 wasnt ported... for some reason) |
All you'd have to do is flip |
if it lost energy by consuming i think it would be fine to keep the targeted walk since it would go after power infrastructure etc then die |
@deltanedas this is ready for review fyi, game directors fake anyways and I haven't heard any other ideas regarding how to implement this |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i forgot to request changes ages ago
Content.Server/DeltaV/Tesla/TeslaEnergyBallSystem.PassiveDrain.cs
Outdated
Show resolved
Hide resolved
no fucking way i though you just hated it |
forgot to click a button highly real |
About the PR
Added a passive drain to teslas (3 per second, might need to be adjusted). Once it reaches 100 power, a bunch of lightning balls spawn and power goes back to 0. If it reaches -100, the tesla despawns.
Also replaced the ChasingWalk with RandomWalk so it has randomized pathfinding like the singulo.
Uncommented the spawns, cargo can order it too.
Why / Balance
There was a bunch of discussion about it before, I think it ended up with "wyci" so I coded it. Yippee.
The main point against having teslas was that it was a guaranteed round end, so well, it's not a guaranteed round end anymore. Also you need the PA to be constantly on, like with the singulo, or it's just going to die. Can't wait for engi to fuck up.
Technical details
Uncomments spawns, minor changes to the yaml file,
I tried to avoid touching upstream code so this only adds two datafields to the component (which could be done with a separate component too but that feels like just bloat at this point), the actual updates are being handled by a separate system using the public AdjustEnergy() method. Had to add access to the component to modify the DataFields, again, could be all done in a separate TeslaPassiveEnergyDrainComponent instead or whatever.Decided to change the system to partial instead and add TeslaEnergyBallSystem.PassiveDrain.cs on in the DeltaV namespace to avoid having to call it and also avoid the access issues. Maybe I overcomplicated it. I dunno.
Requirements
Breaking changes
Changelog
🆑