 |
 |
 |
The .85 Hovering Script crowdfunding/discussion, Part 2: the crowdfunding/discussion thread - script finished |
|
Jun 26 2017, 15:45
|
Juggernaut Santa
Group: Gold Star Club
Posts: 11,132
Joined: 26-April 12

|
Things to add: Since the new system implemented a second layout for the HP bars, now the scripts, on the part where it stops on low HP/MP/SP threshold, it should support both the layout, with a toggleable option to select what we're using right now. Anyway, I'm not exactly rich nor in the condition of making big contributions. Also, I've been not playing since some week due to study so all my income goes into the bounties. Furthermore, seeing how much the prize is high now, my small contribution won't really matter anything :\ But still, since I don't want to appear as a stingy bastard, I'll leave a tip of 111.111 Credits and 1 Hath into the prize (IMG:[ invalid] style_emoticons/default/duck.gif) This post has been edited by End Of All Hope: Jun 26 2017, 15:49
|
|
|
|
 |
|
Jun 26 2017, 15:57
|
Dead-ed
Group: Members
Posts: 3,577
Joined: 4-March 14

|
QUOTE(End Of All Hope @ Jun 26 2017, 07:45)  Things to add: Since the new system implemented a second layout for the HP bars, now the scripts, on the part where it stops on low HP/MP/SP threshold, it should support both the layout, with a toggleable option to select what we're using right now. Anyway, I'm not exactly rich nor in the condition of making big contributions. Also, I've been not playing since some week due to study so all my income goes into the bounties. Furthermore, seeing how much the prize is high now, my small contribution won't really matter anything :\ But still, since I don't want to appear as a stingy bastard, I'll leave a tip of 111.111 Credits and 1 Hath into the prize (IMG:[ invalid] style_emoticons/default/duck.gif) Heh, i'll just wait & harvest them for free later. This should make you look better.
|
|
|
|
 |
|
Jun 26 2017, 16:31
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(End Of All Hope @ Jun 26 2017, 15:45)  Since the new system implemented a second layout for the HP bars, now the scripts, on the part where it stops on low HP/MP/SP threshold, it should support both the layout, with a toggleable option to select what we're using right now.
my thoughts exactly. it matters until a certain extent with the improved standard ones, but yep, definitely to add.
|
|
|
Jun 26 2017, 16:47
|
Juggernaut Santa
Group: Gold Star Club
Posts: 11,132
Joined: 26-April 12

|
Wait wait, I just noticed that all those now have numbers. So the numbers can be used anyway for both. Assuming they're the same object in the page of course.
|
|
|
Jun 26 2017, 18:24
|
Mantra64
Group: Catgirl Camarilla
Posts: 5,600
Joined: 23-March 12

|
I want to make a contribution as well to thank the coders for their work. Sent some credits. (IMG:[ invalid] style_emoticons/default/biggrin.gif)
|
|
|
Jun 26 2017, 20:02
|
AnonDarkMage7
Group: Gold Star Club
Posts: 925
Joined: 1-June 12

|
I want to make a contribution to the bounty for 250k credits,do I send the money to Scremaz?
|
|
|
Jun 26 2017, 20:44
|
karyl123
Group: Gold Star Club
Posts: 1,659
Joined: 9-January 11

|
I have sent my prayer to the script coder.
... because I am poor.
This post has been edited by karyl123: Jun 26 2017, 20:44
|
|
|
Jun 26 2017, 21:12
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(abc12345678901 @ Jun 26 2017, 20:02)  I want to make a contribution to the bounty for 250k credits,do I send the money to Scremaz?
not mandatory, but if you'll do, i'll take the burden to keep them until the time to reward coders, yep. This post has been edited by Scremaz: Jun 27 2017, 01:08
|
|
|
Jun 26 2017, 21:27
|
Epion
Group: Gold Star Club
Posts: 3,350
Joined: 20-February 08

|
Teramagan oderien il em disania oneda, silemian fer a nisien la... Dela... Sinemo dame...
Yes. I'm offending Tenboro and his bright idea to break everything.
Sending a little something as well.
|
|
|
|
 |
|
Jun 26 2017, 21:48
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(Epion @ Jun 26 2017, 21:27)  Teramagan oderien il em disania oneda, silemian fer a nisien la... Dela... Sinemo dame...
Yes. I'm offending Tenboro and his bright idea to break everything.
Sending a little something as well.
i'll keep your post (and this only) as an example. i'll try to keep the subject of this thread as much in-topic as possible (so i invite further answers to happen in ponyverse or other threads), but this doesn't mean that there's no space to voice your ideas. thank you for both your patronage and your opinion (IMG:[ invalid] style_emoticons/default/smile.gif) This post has been edited by Scremaz: Jun 26 2017, 23:24
|
|
|
|
 |
