Welcome Guest ( Log In | Register )

 
Closed TopicStart new topic
> [Bounty] Script - Semi automated equipment sending, 5000 hath Dead or Alive

 
post Feb 17 2019, 14:23
Post #1
KitsuneAbby



Curse God of the Hentai Shrine
**********
Group: Catgirl Camarilla
Posts: 7,572
Joined: 12-July 14
Level 500 (Ponyslayer)


Intro and basic explanations

Every week, I need a considerable amount of time to send the items won in my auctions.
I need a script to assist me in that task but I don't have time to do it myself. So here is a bounty that will be rewarded generously.
I have imagined it in a way that will both allow it to be decently compatible with my current and future plans, and to be of general help for everyone.

Basically, I need a script that will semi-automate the sending of items (with or without CoD) to players by reading a formatted file that contains all the relevant data to do so.
Semi-automated, because 1) full automation is dangerous 2) full automation is quite borderline regarding what's allowed in HV 3) manual input may be required while it's working.
In other words, I need a script that will pilot the HentaiVerse pages in my browser so that all I have left to do is to click on "Send", after potential modifications/corrections by hand.

To match my exact needs and to allow such a script to be of general use for everyone, I have written a list of specifications that will need to be fulfilled.
Failing to meet 100% of these specifications will result in a no-go and no reward. Of course these specs can be discussed if you have trouble or suggestions.

I have also written a workflow that describes how I will typically work with it, to help you getting a grasp of the need.

Reward: 5000 hath + a selection of lewd shots taken by Aya Shameimaru

You are allowed to cooperate as a team, in which case I will divide the reward between those who took part in the work.
The priority goes to players who are in the need, but I'm not excluding higher level/richer players.
I will not forget to credit you once it's released, if it's left for me to manage instead of you creating your thread for it.
If you're interested, please reply in this thread.

NB:
You can count on me to check your realization in its details. I'm not going to pay you 5000 hath for a half-baked work.
You have been warned.


Specifications
All these specifications need to be respected. They can be discussed, but the general baseline will remain.
This list may be updated, depending on the general progress.
  1. The general rules of E-H and HentaiVerse need to be respected.
  2. You are free to use the technology you want, as long as it's usable decently. Javascript (for use in Tampermonkey) is preferred, but I'm not excluding the usage of things like Python.
  3. The usage of potential frameworks, additional libraries or other kinds of non-vanilla/external content is prohibited. I may make an exception in case of absolute necessity.
  4. The sending of HTTP requests to perform actions (such as unlocking an item or getting it out of the storage) without using the links available in HentaiVerse is allowed and preferable, but you need to make sure that 100% of the HTTP requests are legitimate.
    For example, you need to make sure that the item exists before requiring to unlock it.
    Be very careful when using the HTTP requests, really. We don't want to trigger Tenboro every time a smartass tries to do funny stuff with items that don't belong to him, or God knows what else.
    You can find examples of how to proceed in the already existing Javascript utilities.
    If you aren't confident enough to use the said HTTP requests, then you can pilot the browser with the use of the links in the HentaiVerse pages.
  5. The list of items to send has to be in a CSV file that will be selected with a "select file" dialog. The file format is not negotiable: CSV or nothing. So no JSON, XML or God knows what else.
    [en.wikipedia.org] More info about CSV files
  6. The separator used in the CSV file will be the semicolon (;)
  7. Each line of the CSV file will contain the data to send one equipment in this order: playername;equipid;equipkey;price;extradata (extradata can be anything: it is only there to be included somewhere in the MoogleMail message)
  8. The script will have to just skip/ignore blank/invalid lines, and stop once it meets the end of the file
  9. The script must allow the user to select a TXT file (again with a "select file" dialog) that contains the MoogleMail's title and text.
  10. This TXT file must have the title as the first line, the message as the rest of the file.
  11. Both the title and the message content must allow the usage of special codes (e.g. $playername) that will be automatically replaced with the relevant data.
  12. The said codes will allow one to use the following: recipient name, equip id, equip name, equip level, extradata. Feel free to add more if you think it's needed.
  13. The script will have to parse the equipment popup (that can be obtained with the equip's id and key) to obtain all the needed equipment data, such as its name and level.
  14. The script will have to take the item out of the storage, then unlock it, then attach it to the MoogleMail, fill all the fields, set the CoD (or no CoD is the price is zero or an empty string).
  15. Once the script has filled the fields, it must wait for the user to click on the script's "Send" button, before proceeding to the next equipment.
  16. There must be an option to cancel the current MoogleMail, "Don't send" it. When cancelling, you have to detach all equipments, items, credits, hath, before proceeding to the next MoogleMail.
  17. Once everything's been processed, you need to show a dialog to inform the user that the CSV file has been processed.
Example:
Using an interface similar to HV Toolbox'es can be a good idea and help you save your time.
If things were made that way, it'd be good to have a "CSV" button, a "TXT" button, a "Send" button and a "Cancel" button.
I'm not forcing you to do things that way, it's just a random idea. You're free do do it however you want as long as the general ergonomy is OK and the specs are met.

Side notes:
In case the specs aren't clear enough, having to copy/paste the CSV/TXT path somewhere (such as inside the script's code) is out of the equation.
Only the user cookie data (which are needed to perform HTTP requests) will be tolerated in that regard, in which case it'll have to be setup as a global var at the top of your script.


