Pulverise results

I've been trying to import http://www.feesher.com/anvil/index.php into a script, but not having much luck. Using Open Office and data from that sight though I was able to create seed data with which to grow on. Most of the data contained in this file is based on what is contained in that sight, but some had to be obtained using real samples.

The layout is from left to right:
Code:
#ItemName 	The item name use $item or string (testing for spelling still needs completed)
Samples taken	The quantity of this item pulverized so far
Twinkly wads	the # of twinkly wads obtained so far
Cold Wads	...
Hot Wads	
Sleazy Wads	
Spooky Wads	
Stench Wads	
Twinkly nuggets	
Cold nuggets	
Hot nuggets	
Sleaze nuggets	
Spooky nuggets	
Stench nuggets	
Twinkly powder	
Cold powder	
Hot powder	
Sleazy powder	
Spooky powder	
Stench Powder

The concept is that if you want to continue to build on this data for your own use then you can continue to add to it, and as it goes you will obtain more accurate numbers from it.

If you pulverize 10 antique shields and get 30 twinkly wads then increase the sample count for antique shield by 10, and Twinkly wads by 30, then save. Always remember to update all fields.

This was mostly done for my own use, and It was very expensive to build the database. You may find it useful, but please be aware that it is seed data and that some items due to cost had to be omitted or had to have a very low sample count. I have not yet tested it's import ability but it should import without a problem.

If you are interested in using this you need to be familiar with ash maps. At some point I will write the code to import the data into ash, but right now my head is thoroughly spinning due to all the work I have done recently to complete it, and convert it from ods to kolmafia map format.




OK here is the script, but there is an issue which still needs resolved, and can be seen here

This is set up for loading into the namespace, or ash
Namespace use the function:
void crush(int quant, item tosmash) pulverises the item, adds the data to the map, and saves the map.

Ash users must remember to save the data (or finalize the map) use the functions:
boolean pulv(int quant, item tosmash) does the pulverising, and adding data to the map.
void finalize_pulv_data() saves the data when done.

Ash users may also choose to use
void crush(int quant, item tosmash)
which does it all in one command, but this will cause the file to be written to the hard drive excessively, and degrade performance. It will assure you that if your script fails the data is saved though.

Edit again: I forgot to mention if you want to use the data collected in a script which determines whether or not to pulverize something, access the map directly. Most who would want to do such a thing will already know how to do so.




the original version had the return results for pulv missing in most cases. Fixed and re-uploaded.
 

Attachments

  • pulv.txt
    29.4 KB · Views: 67
  • PulvTest.ash
    3.8 KB · Views: 59

izchak

