Announcement

Collapse

READ THIS BEFORE POSTING IN THIS FORUM!

In order to properly organize all the questions in to an appropriate list for the administration team to compile in to a list to be submitted to Square Enix, please post ONE QUESTION PER THREAD ONLY!

If you are not asking a question, do NOT post a thread, please take your discussions elsewhere. If you wish to comment on a question, or provide an answer to a question, please post a reply, but any questions inside a thread that is not the first post of the thread will be ignored.

For the subject line, please put one of the things:
A.) Put the question in the subject line and the message.
OR
B.) If the question is too long, put part of the question and then repeat the entire question in the post.

Please make sure a thread with the same question does not already exists, or your thread may be merged or deleted.

Threads that do not conform to these rules may be overlooked and not added to the list to be submitted to SquareEnix.

Disclaimer: Things subject to change without notice, especially if SquareEnix decides to change it on us.

Thank you,
AKosygin
FFXIOnline.com Moderation and Administration Team
See more
See less

Scripting Language Upgrades

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Scripting Language Upgrades

    The scripting language in FFXI is probably the most widely used tool in the game, yet seems to receive very little attention. Here are some very useful changes that I would like to see added to it:

    Command Modifications

    /alias (/al)
    reassign a single line command to a short literal for instance:
    /alias sa ja "Sneak Attack"
    then you could type:
    /sa <t> # translates to: /ja "Sneak Attack" <t>
    /sea parameters

    party <Playername>
    alliance <Playername>

    Search for all members of a party/alliance containing <Playername>. Useful for determining if you should accept an invite or decline. I know I get blind invites a lot even when I'm replacing and it's useful to see if the invite is coming from (a) a party with a bad setup (b) a party not affiliated with the person you're replacing.

    noparty

    Filter the search to contain only people not currently in a party. The usefulness of this is quite obvious.

    plrange

    Abbreviation for Party Level Range. A short-cut that automatically generates a min/max level clause encompassing the level range of the searcher's current party.

    Display TNL In Results

    Not a command line option, but simply (or maybe not-so-simply) adding a column to the resulting data containing the player's Experience Points To Next Level since especially at mid to higher levels it is almost necessary to know it and it is both a pain to calculate and a pain to click through Search Comments to find out what it is (if the player has actually put it in and it is current).

    /macro (/m) <Macroname>
    Performs the macro named Macroname. This one is a bit tricky since it could easily be abused for botting, and would therefore require a bit of special case coding:




    1. /m only works in command line, it cannot be macroed.
    2. Macros must have unique names either with respect to all 10 pages of macros or to the current page of macros (I would prefer the latter).

    Non-command Modifications

    Case-insensitivity:
    no more capitalization, allowing one to type:
    /ma "cure ii" <t>

    Non-quoting/alternate "space"/single tick quotes/brackets: Upgrade the scripting engine to support a non-whitespace space such as a period, allow the use of the single tick quote ' in addition to the double tick quote ", and allow the bracket characters [ and ] instead of < and > to remove more Shift key usage allowing the following possibilities:
    /ma cure.ii <t>
    /ma 'cure ii' <t>
    /ma 'cure ii' [t]
    It could be taken a step further as there is really no need for [ ] or < > around Targetting Operands. Since [ cannot occur in a target's name (e.g. Sabaron), a one-character indicator is all that is needed--one could simply make the closing bracket "]" or ">" optional and have the scripting engine ignore it entirely.
    /ma cure.ii [t
    /ma 'cure ii' [stnpc

    Auto-target self: On Self-Only spells, there should be no need to type <me> or <p0> to get the spell to activate. The spell should target it's only possible target by default, so that when a player is engaged, he needn't use these 4-character, 2-shift commands to do something that should be done by default.
    /ma Enthunder
    Shortened Targetting operands: Reduce the keystroke cost of targetting operands as follows:

    <pn> becomes <n> where n is the party position ordinal.
    <stnpc> becomes <n> or even <npc>, <sn>, etc.
    <stpc> becomes <p> or <pc>, <sp>, etc.

    [EDIT: Add new ideas]

    In my opinion, Scripting engines should be as loose and fluid as possible in their reading without compromising the integrity of the script. This is especially beneficial in an Online Gaming environment where entering commands quickly can be the difference between a success or failure. Any error which could be considered inconsequential should be ignored (e.g. the missing end-bracket) and the player should be allowed maximum flexibility to coincide with his gaming style. I am a typer. I use a game controller to move around with (because of the analong sticks and easy menu stuff), but, in battle, especially in parties, I type because it allows me to maximize my range of abilities. There are only 20 macro buttons. For a melee character, this may be enough, but for a Red Mage with Nukes, Enfeebles, Enhancements, Curing, attacking, weapon skills (rarely), and all the other stuff an RDM has available, it's nice to have the flexibility of the scripting engine at one's disposal. I'm sure it's like that for the other casting classes as well--Bard songs, White Magic, Black Magic, Blue Magic, and Blood Pacts.

    Thank you,

    Sabaron of Asura
    Last edited by Sabaron; 08-07-2006, 05:36 PM.

  • #2
    Re: Scripting Language Upgrades

    seeking

    Filter the search to contain only people with their party flag up. This is useful for when one is searching for a replacement for oneself or on behalf of the party leader since non-leaders do not have access to the Find Member function.
    This already exists in the form of inv.

    /sea all inv 24-26

    Comment


    • #3
      Re: Scripting Language Upgrades

      I didn't know that, thank you. I've removed it from the thread header.

      Comment


      • #4
        Re: Scripting Language Upgrades

        A good idea in general, as long as the same thing can be done with the same number of lines with these more advanced scripting features, and with what already exists. Adding more levels of complexity to the scripting would be bad for the more casual players who aren't used to dealing with scripts and coding.

        Be like a Paladin.
        Take the hit, shrug it off, and ask if their mom hits any harder.

        Comment


        • #5
          Re: Scripting Language Upgrades

          GREAT Suggestion!! Please move to the top of the list!

          There are a few tags I would like to be added to this list as well.
          • <tnl> : So helpful when somebody asks is anybody close to leveling, just drop a <tnl> and you're done!
          • <tnm> : Same as above, but for Limit Points
          • <main> or <mjob> : Prints out your main job.
          • <weapon> : Prints your main weapon. Mainly for jobs that use multiple weapons so they can have a universal TP macro.
            ie: <mjob> <weapon>: <tp> TP - looking like: Warrior Great Axe: 100% TP (Also allowing you to just copy the same TP macro to all needed Macro sets. Same macro for RDM soloing would show Red Mage Sword: 100% TP, or so on.)


          There is a way to do /search plrng currently, but I would like the "Find a Member" option in the Party menu to go back to how it used to work. It used to show players 3 levels below you and 3 levels above you. Now it shows EVERYBODY who's seeking, but I don't think they're in level order. (Granted this has helped me in the past. Trying to find a Lv.45 party only to see a lot of people at Lv.51 seeking. So I changed jobs to my WAR52 and built a party for that.) But yes, I usually use the /search invite 50-54 all for my WAR52 when forming.

          I got a tingle down my spine when I saw that noparty idea! Good stuff!
          Odude
          PS2 Beta tester - Cactaur - Rank 4
          RDM32 - BLM17 - DRK11 - RNG11 - BRD9 - BST7 - WAR6 - MNK4

          Lakshmi: Windurst Rank 10 - Zilart, CoP, ToAU COMPLETE - WotG
          SAM90 - DRK90 - MNK90 - WAR90 - RNG90 - BST90 - RDM83 - NIN50 - THF46 - DRG42 - BLM40 - PUP23 - WHM20 - PLD13 - BRD13 - BLU10 - SCH10 - DNC7 - COR5 - SMN1

          Comment


          • #6
            Re: Scripting Language Upgrades

            The entire idea is to make it easier and more efficient to script and use the command line. Most people in FFXI, I've found, are only modestly proficient at typing. Ergonomics is the basic focus of the adjustments suggested--this allows for fewer keystrokes and the elimination of Double-key strokes (Shift-" for example) that make errors in command line typing more frequent. The Case Sensitivity rules are non-intuitive--a lot of people have trouble macroing because of this.

            I like the idea of having command line macros because I have too many commands to know what to do with and I'd like to be able to access multiple macro pages from the command line so that if I'm healing I could do...

            /c1
            /c2
            /c3
            /ciii3
            /ciii4

            etc. to cure various players rather than pressing Ctrl-1 which doesn't seem to be as fast as typing on my pc--it takes the macro bars a bit to pop up and they seem less responsive than the command line interface in general, but you probably wouldn't notice on a PS2/XBOX/high-end PC.

            Double Post Edited:
            Originally posted by tdh
            GREAT Suggestion!! Please move to the top of the list!

            There are a few tags I would like to be added to this list as well.


            • <tnl> : So helpful when somebody asks is anybody close to leveling, just I got a tingle down my spine when I saw that noparty idea! Good stuff!
            Ooo... <tnl> especially nice and the other options as well. I don't think about the equipment stuff b/c I don't play a lot of melee but that would be especially useful.
            Last edited by Sabaron; 08-07-2006, 05:40 PM. Reason: Automerged Doublepost

            Comment


            • #7
              Re: Scripting Language Upgrades

              Originally posted by tdh
              [*]<main> or <mjob> : Prints out your main job.
              You can do <job> and get your main/subjob. For me on my RDM it would come out as 75RDM/37BLM

              No Ifs Ands or Buts about it.
              Rest of my sig

              Comment


              • #8
                Re: Scripting Language Upgrades

                For me, I level a lot of jobs. Two of them actually require two different weapons, so this would make it easier for DRKs and WARs. Of course this wouldn't work for RNG so much, but maybe something else could be added for them. I have two different macro sets for DRK, and just keep changing the macros for WAR each time. But being able to use that one generic macro would make me very happy.

                I never really found a problem with the case sensitivity personally, but I use the Auto Translator for all of those anyway. But your suggestion for white space is nice! And your /alias command made me real happy! Even extending it to three lines would be nice. Imagine a /sata command doing all the work for me you! /drool
                Odude
                PS2 Beta tester - Cactaur - Rank 4
                RDM32 - BLM17 - DRK11 - RNG11 - BRD9 - BST7 - WAR6 - MNK4

                Lakshmi: Windurst Rank 10 - Zilart, CoP, ToAU COMPLETE - WotG
                SAM90 - DRK90 - MNK90 - WAR90 - RNG90 - BST90 - RDM83 - NIN50 - THF46 - DRG42 - BLM40 - PUP23 - WHM20 - PLD13 - BRD13 - BLU10 - SCH10 - DNC7 - COR5 - SMN1

                Comment

                Working...
                X