Commit Graph

6680 Commits

Author SHA1 Message Date
spinerak
e8fd7ca0fe Add Dict import 2024-06-14 22:40:35 +02:00
spinerak
0c020d9609 🐶 2024-06-14 22:12:53 +02:00
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