Commit Graph

249 Commits

Author SHA1 Message Date
Fabian Dill ebd6a9e3cf Removed all instances of the word "Official" where it does not refer to Nintendo 2020-07-31 19:45:10 +02:00
CaitSith2 4ab1e563a0 Fix sprite glitch while receiving items during Ganon fight. 2020-07-29 22:05:37 -07:00
Chris Wilson e62b406337 Update npm dependencies to pull in security updates 2020-07-18 16:40:04 -04:00
caitsith2 0ba2405bbc Swamp trench 1 no longer drains. That only happens in door rando now. 2020-07-14 22:45:55 -07:00
Fabian Dill 30c0415364 update sprites 2020-07-06 06:26:03 +02:00
CaitSith2 545bb8023c
Add ganon triforce hunt (#117)
* Add ganon triforce hunt

* Add self to license

* Correction of help message for Local Ganon Triforce Hunt.

* if 'triforcehunt in world.goal[player]:
2020-06-26 16:18:53 +02:00
Fabian Dill 8d3961b6fb update sprites and double the width for sprites 2020-06-23 05:58:27 +02:00
caitsith2 780ae4ebcc Fix fake lightworld bug with climbing GT a second time. @compiling 2020-06-20 19:47:07 -07:00
caitsith2 95742ddb98 Skull Woods MSU v32 fix 2020-06-20 18:55:15 -07:00
Fabian Dill 29ee4fe307 rename baserom to basepatch to make it clearer what it is
Also move actual baserom to root folder to make it harder to accidentally share it with others when copying stuff
2020-06-17 08:59:50 +02:00
Chris e11f33b589 Update WebUI to display server, check, and hint info. CURRENT HINT POINTS DO NOT WORK YET 2020-06-14 18:04:03 -04:00
Fabian Dill fdaba7e28c Merge branch 'bsdiff4_baserom'
# Conflicts:
#	Main.py
2020-06-13 22:51:44 +02:00
Chris 53744be44c Remove useless code and rebuild bundle file 2020-06-13 15:24:28 -04:00
caitsith2 de9ae7d111 baserom now derived from bmbp file. 2020-06-09 12:18:48 -07:00
caitsith2 0aa6bc5a94 Updated baserom patch 2020-06-08 11:55:40 -07:00
caitsith2 73d1f56ffb base rom changes
* V32 MSU
* All items from chests/received in dark rooms now visible.
* Regular bunny can read signs
* Players up to Player 255 supported on send/received.
2020-06-06 20:49:53 -07:00
Chris 7d42137782 Fix bug preventing manual snes reconnect. Update WebUI to automatically connect if only one SNES device is detected. 2020-06-06 19:58:10 -04:00
Chris b57dd3c454 Fix WebUI becoming unresponsive if the MultiClient was closed but the WebAUI was left open for too long.
- Implemented maximum number of retry attempts (20)
    - Added Output Logs directory to .gitignore
2020-06-04 21:24:04 -04:00
Fabian Dill 38cbcc662f
WebUI (#100)
* Object-Oriented base changes for web-ui prep

* remove debug raise

* optimize broadcast to serialize once

* Implement WebUI socket, static assets, and classes

- Still need to wrap logging functions and send output to UI
- UI commands are successfully being sent to the server

* GUI operational. Wrap logging functions, implement server address selection on GUI, automatically launch web browser when client websocket is served

* Update MultiServer status when a user disconnects / reconnects

* Implement colored item and hint checks, improve GUI readability

* Fix improper formatting on received items

* Update SNES connection status on disconnect / reconnect. Implement itemFound, prevent accidentally printing JS objects

* Minor text change for itemFound

* Fixed a very wrong comment

* Fixed client commands not working, fixed un-helpful error messages appearing in GUI

* Fix a bug causing a failure to connect to a multiworld server if a previously existing cached address was present and the client was loaded without an address passed in

* Convert WebUI to React /w Redux. WebSocket communications not yet operational.

* WebUI fully converted to React / Redux.

- Websocket communication operational
- Added a button to connect to the multiserver which appears only when a SNES is connected and a server connection is not active

* Restore some features lost in WebUI

- Restore (found) notification on hints if the item has already been obtained
- Restore (x/y) indicator on received items, which indicates the number of items the client is waiting to receive from the client in a queue

* Fix a grammatical UI big causing player names to show only an apostrophe when possessive

* Add support for multiple SNES Devices, and switching between them

* freeze support for client

* make sure flask works when frozen

* UI Improvements

- Hint messages now actually show a found status via ✔ and  emoji
- Active player name is always a different color than other players (orange for now)
- Add a toggle to show only entries relevant to the active player
- Added a WidgetArea
- Added a notes widget

* Received items now marked as relevant

* Include production build for deployment

* Notes now survive a browser close. Minimum width applied to monitor to prevent CSS issues.

* include webUi folder in setup.py

* Bugfixes for Monitor

- Fix a bug causing the monitor window to grow beyond it's intended content limit
- Reduced monitor content limit to 200 items
- Ensured each monitor entry has a unique key

* Prevent eslint from yelling at me about stupid things

* Add button to collapse sidebar, press enter on empty server input to disconnect on purpose

* WebUI is now aware of client disconnect, message log limit increased to 350, fix !missing output

* Update WebUI to v2.2.1

- Added color to WebUI for entrance-span
- Make !missing show total count at bottom of list to match /missing behavior

* Fix a bug causing clients version <= 2.2.0 to crash when anyone asks for a hint

- Also fix a bug in the WebUI causing the entrance location to always show as "somewhere"

* Update WebUI color palette (this cost me $50)

* allow text console input alongside web-ui

* remove Flask
a bit overkill for what we're doing

* remove jinja2

* Update WebUI to work with new hosting mechanism

* with flask gone, we no longer need subprocess shenanigans

* If multiple web ui clients try to run, at least present a working console

* Update MultiClient and WebUI to handle multiple clients simultaneously.

- The port on which the websocket for the WebUI is hosted is not chosen randomly from 5000 - 5999. This port is passed to the browser so it knows which MultiClient to connect to

- Removed failure condition if a web server is already running, as there is no need to run more than one web server on a single system. If an exception is thrown while attempting to launch a web server, a check is made for the port being unavailable. If the port is unavailable, it probably means the user is launching a second MultiClient. A web browser is then opened with a connection to the correct webui_socket_port.

- Add a /web command to the MultiClient to repoen the appropriate browser window and get params in case a user accidentally closes the tab

* Use proper name for WebUI

* move webui into /data with other data files

* make web ui optional
This is mostly for laptop users wanting to preserve some battery, should not be needed outside of that.

* fix direct server start

* re-add connection timer

* fix indentation

Co-authored-by: Chris <chris@legendserver.info>
2020-06-03 21:29:43 +02: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
Bonta-kun d9592e68fb Fix GT torch potentially overwritting playerid of chests in hope room 2020-01-13 04:07:45 +01:00
Bonta-kun 6c9fde8bee Fix unusable infinite bombs with an empty inventory 2019-12-30 06:26:03 +01:00
Bonta-kun fe307b1ac7 bzzz bzzz 2019-12-30 03:03:53 +01:00
Bonta-kun 6ca9cddc9a Rom: revert multiworld overflow replacement settings, baserom patch will skip limit checks for multiworld items 2019-12-27 01:04:34 +01:00
Bonta-kun 60b3c83e1a update sprites 2019-12-10 02:13:42 +01:00
Bonta-kun 55a30aa91f multiworld 2019-12-09 19:27:56 +01:00
AmazingAmpharos 1ddfc040f3
Update base ROM
Oops, forgot to ever do this, erroneously assumed it was done before.
2019-10-24 02:13:02 -05:00
Bonta-kun ea07c3d9c0 Update sprites 2019-07-11 20:39:08 -04:00
Kevin Cathcart 3a6247b8fe Update sprites 2019-04-27 12:00:49 -04:00
AmazingAmpharos 91bee4f1b9
The rest of the helpful hint system
This should now work fairly completely. I've added the IR's junk hint text, updated the base ROM to v30, added a checkbox to the GUI/option to the command line to control the hint system, and fixed a bug in the previous upload that listed Skull Woods final erroneously in two arrays. I also now shuffle the Silver Arrow locations before hinting at the first one (so if multiple Silver Arrows are in a seed, all of them are equally likely to be the one Ganon hints at) and now call out "Castle Tower" in hints as a unique location and not as "Hyrule Castle" (what was I thinking on that?).
2019-01-23 03:04:42 -06:00
Kevin Cathcart d477559b2d Update sprites 2018-09-26 13:19:41 -04:00
Kevin Cathcart 6cce1c789d Update sprites 2018-03-23 18:27:00 -04:00
Kevin Cathcart 9bd9bb4f93 Shop implementation
Also a few retro mode fixes
2018-03-18 21:01:45 -04:00
Kevin Cathcart 20028e5743 base rom update 2018-03-02 00:30:10 -05:00
Kevin Cathcart faeae273ca Update base rom 2018-03-01 21:53:46 -05:00
Kevin Cathcart 83c182fbcb Update base rom 2018-02-24 14:17:10 -05:00
Kevin Cathcart 134d6d37e2 Update base rom 2018-02-11 00:14:23 -05:00
Kevin Cathcart aa3a828282 Update base rom 2018-02-10 18:12:48 -05:00
Kevin Cathcart 8be73a8c86 Update ROM 2018-02-06 21:31:53 -05:00
Kevin Cathcart cd18be71d9 Add new full_cross_worlds shuffle
Untested, seed generates, but might be horrifically broken.
2018-02-06 19:18:14 -05:00
Kevin Cathcart 8672099a3c Add new Full Shuffle
Add stubs for other new modes
2018-02-06 19:18:12 -05:00
Kevin Cathcart b01e083a79 Update sprites to vt28 official sprites 2018-01-07 19:30:17 -05:00
Kevin Cathcart a57a64ecf9 Update base2current 2018-01-07 04:31:48 -05:00
Kevin Cathcart 6007aed5d7 Add a button to return to default link sprite 2018-01-05 00:42:35 -05:00
Kevin Cathcart 9982567227 Update base2current 2018-01-04 23:02:20 -05:00
Kevin Cathcart a89260977e Update official sprites 2018-01-01 13:16:15 -05:00
Kevin Cathcart d31a7d6791 Preliminary implementation of new sprite screen 2017-12-08 10:36:44 -05:00
Kevin Cathcart 0de4a5857c Preliminary msi support
Added a proper icon

Fix output directory for packaged builds

Added a button to open the ouput directory, and a button to open
documentation for packaged builds.
2017-12-02 16:38:35 -05:00
Kevin Cathcart 424fc3e6c6 Create data subfolder in preperation for new features
Move base2current.json to this new subfolder
2017-11-23 12:38:28 -05:00