Commit Graph

75 Commits

Author SHA1 Message Date
CaitSith2 41fd85e8be Add Vanilla tile order 2020-12-22 20:05:19 -08:00
CaitSith2 d090a02d81 Implement tile shuffle 2020-12-22 01:05:48 -08:00
dependabot[bot] b0681627f4 Bump ini from 1.3.5 to 1.3.8 in /data/web
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.8.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.8)

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit eb6e094157ac65cbea3aa1b284d2fc86da1aa9f8)
2020-12-19 19:35:54 +01:00
CaitSith2 5475b00b58 Fix bug where a sworded seed on normal item functionality or greater can still kill freezors with bombos. 2020-11-24 07:54:08 -08:00
Fabian Dill 3a47aadfd6 Remove sprites from repository and setup 2020-11-11 13:53:21 +01:00
CaitSith2 e48838151b Fix 2nd easy item pool silverbow not counting towards the 216 when it is your own. 2020-10-28 20:49:47 -07:00
CaitSith2 7cf4ad35a9 Encrypt most of the remaining items, and all player IDs 2020-10-27 01:43:32 -07:00
CaitSith2 b2a60ac926 Fix "LOCKED" always showing on file select screen. 2020-10-21 02:29:38 -07:00
CaitSith2 651e1a1901 Changes
* Fix chests always being for yourself AND intended recipient for Race Rom seeds.
* Fix MultiMystery not being able to correctly pack Race Rom seeds into a zip file.
* Add tags to multidata for Race rom, Spoiler log, and Playthrough if spoiler log was generated.
2020-10-21 02:02:13 -07:00
CaitSith2 f17682e997 Implement pedestal ganon goal 2020-10-15 15:24:52 -07:00
CaitSith2 5b16fd2552 Allow master sword pedestal to be re-pulled if goal was pedestal. 2020-10-14 23:38:41 -07:00
CaitSith2 b6fed8d3d5 Fix long standing bug with Agahnim Tower compass counter never displaying 01/02. 2020-10-13 02:30:01 -07:00
CaitSith2 4a923c7046 Add bonk to random sprite on event 2020-10-07 16:16:56 -07:00
CaitSith2 d75281c37a Base rom now has default link sprite in the 32 randomspriteonevent slots. 2020-10-05 10:55:56 -07:00
CaitSith2 38ac943a9c Random sprite on hit now part of basepatch. Other events possible too. 2020-10-04 10:57:30 -07:00
CaitSith2 947041c06d Update baserom with latest changes 2020-09-23 11:59:23 -07:00
CaitSith2 c2e950aba5 Fix glitch where bombing yourself at lost woods chest game spawns you at pyramid. 2020-09-17 22:14:04 -07:00
CaitSith2 9ac6c33ab0 Add easy item functionality
Allows swordless medallion use everywhere, whether or not you are actually on swordless.  It also allows for retrieving the tablets with just a hammer/book and the hammer to harm ganon.
2020-09-16 22:00:27 -07:00
Chris Wilson c11fe9cb51 Fix misleading data in WebUI. Server Version is now called ClientVersion 2020-09-13 00:39:52 -04:00
CaitSith2 0bae6b9860 Low stakes and high stakes chest games no longer increments item count. 2020-09-04 06:35:23 -07:00
CaitSith2 01525f6504 Update discord link in credits 2020-09-03 20:21:28 -07:00
CaitSith2 df04cbcac3 Allow only one quiver to be purchased. 2020-08-31 16:43:15 -07:00
Chris Wilson 0236097809 Add alternate font toggle to WebUI 2020-08-31 02:02:54 -04:00
Chris Wilson 3080925950 Update to fix security vulnerability in WebUI 2020-08-15 21:45:05 -04:00
CaitSith2 5c447967ab TerrorPin AI Fix 2020-08-05 08:49:50 -07:00
dependabot[bot] cab75ea7df
Bump elliptic from 6.5.2 to 6.5.3 in /data/web
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3.
- [Release notes](https://github.com/indutny/elliptic/releases)
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-08-01 00:01:54 +00:00
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