Workflow
This is how I'm considering to use such a script:
  1. Generate my CSV
  2. Adjust my TXT file for the message formatting if needed
  3. Start the script
  4. Select my CSV and TXT files, if I've changed their location
  5. Waiting for each MoogleMail to be ready to send
  6. Checking that everything is OK, maybe adding extra items, modifying the CoD or just any field
  7. Send
  8. Repeat until I'm done

Here are a sample CSV and a sample TXT to illustrate what I'm going to use.
[www.mediafire.com] http://www.mediafire.com/file/66k14b8c65ki...le_TXT.txt/file
[www.mediafire.com] http://www.mediafire.com/file/qdl3vs9ovsk1...le_CSV.csv/file
Please don't use their data as-is, but do modify them so that you do try it on items that you own yourself. And use myself as recipient: I will send everything back.

Feel free to ask questions, to comment, or to post suggestions.
Thanks in advance to those who are willing to take up this task.

(IMG:[i.imgur.com] https://i.imgur.com/oCYzRK4.jpg)

This post has been edited by decondelite: Feb 17 2019, 19:47
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 14:58
Post #2
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


sample file?

Also, not negotiating, but why CSV?

I'd also assume you don't want me to send MM for you, but to simply let you confirm things?


Edit: Also, please specify your browser (including version).

This post has been edited by ihatenamingthings: Feb 17 2019, 15:07
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 15:07
Post #3
KitsuneAbby



Curse God of the Hentai Shrine
**********
Group: Catgirl Camarilla
Posts: 7,572
Joined: 12-July 14
Level 500 (Ponyslayer)


CSV is the easiest to generate and can be done with things like Excel, simple.
I don't have any sample of CSV/TXT yet. I will do that a bit later.

And yes, the script should send only once I've allowed it to do so by clicking on a "Send" button (wherever it is), not by itself.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 15:09
Post #4
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


Just wanna confirm on strip all feature: there's literally a remove all button though?

I suppose I can make a script that... press all the remove button in one click (IMG:[invalid] style_emoticons/default/smile.gif)
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 15:55
Post #5
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


also: hath, cod, credits and equipment (provided that you supply the equip id) would be easy. Items on the other hand, I'd need you to download your mooglemail page so I can scrape the itemid.

Reason being I don't have every single item in existence (well ain't that obvious), or at least, not all the items that you might want to sell.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 16:45
Post #6
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


mock item (for those that I can scrape off my inventory), mock equip, mock credit, cod, etc. is done.

I still need sample files from you, since I need to design a parser.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 17:43
Post #7
blue penguin



in umbra, igitur, pugnabimus
***********
Group: Gold Star Club
Posts: 10,046
Joined: 24-March 12
Level 500 (Godslayer)


I definitely have no time for this ( (IMG:[invalid] style_emoticons/default/smile.gif) ) but here go some extra specification you may wish to include:

1 - Does it need to be browser based? Something that keeps and updates a simple database (e.g. sqlite) on your own machine could be much simpler, easier to write, and faster to operate.