|
Jun 27 2017, 02:33
|
AnonDarkMage7
Group: Gold Star Club
Posts: 925
Joined: 1-June 12

|
QUOTE(Scremaz @ Jun 26 2017, 21:12)  not mandatory, but if you'll do, i'll take the burden to keep them until the time to reward coders, yep.
...er...ok, well I sent 250k credits then.
|
|
|
|
 |
|
Jun 27 2017, 04:12
|
Superlatanium
Group: Gold Star Club
Posts: 7,617
Joined: 27-November 13

|
Instead of having one large bounty, mostly all distributed to an individual or to an organized official coder group, might I suggest that coding of individual features be rewarded too? Having one person or one official group presenting everything would be a huge workload, after all, and you don't want to de-incentivize possible less-involved coders if they're willing and able to do some moderate part of the work on their own, but don't want to get much involved trying to organize with a huge undertaking. Of course, this would require - a base framework of sorts that each code snippet would have to be compliant with, once everything gets put together
- appropriate divvying up of the bounty, probably administered by Scremaz, bounty contributors, and coders who have a sense of the effort required. Hopefully the coders themselves can agree on it too.
Just an idea. I've never involved myself with Reloader/hoverplay-like coding, but if I did and was interested in this, that would be a big stumbling block.
|
|
|
|
 |
