-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
47 #400
Merged
+1,067
−674
Merged
47 #400
Changes from 33 commits
Commits
Show all changes
44 commits
Select commit
Hold shift + click to select a range
642955d
Merge branch 'master' of https://github.com/DFHack/df-structures into 47
PatrikLundell bce7e34
further identification
PatrikLundell e5bdfdb
Merge branch 'master' of https://github.com/DFHack/df-structures into 47
PatrikLundell 946fe92
minor army_controller adjustments
PatrikLundell 3f5d0c9
additional minor army_controller research
PatrikLundell d98d680
merge
PatrikLundell 30235b6
corrected botched comment
PatrikLundell f051d86
another schema validation correction
PatrikLundell 337a393
Merge branch 'master' of https://github.com/DFHack/df-structures into 47
PatrikLundell d5f952e
sanity, identification, and research
PatrikLundell cf9aca8
history field identification
PatrikLundell 6e98409
season_type used for cur_season and moved
PatrikLundell da8e9a7
intrigue and event collection field identification
PatrikLundell 884a6ad
fixed misspelled attributes
PatrikLundell d1d81d1
misaligned identified fields, found enum value
PatrikLundell 391b8a8
was still misaligned, but found another enum type in the process
PatrikLundell 4301eca
identified a couple of enum values, general identification
PatrikLundell 6e841a5
field identification
PatrikLundell c55994b
more musical_forms field identification
PatrikLundell d1106db
musical_form/scale field identification
PatrikLundell b699e98
field identification
PatrikLundell 8f223a3
merged conflict
PatrikLundell a3ab7f3
region_weather fields, some enum values
PatrikLundell 861ed52
addressed base-type comments
PatrikLundell b2df97d
dance form field identification
PatrikLundell e0cfb1f
more dance field identification
PatrikLundell d849c9b
identified enum value
PatrikLundell 0d3cb0f
schema limitation work around + fixed syntactic error
PatrikLundell b1f5473
second schema limitation work around attempt
PatrikLundell bdc4978
merge
PatrikLundell c37f1bf
Merge branch 'master' of https://github.com/DFHack/df-structures into 47
PatrikLundell f16932f
identity enums identified and picked growths object data named
PatrikLundell dd109f1
adapted to comments
PatrikLundell 41f763c
dead civ flag identified + minor adjustments
PatrikLundell 2bb7f37
reverted incorrect flag 'identification'
PatrikLundell 56d2d60
named field
PatrikLundell 89452ec
tedious and error prone merge
PatrikLundell b994d2a
fixed one merge error
PatrikLundell fa23ca6
Merge master into PatrikLundell/47 (INCOMPLETE) (#400)
lethosor 37d9df8
Manually apply historical_figure_relationships.intrigues changes to l…
lethosor ef219bf
Merge enums, remove duplicate types
lethosor e9b1108
Merge master into #400 again
lethosor 6169998
Change historical_figure_relationships.hf_visual.rank back to int16_t
lethosor 546c0fa
Remove season_type (unused, duplicates "season")
lethosor File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps this allows for partial harvests of extremely dense growths, so you can pick the rest of it later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possibly, although I've seen only 1, possibly 2, and 1000 here. If your idea is correct we'd briefly see something in between 2 and 1000 for trees, but that would require a bit of luck (or care) with the timing.
I haven't seen anything indicating a gradual picking graphically, but the "graphics" might not show the full picture, and I haven't studied fruit picking for hours...
Edit: I've run a callback script that checks these fields every frame, and it hasn't registered a single case of a density value in the range 3 - 999, which ought to happen while dorfs are vigorously picking fruit (at least the durians and olives had a raw density value of 1000).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's possible that it only happens when gathering items in Adventurer mode - I'd try it myself, but I don't have a script handy for finding the correct object_data entry for my current location.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This snippet gets the object ids for an embark. It obviously would have to be adapted to adventurer mode, where I guess the region_details [0] part remains the same, but there'd have to be some other logic to find the current MLT. I'm rather unfamiliar with adventurer mode, though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In Adventurer mode, region_details[4] is the one that contained >=48 biome values (possibly because it corresponded to the town I started in), but none of the calculated object_id values corresponded to existing world_object_data records.
I tried a more brute-force approach and simply searched through all records to find ones with non-empty picked_growths lists, and it looks like Adventurer mode just doesn't use them at all - no matter how many finger limes I picked from a nearby tree, all of those lists remained empty.
It's possible Toady added the ability to handle partial harvests but just never finished implementing it - perhaps in a later version, dwarves won't harvest the entire tile at once.
Did you only monitor those values while dwarves were harvesting, or did you also check while growths were falling off and landing on the ground as spatters?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Brute force is what I've used mostly, until trying a callback every frame, where the frame rate dropped to 28 even when accessing only the appropriate entries. It's odd, however, that different structures would be used for the same purpose in Adventurer mode and Fortress mode, as I assume the trees actually were picked visually (and not possible to pick indefinitely).
A fruit tree density of 1000 looks like some kind of max value rather than a sensible one, when shrubs tend to have a value of 1, so it might be that partial picking was waiting for the agriculture overhaul.
Have you used tools to look at what code Adventurer mode picking uses? It might be something different that uses different data structures.