BOUNTY: Astrology script for Nexus

MboagnMboagn Member Posts: 147 Master
I'm putting up a code bounty of 500 credits for Nexus for astrology, similar to Shedrin's script where the in-game DATE is used to calculate the position of the astrological bodies in relation to the constellations. The script will be made public so all astrologers regardless of client can pewpew with the power of stars and space rocks.

Shedrin's mudlet script, for comparison, is here: 
https://drive.google.com/file/d/1mVBo7KDKXM2sUOwcQUm-O_y2NWPmM1cq/view?usp=sharing
It's pronounced "Maggy'!

Explorer (80%), Achiever (53%), Socializer (53%), Killer (13%)
Bartle Taxonomy
(test yourself)

Comments

  • MboagnMboagn Member Posts: 147 Master
    I've also uploaded the individual XML files for the aliases, scripts, and triggers, so you can check them out without having to install Mudlet itself for the .mpackage:

    https://drive.google.com/drive/folders/1IS6gIRwW66ER0PF414kOLnlSY6OllktH?usp=sharing
    It's pronounced "Maggy'!

    Explorer (80%), Achiever (53%), Socializer (53%), Killer (13%)
    Bartle Taxonomy
    (test yourself)

  • LendrenLendren Member Posts: 134 Master
    I've whipped up a script for Nexus that calculates the signs, but I need an astrologer to help me test it, as I can't read an astrolabe.


    Currently it only tells you right now, but I will be making it able to tell you for any date/time you specify.

    Also, I need some advice from an astrologer about how the other parts of this output are determined:

    The yellow text at top: how do I know that the Sun being in Dolphin means cold damage, for instance? Is there a lookup table someone can point me to?

    The grid at bottom: How do I figure any of that out?
  • AyisdraAyisdra Member Posts: 1,344 Mythical
    Lendren said:
    I've whipped up a script for Nexus that calculates the signs, but I need an astrologer to help me test it, as I can't read an astrolabe.


    Currently it only tells you right now, but I will be making it able to tell you for any date/time you specify.

    Also, I need some advice from an astrologer about how the other parts of this output are determined:

    The yellow text at top: how do I know that the Sun being in Dolphin means cold damage, for instance? Is there a lookup table someone can point me to?

    The grid at bottom: How do I figure any of that out?
    Sun in Dolphin means cold damage and this is in the AB ASTROLOGY SUN for all signs.
    The grid is figured out with the spherecheck and spheremath functions. This math was done by others years ago and the functions do it all for you.

  • LendrenLendren Member Posts: 134 Master
    Ayisdra said:
    The grid is figured out with the spherecheck and spheremath functions. This math was done by others years ago and the functions do it all for you.

    Right. I'm hoping to find out how those work so I can write corresponding functions for Mboagn's use, so I am hoping someone can tell me how those are figured out, that's what I was asking.
  • UshaaraUshaara Schrödinger's Traitor Member Posts: 1,274 Transcendent
    edited March 13
    From quick look at Shedrin's code and wiki, think you have the hard part done knowing in which sphere each planet is. For each sphere, loop over planets and compare their location to original to know magnitude of modifier for their relevant effect.

    function spheremath(sphere, affecter)
        local result=math.abs(sphere-affecter)
        if result>6 then
            result=12-result
        end
        ....

    where result = # of signs away




    Additional Notes:
    The effects of spheres are as follows:
    Alignment Name Spacing Effect Modifier
    C Conjunct 0 signs away extremely positive +4
    M Semisextile 1 sign away slightly positive +1
    X Sextile 2 signs away positive +2
    U Square 3 signs away negative -2
    T Trine 4 signs away very positive +3
    Q Quincux 5 signs away slightly negative -1
    O Opposite 6 signs away very negative -3


    Further, each planet impacts the sphere differently:

      -Sun determines the strength of the sphere, either for good or ill.
      -Moon determines the duration of the sphere.
      -Eroee determines the cost of mana for casting the sphere.
      -Sidiak determines the equilibrium time for casting the sphere.
      -Tarox determines the health loss or gain for casting the sphere.
      -Papaxi effects some part of casting the sphere randomly.
      -Aapek determines the cost of power for casting the sphere.


    Post edited by Ushaara on
  • LendrenLendren Member Posts: 134 Master
    Thank you. I think I have a lot of reading ahead before I understand Astrology enough to be able to figure out what that means, but it sounds like it's what I'll need.

    I'm about 98% sure I have the astrolabe readings right now, though.
  • LendrenLendren Member Posts: 134 Master
    Making good progress. Just have to figure out all that stuff about the spheres.

  • LendrenLendren Member Posts: 134 Master
    Just needs some more testing.

  • LendrenLendren Member Posts: 134 Master
    Okay, CrystalAstrolabe v1.0.0 is released at https://bitbucket.org/HawthornThistleberry/crystalship/. You need to install or update to the current release of CrystalNotices first; see the readme for installation instructions. This doesn't need (or interact with) any other Crystal package.

    There's no help command because there's only one syntax: ASTROLABE to do the reading for right now, or ASTROLABE yyy-mm-dd-hh to check another date and time (you can include only as much as you want; if you do ASTROLABE 585-01-03 it'll give you the reading for that date at the same time as it is now). You really should have a watch, so that the GMCP info of the time is accurate; otherwise, you could be off by a bit when the signs change in the middle of the day.

    Note that at this point I have not proven 100% that it's doing all the calculations correctly, but if someone who can do Astrology and read an Astrolabe can start using and and test it, and it turns out I have some calculation wrong, just let me know what it said, what it should have said, and for what date, and I will be able to fix it.
  • MboagnMboagn Member Posts: 147 Master
    This is all *PURE MAGIC*<3<3<3<3
    It's pronounced "Maggy'!

    Explorer (80%), Achiever (53%), Socializer (53%), Killer (13%)
    Bartle Taxonomy
    (test yourself)

  • UshaaraUshaara Schrödinger's Traitor Member Posts: 1,274 Transcendent
    Lendren said:
    Just needs some more testing.


    Looks great - though I think you're out by '1' somewhere in your code (maybe how you numbered spheres?)

    Based on above -

    Sun in Lion means the Str +4 should be showing in Lion (not Crocodile)
    Moon in Burning Censer should -> Dur +4 in Burning Censer (not Spider)
    etc.

    So everything there just looks like it should be shifted one row up (Volcano line -> Glacier)
  • LendrenLendren Member Posts: 134 Master
    edited March 13
    v1.1.0 fixes the bug Ushaara pointed out (thank you!) and adds a display automatically generated when you do someone's Nativity. Also can do dates back to year 100 ACE.


    Post edited by Lendren on
  • LendrenLendren Member Posts: 134 Master
    Oh, I forgot to say: this is using GMCP to know the time, and thus expecting you to have a watch. But note that there is a bug in the GMCP support for time which means, even if you have a watch, if you are in certain underground locations (like the Seren portals), the GMCP incorrectly sends a "you think it is night-time up above" message, so the time is a guess. In rare situations, that could make the report slightly wrong. I could work around this by capturing the time when you read a watch, or doing math on the daynight report, but since I am hoping that the bug gets fixed soon, I don't want to bother to do a workaround that'll soon be obsolete.
Sign In or Register to comment.