|
Jun 27 2017, 10:59
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(Superlatanium @ Jun 27 2017, 04:12)  Instead of having one large bounty, mostly all distributed to an individual or to an organized official coder group, might I suggest that coding of individual features be rewarded too? Having one person or one official group presenting everything would be a huge workload, after all, and you don't want to de-incentivize possible less-involved coders if they're willing and able to do some moderate part of the work on their own, but don't want to get much involved trying to organize with a huge undertaking. Of course, this would require - a base framework of sorts that each code snippet would have to be compliant with, once everything gets put together
- appropriate divvying up of the bounty, probably administered by Scremaz, bounty contributors, and coders who have a sense of the effort required. Hopefully the coders themselves can agree on it too.
Just an idea. I've never involved myself with Reloader/hoverplay-like coding, but if I did and was interested in this, that would be a big stumbling block. yep. it's one of the reasons because i want for people to credit the original coders - and because i added those things about improving original code etc etc. the reasons because they are written in such a vague form is that - well, it's still a vague idea as well (IMG:[ invalid] style_emoticons/default/duck.gif) of course deciding how to share the bounty will be quite the sore point, but, uh... it will be done eventually, yep. somehow. probably i'll check who were the coders involved, then ask to other ones to evaluate the script. possibly even the originl reloader coders, who knows? tbh i also thought about dividing the bounty in many sub-goals and reward each of them a certain amount of the total bounty, but: 1. how can i possibly know the efforts required to solve (a) rather than ((IMG:[ invalid] style_emoticons/default/cool.gif)? 2. in case a certain thing needs to be excluded, other ones may become more or less important than planned, possibly making point 1. even more messy. not sure how much the supporters should be involved in this though. either way, i just hope i'll be impartial enough (IMG:[ invalid] style_emoticons/default/heh.gif) [edit]: oh, wait. i just thought about something fancy (IMG:[ invalid] style_emoticons/default/ph34r.gif) This post has been edited by Scremaz: Jun 27 2017, 12:33
|
|
|
|
 |
|
Jun 27 2017, 14:49
|
simrock87
Group: Members
Posts: 647
Joined: 12-June 11

|
So i've been asked to write a piece here as well regarding the new challenges. First i'll try to explain a bit how battle scripts worked in .84 and then the new challenges .85 is going to pose. .84 bit: So, in .84 the common hover scripts had multiple core features, there is the basic hover (I), spell rotations (II), buff and rebuff mechanics (III) as well heal rotations with potions (IV). Lastly there are multiple stop criteria (V) that interrupt the flow to make the user choose some action if there is a conflict. - I ) The basic hover was accomplished either through sending clicks directly to the monster element or sending a request by itself.
- II ) Spell rotations extended the basic hover with the ability to have a priority order of spells or abilities. The availability was checked by finding the skill/spell and checking if it was usable (read: not greyed out in spell/skill panel), then selecting the action and clicking the monster element, or send the appropriate request.
- III ) Buff and rebuff mechanics: checking of buffs was done by parsing the buff bar and check for the buff name and duration. If the remaining duration was less than x turns a corresponding icon with an attached function was shown to cast the offending buff, or scroll, or infusion etc (tbh i always thought this was always questionable, but meh)
- IV ) Heal rotations worked off the same logic as spell rotations but with potions added in. For HP there was generally only one level where something happened and then there would be a priority off of spells and items (usually Heal > Health Potion > Full-Cure > Health Elixir). Availability checking was the same as with spells, the same worked for items.
- V ) Multiple stop criteria: to adhere to the guidelines it was decided if there is more than one possible action suggested by the script, the script would stop executing and display the different offending conditions and have the user choose one of those. Those actions were commonly displayed as icons next to the monster panel. The action would be chosen by triggering the function attached to the icon or pressing space bar, right click, whatever and the first action would be executed, even if another may be the better choice (note: dumb solution).
So in regards to .85 there are some problems that arise with the (let's not say new) better defined rules. The main problem is that it's no longer (or was never *cough*) allowed to check the page for cooldown and status information. - I ) The basic hover stays functionally the same. I am going to assume that checking if a monster is dead to not trigger Beating dead horse requests is still a use case where it's allowed to consult the page.
- II ) Spell rotation: the concept itself is fine, but checking if a spell is ready needs to be done internally (read: without parsing the page). This in turn means that a script then needs to keep track of battle information, as in what is used or cast. To do this in any reliable way it needs to intercept any and all api requests and responses. While this is more or less easy for responses, it's rather hard for requests (or at least i haven't figured out yet how to get the request data (IMG:[invalid] style_emoticons/default/tongue.gif)), so my initial assumptions would be that you'd either need to hook into the on-site battle script directly or replicate the functionality in the script itself. Either option is less than desirable and a pita to implement (IMG:[invalid] style_emoticons/default/heh.gif). Once the data is available it's possible to sort of guess a game state in regards to at which point in time (or turn to be more accurate) the game currently is. If it's done correctly it should be possible to get it more or less right with little error. As further base data, data from outside battle is needed to get the correct turn counts per player per spell and so on.
- III ) Buff and rebuff mechanic: not sure if this is alright as a feature at all, but implementation would need to follow the process outlined in II, but errors will propagate further as smaller errors will grow bigger with the length of the buff.
- IV ) Heal rotation: again, internal cooldown tracking logic from II, but this time it needs to incorporate items as well. Then the user might need to set the corresponding slots manually i guess. This is sort of an overlap between battle and non-battle features to my mind.
- V ) Multiple stop criteria: stopping itself should be fine, as it's an integral part of the hover-type play. It has been allowed in the past to stop at a single HP/MP/SP threshold (each) to prevent the player from dying by accident. This has been sort of rogue-expanded to include buffs and scrolls and pretty much every feature and there haven't been any complaints so, but i guess no one really wanted to ask in case the reply would have been a no (IMG:[invalid] style_emoticons/default/laugh.gif). Anyway, in case of stoppage, one or multiple icons were displayed that would mirror the reason the script stopped. You could ignore the icons and just keep on doing stuff or pick one of them, whatever you fancy. Due to the "don't display selective stuff to resolve X" the display icon to resolve your problem is no longer fine. So to cover this my suggestion would be to always display any actions that might come up as solutions, this would mean just having a Heal, Mana and Spirit button that hides the respective action behind it. But the player has to trigger it themself without suggestions.
Addendum: 1) To my understanding, most rules apply to automation and battle. So it should still be allowed to parse on-site stuff for cosmetic reasons (like displaying a round/turn counter). 2) DJNoni suggested synchronizing the state that would come from II with on-site data. So far i'd think of it as a way to check if your count is correct or not. So taking the T3/2/1 Spam as an example, the script would check each turn if the spell is ready or not and compare this to its own data. If there is a difference the internal count is wrong and an offset needs to be calculated. If it should be ready but isn't the offset is too low, if it shouldn't be ready but is, the offset is too high. If it fits, the offset is correct for the moment (turns take different amounts of time, so there is a window in which this drift occurs). While it's technically a battle related process, the data itself is not used to for the actual battle process, but serves as a check, so it could "technically" be alright to do this? (IMG:[ invalid] style_emoticons/default/wink.gif) [edit]: just added a bit of formatting. nonetheless, thank you very much for your thoughts (IMG:[ invalid] style_emoticons/default/smile.gif) This post has been edited by Scremaz: Jun 27 2017, 15:45
|
|
|
|
 |
|
Jun 27 2017, 14:56
|
EsotericSatire
Group: Catgirl Camarilla
Posts: 12,648
Joined: 31-July 10

|
I didn't think it needed to track cool downs, its just a series of if statements and uses the ability if its off cool down.
|
|
|
Jun 27 2017, 15:05
|
simrock87
Group: Members
Posts: 647
Joined: 12-June 11

