LUA requests

Discussion in 'Lua Discussions' started by Vladamir Begemot, Nov 5, 2019.

  1. Vladamir Begemot

    Vladamir Begemot Avatar

    Messages:
    6,161
    Likes Received:
    11,990
    Trophy Points:
    153
    Gender:
    Male
    Edit: Here's the general discussion thread, where you can find out all about LUA.

    The intent of this thread is to put specific items you would like to see in a handy bullet point list, in case the more capable among us are looking for inspiration. Please keep make separate threads for debates.

    If you're a creator and want to say you're working on one of the items, or need to do a long explanation of a request

    So you can write as much as you want without making the lists hard to find.

    • Green health bar starts at its full quantity, THEN starts animating
      • I hate showing up and seeing enemies life bars fill up to their current amount. In my perfect world when they come on screen their life bar is AT their value. From then on, the animating life bar is great. But as the worst example, it shouldn't "Fill up from zero" when I first see them. It's already full, not filling!
    • Choose who's damage I see
      • Self
      • Enemies
      • Only targeted enemy
      • Party
      • Everything
    • Choose font size and color for any/all of the above
    • Choose font size color for crits on any/all of the above
    • Visual changes for any/all of the above, or at least crits
      • I'd like my crits to grow in size then explode, or shake a bit
    • DPS
      • I know everyone has different ideas of how this works. I would just like one that tracks my DPS while I'm hitting. So it edits out down time. I'd like a two numbers, current session, and one where I select the time period, the recent burst. Font size and color selector, and maybe change the color when I'm setting a record for myself.
    • Agriculture timer.
      • We have 3 time lengths which can be modified by greenhouse or basement. I believe it only needs to pick up the first time a specific time length is planted. The window would open but not take focus, so we can edit it or confirm when done.

        So if you plant a short timeframe item(s), it pops up the timer creator and just waits. If you keep going and plant a medium length item(s), a second timer is added in that window. Pushing "Confirm" sets the timer with default values.

        Next to each is a radio button for "Greenhouse" and "Basement", with obvious effect.

        At the bottom is a + sign that lets you set up a new custom timer.

        Users have two options for how to deal with the timers, set in options. Some will just need the reminder once and that is good. Others, like me, need it to have a snooze option until I confirm its done (TBI means I can forget I was going to go water moments after the reminder, thus the need to keep being nagged until I manually turn it off.)
    • Loot
      • I imagine there are many preferences so many different versions will appear. Here's what I hope for:
        [*]No window when I loot
        [*]Big icons, like 2x the size of them currently (probably user choice actually) that fly up in the way damage numbers do
        [*]A running gold count, maybe with Cha Ching sounds
        [*]In party rolls put them in a list (which I'd drag to the side), and when the roll happens the player who got it has their name show up next to the icon, with the roll value. It stays for a few seconds then disappears.

        [*]High value items get firework or similar effect when the roll happens or when I loot them if alone.
        [*]TLDR I want to SEE what the heck I got!
    • Stock tracker, ie reagents, arrows, gold, seeds, etc. Player choice
    • On screen stats (configurable) for AL, both XPs, etc
      • XP in vs out realtime graph
    • A giant freaken announcement when I GM something
      • Configurable advancement celebratory levels. IE every 20 levels to start, but every level after 100. User defined.
    • Repair Items Easy UI
     
    Last edited: Nov 5, 2019
    Numa, Elrond, Bowen Bloodgood and 7 others like this.
  2. Kaffien

    Kaffien Avatar

    Messages:
    551
    Likes Received:
    827
    Trophy Points:
    75
    Gender:
    Male
    Location:
    Blue Rose Isle, Crafters Town, Black Rock Cove
    I'd like to see some sort of highlight when you grab a beetle carapace or pine resin. Or better yet a threshold user setting that lets me keep on working
    and when i reach 10 or 100 of something it lets you know. That way I don't have to keep checking.
     
    Jaesun, that_shawn_guy and Gravidy like this.
  3. Vladamir Begemot

    Vladamir Begemot Avatar

    Messages:
    6,161
    Likes Received:
    11,990
    Trophy Points:
    153
    Gender:
    Male
  4. Alley Oop

    Alley Oop Bug Hunter Bug Moderator

    Messages:
    10,171
    Likes Received:
    15,778
    Trophy Points:
    153
    i don't like the new filling either. ...but i don't think i've seen anyone give feedback to port on it. maybe this is minor enough to ask port for before reinventing the wheel?

    (edit: i'm guilty on that one too)

    my big request would be to break windows out of the main window, so i could have chatboxes and the map up on a seperate monitor.
     
    Last edited: Nov 5, 2019
    Astirian, Vladamir Begemot and Jaesun like this.
  5. Vladamir Begemot

    Vladamir Begemot Avatar

    Messages:
    6,161
    Likes Received:
    11,990
    Trophy Points:
    153
    Gender:
    Male
    @Alley Oop
    I did post about it once but got no traction. Not sure they even saw it.

    VR Support! I loaded Shroud of in the Oculus ages ago, and it could be VERY cool, but not until the UI supports it. Bigger text and icons as well as specialized windows would go a long way.
     
  6. Geskra

    Geskra Avatar

    Messages:
    322
    Likes Received:
    598
    Trophy Points:
    43
    Gender:
    Male
    Most of this is legit and straightforward and totally doable
     
    Cordelayne and Vladamir Begemot like this.
  7. Helverian

    Helverian Avatar

    Messages:
    72
    Likes Received:
    53
    Trophy Points:
    8
    Lua and Inky have enough power to get an own forum inside the sota forum.

    Like i wrote: i would create an alliance chat.
    Everything you write in log with starting for example AL> would be send with LUA via REST API to my server which can relay the message to mobile phones and or back to sota chat to all members of the alliance.
    Or Looking for group with message to all members. And when someonr isnt logged in he she can be informed via email and or message for mobile app.

    But i need infos from the developers which lua commands they make public for us third party developer.
     
  8. that_shawn_guy

    that_shawn_guy Bug Hunter

    Messages:
    1,036
    Likes Received:
    2,706
    Trophy Points:
    125
    Location:
    earth... mostly
    I'd like to see player/npc vendor data available to Lua. Discarded email (vendor receipts) as well.

    I've always thought more public data about the market would be very helpful to the economy.
     
  9. Vladamir Begemot

    Vladamir Begemot Avatar

    Messages:
    6,161
    Likes Received:
    11,990
    Trophy Points:
    153
    Gender:
    Male
    If we get GM powers in our dungeons it would be nice to have an interface to do complex timed operations.
     
    that_shawn_guy likes this.
  10. Tiina Onir

    Tiina Onir Avatar

    Messages:
    1,053
    Likes Received:
    1,812
    Trophy Points:
    125
    Location:
    Bramble, South Paladis
    I plan on writing a plugin to show the info I keep opening an closing in a separate window. So I can put it on a second display.

    This isn't something I would even bother asking them to do, because is benefits such a small subset of the userbase, but having the ability to do it myself: total win.

    If they expose that to us, I'll be doing that too. I've always wanted good economy data on sotadb. That said, at sotacon Chris seemed a little hesitant on this idea.

    The initial two LUA drops will not have the ability to send commands to their servers. Even with the third drop that adds this, I'm not sure I would hold my breath for GM commands. They want to be careful to prevent abuse, and unfortuntely, GM commands might be prone to that.
     
    Vladamir Begemot likes this.
  11. Vladamir Begemot

    Vladamir Begemot Avatar

    Messages:
    6,161
    Likes Received:
    11,990
    Trophy Points:
    153
    Gender:
    Male
    Can we play audio files on command?

    Can we trigger things from it picking up on NPC dialog? So if players downloaded a voice pack for our INKY quest, LUA would play it? And perhaps have things (I haven't a clue what) activated by the NPCs saying certain things?

    Ah, I know an example. A way to teleport the player automagically from a dialog.

    NPC gives the player a teleport to friend scroll and says "Hold on, I'll send you there". The LUA script for the story picks up on the dialog, adds a friend, who is in that zone. That player is expecting visitors so has their auto add script running and accepts immediately. First players client picks up on the accept and activates the teleport to friend scroll with the second player as the target.

    Or perhaps add to party/teleport. Anyway, is stuff like this possible?
     
    Parson Barr likes this.
  12. Katu

    Katu Avatar

    Messages:
    419
    Likes Received:
    719
    Trophy Points:
    55
    Gender:
    Male
    Location:
    Finland
    Sure, why not. Thou, you have to look scripts from the dark side also. Scripts should not allowed to do any kind of actions.
    Scripts cannot be allowed to:
    - Directory traversal or handle files in any way, unless in certain directory ( scanning files on computer, deletion, editing etc )
    - Move items, use items ( dropping them, or force disarm, using charges, drinking potions you would like to save for later etc)
    - Move player ( botting )
    - Use internet without clearly communicating where its connecting and why

    I really hope they do this with too much restrictions first. Bad person can inflict so much harm with this kind of stuff, that its easier to be safe than sorry.
    I'm very excited about this and definitely will be doing something with it.
     
  13. Browncoat Jayson

    Browncoat Jayson Legend of the Hearth

    Messages:
    6,259
    Likes Received:
    13,936
    Trophy Points:
    153
    Selfish request (from the SotAwiki guy) would be to be able to parse the full stats on items upon loot. It would be nice to be able to create a database as items are found.
     
    FrostII, Archer, Aeryk and 3 others like this.
  14. Tiina Onir

    Tiina Onir Avatar

    Messages:
    1,053
    Likes Received:
    1,812
    Trophy Points:
    125
    Location:
    Bramble, South Paladis
    StackOverflow says that LUA doesn't have any native sound APIs, but there are a number of libraries that provide that functionality: https://stackoverflow.com/questions/5365583/how-to-play-sound-in-lua

    So, I guess we need to know if we'll be able to pull in libraries.

    That said, LUA is intended for actual mods. Client-side stuff. I think for quest things you want to look at the inkly stuff (and the answer for inkly is, I have no idea).

    Lets go threw this point-by-point:
    1. Unlikely. There's plenty of legitimate usage of file-access. When you use a mod, you take on a degree of risk. That said, LUA is not a compiled language, so any average practitioner of the art should be able to review the code and see what it does.
    2. No commands will be able to be sent to the server until (at least) the 3rd phase. Even then, your list is a list of bot-able things. I would expect that to not be permitted.
    3. See 2.
    4. Unlikely. There's way to many valid uses of a network request for this it not be a thing.
    Ultimately, scripts can be used for nefarious purposes. You should only install ones from sources you trust.
     
    Last edited: Nov 7, 2019
    Aeryk and Jaesun like this.
  15. Katu

    Katu Avatar

    Messages:
    419
    Likes Received:
    719
    Trophy Points:
    55
    Gender:
    Male
    Location:
    Finland
    There is absolutely no reason for these scripts to run outside of their small, sandboxed environment. Give one example, where it's necessary for a script to access my personal files? There can and should be a rule, that script can access sub folders and files, but only below, never upwards.
    Making http requests from the script is definitely not needed. For example, wow does not allow http requests from Lua and those addons are quite nice still. If some script needs it, then those can be done with some external system, where the addon ( Lua) collects data to a local file and the external app shares that. More complicated, but that way users really understand, that they have opened access to internet.

    Imagine a script that looks innocent and works like a charm with the httprequest. It can be somekind of priceinfo fetcher, that everyone uses. It can be made with the best interest in mind. Then, one day, that server that its connecting to, is compromised and it returns malicious Lua code for the script to run and poof, accounts are gone. Worth the risk?

    "You should only install ones from sources you trust." This is not going to work.
    Too much risk. Risk of losing account data and everything. Just not worth it.
    They have to sandbox lua heavily. Even the popular scriptapp for UO (Lua version) has very restricted runtime environment, to prevent hacking the user.
     
  16. Helverian

    Helverian Avatar

    Messages:
    72
    Likes Received:
    53
    Trophy Points:
    8
    I think here are diffrent views what Lua can do.

    First of all: Lua is an script lang. When catnip allow local files access then it will come. When they allow http / rest api access (a powerful Feature) then it will work. When they gave access to design ui then and so on.

    Yes they are libs for playing sounds and so. It matters how they implement integrate Lua.

    So we can discuss and discuss. We need the devs to discuss with us.
     
  17. Hemswal The Descended

    Hemswal The Descended Avatar

    Messages:
    740
    Likes Received:
    1,526
    Trophy Points:
    93
  18. Tiina Onir

    Tiina Onir Avatar

    Messages:
    1,053
    Likes Received:
    1,812
    Trophy Points:
    125
    Location:
    Bramble, South Paladis
    Sandboxing any Turing complete language is a less then trivial affair. If Google can't get it right (and no disrespect to Chris intended here), I don't know what makes you think Portalarium/Catnip games will do much better. It's not necessarily that there is a good reason to access ANYWHERE, but there is good reason to have at least some access to the filesystem. If the sandbox is the only thing that's protecting you because you're installing scripts without considering the source, nothing's going to fix that.

    Is making http requests worth the risk? That's up to the user to decide. If I write a script that reports back to or gets info from my site, I'm going with 'yes.' It is at least worth the risk to me. If you think the answer is 'no,' you would be free to not install it. Ultimately, I write code for my own usage, I make it available to others because I'm a nice, friendly person. If you don't trust me, don't install it. It's not going to hurt my feelings. That said, I would list anything any script I write does.

    I'm not sure what account data you think lua will have access to.
     
    Archer, Aeryk, fooBrew and 1 other person like this.
  19. Waldo Ptolomy

    Waldo Ptolomy Avatar

    Messages:
    106
    Likes Received:
    120
    Trophy Points:
    18
    Gender:
    Male
    Location:
    Everwtt WA
    We really don't want to turn this game in to "He with the biggest Script wins"... But there is a lot useful to understand the game mechanics , and if the 95% chance of crafting items is really true or somehow in error.

    Chuckle
     
    Helverian likes this.
  20. Feldon Grimshaw

    Feldon Grimshaw Avatar

    Messages:
    201
    Likes Received:
    329
    Trophy Points:
    18
    ditto. i have a lot of ideas of what i'd like to do, but am waiting to see what we CAN do first before i start coding anything. But whatever i do code, i'll make available to anyone who wants to use it. At first it will probably just be me and maybe a few of my guildmates. If it's useful, maybe it'll get traction and go from there.
     
    Tiina Onir and Helverian like this.