Commit Graph

6678 Commits

Author SHA1 Message Date
Spineraks 6342335cb6 Merge branch 'main' into main 2024-06-14 22:08:57 +02:00
spinerak 5089df125f Only put important options in slotdata 2024-06-14 22:08:34 +02:00
spinerak b5c596a075 Choice options; dont'use .value (will ruff later) 2024-06-14 21:51:15 +02:00
spinerak 18897e84fd Removed the return from ini_locations.
Also added explanations to cat_weights
2024-06-14 21:16:25 +02:00
spinerak 52693124aa Change "weight-lists" to Dict[str, float] 2024-06-14 20:57:22 +02:00
spinerak 3c9c16de7a Removed nonlocal and pass arguments instead 2024-06-14 20:38:04 +02:00
spinerak 4a5a79988f Adjusted max_dist, split dice_simulation function 2024-06-14 20:30:41 +02:00
spinerak 42034af724 Changed the weights to make it faster
135 -> 81 seconds on 100 random yamls
2024-06-14 20:09:10 +02:00
spinerak 5ce9194915 Step inbetween to change the weights 2024-06-14 20:07:49 +02:00
spinerak 5e8a2199cb Revert "Use numpy and pmf function to speed up gen"
This reverts commit 9290191cb3.
2024-06-14 19:15:06 +02:00
black-sliver 1fe3d842c8 CI: Install specific inno version (#3526)
* CI: Install specific inno version

* great mobile dev experience

* maybe this

* really don't enjoy PS

* Anothet attempt

* maybe fix log

* slowly going mad

* fml

* allow downgrade
2024-06-14 08:47:47 +02:00
spinerak 9290191cb3 Use numpy and pmf function to speed up gen
Numpy has a built-in way to sum probability mass functions (pmf).
This shaves of 60% of the generation time :D
2024-06-14 01:42:58 +02:00
spinerak 1789824e7c ruff 🐶 2024-06-14 01:42:10 +02:00
spinerak e11aba1cfc Reverse changes of bad idea :) 2024-06-14 01:29:54 +02:00
Fabian Dill e9ad7cb797 WebHost: fix option doc indent (#3513)
* WebHost: fix option doc indent

* Update macros.html
2024-06-13 17:37:52 -04:00
NewSoupVi 533395d336 WebHost: Fix Named Range displays on Player Options page (#3521)
* Player Options: Fix Named Range displays

* Also add validation to the NamedRange class itself

* Don't break Stardew

* Comment

* Do replace first so title works correctly

* Bring change to Weighted Options as well
2024-06-13 17:29:39 -04:00
spinerak cd6886062c Add Points item category 2024-06-13 23:07:15 +02:00
NewSoupVi 2ae51364d9 WebHost: Fix default values that are 2 or more words in Weighted Options (#3519)
* WeightedOptions: Fix default values that are 2 or more words

* So much simpler
2024-06-13 12:24:56 -04:00
NewSoupVi f6e3113af6 WebHost: Fix "Add" button for custom option values causing a weird redirect (#3518)
* WebHost: Fix "Add" button for Progression Balancing causing a weird redirect

This "add" button is part of a form, which causes it to submit the form, because the default type for a button is "submit".

This PR changes the type of the button to "button", which causes it to not submit the form and just execute its normal effect.

(An alternative would be `event.preventDefault()` but that seems less clean to me, but also I'm not a HTML/JS dev)

* There's also multiple.
2024-06-13 04:39:16 -04:00
JoshuaEagles da34800f43 Fix Incorrect Link Syntax in SA2B Linux Setup (#3524) 2024-06-13 06:53:01 +02:00
spinerak 353a676301 temporary push: 40% faster generation test
Small changes in logic make the generation 40% faster.
I'll have to think about how big the changes are. I suspect they are rather limited.
If this is the way to go, I'll remove the temp file and redo the YachtWeights file, I'll remove the functions there and just put the new weights here.
2024-06-13 00:00:54 +02:00
black-sliver c108845d1f CI: more checks in build and rework compression (#3336)
* CI: build: fail fast if setup.py fails on windows

* CI: build: fail for missing uploads, rework compression

Upload-artifact allows setting compression level now.
The change speeds up both upload and extraction.

* CI: match build gz in release

* CI: build: verify worlds all load

* CI: build: generate a game

* Generate: move worlds loaded exception to allow settings to init from worlds

* CI: build: build setup before running tests
2024-06-12 18:55:48 +02:00
black-sliver acf85eb9ab Speedups: remove dependency on c++ (#2796)
* Speedups: remove dependency on c++

* Speedups: intset: handle malloc failing

* Speedups: intset: fix corner case for int64 on 32bit systems

original idea was to only use bucket->val if int<pointer,
but we always have a union now anyway

* Speedups: add size comment to player_set bucket configuration

* test: more tests for LocationStore.find_item

* test: require _speedups in CI

This kind of tests that the build succeeds.

* test: even more tests for LocationStore.find_item

* Speedups: intset uniform comment style

* Speedups: intset: avoid memory leak when realloc fails

* Speedups: intset: make `gcc -pedantic -std=c99 -fanalyzer` without warnings

Unnamed unions are not in C99, this got fixed.
The overhead of setting count=0 is minimal or optimized-out and silences -fanalizer (see comment).

* Speedups: don't leak memory in case of exception

* Speedups: intset: validate alloc and free

This won't happen in our cython, but it's still a good addition.

* CI: add test framework for C/C++ code

* CI: ctest: fix cwd

* Speedups: intset: ignore msvc warning

* Tests: intset: revert attempt at no-asan

We solve this with env vars in ctest now, and this fails for msvc.

* Test: cpp: docs: fix typo

* Test: cpp: docs: fix another typo

* Test: intset: proper bucket count for Negative test

INTxx_MIN % 1 would not produce a negative number, so the test was flawed.
2024-06-12 18:54:59 +02:00
Fabian Dill 2daccded36 Core: don't lock progression (#3501) 2024-06-12 15:35:51 +02:00
Fabian Dill 3b9b9353b7 WebHost: delete old docs files (#3503) 2024-06-12 15:34:46 +02:00
Silvris b9e454ab4e TS: add indirect connections (#3490) 2024-06-12 03:23:46 +02:00
Natalie Weizenbaum 7299891bdf Allow worlds to add options to prebuilt groups (#3509)
Previously, this crashed because `typing.NamedTuple` fields such as
`group.name` aren't assignable. Now it will only fail for group names
that are actually incorrectly cased, and will fail with a better error
message.
2024-06-12 03:22:14 +02:00
Fabian Dill e755f1a0b5 SC2: don't close all SC2 instances when one quits (#3507) 2024-06-12 02:14:30 +02:00
Louis M 87d24eb38a Aquaria: Add entrance rule and fix start_inventory_from_pool (#3473) 2024-06-11 17:59:46 -05:00
spinerak 12ecd9f26b Revert "Hash categories (which makes it slower :( )"
This reverts commit 34f2c1aed8.
2024-06-11 21:10:59 +02:00
spinerak 34f2c1aed8 Hash categories (which makes it slower :( )
Maybe I messed up or misunderstood...
I'll revert this right away since it is 2x slower, probably because of sorted instead of sort?
2024-06-11 21:10:49 +02:00
spinerak 42e9af239d Removed sorted from category list 2024-06-11 20:41:15 +02:00
spinerak b1ed50eab3 remove ) too many 2024-06-11 20:22:41 +02:00
spinerak 7a9b3e2d8b .append instead of += for single items, percentile function changed
Also an extra comment for location ids.
2024-06-11 19:33:36 +02:00
spinerak 36265257a1 Remove lookup_id_to_name entirely
I for sure don't use it, and as far as I know it's not one of the mandatory functions for AP, these are item_name_to_id and location_name_to_id.
2024-06-11 19:14:05 +02:00
spinerak 0aa2b31ca4 Remove location "0", we don't use that one 2024-06-11 19:11:17 +02:00
spinerak 40ef9aab19 some readability improvements 2024-06-11 19:10:49 +02:00
Justus Lind 54531c6eba Muse Dash: Remove regions for a decent speed gain in generating worlds (#3435)
* Remove Muse Dash Regions.

* Update comments.
2024-06-11 03:11:19 +02:00
Zach Parks ccfffa1147 CODEOWNERS: Replace @ThePhar with @qwint as Hollow Knight maintainer. (#3508) 2024-06-10 18:55:02 -05:00
Fabian Dill 75bef3ddb1 Various: fix absolute imports in worlds (#3489) 2024-06-11 00:42:57 +02:00
JusticePS 484082616f Adventure: Update to use new options api (#3326) 2024-06-11 00:42:01 +02:00
spinerak 570af1ab4c change .random and used enumerate 2024-06-10 19:36:55 +02:00
spinerak 17d9f66ba3 remove .keys() 2024-06-10 18:58:50 +02:00
spinerak e2f056734b Instead of turning it into a tuple, you can just make a tuple literal 2024-06-10 18:57:58 +02:00
spinerak 03ba657f4f return arguments instead of making a list (will 🐶 later) 2024-06-10 18:56:46 +02:00
spinerak 93812bb629 faster collection of categories 2024-06-10 18:55:12 +02:00
spinerak 4839bf49a6 small optimization ListState 2024-06-10 18:52:18 +02:00
spinerak aa0886cd61 iterate keys and values of a dict together 2024-06-10 18:40:11 +02:00
spinerak da26408760 options format 2024-06-10 18:39:12 +02:00
spinerak a8239625df fixed making location closest to goal_score be goal_score 2024-06-10 18:37:26 +02:00