Skip to content
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

DNA retries per DNA #34

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

thoechsmann
Copy link

uniqueDnaTorrance is currently used as global maximum fail count for generating all DNAs. This makes this number dependent on the edition size. It is much more usable if this number is used as maximum try count for a single DNA.

This change resets failedCount when creating DNA after each successful DNA creation. It also adds a try count to the log message when a DNA was created to get a better sense on how hard it was to find a valid configuration with more complex filter rules.

uniqueDnaTorrance is currently used as global maximum fail count for generating all DNAs. This makes this number dependent on the edition size. It is much more usable if this number is used as maximum try count for a single DNA.

Reset failedCount when creating DNA after each successful DNA creation. Also added try count to log when DNA was created to get a better sense how hard it is to find a valid configuration with more complex filter rules.
@thoechsmann thoechsmann changed the title Update main.js DNA retries per DNA Mar 16, 2022
@thepeanutgalleryandco
Copy link
Owner

uniqueDnaTorrance is currently used as global maximum fail count for generating all DNAs. This makes this number dependent on the edition size. It is much more usable if this number is used as maximum try count for a single DNA.

In usage terms, how would this differ new functionality differ when attempting to generate a 10k collection between the previous version and the new version? How will users be able to benefit from this change?

If I am not mistaken, this was used to stop DNA / edition creations after X number of failures, telling the user to add more elements to create their specific collection size. Will the new code still stop them, if the counter is then constantly being reset? Have you tried to generate a 10k collection while using this versus the previous code, especially testing with enough elements to create 10k and not enough elements for 10k, to see how long they run, and what difference it makes?

@thoechsmann
Copy link
Author

I would ask the other way. Why should this be a global setting?

If I hava a value for this that works for my 100 editions test, it will then also work for 10k. This is not true for the global setting.

@thoechsmann thoechsmann reopened this Mar 16, 2022
@thepeanutgalleryandco
Copy link
Owner

Understood, but can you maybe answer the question of "In usage terms, how would this differ new functionality differ when attempting to generate a 10k collection between the previous version and the new version? How will users be able to benefit from this change?"

Can you put it into an example of layers being generated and how it would have been blocked previously and how it would be working now or that type of thing? This would be moving away from the core Art-Engine code base, which I am not against at all, but just want to make sure it makes sense and what the benefits will be.

@thepeanutgalleryandco
Copy link
Owner

Also, the reason I ask if you tested this with 5k or 10k generations is because that is what most users use the code base for, not just 100. So my question then goes further as to how will this new code base version work differently compared to the previous version with this big number generation? What are users gaining with this.

I hope these questions makes sense.

@thoechsmann
Copy link
Author

I agree that this change does not solve any bigger problem. Its just making the usage a bit cleaner.

What is helpful is the number of tries per created DNA. This shows how unlikely it gets to find one. In our case it can take up to 10k tries. So I set the upper try count to 100k. This will make sure that any number of created editions will work. If it is a global number I would have to change it depending on how many I want to create. But also I could just set it to 1M and be fine. Just an endless loop would be a bit more endless :)

Normally everybody will start with generating only a few editions to test that everything is working. Only after everything looks fine you would create the 10k final editions.

@thepeanutgalleryandco
Copy link
Owner

As this won't be fixing anything for now or adding new functionality, can we close the PR and revisit this at another stage if we do find a need for it?

@cesar4design
Copy link

@thepeanutgalleryandco One more question, I want to make the nfts the same as many times as it takes to reach the size of my desired collection, I don't care if the DNA already exists, how can I make it so that the warning that I need more layers does not appear and the layers are endlessly repeated?

@cesar4design
Copy link

Ah, I mean dependent traits.

@Deathwing Deathwing deleted the TriesPerDNA branch August 2, 2022 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants