brather1ng / repoe Goto Github PK
View Code? Open in Web Editor NEWRepository of Path of Exile data for tool developers
License: Other
Repository of Path of Exile data for tool developers
License: Other
Hi, big fan of your service, thanks for making it!
A feature I would like to have is the costs for each bench craft.
Hi, I am getting the following error when running on the 3.8 content file. I see you successfully have done it though so I wonder why this could be. Any clues?
Traceback (most recent call last):
File "repoe.py", line 2, in <module>
RePoE.main('data/')
File "C:\Users\fredr\dev\pathofcrafting\RePoE\RePoE\__init__.py", line 62, in main
translation_file_cache=tfc, ot_file_cache=otfc)
File "C:\Users\fredr\dev\pathofcrafting\RePoE\RePoE\crafting_bench_options.py", line 8, in write_crafting_bench_options
for row in relational_reader['CraftingBenchOptions.dat']:
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\dat.py", line 976, in __getitem__
return self.get_file(item).reader
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\dat.py", line 1058, in get_file
df = self._create_instance(file_name)
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\shared\cache.py", line 214, in _create_instance
f.read(**self._get_read_args(file_name=file_name, *args, **kwargs))
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\shared\__init__.py", line 192, in read
return self.get_read_buffer(file_path_or_raw, self._read, *args, **kwargs)
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\shared\__init__.py", line 151, in get_read_buffer
return function(*args, buffer=file_path_or_raw, **kwargs)
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\dat.py", line 917, in _read
self.reader.read(buffer.read())
File "c:\users\fredr\dev\pathofcrafting\pypoe\PyPoE\poe\file\dat.py", line 810, in read
'cast_size': self.table_record_length
PyPoE.poe.file.specification.errors.SpecificationError: <ERRORS.RUNTIME_ROWSIZE_MISMATCH: 3002>: "CraftingBenchOptions.dat": Specification row size 150 vs real size 158
Thanks for RePoE! A minor request; could you add the "path-of-exile" topic to your project in GitHub? That will make it visible from this page, which is the top Google hit for poe and github: https://github.com/topics/path-of-exile
Instructions on adding GitHub topics are here. It's very easy, but you have to be the project owner: https://help.github.com/en/articles/classifying-your-repository-with-topics
Any update regarding the new gems?
Flasks used to have implicits which gave them a level requirement, but they all seem to be gone now in the data
Currently i'm working with quest_rewards.json
The data seems to be a little mixed up.
quest_id = "a1q2" // a1q8??
quest_name = "The Caged Brute"
reward = "Book of Regrets"
Im really confused, the quest_id doesn't match the name doesn't match the reward.
"a1q2": {
"act": 1,
"name": "The Caged Brute",
"rewards": {
"Metadata/Items/QuestItems/SkillBooks/Book-a1q8": {
"classes": [
"Duelist",
"Marauder",
"Ranger",
"Scion",
"Shadow",
"Templar",
"Witch"
],
"name": "Book of Regrets",
"type": "QuestItem"
}
}
},
Cheers
So tags in add_tags always have a spawn_weight > 0?
Some modifiers don't have any tags with spawn_weight > 0 but do have add_tags.
Like AttackSpeedCorrupted. They can spawn?
It is not always clear on what item a modifier can spawn.
A tag like "2h_mace_elder" is obvious but a tag like "has_caster_mod" isn't clear for me.
Does the tag "dex_armour" apply only to dex_helmet,dex_boots,dex_gloves,dex_body_armour or also dex_int_gloves?
Getting this error when trying to pip install -e .
:
error: can't create or remove files in install directory
The following error occurred while trying to add or remove files in the
installation directory:
[Errno 13] Permission denied: 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.10_3.10.752.0_x64__qbz5n2kfra8p0\\Lib\\site-packages\\test-easy-install-15864.write-test'
The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:
C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.752.0_x64__qbz5n2kfra8p0\Lib\site-packages\
Perhaps your account does not have write access to this directory? If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account. If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.
For information on other options, you may wish to consult the
documentation at:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html
Please make the appropriate changes for your system and try again.
I could install it from admin account, but then I still wouldn't be able to access it from the account I'm normally using.
Edit: same issue when trying to install as admin, actually.
I'm creating a site that explores mods (specific to Elder/shaper at the moment), I ran across an issue and I'm not sure if I'm clear on how conditions should be approached when there are multiple mods returned.
I know you've mentioned that the first condition that matches should be the one to accept but I'm having some difficulty with 'base_chance_to_freeze_%' . I know which mod it's supposed to be but when match through the translations I get a few extra cases that have blank conditions or I get blank conditions with only 1 result. How do you tell which ones to skip with zero conditions and which not to skip?
If there's only one result I take it even if it has no conditions? (global_minimum_added_cold_damage_vs_chilled_or_frozen_enemies) is an example with one result and no conditions. I hope I'm explaining this right, let me know.
{
"condition" : [ { }, { "min" : NumberInt(1) } ],
"format" : [ "ignore", "ignore" ],
"index_handlers" : [ [ ], [ ] ],
"string" : "Always Freezes Enemies on Hit"
},
{
....
},
{
"condition" : [
{
"max" : NumberInt(99),
"min" : NumberInt(1)
},
{
"max" : NumberInt(0),
"min" : NumberInt(0)
}
],
"format" : [
"#",
"ignore"
],
"index_handlers" : [
[
],
[
]
],
"string" : "{0}% chance to Freeze"
}
],
"ids" : [
"base_chance_to_freeze_%",
"always_freeze"
]
}
And the other
{
"English": [
{
"condition": [
{},
{}
],
"format": [
"#",
"#"
],
"index_handlers": [
[],
[]
],
"string": "Adds {0} to {1} Cold Damage against Chilled or Frozen Enemies"
}
],
"ids": [
"global_minimum_added_cold_damage_vs_chilled_or_frozen_enemies",
"global_maximum_added_cold_damage_vs_chilled_or_frozen_enemies"
]
}
Hi, I have tried to install all dependencies to be able to get the data myself, but I kind of gave up. Is it possible to update the data with the new ultimatum league?
Thanks,
Contributor for Sidekick (https://github.com/domialex/Sidekick)
What are your thoughts on changing the keys in the essence.json dictionary to be their names?
Hey, TradeMacro dev here.
Inspired by your little project here I thought maybe I could get the unique item data from the ggpk instead of scraping the poe wiki. I even thought about asking you if you could also export that data since I don't know any python and don't like it either and would probably write something from scratch with nodejs. I thought is wasn't much work. After taking a quick look at the ggpk file and dat files I have not the slightest idea how to get a complete unique item, even something as basic like this:
{
"name" : "Araku Tiki",
"mods" : [{
"name_orig" : "You gain 100 Evasion Rating when on Low Life",
"name" : "You gain # Evasion Rating when on Low Life",
"values" : [100],
"isVariable" : false
}, {
"name_orig" : "+(30-50) to maximum Life",
"name" : "+# to maximum Life",
"ranges" : [[30, 50]],
"isVariable" : true
}, {
"name_orig" : "+(20-30)% to Fire Resistance",
"name" : "+#% to Fire Resistance",
"ranges" : [[20, 30]],
"isVariable" : true
}, {
"name_orig" : "1% of Life Regenerated per second while on Low Life",
"name" : "#% of Life Regenerated per second while on Low Life",
"values" : [1],
"isVariable" : false
}
]
},
Is it really that complicated or am I missing something?
I can't find them in base_items, so i think they are missing their entries in ITEM_CLASS_WHITELIST:
Since Contracts probably have only a single base item, i am not sure if i simply overlooked them.
Since Craftingtable options are avaiable and harvest now in core, could you add HarvestCraftOptions.dat aswell?
Hi I just want to know when 3.15 gems will be available and what's the future of this repo?
Is there some one that is currently maintaining or you are looking for contributors to update data every league?
All 3 different of Vitalities and Clarities have wrong value per level
See https://poedb.tw/us/Vitality and https://poedb.tw/us/Clarity for real values.
Example for Vitality Level 1 Life Regeneration per second
/data/gems.json
"Vitality": {
...
"per_level": {
"1": {
"required_level": 10,
"reservations": {
"mana_flat": 28
},
"stat_requirements": {
"str": 22
},
"stats": [
{
"value": 600
},
{
"value": 0
},
null
]
},
"2": {
...
"stats": [
{
"value": 725
},
{
"value": 1
},
null
]
},
"3": {
...
"stats": [
{
"value": 977
},
{
"value": 2
},
null
]
},
"4": {
...
"stats": [
{
"value": 1184
},
{
"value": 3
},
null
]
},
... etc
Hi,
Would it be possible to add spawn weight and generation weight on the mods data?
Hello, thank you for this wonderful resource.
I just wanted to inform you that there is a talisman item that does not have its talisman tag :)
"Metadata/Items/Amulets/Talismans/Talisman4": {
"domain": "item",
"drop_level": 1,
"implicits": [],
"inventory_height": 1,
"inventory_width": 1,
"item_class": "Amulet",
"name": "Greatwolf Talisman",
"properties": {},
"release_state": "released",
"requirements": null,
"tags": [
"amulet",
"default"
],
"visual_identity": {
"dds_file": "Art/2DItems/Amulets/T4Talisman.dds",
"id": "GreatwolfTalisman"
}
},
title, why dont show niko sockets and colours?
When I follow your mods documentation to the letter, I can't find the correct translation.
This for the second part of this hybrid: https://pathofexile.fandom.com/wiki/Modifier:BleedDamage3
BleedDamage3 uses id "bleed_on_hit_with_attacks_%" in the translations. The stat has min=30 and max=30.
Only the first of the three conditions needs to be tested. Here are the conditions:
{}: "Attacks cannot cause Bleeding"
{}: "Attacks cause Bleeding"
{"min": 100}:: "Attacks cause Bleeding"
{}:"Attacks have {0}% chance to cause Bleeding"
When going over these conditions, the first one matches.
But it should the last one. What am I missing?
In the 3.9 patch they added four new influence types to base items ("Crusader", "Redeemer", "Hunter", "Warlord").
I can't find their tags among the shaper_tag and elder_tag in item_classes.json. Should they be there or do I have to look somewhere else?
The data for abyss jewels is missing from base_items.json.
probably need to change "Abyss Jewel" to "AbyssJewel" in ITEM_CLASS_WHITELIST.
The AddedChaosDamageCorrupted1 doesn't have ring weight of 1000 anymore. Maybe change the example?
The new mods which can only be obtained trough unveiling are missing like:
(120–139)% increased Physical Damage
(21–25)% chance to Impale Enemies on Hit with Attacks
+2 to Level of Socketed Support Gems
+(5–8)% to Quality of Socketed Support Gems
Is there any reasonably easy way to use this to extract map data from the ggpk?
Hello !
Would it be possible to load map information from PyPoE ?
I played with the AtlasNode
exporter but I don't quite understand the output (bunch of ids).
Currently, I'm using a web scraper that crawl the wiki but since the Atlas have been updated frequently in the past leagues, it is not longer a viable option (always outdated).
source: https://github.com/poe-world/poe-world-resources/blob/master/maps.json
If it's doable, I'd be willing to help writing it !
I was wondering if images of gems can be harvested out of the GGPK.
Hey!
I have noticed that there are duplicates in the data, specifically gems.min.json
seems to have those. I have noticed that base_item id is null for the duplicate.
What I did:
Basically load the gems file and run simple js to check the structure on a single gem:
Object.keys(gems).forEach((key) => {
if (key.includes('AbyssalCry')) {
console.log(gems[key])
}
})
Imagine how surprised I was when I noticed two console logs. Then I made the screenshot to show you in console how it looks like:
Do you know why this is happening?
I can write myself a cleanup script that will throw all the duplicates, but just wonder what is the reason they are there, maybe I'm missing something?
The new mods are missing entries in https://github.com/brather1ng/RePoE/blob/master/RePoE/data/stat_translations.json
Example: {'adds_tags': [], 'domain': 'item', 'generation_type': 'enchantment', 'generation_weights': [], 'grants_effects': [], 'group': 'SkillEnchantment', 'implicit_tags': ['resource', 'mana', 'aura'], 'is_essence_only': False, 'name': 'Enchantment Anger Reservation 1', 'required_level': 66, 'spawn_weights': [{'tag': 'helmet', 'weight': 0}, {'tag': 'default', 'weight': 0}], 'stats': [{'id': 'anger_mana_reservation_efficiency_-2%_per_1', 'max': -10, 'min': -10}], 'type': 'EnchantmentAngerReservationCost'}
stats_translations only has the old entry for anger_mana_reservation
Are the stat_translations in data propertly updated?
Looks like the new stat from Arc is missing: arc_damage_+%_final_for_each_remaining_chain
as far as i can tell base_items is missing:
is that another problem with ITEM_CLASS_WHITELIST ?
or did i overlook them, because they share the same base item?
x
C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk53.in: 54199 => 262144 (0.00 seconds, 1562.24 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk54.in: 53575 => 262144 (0.00 seconds, 1635.33 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk55.in: 53171 => 262144 (0.00 seconds, 1588.75 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk56.in: 55762 => 262144 (0.00 seconds, 646.95 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk57.in: 47654 => 262144 (0.00 seconds, 849.74 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk58.in: 38054 => 262144 (0.00 seconds, 997.50 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk59.in: 47120 => 262144 (0.00 seconds, 892.56 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk60.in: 45725 => 262144 (0.00 seconds, 959.53 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk61.in: 52718 => 262144 (0.00 seconds, 898.06 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk62.in: 51735 => 262144 (0.00 seconds, 812.60 MB/s) C:\Users\Admin\AppData\Local\Temp\tmp11uuwhij\chunk63.in: 17078 => 91779 (0.00 seconds, 799.47 MB/s) Done! Traceback (most recent call last): File "c:\pypoe\PyPoE\poe\file\file_system.py", line 177, in get_file with open(os.path.join(self.root_path, path), 'rb') as f: FileNotFoundError: [Errno 2] No such file or directory: 'C:/Program Files (x86)/Grinding Gear Games/Path of Exile\\Data/Stats.dat'
Just me?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.