Ambrosia Garden Archive
    • How NOT to make an EV plugin (a confession)


      Hi. This is my first time posting here in over a year. Just a few weeks ago was my first time playing EV for over a year. (I don't know what I was thinking. It's such a fun game!) Some of the old fogies around here may remember me; I used to post as "the Lord of Lemmings". I'm the author of Bounty Plus and was a contributor and am now the maintainer of Final Battle. (Yes, I know, they both have bugs. That's what I'm posting about.)

      Way back in 1997, I started work on a plugin, Bounty. I didn't fully understand everything about the Escape Velocity plug-in structure, but I tried my best and learned from my mistakes. However, I made one very, very big mistake when I was doing this: I didn't actually play the plug. I just wrote it, checked what I wrote, ran it through various checking utilities, then stuffed/binhexed it and sent it to the plugins site of (url="http://"http://www.escape-velocity.com")www.escape-velocity.com(/url), the then-current official EV website.

      Ghod, what a mistake. Can you believe that this past week, I actually played through the missions for the first time in my plug that I started about 4 years ago? And I never kept any sort of record of what I was doing, no changelog or plans or anything.

      You find things out by playing a plug that you never would by simply looking at the numbers. I know, that should be obvious, right?

      I ended up making the same mistakes in trying to fix Final Battle. True, that plug had extreme implementation problems, that in many cases required large parts of it to be rewritten. Hell, at the time it was the most ambitious use of visbits and universe-changing missions that had yet occurred. It would have been about 10 times easier to implement in EVO, and extremely easy to do in EVN (well, aside from that EVN data is a lot more complicated).

      The damn thing still has bugs. They both do, actually. And now that I'm actually playing EV again, I have a chance to fix them.

      Well. Bounty Plus should be updated by the end of the week, at the latest. Final Battle will take a while longer, as I'll need to work through all the mission strings on both sides of the war. But I promise to get that damned plug into perfect shape, no matter how long it takes. When you start something, you have to be willing to finish it. This is as true of EV plugins as it is, say, courses in school, or responsibilities at your job.

      ------------------
      Because it's there,
      MotherF----r

    • Quote

      Originally posted by WickedDyno:
      **... However, I made one very, very big mistake when I was doing this: I didn't actually play the plug...
      ...You find things out by playing a plug that you never would by simply looking at the numbers. I know, that should be obvious, right?...

      **

      Thank you for that revelation, Lord, uh, WickedDyno. Your experience should serve as a warning to all plug-in developers. As you say, the fact that looking at resources does not tell one how a plug will actually play should be obvious, but is not always. Imo opinion no one should ever release a plug of any complexity that has not been thoroughly tested by at least two or three people other than the developer. Again, thanks for your message.

      Changing subjects slightly, do you have any plans to produce an annotated EVO Bible for v1.0.2 ? There are some significan changes that the current AE does not address.

      Good to see you back.

      ------------------
      Joe Burnette
      "I find that humans can be divided into only two meaningful categories: Decent Humans and Sonsofbitches; both types appear to be evenly distributed
      among all shapes, colors, sizes, and nationalities." -- Keith Laumer

    • That is an awfully decent thing to do. Very much looking forward to the revised plugs.

      ------------------
      PlanetPhil
      world keeps turning

    • Another ancientbie has been ressurected! Cheer!
      LoL, 1997 was the best year ever for us, the EV community, was it not?

      - Anatole (MrSmiley/GrefanaHEV/Nasher Degy in various days long past)

      ------------------
      Wessex rising. Antiga rising. Blue moon, silver skies, rain down the hate, rain down the fear. Yellow moon, orange sun, summon the iron will, summon invincibility. Dark Earth, light seas, I am your childe. I await release, your power. Almighty First, just like that.

    • Quote

      Originally posted by Anatole:
      LoL, 1997 was the best year ever for us, the EV community, was it not?

      I'd have to say 1996 was the best year so far. After all, we haven't yet had an EV event that matched the release of EV. 🙂

      ------------------
      David Arthur
      (url="http://"http://members.aol.com/darthur1/talon-ev/")Talon Plugin for the original Escape Velocity(/url)

    • Welcome back, Lord of Lemmings. WickedDyno now, eh? A rose is a rose is a rose...I do hope you'll stick around.

      That's sound advice for any plugin maker. I wouldn't have thought such a veteran would have a problem like that, actually. I learn something new every day, I guess.

      -Weepul 884, the fogey. Arg, bring me meh cane, will ye sonney? beckons a newbie

      cough

      Still, it's good to see you again.

      ------------------

    • Quote

      Originally posted by David Arthur:
      **I'd have to say 1996 was the best year so far. After all, we haven't yet had an EV event that matched the release of EV.:)
      **

      Heh, true...

      Well, glad to hear Final Battle's getting a make-over. Maybe I won't give up on it again if it has less bugs. Good luck!

      ------------------
      Write your complaints here: O
      Please don't write out of the space.
      ------------------
      (url="http://"http://www.homestead.com/lukenj/index.html")Luke's Website(/url)

    • I love the guide you did- I probably wouldn't have considered making something without it! If fact, I am making a guide very similar to yours for EVN.

      Really, why didn't you test it? I test my plug everytime I change something. It is like are small reward for doing the work and it gets you away from the numbers (which I love).

      ------------------
      Silent Night, a plug-in for Nova, will feature a small, unique galaxy. With only three races, I will be able to change the galaxy to my hearts desire. To help me finish it faster, I will not be slowed down by making ship graphic- I will use the ones from Nova.
      ------==========------
      Approving someone else's work is not the same as creating it yourself- Bill Watterson, Author of Calvin and Hobbes

    • Quote

      Originally posted by NNNormal:
      Really, why didn't you test it?

      Because I was foolish. I hadn't yet realized the cardinal rule of both science and programming -- an ounce of practice is worthy a metric buttload of theory.

      ------------------
      Because it's there,
      MotherF----r

    • Quote

      Originally posted by WickedDyno:
      **Because I was foolish. I hadn't yet realized the cardinal rule of both science and programming -- an ounce of practice is worthy a metric buttload of theory.

      **

      It could be that; but don't forget to weigh in laziness. Laziness is a long-time foe of plug-in developvers. I would know that for a fact, because I have yet to submit minor plugs of my own...

      ------------------
      (url="http://"http://pub51.ezboard.com/fquillzfrm4.showMessage?topicID=10.topic")A Pilot's memory(/url)
      "Suppose you were an idiot and suppose you were a member of congress. But I repeat myself." -- Mark Twain

    • Laziness is underrated IMO; a large part of the advances made over the ages were the product of lazy men trying to find easier ways to do things.

      It's less a matter of laziness as much as losing interest or getting "burned out" that snags plug-in developers. Not that this is helpded by the fact that most EV players are teenage males with ADD and the attention span of a ferret on pixie stix. 😉

      ------------------
      Because it's there,
      MotherF----r