vgstation-coders / vgstation13

Butts
GNU Affero General Public License v3.0
266 stars 544 forks source link

Entire asteroid counts as powered for machinery #3358

Open 9600bauds opened 9 years ago

9600bauds commented 9 years ago

Weird behavior, I think what happens here is the entire asteroid counts as a single room and thus is powered by the mining outpost APC's. Because of this you can put any machinery out there in the middle of the asteroid and leech power all you want. This includes energy weapon rechargers. Energy weapon rechargers can recharge kinetic accelerators. Put two and two together. I hope you get what I mean.

9600bauds commented 9 years ago

I thought you couldn't build an APC in space though, can you? If so, I've been missing out. Also, this isn't really much of an issue most of the time, it just allows for potentially broken stuff like dragging around a weapon recharger to never run out of energy weapon ammo.

Exxion commented 9 years ago

I honestly can't think of a single good thing about the area system, but as you said, it's how BYOND works and we can't exactly do anything about it. I guess the APC powering the lights could be removed and the bulbs replaced with slime lanterns or something, but then someone could just build a new APC and continue doing this. APCs could also be given limited range even within their areas, but that's probably harder than it sounds, assuming efficiency is desired.

9600bauds commented 9 years ago

I reckon it's because of the lighttubes

ghost commented 9 years ago

Cannot be realistically fixed with how BYOND and SS13 in general works

We could change the area to space (aka no area) and add some form of more-or-less snowflake fluorescent lighting for the cave that doesn't need an area APC. This would allow planning out areas and not let machinery magically work, but it could cause problems if ANYTHING refers to the "Asteroid Mine" area (and I believe a shitload of procs related to Asteroid and Asteroid mobs do)

ComicIronic commented 9 years ago

Could be fixed by making sure there are no APCs in the asteroid area, for one.

Which map is this?

Exxion commented 9 years ago

At least Box, probably others. But the APC is required to keep the lights lit. Furthermore, someone could just build one and the same problem would occur.

ComicIronic commented 9 years ago

someone could just build one and the same problem would occur.

There should be a check against this in the code.

ComicIronic commented 9 years ago

If I really wanted to I could build a metal wall in the middle of anywhere, build an apc, then optionally wire it to the closest grid

But you'd be unable to add the APC to the area, since it would be in a bad area. The same area check exists for placing an APC in space.

You could then add an area using blueprints.

Exxion commented 9 years ago

In short, BYOND A SHIT I'm not exactly experienced with BYOND code, but the only real solution I see is @dylanstrategie's (make the asteroid's area space), and that's barely a solution because it would require rewriting most or all of the mining module.

Whoever decided how BYOND's area system should work probably never made a game Or at least not a good one.

ComicIronic commented 9 years ago

You're all blaming Byond, but this could be worked on with more sensible and sane area handling than our current code has. Checking area paths instead of an ID, for example, is a big mistake.

A poor workman blames his tools.

Exxion commented 9 years ago

Oh, I was under the impression that the majority of area handling was native to BYOND. Either way, though, BYOND's area system is still highly limiting. Even if getting around those limits is possible, it's a lot harder than it should be.

9600bauds commented 8 years ago

Lamps were introduced to have lighting in the roid's without requiring power, unsure if anything was done about the APC though

Exxion commented 8 years ago

It's a mapping issue, and while it may not be present on Box, it is definitely still present on some of the other maps

PJB3005 commented 8 years ago

The disposals mass driver of the science outpost on box is still unpowered, by the way.

ghost commented 8 years ago

Couldn't this be considered "fixed" if the asteroid lights are replaced by the hanging lanterns?

ghost commented 8 years ago

Sort of, a guideline has already been reached to remove all electrical equipment from the Mine APC. Use hanging lanterns for lighting, and all machinery should be directly adjacent and assigned to the nearest mining station

Once the load is 0 W, delete the APC and make sure area flags are set properly

PJB3005 commented 8 years ago

@dylanstrategie disposals mass drivers of the science outpost are still unpowered.

Exxion commented 8 years ago

The problem is that someone could still just build an APC there and power the whole asteroid again I'd definitely do it because diamond drill Ripley with an energy relay is just too good Like broken good

Although you get so much plasma, a plasma generator might actually be even better...

ghost commented 7 years ago

I think I have a way of sorting this.

Of course, remove the APC, and add a small generator that powers machinery around it, let's say a radius of 3 tiles + upgrades

Convert any remaining lights to lanterns, and add the /area/mine area to the list of places an APC should not be able to be built

ghost commented 7 years ago

I think we can make it work by simply making sure that ANY electrical device is under a station's area, and to delimit those reasonably (for example, external tiling)

Make sure there are zero lights, put lanterns everywhere

And normally, there should be variables to prevent APCs from being built. But area code is hot garbage so good luck

Shadowmech88 commented 5 years ago

While it's true that players could simply build an APC anyway, the number of players who know of the area quirk and care to exploit it is likely to be smaller than the number of players who discover by chance that their mech is mysteriously always charged. Incidentally, I just checked and, despite all of the asteroid lights having been replaced by lanterns, whatever APC is powering the asteroid on Box has not been removed. I was able to use a weapon recharger while in the middle of the asteroid.

I don't even know where the APC is to remove it.