Why Fix the Explosive Gel?

  • dulix11
    17th May 2012 Member 1 Permalink
    What about the moving SPNG? They fixed that too....
  • limelier
    17th May 2012 Member 0 Permalink
    Damn downvoters. Some people just don't get how the hell the vote buttons are for.
  • boxmein
    17th May 2012 Former Staff 0 Permalink
    insert vote system rant here

    I never tried explosive gel.

    Also, !set type dmnd mort (draw DMND first, duh!) and then third-click MORT to draw MORT. Yay.
  • jenn4
    17th May 2012 Member 0 Permalink
    If there are bugs, even usefull, there's propably bugs not that usefull and not yet found, so fixing those "usefull" bugs may prevent other bugs. If element doesn't work as it should, it must be fixed.
  • doxin
    17th May 2012 Former Staff 1 Permalink
    @jenn4 (View Post)
    there is such a thing as an unexpected feature, and bugs usually don't cascade at all. leaving a useful bug in won't do any harm. "fixing" it will break saves relying on it.
  • BoredInSchool
    17th May 2012 Member 0 Permalink
    @doxin: AGREED.
    @the developers: WHY FIX IT IF IT AIN'T BROKE??? (<---bad grammar is intentional)<br/>Yes, it was a bug. Yes, it was unintentional. But NO, it didn't(as far as I know, so correct me if I'm wrong) cause any issues, and NO, it didn't(IMO) necessitate a fix. By "fixing" this bug, you broke people's saves and limited the chance for a wee bit more creativity in TPT.
  • jacksonmj
    17th May 2012 Developer 1 Permalink
    If people want a substance that accelerates at enormous speed towards/away from other particles, then it should be a new element, not something achieved by manipulation of a viscous liquid. That way, everyone can use it, not just those that know how to use the console/prop tool and know about this trick.


    In general, if something is not supposed to happen then don't rely on it continuing to happen. Glitches may not work reliably in all situations, and updates may break them, either deliberately or accidentally.

    Any behaviour that can only be achieved with the console/prop tool is not guaranteed to work in future versions (except for deliberate stuff like FILT tmp values). Likewise, disabled/hidden elements might not work in future versions - they may be removed, replaced or substantially altered (except elements like RIME that can be made by reactions from normal elements).

    Finding and demonstrating as many bugs as you can is not a problem. The problem is expecting the resulting peculiar effects to keep working in the future, and using them in saves. If saves rely on buggy behaviour, then they are liable to break in new versions. If saves break then users are unhappy. That is why I try to fix bugs quickly - to prevent a large number of saves relying on them.

    However, breaking saves that rely on glitches doesn't really bother me. I think it's more important to make sure everything works reliably and consistently, so that normal saves are easier to make and will continue working in the future. Powder Toy is (or at least, should be) predominantly about using the elements, not about using the console.



    @jacob1 (View Post)
    tpt.el.wind.enabled=1; tpt.set_property("type", "wind") ?
    However, with unmodified versions of TPT, it doesn't load from saves unless you first enable the element.

    The goal isn't to stop everyone doing those things, that's impossible in an open source game. The goal is to make it difficult, to discourage people from relying on things that may not continue to function in the same way.

    @R3APER (View Post)
    True, most bugs are discovered by users, and either reported on the forum or exploited in saves (although I find some just by browsing through the code). I have an enormous list of things to do - things to fix and interesting ideas to experiment with. So I prioritise bugs that are getting a lot of attention or getting used in saves.

    @jenn4 (View Post) @doxin (View Post)
    In most cases, it wouldn't prevent other bugs. However, removing as many bugs as possible does mean it's a lot easier to find and fix the remaining bugs. Defensive programming is a good thing.
  • boxmein
    17th May 2012 Former Staff 0 Permalink
    @jacksonmj (View Post)
    Then again, backwards compatibility is always awesome.
  • jacob1
    17th May 2012 Developer 1 Permalink
    @jacksonmj (View Post)
    There are two more ways. tpt.set_property("type",147) works even without wind being enabled.
    The third way is what I was thinking of though. I just discovered it can crash the game, so i'll tell you. First, use the console to create SPRK with a ctype of WIND, or with a ctype of something like 500. Then press ctrl+= to reset the spark. It doesn't check the type, so in the first case it creates wind, but in the second case it crashes the game when you put your mouse over it. This needs to be fixed in for the lua command too.

    Also, every once in a while, a useful glitch is discovered, like sponge movement, or explosive GEL. You're saying a new element can be created to do this, but I don't think it's useful enough by itself. I think it's a good thing to be able to customize elements using the console, like FILT, or many of my mod elements, even if this specific thing was unintended.
  • Catelite
    17th May 2012 Former Staff 2 Permalink
    This is sort of like flashing lights that could be made by tweaking the values of liquid crystal in older versions. At the time, there was no better way to make flashing lights, but after it was fixed, it was replaced by something better.

    Apparently overflow errors aren't good game features.

    Also like yeah, this just means we need a Popcorn element, doesn't mean it's going to be unfixed anytime soon.

    You can accomplish this effect easily just by inverting the adhesion values for CLST actually :O