Member
I'm a little bit confused as to the reason behind this kind of database. I mean, I seem to recall there is, in fact, a formula for what to expect from pulverizing equipment. I think the guys at feesher.com/anvil were the first to spade out the formula, and they use it for the some of their data. I think there are a few exceptions to the pulverize formula, but those are the few pieces of equipment with irregular stat requirements/power ratio.
With that in mind, it'd be easier to store the few exceptions, and what their pulverize results are, and simply apply the formula to all other equipment.
It looks like an interesting project (I didn't even know you could do that with open office) and all, but if the formula is accurate, applying the formula would be miles easier than storing the smash results of every piece of equipment out there. Cheaper, too!

Unless, of course, the purpose of this project is to spade out the accuracy of the formula, or verify it in some way!
 
[quote author=izchak link=topic=876.msg4274#msg4274 date=1177260461]Unless, of course, the purpose of this project is to spade out the accuracy of the formula, or verify it in some way![/quote]

The guys at Fessher did a hell of a good job spading that out, but something is missing. When an item will give 1 wad or 4 nuggets what is the formula for that? You will note that feesher gives percentages, but the percentages are for type of wad/nugget/powder not percentages of wad/nugget/powder.

I have already proven that the data is not 100% accurate given by Feesher (but it is pretty damned good considering). Here is a prime example. I have smashed 2 incredibly dense meat gems. Yield report:

IDMG 1: 1 Ultimate Wad, 1 Twinkly Wad
IDMG 2: 1 Ultimate Wad, 1 Twinkly Powder


I notified the guys at Feesher, and they are exploring this, but as you know it is ridiculous to expect them to manually spade all that data out. It would require so many millions of meat that a person would have to start donating to the game in large amounts to acquire enough meat to get a high enough sample count to provide accurate data. (I know that there are a few players in the game with the needed meat, but odds are they are not going to let go of that meat for spading purposes otherwise they already would have.

Another instance: an item said to yield "1W/4N" or 1 wad or 4 nuggets (100% twinkly) sample count 100 yielded 56 wads and 170 nuggets. A slight variance of 6 nuggets or 1 wad and 2 nuggets. There are very few instances of this (very very few), but I am pulverizing a lot of stuff and figure I can find some of them and gain more accurate data.

My next planned step is to create a pulverize script and any time I want to pulverize something the script will add to the data.
 

Veracity

Developer
Staff member
[quote author=efilnikufecin link=topic=876.msg4276#msg4276 date=1177265223]I have smashed 2 incredibly dense meat gems.[/quote]

:eek:
 

macman104

Member
[quote author=Veracity link=topic=876.msg4277#msg4277 date=1177274747][quote author=efilnikufecin link=topic=876.msg4276#msg4276 date=1177265223]
I have smashed 2 incredibly dense meat gems.[/quote]


:eek:
[/quote]My thoughts exactly. Efilnikufecin, so currently, this is sorta of an ASH version of an excel spreadsheet, with hopes of eventually using it to automatically record the data, ya?
 
[quote author=macman104 link=topic=876.msg4278#msg4278 date=1177275452]
so currently, this is sorta of an ASH version of an excel spreadsheet, with hopes of eventually using it to automatically record the data, ya?
[/quote]

The full trip from original format to current goes: Feesher's data from their web page pasted into Open Office. Then the majority of the data was calculated from the numbers given to produce the samples and yield format. Where the data was not able to be calculated, the data was either obtained by smashing a number of samples (preferably 100) or by duplicating data from another item which is supposed to yield the same as the item in question (only when cost is an issue). Note: That is why I say this is seed data. Once the collection of data was formed, I used save-as and chose csv format. I also checked the "edit filter settings" option. I set the "field delimiter" to {tab} and cleared the "text delimiter" field. Once saved, I opened the file in notepad and added a "#" to the beginning of line 1 making it a comment, and now the file should be in ash-file_to_map format.

So yeah I guess that is exactly what this is.

Edit: Once I get a good amount of items pulverised, I plan to remove the seed data from the list, and just go with what has been truly collected. That should also increase the accuracy of the data.
 

gemelli

Member
Just as an FYI, feesher.com is not a "they", it's a "him." Specifically, a "me." :) (Though I had lots of help from the GoED and others on collecting and spading out the data posted on those sites to date, the sites themselves are my babies.)

Truth be told, we only smashed two ultra-rares ourselves (a hypnodisk and an IDMG); both gave only one ultimate wad each. It sounds like there is a possibility to get some twinkly item in addition, but I don't have the time available to update the Anvil to account for that level of variability in report submissions. That being said, I think efilnikufecin is on the right track here, and once a good sample size of data has been collected I'd love to recycle your data back to the Anvil, if you're OK with that.
 

macman104

Member
Well efilnikufecin, while I can't say I have the time available to assist in the coding, if you do create a script that will record data when it pulverizes, please do let us (or at least me) know, cause I'll be more than happy to help collect data in such a manner. Very cool project!
 

holatuwol

Developer
In case you wanted some statistics, someone I know smashed an IDMG, and reported the following:

IDMG 3: 1 ultimate wad, 1 twinkly powder
 
Thanks Holatuwol! I'm glad to see it's not just me seeing this result! (and that I'm not the only one crazy enough to smash an IDMG or 2)
Another:

IDMG 4: 1 ultimate wad, 1 twinkly powder

IDMG 5: 1 ultimate wad, 1 twinkly powder
 
Top