2 - In the above case you may wish to specify the environment(s) in which it needs to run. e.g. you may wish a cmd interface that you can plug into something on a *nix box, instead of, say, a GUI.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 18:28
Post #8
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


update: I've written and test (most of) the the script that can be tested without your file format. Should take ~30 minutes playing around with the parser and it'd be ready.

Also: there's no GUI. You'd be pressing a button to open a file prompt, and another to go through each buyer one-by-one.

Speaking of which, I wonder if making a full automated shop 'bot' (a.k.a hook up HV mooglemail with an external server, allowing people to send 'moogle-forms' to list their items) would be deemed illegal (IMG:[invalid] style_emoticons/default/smile.gif)

Have had that idea in mind for a while, but all these cross-platform interfaces scares me.

quick edit: also that'd require a dedicated server, and alas, I can't get that :/

This post has been edited by ihatenamingthings: Feb 17 2019, 18:29
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 19:41
Post #9
Noni



Hataraku Noni-sama
***********
Group: Catgirl Camarilla
Posts: 13,434
Joined: 19-February 16
Level 500 (Ponyslayer)


QUOTE(ihatenamingthings @ Feb 17 2019, 17:28) *

update: I've written and test (most of) the the script that can be tested without your file format. Should take ~30 minutes playing around with the parser and it'd be ready.

Also: there's no GUI. You'd be pressing a button to open a file prompt, and another to go through each buyer one-by-one.

Speaking of which, I wonder if making a full automated shop 'bot' (a.k.a hook up HV mooglemail with an external server, allowing people to send 'moogle-forms' to list their items) would be deemed illegal (IMG:[invalid] style_emoticons/default/smile.gif)

Have had that idea in mind for a while, but all these cross-platform interfaces scares me.

quick edit: also that'd require a dedicated server, and alas, I can't get that :/


I don't think this is going to get illegal, as far as I can judge it.

By the way, you can easily get the EID from the auction forum page. Or Decondelite could just include the EID in the CSV file that you will use to generate the MoogleMails. Then based on EID you can find, attach, and send. Maybe unlock first. Perhaps you could even re-use some code from HV Util?

User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 19:42
Post #10
KitsuneAbby



Curse God of the Hentai Shrine
**********
Group: Catgirl Camarilla
Posts: 7,572
Joined: 12-July 14
Level 500 (Ponyslayer)


QUOTE(blue penguin @ Feb 17 2019, 15:43) *

I definitely have no time for this ( (IMG:[invalid] style_emoticons/default/smile.gif) ) but here go some extra specification you may wish to include:

1 - Does it need to be browser based? Something that keeps and updates a simple database (e.g. sqlite) on your own machine could be much simpler, easier to write, and faster to operate.

2 - In the above case you may wish to specify the environment(s) in which it needs to run. e.g. you may wish a cmd interface that you can plug into something on a *nix box, instead of, say, a GUI.

Hi dude. (IMG:[invalid] style_emoticons/default/smile.gif)

1) It's not mandatory, but it'd be preferable for it to be a Javascript to be used in Tampermonkey, since it's the standard for almost all HV-related scripts. As for using a local database: definitely no, I want this script to be as accessible as possible
2) Overall it's be used in Chrome for Windows. Though my own Chrome is Chrome Portable, if it changes anything.

First post updated with sample CSV and TXT. The sample CSV is straight produced with this week's auctions data, so you can't make any more real.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
post Feb 17 2019, 19:53
Post #11
ihatenamingthings



Chef Disaster
***
Group: Members
Posts: 230
Joined: 28-March 15
Level 311 (Godslayer)


QUOTE(DJNoni @ Feb 17 2019, 12:41) *

I don't think this is going to get illegal, as far as I can judge it.

By the way, you can easily get the EID from the auction forum page. Or Decondelite could just include the EID in the CSV file that you will use to generate the MoogleMails. Then based on EID you can find, attach, and send. Maybe unlock first. Perhaps you could even re-use some code from HV Util?


EID isn't the problem, it has to be supplied. It's IID, things like bindings, etc. which I do not have, and thus cannot scrape, is.

And also, no to that. I've finished the codes, and reading up on not-so-similar codes is too inefficient.

@decond would you like me to post the finalized script here, or via private message?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post


Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 


Lo-Fi Version Time is now: 30th July 2025 - 00:42