zeldamods / radar-totk Goto Github PK
View Code? Open in Web Editor NEWTears of the Kingdom Object Database
License: BSD 2-Clause "Simplified" License
Tears of the Kingdom Object Database
License: BSD 2-Clause "Simplified" License
is there a way to query the object map specifically filtering for things with conditional spawn logic?
I'm looking for certain actors like chests or NPCs that can be missed after a certain point
Possibly look for the Logic name or if Logic exists?
I would imagine just an extra column in the table, either bool or text
Add Shrine Subtitles into data to allow search
Allows for searching for Blessings, Proving grounds, ...
Hello, I never ran a node project before, so it was a bit of a time trying to make sense of how to get this running locally, especially on windows, as I wanted to have it running offline where internet was spotty.
While these notes are quite rough, I figured I'd share them as they might offer a head start to somebody trying to run this themselves and perhaps can be added to the readme with some revision.
The only problem is I don't know how to generate the map webp for the game_files for objmap-totk , I am guessing they come from romfs\UI\Map
but they were converted somehow and seem to be divided into numeric folders.
Clone the radar-totk project or download the zip file.
bump better-sqlite3 version in package.json
to one that has the fixes for compiling it, the below works
"better-sqlite3": "^8.4.0",
"@types/better-sqlite3": "^7.6.4",
replace all strings /')
with ')
, removing the forward slash inside built.ts
as filepath in windows uses \
Get node, ensure "Automatically install the necessary tools" on the "Tools for Native Modules" . I used for node v20.3.1-win-x64 extract and ensure it is on the path.
run npm install --include=dev
set NODE_OPTIONS=--openssl-legacy-provider
set Path=%CD%\node_modules\.bin;%PATH%
or prefix commands with npx thecommand
Extract romfs including updates from your game and put it in the radar-totk
directory , radar-totk\romfs
get zstd from https://github.com/facebook/zstd/releases and put in path
zstd -d romfs\Pack\ZsDic.pack.zs -o ZsDic.pack
??? unpack ZsDic.pack ??? (I think I used Switch-Toolbox, but don't remember).
cd romfs\Ecosystem\FieldMapArea
zstd -D ..\..\Pack\zs.zsdic -d Cave.beco.zs -o Cave.beco
zstd -D ..\..\Pack\zs.zsdic -d Ground.beco.zs -o Ground.beco
zstd -D ..\..\Pack\zs.zsdic -d MinusField.beco.zs -o MinusField.beco
zstd -D ..\..\Pack\zs.zsdic -d Sky.beco.zs -o Sky.beco
Banc:
Use the below to do some recursive extraction for static and dynamic bcett files with zstd, the %~dpn is to remove the file extension
The findstr version is to skip files with bcett in name and use the other zstd dic , this is needed for the recylebox
Maybe use https://github.com/TotkMods/Totk.ZStdTool or switch toolbox instead.
Then finally use byml_to_yml to convert the files
pip install byml
or python -m pip install byml
and ensure your python install's python_dir\scripts is on path.
cd romfs\Banc
for /R %f in (*static*.bcett.byml.zs) do zstd -D ..\Pack\bcett.byml.zsdic -d "%f" -o "%~dpnf"
for /R %f in (*dynamic*.bcett.byml.zs) do zstd -D ..\Pack\bcett.byml.zsdic -d "%f" -o "%~dpnf"
for /f "delims=" %f in ('2^>nul dir /b /s byml.zs ^| findstr /vi bcett')do zstd -D ..\Pack\zs.zsdic -d "%f" -o "%~dpnf"
for /R %f in (*.byml) do byml_to_yml %f !!.yml
Seems only Dynamic, Static, and recyclebox is used at this time.
go back to project root
ts-node build.ts -b romfs\Ecosystem\FieldMapArea -e tools -d romfs\Banc
Then finally to launch:
ts-node-dev --respawn --transpile-only ./app/app.ts
or
node --enable-source-maps ./app/app.js
These are partial instructions for objmap-totk
Open a new console and clone objmap-totk
go to objmap-totk root dir and edit .env
and replace with below:
VUE_APP_GAME_FILES=http://localhost:8321/game_files
VUE_APP_RADAR_URL=http://localhost:3008
then run:
set NODE_OPTIONS=--openssl-legacy-provider
set Path=%CD%\node_modules\.bin;%PATH%
npm install --include=dev
npm run build
then finally to launch:
vue-cli-service serve --host 127.0.0.1 --port 8321
Then open your browser to http://localhost:8321 and enjoy a map with no background but most things seem to work otherwise.
TODO: Get backgrounds working
TODO might have to fix references to https://static.zeldamods.org/anna-static.js and https://anna.zeldamods.org/anna.js , though it probably doesn't hurt when using offline.
TODO: Ensure all fonts work.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.