|
QUOTE(EsotericSatire @ Jun 27 2017, 12:56)  I didn't think it needed to track cool downs, its just a series of if statements and uses the ability if its off cool down.
That's the problem, if it can be used as before with just checking if it's ready, we'd just need to adapt the old scripts for the new layout and api, but that comment from Tenboro has us somewhat in a tizzy. QUOTE As long as it uses internal timers, it would technically satisfy the requirement. If we're wrong it's pretty much a ban coming, if not we've worried for nothing (IMG:[ invalid] style_emoticons/default/heh.gif)
|
|
|
|
 |
|
Jun 27 2017, 15:32
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(simrock87 @ Jun 27 2017, 15:05)  If we're wrong it's pretty much a ban coming, if not we've worried for nothing (IMG:[ invalid] style_emoticons/default/heh.gif) which is the main reason for this project to exist. whatever will be thrown in this script, the users who will use it will know that the function is absolutely allowed to use. at the cost of the coding operations to take a bit more time or the dobious functions to be excluded. however, guess you need a bit more guidelines here, uh? also, what about the use of 0-time spells/items, like gems or 0-CD imperil, blah blah? since there's an action involved i guess that timers will flow as usual, but they shouldn't be counted as a turn... This post has been edited by Scremaz: Jun 27 2017, 15:50
|
|
|
|
 |
|
Jun 27 2017, 16:13
|
Sapo84
Group: Gold Star Club
Posts: 3,332
Joined: 14-June 09

|
QUOTE(Scremaz @ Jun 27 2017, 15:32)  also, what about the use of 0-time spells/items, like gems or 0-CD imperil, blah blah? since there's an action involved i guess that timers will flow as usual, but they shouldn't be counted as a turn...
Why are you inserting imperil in the mix? Imperil still uses one user turn, the 0-CD just means it's ready the next turn. Anyway, you're right, they do an action and write in the log but they are not counted as player turns (cooldown doesn't decrease when using 0 action-time consumables).
|
|
|
|
 |
|
Jun 27 2017, 16:48
|
Cleavs
Group: Gold Star Club
Posts: 24,313
Joined: 18-January 07

|
QUOTE(Sapo84 @ Jun 27 2017, 16:13)  Why are you inserting imperil in the mix? Imperil still uses one user turn, the 0-CD just means it's ready the next turn.
lapsus (IMG:[ invalid] style_emoticons/default/heh.gif) QUOTE(Sapo84 @ Jun 27 2017, 16:13)  Anyway, you're right, they do an action and write in the log but they are not counted as player turns (cooldown doesn't decrease when using 0 action-time consumables).
and not even the spell duration counter should be affected then. i'm asking if it's possible without parsing live datas. This post has been edited by Scremaz: Jun 27 2017, 16:49
|
|
|
|
 |
|
Jun 27 2017, 17:47
|
simrock87
Group: Members
Posts: 647
Joined: 12-June 11

|
QUOTE(Scremaz @ Jun 27 2017, 13:32)  however, guess you need a bit more guidelines here, uh?
Yup, it's all a bit in limbo right now, so for now i, personally at least, am focusing on stuff that i know is correct, before i focus on something that's either way too complicated and unnecessary or that might get people (and me as publisher) banned. (i think Sapo is in the same boat from what i understood from his comment on Magemelee (or w/e it was called (IMG:[ invalid] style_emoticons/default/biggrin.gif)) in the script thread) QUOTE(Scremaz @ Jun 27 2017, 13:32)  also, what about the use of 0-time spells/items, like gems or 0-CD imperil, blah blah? since there's an action involved i guess that timers will flow as usual, but they shouldn't be counted as a turn...
QUOTE(Sapo84 @ Jun 27 2017, 14:13)  Why are you inserting imperil in the mix? Imperil still uses one user turn, the 0-CD just means it's ready the next turn.
Anyway, you're right, they do an action and write in the log but they are not counted as player turns (cooldown doesn't decrease when using 0 action-time consumables).
QUOTE(Scremaz @ Jun 27 2017, 14:48)  and not even the spell duration counter should be affected then. i'm asking if it's possible without parsing live datas.
The difficulty is not in counting as such. The difficulty lies in knowing whats going on. Without relying on live data i have access to profs and stats from out of combat and can get the usable spells with this. I can hook into the responses and am thus notified that something happened. Even then i don't know what just happened, so i need to hook into the trigger as well and extract the performed action. If it is a consumable the field advanced 0 turns, if was an attack the field advanced 1 turn, simple for melee but it's still a choice between 0 or 1, if we add spells like cure, full-cure or, god forbid, mage and deprecating spells, they will all take different amounts of time/turns. As noted earlier (the famous #II), it is possible, it's just a lot of work. If it's still okay to check if spells are off cooldown or not by using the spell/skill_pane, this whole effort could be saved.
|
|
|
|
 |
|
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:
|
 |
 |
 |
|