Commit Graph

248 Commits

Author SHA1 Message Date
Chris Wilson db6642f290 Update WebUI to show unique items as a different color, and with a drop-shadow 2021-02-02 22:58:22 -05:00
pepperpow 3d9085e98a put that sign back where i found it 2021-02-02 21:48:08 -06:00
pepperpow 36de78dddd Moved inverted goal sign to castle lawn 2021-02-01 20:26:07 -06:00
pepperpow 99468e6d46 Fixed flute working in both worlds instead of just dark 2021-01-31 21:42:44 -06:00
pepperpow 6b737775a2 Added hash/inverted sign message 2021-01-31 20:57:18 -06:00
pepperpow 4aedf3a8ed inverted_flute 2021-01-31 18:26:49 -06:00
CaitSith2 77a0e6f9cf Triforce at pedestal / Trinexx now correctly counts towards final total. 2021-01-31 00:54:31 -08:00
Fabian Dill a646594f08 Merge branch 'main' into breaking_changes
# Conflicts:
#	BaseClasses.py
#	Fill.py
#	MultiClient.py
#	MultiServer.py
#	Utils.py
#	test/dungeons/TestDungeon.py
#	test/inverted/TestInverted.py
#	test/inverted_minor_glitches/TestInvertedMinor.py
#	test/inverted_owg/TestInvertedOWG.py
#	test/minor_glitches/TestMinor.py
#	test/owg/TestVanillaOWG.py
#	test/vanilla/TestVanilla.py
#	worlds/alttp/ItemPool.py
#	worlds/alttp/Main.py
#	worlds/alttp/Rom.py
2021-01-30 23:29:32 +01:00
CaitSith2 ad8427c15a Fix shop tracking. 2021-01-29 22:52:10 -08:00
CaitSith2 90c3fe9df3 Count take-any caves into final total. 2021-01-29 15:42:28 -08:00
pepperpow 82fc2aba20 Added triforce hud options, expanded triforce requirement 2021-01-29 15:42:00 -06:00
CaitSith2 96e12088d7 Shop-sanity shops now marked as counting towards end-game credits.
Retro single arrow now marks itself as purchased from every single shop location on initial purchase.  (Nothing prevents you from buying your 'first' quiver if you already have one, however, its 6 hint points for the price of one in shop sanity.)
2021-01-29 00:25:13 -08:00
CaitSith2 2a5115bc91 Good Bee shop item now fills bottles. 2021-01-23 11:59:32 -08:00
CaitSith2 5b223c3d9f Update base rom. 2021-01-22 15:33:58 -08:00
CaitSith2 ecf05dc29e Base rom update 2021-01-21 23:05:34 -08:00
CaitSith2 60afd0112c Update basepatch 2021-01-21 12:41:14 -08:00
pepperpow 62435c8349 Added overworld bee trap disguises, shop indicators and new shop items 2021-01-20 04:22:26 -06:00
Fabian Dill e36c6e97c1 Merge remote-tracking branch 'pepper/multishop-all' into multishop
# Conflicts:
#	EntranceRandomizer.py
#	Rom.py
#	WebHostLib/static/static/playerSettings.json
#	data/basepatch.bmbp
2021-01-09 16:03:59 +01:00
Fabian Dill 08ca4245c1 Merge branch 'main' into breaking_changes
# Conflicts:
#	Adjuster.py
#	AdjusterMain.py
#	BaseClasses.py
#	MultiClient.py
#	MultiServer.py
#	Mystery.py
#	Utils.py
#	WebHostLib/downloads.py
#	WebHostLib/generate.py
#	dumpSprites.py
#	test/TestBase.py
#	worlds/alttp/EntranceRandomizer.py
#	worlds/alttp/Main.py
#	worlds/alttp/Rom.py
2021-01-03 13:13:59 +01:00
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
pepperpow 360fcbea9e Add new patch, disallow single bee traps from shops 2020-12-02 20:00:08 -06: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
pepperpow 6e01442092 Updated patch 2020-11-24 01:30:00 -06:00
pepperpow 167a253596 Added basepatch 2020-11-23 20:06:44 -06: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
Fabian Dill 4f8c737eec squashed commit of many breaking changes
Dropping Support for Python 3.7; adding support for Python 3.9
2020-10-19 08:26:31 +02: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
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