Fabian Dill
c152790011
MultiServer: fix a refactor mistake
2021-10-25 08:24:32 +02:00
Fabian Dill
4e3b8a5178
MultiServer: allow sending another Connect, to update tags, uuid, team etc.
2021-10-25 06:57:06 +02:00
Fabian Dill
6af1f98c88
CommonClient.py UI: add progressbar representing % of checks done.
...
CommonClient.py UI: add Commands button that points out /help and !help
CommonClient.py: track permissions
CommonClient.py: track missing locations and checked locations in lib
2021-10-22 05:25:09 +02:00
Fabian Dill
8e35372aad
Network: add RoomInfo -> Games
...
Allows clients to only download relevant parts of the datapackage, or to keep ID lookups per-game, and for Bounce to tell if there will be a receiving end.
2021-10-22 04:46:00 +02:00
CaitSith2
17833a0bfc
documentation corrections
2021-10-20 12:13:25 -07:00
Fabian Dill
be070b79af
MultiServer: add !checked command, as it may be useful for coop.
2021-10-20 19:58:07 +02:00
Fabian Dill
6b4bdf569c
MultiServer: coop support
...
Just connect multiple clients to the same slot
2021-10-20 05:56:28 +02:00
Fabian Dill
89c05cfcae
FactorioClient: Fix bridge not sending, and limit bridge to run up to once a second.
...
Setup: Fix LttP Adjuster needs to be installed with generator/lttp
MultiServer: fix duplicate !forfeits
2021-10-19 01:47:11 +02:00
Fabian Dill
34eba2655e
MultiServer: add !collect and collect_mode
...
CommonClient: make missing and checked location lookups faster
FactorioClient: implement reverse grant technologies for collect/forfeit/coop
2021-10-18 22:58:29 +02:00
Fabian Dill
66e198cbb6
Merge branch 'rip_compat' into Archipelago_Main
...
# Conflicts:
# MultiServer.py
2021-10-18 08:18:28 +02:00
Fabian Dill
b57306beac
MultiServer: Don't send password required indicator if the password is empty string (user intention is likely no password)
2021-10-15 22:08:24 +02:00
CaitSith2
ca4b0acd92
Add !hint_location command.
...
As it turns out, because factorio location names are 100% identical to factorio item names, it is impossible without a command that explicitly hints locations to hint a specific factorio location, or any other game where location names match item names.
2021-10-09 20:47:12 -07:00
Fabian Dill
62db9ad982
MultiServer: send RoomUpdate -> permissions if permissions change
2021-10-09 15:24:08 +02:00
Fabian Dill
f56bf0db73
MultiServer: remove legacy datapackage keys
...
MultiServer: remove warning about legacy datapackage use
MultiServer: remove legacy permission flags
Options: add "random" option to all Choices
LttP: remove random special handling from HeartColor
2021-09-30 13:22:25 +02:00
Fabian Dill
952a155003
MultiServer: move permissions to an IntEnum
2021-09-26 09:06:12 +02:00
Fabian Dill
8e569a1d1f
AutoWorld: split remote_start_inventory out from remote_items
2021-09-23 03:48:37 +02:00
Fabian Dill
b780257098
MultiServer: fix IgnoreGame missing 'not'
2021-09-17 04:35:38 +02:00
Fabian Dill
b82e3f2a8a
MultiServer: Split InvalidSlot out into InvalidGame and document all error codes.
2021-09-17 04:32:09 +02:00
Fabian Dill
071b0eeb77
MultiServer: add datapackage legacy warning
2021-09-11 22:37:24 +02:00
Fabian Dill
411d4434a3
MultiServer: update to websockets 10 and implement new websockets.broadcast
2021-09-09 18:56:52 +02:00
Fabian Dill
01f1545b3e
AutoWorld: add forced_auto_forfeit and set it for StS
2021-08-31 16:04:54 +02:00
Fabian Dill
f4f043ac87
MultiServer: categorize methods
2021-08-26 16:19:37 +02:00
Fabian Dill
bb15d0636e
Network: implement Bounce and Bounced
2021-08-02 01:35:24 +02:00
Fabian Dill
2cc7d8395b
MultiServer: fix loading old savegames
2021-08-01 22:47:56 +02:00
Fabian Dill
2f2e039356
MultiServer: Limit !hint to a single new result if costs are on.
2021-08-01 17:09:10 +02:00
Fabian Dill
0cd388ca66
MultiServer: seeded !hint selected
2021-08-01 17:02:38 +02:00
Fabian Dill
7ef1fe81f6
MultiServer: move !hint point counting to end of message
2021-08-01 16:48:25 +02:00
Fabian Dill
4dde466364
MultiServer: print which game is being played.
2021-07-29 16:21:11 +02:00
black-sliver
eb0e5b7438
MultiServer: don't extract .zip
2021-07-27 16:01:55 +00:00
Fabian Dill
d2c420a1fd
fix MultiServer file dailog ending targeting
2021-07-25 03:17:22 +02:00
Fabian Dill
fc7d37def4
MultiServer.py: when loading a .zip, create the .archipelago next to it to consistently load the same savegame.
2021-07-23 02:27:45 +02:00
Fabian Dill
f6b3dfe5ba
MultiServer: allow loading a .zip containing a .archipelago directly.
2021-07-23 02:19:41 +02:00
Fabian Dill
2fc4006dfa
RIP: MultiMystery and Mystery, now there's just Generate
...
Other changes:
host.yaml Multi Mystery options were moved and changed
generate_output now has an output_directory argument
MultiWorld.get_game_players(<game>) now replaces <game>_player_ids
Python venv should now work properly
2021-07-21 18:08:15 +02:00
Fabian Dill
bceb8540a1
assorted fixes
2021-07-20 21:19:53 +02:00
Fabian Dill
54b3a57f46
fix GetDataPackage exclusions
2021-07-14 10:35:00 +02:00
Fabian Dill
4f998a6880
Documentation: now in repository. Programming documentation should be in /docs, player/user documentation should be in /WebHostLib/static/assets/tutorial.
...
Network: implement InvalidPacket, remove InvalidArguments and InvalidCmd
Datapackage: implement per-game versions and per-game package retrieval
2021-07-14 10:02:39 +02:00
Fabian Dill
f456dba993
newstyle DataPackage. Both versions in merged format for compatibility for now.
2021-07-12 18:05:46 +02:00
Fabian Dill
50a21fbd74
MultiServer: remove message that could never trigger in current protocol
2021-07-12 15:40:31 +02:00
Fabian Dill
768ae584d3
AutoWorld: add hint_blacklist, automatically generated all_names
...
MultiServer: revamp hint commands with AutoWorld
2021-07-12 15:33:20 +02:00
Fabian Dill
9821e05386
Fix: When sending items via send or getitem, only consider items that belong to that world
...
Fix: Allow cheat-sending items into unconnected slots
2021-07-12 14:35:44 +02:00
Fabian Dill
60972e026b
send packed NetworkItem in PrintJSON
2021-06-30 20:57:00 +02:00
Fabian Dill
4d4af9d74e
WebHost: Guard each Room via file-lock
2021-06-29 03:11:48 +02:00
Fabian Dill
f870bb3fad
MultiServer:
...
implement a hint recheck that triggers on get_save()
Still torn if I want a single hint list per team and filter on demand, or have filtered lists and re_check on demand.
2021-06-25 21:04:37 +02:00
Fabian Dill
f4a2f344a7
format MultiServer.py
2021-06-19 03:03:06 +02:00
Fabian Dill
a08d7bb1b2
Settings: add requires
2021-06-18 22:15:54 +02:00
Fabian Dill
3e1941a561
allow Factorio Client to recognize if it's trying to connect to the wrong multiworld.
2021-05-16 00:21:00 +02:00
Fabian Dill
b2f3fd56f4
bunch of fixes after testing round
2021-05-14 01:25:41 +02:00
Fabian Dill
c4ea879651
"precollect" visible Factorio tech tree as hints, so points are never spent on what was visible.
2021-05-13 02:10:37 +02:00
Fabian Dill
8cdf9d2ddc
faster .apsave loading and saving
2021-05-13 01:58:53 +02:00
Fabian Dill
d5cdff5ec9
filter hints to whom they concern
2021-05-13 01:37:50 +02:00