caitsith2
7a3511e1ef
Update messages that get sent to client with aliases.
2020-04-27 23:49:46 -07:00
Fabian Dill
00da5dfd65
warn older client versions that features are missing
2020-04-28 05:59:03 +02:00
CaitSith2
495254addf
Actually check if client goal is achieved, instead of just existence of an entry. ( #77 )
2020-04-27 15:13:33 +02:00
Fabian Dill
ad66909669
implement server side /alias, also prevent aliases with trailing whitespace
2020-04-27 03:47:12 +02:00
Fabian Dill
00ba3c71c9
fix server not sending aliased names on connect
2020-04-25 23:16:16 +02:00
Fabian Dill
77ca61d069
introduce forfeit_mode and remaining_mode, as well as server state for client has beaten the game
...
more info in host.yaml
2020-04-25 15:11:58 +02:00
caitsith2
49385ede3d
Change win text
2020-04-24 21:42:13 -07:00
caitsith2
b3c7789596
Changes
...
* Game end detection - Detect if the player finished their game, and announce it accordingly.
* Add a client side /slow_mode option. (allows to delay receiving items when a massive amount of them come in, like from a forfeit.)
2020-04-24 20:07:28 -07:00
Fabian Dill
5d33b4b164
introduce persistent data storage, which for now just caches rom -> server pairs
2020-04-24 05:29:02 +02:00
Fabian Dill
7582767401
aliases
2020-04-23 06:16:54 +02:00
Fabian Dill
9842399d8b
fix payment for already found hints
2020-04-22 15:50:14 +02:00
Fabian Dill
fa2cf20b01
!hint now points out all hints relating to the player issuing the command.
...
payed hints also retain that they were already found and don't need to be re-checked as items can't be unfound.
2020-04-22 05:09:46 +02:00
Fabian Dill
afc379f92e
make get_intended_text handle 1 out of 1 pools correctly.
2020-04-21 21:53:20 +02:00
Fabian Dill
9291a0dbca
make sure countdown is started in base10
2020-04-21 21:46:16 +02:00
Fabian Dill
8ea342abe5
Add result flag to commands
2020-04-21 06:26:51 +02:00
Fabian Dill
356ff91cfd
make players command only output to the player requesting if there's 10 or more players
2020-04-20 23:03:52 +02:00
Fabian Dill
905714adfe
improve license command with cache and local path
2020-04-20 21:15:13 +02:00
Fabian Dill
860faf6ef5
unify versions
2020-04-20 14:50:49 +02:00
Fabian Dill
5a57519c32
Add count to missing command
...
Add a server's missing command
Fix password wasn't able to remove a set password
2020-04-20 11:47:50 +02:00
Fabian Dill
ecc2b03aed
keep track of last item checked time for clients
2020-04-20 04:36:56 +02:00
Fabian Dill
a4225d29e5
document Command Processor __call__ tree
2020-04-19 15:32:27 +02:00
Fabian Dill
60707f5196
fix methods with raw_text and optional argument
2020-04-19 15:31:15 +02:00
Fabian Dill
98a8af560a
rename get_connected_players_string
2020-04-19 14:51:48 +02:00
Fabian Dill
3840832f05
disconnect on send failure
2020-04-19 14:05:58 +02:00
Fabian Dill
24fce94766
Don't ignore disconnects when they happen during data transfer, instead properly disconnect the client
2020-04-19 13:16:12 +02:00
Fabian Dill
659bc0e177
no longer eat multiple spaces in commands
2020-04-19 03:24:27 +02:00
Fabian Dill
4f52a8db4c
player names should not contain spaces, but in case they do, this makes single-spaces work
2020-04-19 00:14:43 +02:00
Fabian Dill
8599c76647
Disallow spaces in generated names
2020-04-18 21:46:57 +02:00
Fabian Dill
ea53fff43e
allow kicking of players with spaces in name (permanent solution later)
2020-04-18 21:42:21 +02:00
Fabian Dill
a36d887122
add ability to disable forfeits
2020-04-16 15:40:31 +02:00
Fabian Dill
07da1c510b
re-allow spaces in passwords
2020-04-15 10:31:58 +02:00
Fabian Dill
ec528b916b
mark optional fields in brackets
2020-04-15 10:29:54 +02:00
Fabian Dill
d9e4bd1ab0
bumb network version for new command processing
2020-04-15 08:49:30 +02:00
Fabian Dill
e47b4d37ec
fix item name args handling
2020-04-15 05:01:17 +02:00
Fabian Dill
3b719220f8
move client stuff to new command processor
2020-04-14 20:26:22 +02:00
Fabian Dill
af78914d22
mvoe client stuff to new command processor
2020-04-14 20:22:42 +02:00
Fabian Dill
8b8e279015
server command processor
...
some commands were renamed at this opportunity
2020-04-13 11:26:50 +02:00
CaitSith2
959917bb13
Print host instead of ip address if host is specified. Also embed specified host into bmbp files. ( #57 )
2020-04-02 19:40:38 +02:00
Fabian Dill
8b02103b93
encode port into patch, also reverse defaulting order for server;
...
cmd args overwrite yaml now
2020-04-02 11:21:33 +02:00
CaitSith2
7b620e94f7
Add a way to show found items on client/server ( #52 )
...
* Add a way to show found items on client/server
* item show stuff:
use less ram and cpu, rename a few things
* Add UpdateTags server command.
Co-authored-by: Fabian Dill <fabian.dill@web.de>
2020-03-23 10:47:07 +01:00
Fabian Dill
963895e7d4
move server to new options function
2020-03-22 21:25:22 +01:00
Fabian Dill
1c7fa25031
move argument parsing to its own function
2020-03-22 21:23:39 +01:00
Fabian Dill
2a05b9cd72
move to promp_toolkit
2020-03-13 03:53:20 +01:00
Fabian Dill
2c8d4e550c
restruct countdown command
2020-03-11 23:08:16 +01:00
Fabian Dill
d220cc9cc9
make port forwarding non-default, as it makes more problems than it solves, apparently
2020-03-11 09:16:07 +01:00
Fabian Dill
8f37715541
show which players are missing, which is usually the important bit
2020-03-11 09:15:39 +01:00
Fabian Dill
a29f93045e
performance improvements and small adjustments
2020-03-10 00:38:29 +01:00
Chris Wilson
74c7eca301
Prevent crash when running MultiServer.py if host.yaml is not present ( #46 )
2020-03-08 05:43:15 +01:00
Fabian Dill
611f4d3fb2
no longer try patching if it's the wrong rom.
...
People ignore the warning.
2020-03-08 02:18:55 +01:00
Fabian Dill
25864314d1
my ' was eaten
2020-03-07 17:38:49 +01:00
Fabian Dill
1d84b126f6
use async await to close websocket server
2020-03-07 17:24:51 +01:00
Fabian Dill
b7814ca050
remove deprecated code
2020-03-07 17:08:50 +01:00
Fabian Dill
b8e8e3904a
add automatic port forwarding
2020-03-07 16:22:04 +01:00
Fabian Dill
d44acfdaaf
implement binary patching for multimystery (for now no gui/cli support)
2020-03-06 00:48:23 +01:00
Fabian Dill
9b82f220bb
improve some random things
2020-03-05 02:31:26 +01:00
Fabian Dill
857c318108
bump protocol version number in case I want to disallow old (in this case aka locally cheating) clients.
2020-02-22 19:45:55 +01:00
Fabian Dill
1fb7ed30eb
move cheating to server, with option to turn it off
...
also, don't overwrite multisave if the resulting object is borked
2020-02-22 19:42:44 +01:00
Fabian Dill
5c6815c1f6
some pep8
2020-02-22 18:09:25 +01:00
Fabian Dill
09fba10a53
some QOL
2020-02-22 18:04:35 +01:00
Fabian Dill
0220575c50
Meta-Mystery
2020-02-18 09:14:31 +01:00
Fabian Dill
81e83ae65d
implement fuzzy text matching
2020-02-17 13:57:48 +01:00
Fabian Dill
e2ef84d6c9
add location checks to hint command
2020-02-17 08:16:17 +01:00
Fabian Dill
5c34119293
bugfixes for hints
2020-02-17 05:34:02 +01:00
Fabian Dill
18911a1490
use same version format on client and server
2020-02-16 16:20:00 +01:00
Fabian Dill
a990249762
explain tags a bit to other developers
2020-02-16 15:35:01 +01:00
Fabian Dill
b04db006e0
implement server-client handshake and move hint system to optional colorama support
2020-02-16 15:32:40 +01:00
Fabian Dill
278d510551
reshuffle hint system. You can always re-ask where something was for free. You can't go into debt now.
2020-02-16 04:06:16 +01:00
Fabian Dill
81051aebba
mind your brackets
2020-02-11 03:53:23 +01:00
Fabian Dill
696fe0d0e4
try to squeeze !hint feedback on one line
2020-02-11 00:54:48 +01:00
Fabian Dill
416a6e7e50
add already found awareness to hint command
2020-02-11 00:44:28 +01:00
Fabian Dill
f3324644a3
register all checks, not just network checks for hint points
2020-02-09 12:10:12 +01:00
Fabian Dill
14e24037a5
împlement optional hint system (defaults to off)
2020-02-09 05:28:48 +01:00
Fabian Dill
e9b1ac8193
try to find IP, then loudly fail and continue
2020-02-07 23:45:54 +01:00
Fabian Dill
94759fd1c4
improve forfeitplayer
2020-01-24 00:12:23 +01:00
Fabian Dill
b58558eb75
move updater to own module
2020-01-18 15:45:52 +01:00
Fabian Dill
72c33a2348
Merge branch 'pull/5'
...
# Conflicts:
# MultiClient.py
# MultiServer.py
# Mystery.py
2020-01-18 14:41:11 +01:00
Bonta-kun
7f800de8d0
MultiServer/Client: use logging instead of print and log time on the server
2020-01-18 12:21:57 +01:00
Bonta-kun
b36c981eb4
MultiServer: dont notify the team when a player sends himself an item
2020-01-18 11:26:45 +01:00
Bonta-kun
f988f7671b
--remote_items toggle: items will no longer be stored in the rom, a connection to a multiworld server will be required to receive them
2020-01-18 09:50:12 +01:00
Fabian Dill
bef1c0fe5f
Merge pull request #3 from Bonta0/multiworld_31
...
MultiClient: fix roominfo sort
2020-01-15 03:45:38 +01:00
Bonta-kun
2d26d63cce
MultiClient: fix roominfo sort
2020-01-15 03:00:30 +01:00
Fabian Dill
11823e43dd
Make hints team aware and bring it more in-line with existing commands
2020-01-15 00:57:38 +01:00
Fabian Dill
5d217511fe
merge HintedMultiServer into MultiServer
2020-01-15 00:34:12 +01:00
Bonta-kun
ad278f91d6
Multiworld: clients will now be automatically be identified from the rom name and have their names and teams set by the host, meaning those need to be configured during seed gen
...
Player names will show up in spoiler log and hint tiles instead of player id
MultiClient: autoreconnect to mw server
2020-01-14 10:42:27 +01:00
Bonta-kun
7631bf3041
MultiServer: added a !countdown chat command for convenience
2020-01-10 22:44:07 +01:00
Bonta-kun
a3657c02aa
Multidata/save: moved away from pickle and store a compressed json instead
2020-01-05 20:22:29 +01:00
Bonta-kun
04f5f2fa84
Multi client/server: log fewer exceptions
2019-12-16 18:39:00 +01:00
Bonta-kun
55a30aa91f
multiworld
2019-12-09 19:27:56 +01:00