mirror of
https://github.com/ibratabian17/OpenParty.git
synced 2026-01-15 14:22:54 -03:00
initial
This commit is contained in:
179
.gitignore
vendored
Normal file
179
.gitignore
vendored
Normal file
@@ -0,0 +1,179 @@
|
||||
# Logs
|
||||
|
||||
logs
|
||||
_.log
|
||||
npm-debug.log_
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
|
||||
report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
|
||||
|
||||
# Runtime data
|
||||
|
||||
pids
|
||||
_.pid
|
||||
_.seed
|
||||
\*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
|
||||
coverage
|
||||
\*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
|
||||
\*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
|
||||
.eslintcache
|
||||
|
||||
# Optional stylelint cache
|
||||
|
||||
.stylelintcache
|
||||
|
||||
# Microbundle cache
|
||||
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
|
||||
\*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variable files
|
||||
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.local
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
|
||||
.cache/
|
||||
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
|
||||
.vuepress/dist
|
||||
|
||||
# vuepress v2.x temp and cache directory
|
||||
|
||||
.temp
|
||||
.cache
|
||||
|
||||
# Docusaurus cache and generated files
|
||||
|
||||
.docusaurus
|
||||
|
||||
# Serverless directories
|
||||
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.\*
|
||||
|
||||
# wrangler project
|
||||
|
||||
.dev.vars
|
||||
.wrangler/
|
||||
*.code-workspace
|
||||
|
||||
# XMLHttprequest cache
|
||||
.node-xmlhttprequest*
|
||||
|
||||
#Run.js cache
|
||||
*/tmp/logs.txt
|
||||
22
.vscode/launch.json
vendored
Normal file
22
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Nodemon Launch Server",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"cwd": "${workspaceRoot}",
|
||||
"runtimeExecutable": "nodemon --ignore 'panel/*'",
|
||||
"runtimeArgs": [
|
||||
" "
|
||||
],
|
||||
"program": "${workspaceRoot}/openparty.js",
|
||||
"restart": true,
|
||||
"console": "integratedTerminal",
|
||||
"internalConsoleOptions": "neverOpen"
|
||||
}
|
||||
]
|
||||
}
|
||||
39
README.md
Normal file
39
README.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# OpenParty
|
||||
|
||||
OpenParty is a replacement server code for the Just Dance Unlimited server.
|
||||
|
||||
## About
|
||||
|
||||
This project is a ibratabian17 effort to provide an alternative server to Just Dance Unlimited. With OpenParty, you can enjoy the JDU experience without relying on official servers. (they killed it omg, shit)
|
||||
|
||||
100% handmade legit, Atleast better than JDParty.
|
||||
|
||||
## Usage
|
||||
|
||||
1. Clone my repsotiry:
|
||||
```bash
|
||||
git clone https://github.com/ibratabian17/openparty.git
|
||||
cd openparty
|
||||
npm i
|
||||
```
|
||||
|
||||
3. ran thi server:
|
||||
```bash
|
||||
node server.js
|
||||
```
|
||||
|
||||
## Struktur Direktori
|
||||
|
||||
- **database/Platforms/openparty-all/songdbs.json**: contain songdb
|
||||
- **database/nohud/chunk.json**: contain no-HUD.
|
||||
- **database/Platforms/jd2017-{Platform}/**: contain skupackages.
|
||||
|
||||
## Credit
|
||||
|
||||
- Wodson - JDCosmos Code
|
||||
- Rama - His Leaked JDU Code
|
||||
- Devvie - JDO Code
|
||||
- Connor - JDWorld Code
|
||||
- Mfadamo - Help me doing the JDU
|
||||
- alexandregreff - JDU code
|
||||
- XFelixBlack - JDU Code
|
||||
218
core/carousel/carousel.js
Normal file
218
core/carousel/carousel.js
Normal file
@@ -0,0 +1,218 @@
|
||||
console.log(`[CAROUSEL] Initializing....`);
|
||||
|
||||
const { CloneObject, readDatabaseJson } = require('../helper');
|
||||
const fs = require('fs');
|
||||
const cClass = require("./classList.json");
|
||||
const songdb = require("../../database/Platforms/openparty-all/songdbs.json");
|
||||
const mostPlayed = require(`${__dirname}/../../database/carousel/mostplayed.json`);
|
||||
var carousel = {}; //avoid list cached
|
||||
|
||||
const WEEKLY_PLAYLIST_PREFIX = 'DFRecommendedFU';
|
||||
|
||||
function updateMostPlayed(maps) {
|
||||
const currentWeek = getWeekNumber();
|
||||
mostPlayed[currentWeek] = mostPlayed[currentWeek] || {};
|
||||
mostPlayed[currentWeek][maps] = (mostPlayed[currentWeek][maps] || 0) + 1;
|
||||
fs.writeFileSync(`${__dirname}/../../database/carousel/mostplayed.json`, JSON.stringify(mostPlayed, null, 2));
|
||||
}
|
||||
|
||||
function addCategories(categories) {
|
||||
carousel.categories.push(Object.assign({}, categories));
|
||||
}
|
||||
|
||||
function generateCategories(name, items, type = "partyMap") {
|
||||
return {
|
||||
__class: "Category",
|
||||
title: name,
|
||||
act: "ui_carousel",
|
||||
isc: "grp_row",
|
||||
items: generatePartymap(items, type).concat(cClass.itemSuffleClass),
|
||||
};
|
||||
}
|
||||
|
||||
function generatePartymap(arrays, type = "partyMap") {
|
||||
return arrays.map(mapName => ({
|
||||
__class: "Item",
|
||||
isc: "grp_cover",
|
||||
act: "ui_component_base",
|
||||
components: [{
|
||||
__class: "JD_CarouselContentComponent_Song",
|
||||
mapName
|
||||
}],
|
||||
actionList: type
|
||||
}));
|
||||
}
|
||||
|
||||
function generateInfomap(arrays, type = "infoMap") {
|
||||
return arrays.map(mapName => ({
|
||||
__class: "Item",
|
||||
isc: "grp_cover",
|
||||
act: "ui_component_base",
|
||||
components: [{
|
||||
__class: "JD_CarouselContentComponent_Song",
|
||||
mapName
|
||||
}],
|
||||
actionList: type,
|
||||
}));
|
||||
}
|
||||
|
||||
function filterSongs(songdbs, filterFunction) {
|
||||
return songdbs.filter(filterFunction).sort((a, b) => {
|
||||
const titleA = (songdb[a].title + songdb[a].mapName).toLowerCase();
|
||||
const titleB = (songdb[b].title + songdb[b].mapName).toLowerCase();
|
||||
return titleA.localeCompare(titleB);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// The following function was taken from here: https://stackoverflow.com/questions/16096872/how-to-sort-2-dimensional-array-by-column-value (answer by jahroy)
|
||||
function compareSecondColumn(a, b) {
|
||||
if (a[1] === b[1]) {
|
||||
return 0;
|
||||
}
|
||||
else {
|
||||
return (a[1] < b[1]) ? -1 : 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function sortByTitle(list, word) {
|
||||
var x = [];
|
||||
var doesntContainWord = [];
|
||||
for (var i = 0; i < list.length; i++) {
|
||||
var titleIndex = songdb[list[i]].title.toLowerCase().indexOf(word);
|
||||
if (titleIndex === -1) {
|
||||
doesntContainWord.push(list[i]);
|
||||
} else {
|
||||
x.push([list[i], titleIndex]);
|
||||
}
|
||||
}
|
||||
doesntContainWord.sort();
|
||||
x.sort(compareSecondColumn);
|
||||
var toReturn = [];
|
||||
for (var j = 0; j < x.length; j++) {
|
||||
toReturn[j] = x[j][0];
|
||||
}
|
||||
return toReturn.concat(doesntContainWord);
|
||||
}
|
||||
|
||||
|
||||
function filterSongsBySearch(songdbs, search) {
|
||||
// Filter songs based on search criteria
|
||||
return sortByTitle(filterSongs(songdbs, item => {
|
||||
const song = songdb[item];
|
||||
return (
|
||||
song.title.toLowerCase().includes(search.toLowerCase()) ||
|
||||
song.artist.toLowerCase().includes(search.toLowerCase()) ||
|
||||
song.mapName.toLowerCase().includes(search.toLowerCase()) ||
|
||||
song.originalJDVersion == search ||
|
||||
song.tags.includes(search)
|
||||
);
|
||||
}), search.toLowerCase());
|
||||
}
|
||||
|
||||
function filterSongsByFirstLetter(songdbs, filter) {
|
||||
return filterSongs(songdbs, song => {
|
||||
const title = songdb[song].title.toLowerCase();
|
||||
const regex = new RegExp(`^[${filter}].*`);
|
||||
return regex.test(title);
|
||||
});
|
||||
}
|
||||
|
||||
function filterSongsByJDVersion(songdbs, version) {
|
||||
return filterSongs(songdbs, song => songdb[song].originalJDVersion === version);
|
||||
}
|
||||
|
||||
function filterSongsByTags(songdbs, Key) {
|
||||
return filterSongs(songdbs, song => {
|
||||
const songData = songdb[song];
|
||||
return songData && songData.tags && songData.tags.indexOf(Key) > -1;
|
||||
});
|
||||
}
|
||||
|
||||
function getGlobalPlayedSong() {
|
||||
try {
|
||||
return Object.entries(mostPlayed[getWeekNumber()])
|
||||
.sort((a, b) => b[1] - a[1])
|
||||
.map(item => item[0]);
|
||||
} catch (err) {
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
function shuffleArray(array) {
|
||||
const shuffledArray = array.slice();
|
||||
for (let i = shuffledArray.length - 1; i > 0; i--) {
|
||||
const j = Math.floor(Math.random() * (i + 1));
|
||||
[shuffledArray[i], shuffledArray[j]] = [shuffledArray[j], shuffledArray[i]];
|
||||
}
|
||||
return shuffledArray.slice(0, 24);
|
||||
}
|
||||
|
||||
function processPlaylists(playlists, type = "partyMap") {
|
||||
playlists.forEach(playlist => {
|
||||
if (!playlist.name.startsWith(WEEKLY_PLAYLIST_PREFIX)) {
|
||||
addCategories(generateCategories(`[icon:PLAYLIST]${playlist.name}`, playlist.songlist, type));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function generateWeeklyRecommendedSong(playlists, type = "partyMap") {
|
||||
playlists.forEach(playlist => {
|
||||
if (playlist.name === `${WEEKLY_PLAYLIST_PREFIX}${getWeekNumber()}`) {
|
||||
addCategories(generateCategories(`[icon:PLAYLIST]Weekly: ${playlist.RecommendedName || ""}`, playlist.songlist, type));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function getWeekNumber() {
|
||||
const now = new Date();
|
||||
const startOfWeek = new Date(now.getFullYear(), 0, 1);
|
||||
const daysSinceStartOfWeek = Math.floor((now - startOfWeek) / (24 * 60 * 60 * 1000));
|
||||
return Math.ceil((daysSinceStartOfWeek + 1) / 7);
|
||||
}
|
||||
|
||||
function addJDVersion(songdbs, type = "partyMap") {
|
||||
addCategories(generateCategories("ABBA: You Can Dance", filterSongsByJDVersion(songdbs, 4884), type));
|
||||
addCategories(generateCategories("Just Dance Asia", filterSongsByJDVersion(songdbs, 4514), type));
|
||||
addCategories(generateCategories("Just Dance Kids", filterSongsByJDVersion(songdbs, 123), type));
|
||||
for (let year = 2024; year >= 2014; year--) {
|
||||
addCategories(generateCategories(`Just Dance ${year}`, filterSongsByJDVersion(songdbs, year), type));
|
||||
}
|
||||
for (let year = 4; year >= 1; year--) {
|
||||
addCategories(generateCategories(`Just Dance ${year}`, filterSongsByJDVersion(songdbs, year), type));
|
||||
}
|
||||
addCategories(generateCategories("Unplayable Songs", filterSongsByJDVersion(songdbs, 404)));
|
||||
}
|
||||
|
||||
exports.generateCarousel = (search, type = "partyMap") => {
|
||||
carousel = {};
|
||||
carousel = CloneObject(cClass.rootClass);
|
||||
carousel.actionLists = cClass.actionListsClass
|
||||
const songdbs = Object.keys(songdb)
|
||||
|
||||
|
||||
// Dynamic Carousel System
|
||||
addCategories(generateCategories("Just Dance Unlimited Mod", filterSongs(songdbs, song => true), type));
|
||||
addCategories(generateCategories("Recommended For You", CloneObject(shuffleArray(songdbs), type)));
|
||||
addCategories(generateCategories("[icon:PLAYLIST]Recently Added!", CloneObject(filterSongsByTags(songdbs, 'NEW')), type));
|
||||
generateWeeklyRecommendedSong(readDatabaseJson("carousel/playlist.json"), type);
|
||||
processPlaylists(readDatabaseJson("carousel/playlist.json"), type);
|
||||
addJDVersion(songdbs, type);
|
||||
addCategories(generateCategories(`Most Played Weekly!`, CloneObject(getGlobalPlayedSong()), type));
|
||||
addCategories(Object.assign({}, cClass.searchCategoryClass));
|
||||
if (search !== "") {
|
||||
addCategories(generateCategories(`[icon:SEARCH_RESULT] Result Of: ${search}`, CloneObject(filterSongsBySearch(songdbs, search)), type));
|
||||
}
|
||||
return carousel
|
||||
}
|
||||
|
||||
exports.generateCoopCarousel = (search) => JSON.parse(JSON.stringify(generateCarousel(search, "partyMapCoop")));
|
||||
|
||||
exports.generateRivalCarousel = (search) => JSON.parse(JSON.stringify(generateCarousel(search, "partyMap")));
|
||||
|
||||
exports.generateSweatCarousel = (search) => JSON.parse(JSON.stringify(generateCarousel(search, "sweatMap")));
|
||||
|
||||
exports.generateChallengeCarousel = (search) => JSON.parse(JSON.stringify(generateCarousel(search, "create-challenge")));
|
||||
|
||||
exports.updateMostPlayed = (maps) => updateMostPlayed(maps);
|
||||
598
core/carousel/classList.json
Normal file
598
core/carousel/classList.json
Normal file
@@ -0,0 +1,598 @@
|
||||
{
|
||||
"itemClass": {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "",
|
||||
"isNewSong":true
|
||||
}
|
||||
],
|
||||
"actionList": ""
|
||||
},
|
||||
"itemSuffleClass": {
|
||||
"__class": "Item",
|
||||
"isc": "grp_shuffle",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Shuffle"
|
||||
}
|
||||
],
|
||||
"endPos": 3,
|
||||
"actionList": "NonStop"
|
||||
},
|
||||
"rootClass": {
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [],
|
||||
"actionLists": {},
|
||||
"songItemLists": {}
|
||||
},
|
||||
"categoriesClass": {
|
||||
"__class": "Category",
|
||||
"title": "",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": []
|
||||
},
|
||||
"searchCategoryClass": {
|
||||
"__class": "Category",
|
||||
"title": "[icon:SEARCH_FILTER] Search",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row_search",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [],
|
||||
"isc": "grp_search",
|
||||
"actionList": "search"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Halloween"
|
||||
],
|
||||
"presetTitle": "Halloween",
|
||||
"trackingTitle": "Halloween"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Princess"
|
||||
],
|
||||
"presetTitle": "Princess",
|
||||
"trackingTitle": "Princess"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Electro"
|
||||
],
|
||||
"presetTitle": "Electro",
|
||||
"trackingTitle": "Electro"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Animals"
|
||||
],
|
||||
"presetTitle": "Animals",
|
||||
"trackingTitle": "Animals"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"TV and Movies"
|
||||
],
|
||||
"presetTitle": "TV and Movies",
|
||||
"trackingTitle": "TV and Movies"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Christmas"
|
||||
],
|
||||
"presetTitle": "Christmas",
|
||||
"trackingTitle": "Christmas"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"80s"
|
||||
],
|
||||
"presetTitle": "80s",
|
||||
"trackingTitle": "80s"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Disco Funk"
|
||||
],
|
||||
"presetTitle": "Disco Funk",
|
||||
"trackingTitle": "Disco Funk"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Kpop"
|
||||
],
|
||||
"presetTitle": "K-pop",
|
||||
"trackingTitle": "K-pop"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Superhero"
|
||||
],
|
||||
"presetTitle": "Superhero",
|
||||
"trackingTitle": "Superhero"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Panda"
|
||||
],
|
||||
"presetTitle": "Panda",
|
||||
"trackingTitle": "Panda"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Solo"
|
||||
],
|
||||
"presetTitle": "Solo",
|
||||
"trackingTitle": "Solo"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Duet"
|
||||
],
|
||||
"presetTitle": "Duet",
|
||||
"trackingTitle": "Duet"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Trio"
|
||||
],
|
||||
"presetTitle": "Trio",
|
||||
"trackingTitle": "Trio"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Quartet"
|
||||
],
|
||||
"presetTitle": "Quartet",
|
||||
"trackingTitle": "Quartet"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 2017"
|
||||
],
|
||||
"presetTitle": "Just Dance 2017",
|
||||
"trackingTitle": "Just Dance 2017"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 2016"
|
||||
],
|
||||
"presetTitle": "Just Dance 2016",
|
||||
"trackingTitle": "Just Dance 2016"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 2015"
|
||||
],
|
||||
"presetTitle": "Just Dance 2015",
|
||||
"trackingTitle": "Just Dance 2015"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 2014"
|
||||
],
|
||||
"presetTitle": "Just Dance 2014",
|
||||
"trackingTitle": "Just Dance 2014"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 4"
|
||||
],
|
||||
"presetTitle": "Just Dance 4",
|
||||
"trackingTitle": "Just Dance 4"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 3"
|
||||
],
|
||||
"presetTitle": "Just Dance 3",
|
||||
"trackingTitle": "Just Dance 3"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 2"
|
||||
],
|
||||
"presetTitle": "Just Dance 2",
|
||||
"trackingTitle": "Just Dance 2"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Just Dance 1"
|
||||
],
|
||||
"presetTitle": "Just Dance 1",
|
||||
"trackingTitle": "Just Dance 1"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
}
|
||||
]
|
||||
},
|
||||
"actionListsClass": {
|
||||
"search": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "SEARCH",
|
||||
"title": "Search",
|
||||
"type": "open-keyboard"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "default",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "SEARCH",
|
||||
"title": "Previous Search",
|
||||
"type": "previous-search"
|
||||
}
|
||||
],
|
||||
"itemType": "search"
|
||||
},
|
||||
"sweatMap": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "CONTEXT_SWEAT",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance",
|
||||
"type": "play-song"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "CONTEXT_SWEAT",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_leaderboard",
|
||||
"title": "Leaderboard",
|
||||
"type": "leaderboard"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "CONTEXT_SWEAT",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_licensing",
|
||||
"title": "Credits",
|
||||
"type": "credits"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"create-challenge": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance",
|
||||
"type": "play-song"
|
||||
}
|
||||
],
|
||||
"itemType": "challengeV2"
|
||||
},
|
||||
"create-playlist": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"title": "Add Song",
|
||||
"type": "add-song"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"searchPreset": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "SEARCH",
|
||||
"title": "Search preset",
|
||||
"type": "search-preset"
|
||||
}
|
||||
],
|
||||
"itemType": "search"
|
||||
},
|
||||
"NonStop": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "SHUFFLE",
|
||||
"title": "Dance!",
|
||||
"type": "start-rowPlaylist"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"infoMap": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_licensing",
|
||||
"title": "Credits",
|
||||
"type": "credits"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"partyMap": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance!",
|
||||
"type": "play-song"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_leaderboard",
|
||||
"title": "Leaderboard",
|
||||
"type": "leaderboard"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_licensing",
|
||||
"title": "Credits",
|
||||
"type": "credits"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"partyMapCoop": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_coop",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance",
|
||||
"type": "play-song"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_coop",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Add to favorites",
|
||||
"type": "set-favorite"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_coop",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_licensing",
|
||||
"title": "Credits",
|
||||
"type": "credits"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
}
|
||||
}
|
||||
}
|
||||
32
core/core.js
Normal file
32
core/core.js
Normal file
@@ -0,0 +1,32 @@
|
||||
var { main } = require('./var')
|
||||
var fs = require("fs"); // require https module
|
||||
|
||||
|
||||
function init(app, express) {
|
||||
const bodyParser = require("body-parser");
|
||||
app.use(express.json());
|
||||
app.use(bodyParser.raw());
|
||||
app.use((err, req, res, next) => {
|
||||
// shareLog('ERROR', `${err}`)
|
||||
res.status(500).send('Internal Server Error');
|
||||
//idk what happened
|
||||
});
|
||||
|
||||
//initialize route module
|
||||
require('./route/rdefault').initroute(app);
|
||||
require('./route/account').initroute(app);
|
||||
require('./route/leaderboard').initroute(app);
|
||||
require('./route/ubiservices').initroute(app);
|
||||
|
||||
//hide error when prod
|
||||
app.get('*', function(req, res){
|
||||
res.status(404).send({
|
||||
'error': 404,
|
||||
'message': 'Path Not Recognized'
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
main, init
|
||||
}
|
||||
36
core/helper.js
Normal file
36
core/helper.js
Normal file
@@ -0,0 +1,36 @@
|
||||
//JDPARTY CLONE OBJECT
|
||||
const fs = require('fs');
|
||||
const axios = require('axios');
|
||||
const downloader = {
|
||||
};
|
||||
function CloneObject(ObjectC) {
|
||||
return JSON.parse(JSON.stringify(ObjectC))
|
||||
}
|
||||
function readDatabaseJson(path) {
|
||||
return JSON.parse(fs.readFileSync(`${__dirname}/../database/${path}`, 'utf8'));
|
||||
}
|
||||
|
||||
downloader.getJson = async (url, options) => {
|
||||
const response = await axios.get(url, options);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
function extractSkuIdInfo(url) {
|
||||
// Split the URL by '/'
|
||||
const parts = url.split('/');
|
||||
// Get the last part of the URL
|
||||
const lastPart = parts[parts.length - 1];
|
||||
// Remove the file extension (.json)
|
||||
const filename = lastPart.split('.')[0];
|
||||
const filenameParts = filename.split('-');
|
||||
let version = filenameParts[0];
|
||||
version = version.slice(2);
|
||||
const platform = filenameParts[1];
|
||||
const type = filenameParts.slice(2).join('-')
|
||||
return { version, platform, type };
|
||||
}
|
||||
|
||||
|
||||
module.exports = {
|
||||
CloneObject, readDatabaseJson, downloader, extractSkuIdInfo
|
||||
}
|
||||
59
core/lib/signUrl.js
Normal file
59
core/lib/signUrl.js
Normal file
@@ -0,0 +1,59 @@
|
||||
const crypto = require('crypto');
|
||||
const secretKey = 'JDPartyLekasAmSuperShai';
|
||||
|
||||
exports.generateSignedURL = (originalURL) => {
|
||||
// Set expiration time (in seconds)
|
||||
const expirationTime = Math.floor(Date.now() / 1000) + 3600; // 1 hour from now
|
||||
|
||||
// Generate the string to sign
|
||||
const stringToSign = `exp=${expirationTime}~acl=/private/songdb/prod/*`;
|
||||
|
||||
// Create HMAC (SHA-256) of the string to sign using the secret key
|
||||
const hmac = crypto.createHmac('sha256', secretKey);
|
||||
hmac.update(stringToSign);
|
||||
const signature = hmac.digest('hex');
|
||||
|
||||
// Append the signature and expiration time to the original URL
|
||||
const signedURL = `${originalURL}?auth=${stringToSign}~hmac=${signature}`;
|
||||
|
||||
return signedURL;
|
||||
}
|
||||
|
||||
exports.verifySignedURL = (signedURL) => {
|
||||
// Extract signature and expiration time from the signed URL
|
||||
const urlParts = signedURL.split('?');
|
||||
if (urlParts.length !== 2) {
|
||||
return false; // Invalid URL format
|
||||
}
|
||||
|
||||
const queryParams = urlParts[1].split('~');
|
||||
const signatureParam = queryParams.find(param => param.startsWith('auth='));
|
||||
const hmacParam = queryParams.find(param => param.startsWith('hmac='));
|
||||
|
||||
if (!signatureParam || !hmacParam) {
|
||||
return false; // Signed URL format is invalid
|
||||
}
|
||||
|
||||
const expire = signatureParam.split('=')[2];
|
||||
const hmac = hmacParam.split('=')[1];
|
||||
|
||||
// Extract expiration time from the signature
|
||||
const expirationTimeStr = expire;
|
||||
const expirationTime = parseInt(expirationTimeStr, 10);
|
||||
|
||||
// Ensure the current time is before the expiration time
|
||||
if (Date.now() / 1000 > expirationTime) {
|
||||
return false; // URL has expired
|
||||
}
|
||||
|
||||
// Recreate the string to sign
|
||||
const stringToSign = `exp=${expirationTimeStr}~acl=/private/songdb/prod/*`;
|
||||
|
||||
// Compute HMAC using the secret key
|
||||
const hmacVerifier = crypto.createHmac('sha256', secretKey);
|
||||
hmacVerifier.update(stringToSign);
|
||||
const computedHmac = hmacVerifier.digest('hex');
|
||||
|
||||
// Compare computed HMAC with extracted HMAC
|
||||
return computedHmac === hmac;
|
||||
}
|
||||
181
core/lib/songdb.js
Normal file
181
core/lib/songdb.js
Normal file
@@ -0,0 +1,181 @@
|
||||
//Songdbs Property
|
||||
const songdbF = {}
|
||||
const main = {
|
||||
songdb: { "2016": {}, "2017": {}, "2018": {}, "2019": {}, "2020": {}, "2021": {}, "2022": {} },
|
||||
localisation: require('../../database/Platforms/openparty-all/localisation.json')
|
||||
}
|
||||
|
||||
songdbF.db = require('../../database/Platforms/openparty-all/songdbs.json')
|
||||
songdbF.missingAssets = { pc: [] }
|
||||
songdbF.assetsPlaceholder = {
|
||||
"banner_bkgImageUrl": "https://cdn.discordapp.com/attachments/1119503808653959218/1119518680733192222/New_Project_82_Copy_0ED1403.png",
|
||||
"coach1ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Coach_1.tga.ckd/5e3b1feb1e38f523cbab509a1590df59.ckd",
|
||||
"phoneCoach1ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/WantUBack_Coach_1_Phone.png/5541105eacbc52648bd1462e564d2680.png",
|
||||
"coach2ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Coach_1.tga.ckd/5e3b1feb1e38f523cbab509a1590df59.ckd",
|
||||
"phoneCoach2ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/WantUBack_Coach_1_Phone.png/5541105eacbc52648bd1462e564d2680.png",
|
||||
"coach3ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Coach_1.tga.ckd/5e3b1feb1e38f523cbab509a1590df59.ckd",
|
||||
"phoneCoach3ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/WantUBack_Coach_1_Phone.png/5541105eacbc52648bd1462e564d2680.png",
|
||||
"coach4ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Coach_1.tga.ckd/5e3b1feb1e38f523cbab509a1590df59.ckd",
|
||||
"phoneCoach4ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/WantUBack_Coach_1_Phone.png/5541105eacbc52648bd1462e564d2680.png",
|
||||
"coverImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Cover_Generic.tga.ckd/f61d769f960444bec196d94cfd731185.ckd",
|
||||
"cover_1024ImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/WantUBack_Cover_1024.png/9e82873097800b27569f197e0ce848cd.png",
|
||||
"cover_smallImageUrl": "https://cdn.discordapp.com/attachments/1119503808653959218/1119518681039384627/New_Project_82_8981698.png",
|
||||
"expandBkgImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Cover_AlbumBkg.tga.ckd/6442844a971a9690bd2bf43f1f635696.ckd",
|
||||
"expandCoachImageUrl": "https://jd-s3.cdn.ubi.com/public/map/WantUBack/x1/WantUBack_Cover_AlbumCoach.tga.ckd/dc01eb7b94e0b10c0f52a0383e51312e.ckd",
|
||||
"phoneCoverImageUrl": "https://cdn.discordapp.com/attachments/1119503808653959218/1119518681039384627/New_Project_82_8981698.png",
|
||||
"videoPreviewVideoURL": "",
|
||||
"map_bkgImageUrl": "https://cdn.discordapp.com/attachments/1119503808653959218/1119518680733192222/New_Project_82_Copy_0ED1403.png"
|
||||
}
|
||||
songdbF.generateSongdb = function (platform = 'pc', version = '2017', style = false) {
|
||||
const newdb = JSON.parse(JSON.stringify({}))
|
||||
if (parseInt(version) > 2020) {
|
||||
Object.keys(songdbF.db).forEach(codename => {
|
||||
var song = JSON.parse(JSON.stringify(songdbF.db[codename]))
|
||||
var assets = JSON.parse(JSON.stringify(songdbF.getAsset(platform, codename, style)))
|
||||
if (assets !== songdbF.assetsPlaceholder) {
|
||||
song.assets = assets
|
||||
}
|
||||
songdbF.multimpd = {
|
||||
"videoEncoding": {
|
||||
"vp8": `<?xml version=\"1.0\"?>\r\n<MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:DASH:schema:MPD:2011\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011\" type=\"static\" mediaPresentationDuration=\"PT30S\" minBufferTime=\"PT1S\" profiles=\"urn:webm:dash:profile:webm-on-demand:2012\">\r\n\t<Period id=\"0\" start=\"PT0S\" duration=\"PT30S\">\r\n\t\t<AdaptationSet id=\"0\" mimeType=\"video/webm\" codecs=\"vp8\" lang=\"eng\" maxWidth=\"720\" maxHeight=\"370\" subsegmentAlignment=\"true\" subsegmentStartsWithSAP=\"1\" bitstreamSwitching=\"true\">\r\n\t\t\t<Representation id=\"0\" bandwidth=\"495833\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp8.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1110\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"1\" bandwidth=\"1478538\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp8.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"622-1112\">\r\n\t\t\t\t\t<Initialization range=\"0-622\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"2\" bandwidth=\"2880956\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp8.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"622-1112\">\r\n\t\t\t\t\t<Initialization range=\"0-622\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"3\" bandwidth=\"3428057\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp8.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"622-1112\">\r\n\t\t\t\t\t<Initialization range=\"0-622\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t</AdaptationSet>\r\n\t</Period>\r\n</MPD>\r\n`,
|
||||
"vp9": `<?xml version=\"1.0\"?>\r\n<MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:DASH:schema:MPD:2011\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011\" type=\"static\" mediaPresentationDuration=\"PT30S\" minBufferTime=\"PT1S\" profiles=\"urn:webm:dash:profile:webm-on-demand:2012\">\r\n\t<Period id=\"0\" start=\"PT0S\" duration=\"PT30S\">\r\n\t\t<AdaptationSet id=\"0\" mimeType=\"video/webm\" codecs=\"vp9\" lang=\"eng\" maxWidth=\"720\" maxHeight=\"370\" subsegmentAlignment=\"true\" subsegmentStartsWithSAP=\"1\" bitstreamSwitching=\"true\">\r\n\t\t\t<Representation id=\"0\" bandwidth=\"648085\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"1\" bandwidth=\"1492590\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"2\" bandwidth=\"2984529\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"3\" bandwidth=\"5942260\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1118\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t</AdaptationSet>\r\n\t</Period>\r\n</MPD>\r\n`
|
||||
}
|
||||
}
|
||||
song.mapPreviewMpd = songdbF.multimpd
|
||||
if (song.customTypeNameId) song.customTypeName = main.localisation[song.customTypeNameId] ? main.localisation[song.customTypeNameId].en || "" : `MISSING:${[song.customTypeNameId]}`
|
||||
//check does previewVideoExist??
|
||||
if (!song.urls || (song.urls && !song.urls[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm`])) {
|
||||
var tempaudioPrev = (song.urls && song.urls[`jmcs://jd-contents/${codename}/${codename}_AudioPreview.ogg`]) || ""
|
||||
song.urls = {
|
||||
[`jmcs://jd-contents/${codename}/${codename}_AudioPreview.ogg`]: tempaudioPrev,
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm`]: ""
|
||||
}
|
||||
}
|
||||
newdb[codename] = song
|
||||
});
|
||||
}
|
||||
if (parseInt(version) < 2020) {
|
||||
Object.keys(songdbF.db).forEach(codename => {
|
||||
var song = JSON.parse(JSON.stringify(songdbF.db[codename]))
|
||||
var assets = {}
|
||||
|
||||
if (platform == "pcdreyn") {
|
||||
assets = JSON.parse(JSON.stringify(songdbF.getAsset(platform, codename, style, function (platformAssets) {
|
||||
platformAssets.expandBkgImageUrl = platformAssets.cover_1024ImageUrl
|
||||
if (platformAssets.song_TitleImageUrl) platformAssets.cover_smallImageUrl = platformAssets.song_TitleImageUrl
|
||||
return platformAssets
|
||||
})))
|
||||
const jDiff = { "1": "Easy", "2": "Medium", "3": "Hard", "4": "Extreme" }
|
||||
const jCoaches = { "1": "Easy", "2": "Medium", "3": "Hard", "4": "Extreme" }
|
||||
song.credits = `${song.difficulty}: ${jDiff[song.difficulty]} ${song.coachCount}: ${jCoaches[song.coachCount]}`
|
||||
} else {
|
||||
assets = JSON.parse(JSON.stringify(songdbF.getAsset(platform, codename, style)))
|
||||
}
|
||||
if (assets !== songdbF.assetsPlaceholder) {
|
||||
song.assets = assets
|
||||
}
|
||||
|
||||
songdbF.singlempd = `<?xml version=\"1.0\"?>\r\n<MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:DASH:schema:MPD:2011\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011\" type=\"static\" mediaPresentationDuration=\"PT30S\" minBufferTime=\"PT1S\" profiles=\"urn:webm:dash:profile:webm-on-demand:2012\">\r\n\t<Period id=\"0\" start=\"PT0S\" duration=\"PT30S\">\r\n\t\t<AdaptationSet id=\"0\" mimeType=\"video/webm\" codecs=\"vp9\" lang=\"eng\" maxWidth=\"720\" maxHeight=\"370\" subsegmentAlignment=\"true\" subsegmentStartsWithSAP=\"1\" bitstreamSwitching=\"true\">\r\n\t\t\t<Representation id=\"0\" bandwidth=\"648085\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"1\" bandwidth=\"1492590\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"2\" bandwidth=\"2984529\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"3\" bandwidth=\"5942260\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1118\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t</AdaptationSet>\r\n\t</Period>\r\n</MPD>\r\n`
|
||||
var vp9Preview = song.mapPreviewMpd && song.mapPreviewMpd.vp9 ? song.mapPreviewMpd.vp9 : false;
|
||||
song.mapPreviewMpd = vp9Preview || songdbF.singlempd
|
||||
if (!Array.isArray(song.skuIds)) {
|
||||
var skuIds = song.skuIds || {}
|
||||
song.skuIds = Object.values(skuIds)
|
||||
}
|
||||
if (!Array.isArray(song.tags)) {
|
||||
var tags = song.tags || {}
|
||||
song.tags = Object.values(tags)
|
||||
}
|
||||
if (!Array.isArray(song.searchTagsLocIds)) {
|
||||
var searchTagsLocIds = song.searchTagsLocIds || {}
|
||||
song.searchTagsLocIds = Object.values(searchTagsLocIds)
|
||||
} else if (song.searchTagsLocIds == undefined) {
|
||||
song.searchTagsLocIds = ["30000315"]
|
||||
}
|
||||
if (!Array.isArray(song.searchTags)) {
|
||||
var searchTags = song.searchTags || {}
|
||||
song.searchTags = Object.values(searchTags)
|
||||
} else if (song.searchTags == undefined) {
|
||||
song.searchTags = []
|
||||
}
|
||||
if (!Array.isArray(song.jdmAttributes)) {
|
||||
var jdmAttributes = song.jdmAttributes || {}
|
||||
song.jdmAttributes = Object.values(jdmAttributes)
|
||||
}
|
||||
if (song.customTypeNameId) song.customTypeName = main.localisation[song.customTypeNameId] ? main.localisation[song.customTypeNameId].en || "" : `MISSING:${[song.customTypeNameId]}`
|
||||
if (!song.urls || (song.urls && !song.urls[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm`])) {
|
||||
var tempaudioPrev = (song.urls && song.urls[`jmcs://jd-contents/${codename}/${codename}_AudioPreview.ogg`]) || ""
|
||||
song.urls = {
|
||||
[`jmcs://jd-contents/${codename}/${codename}_AudioPreview.ogg`]: tempaudioPrev,
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_HIGH.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_LOW.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_MID.vp9.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp8.webm`]: "",
|
||||
[`jmcs://jd-contents/${codename}/${codename}_MapPreviewNoSoundCrop_ULTRA.vp9.webm`]: ""
|
||||
}
|
||||
}
|
||||
newdb[codename] = song
|
||||
});
|
||||
}
|
||||
return newdb
|
||||
}
|
||||
songdbF.getAsset = function (platform, codename, style = false, modifier = function (a) { return a }) {
|
||||
var CurrentPlatform = platform
|
||||
var platformAssets = JSON.parse('{}')
|
||||
if (platform == 'pc') { CurrentPlatform = 'x1' }
|
||||
if (!songdbF.areAllValuesEmpty(songdbF.db[codename].assets[CurrentPlatform]) || songdbF.db[codename].assets[CurrentPlatform] == {}) {
|
||||
platformAssets = JSON.parse(JSON.stringify(songdbF.db[codename].assets[CurrentPlatform]));
|
||||
}
|
||||
else if (!songdbF.areAllValuesEmpty(songdbF.db[codename].assets.common) || songdbF.db[codename].assets[CurrentPlatform] == {}) {
|
||||
platformAssets = JSON.parse(JSON.stringify(songdbF.db[codename].assets.common));
|
||||
}
|
||||
else {
|
||||
platformAssets = songdbF.assetsPlaceholder
|
||||
}
|
||||
// Return the platformAssets
|
||||
// Check if style is true or banner_bkgImageUrl is empty, then set banner_bkgImageUrl to map_bkgImageUrl
|
||||
if (style == true || (!platformAssets.banner_bkgImageUrl || (platformAssets.banner_bkgImageUrl && platformAssets.banner_bkgImageUrl == ""))) {
|
||||
platformAssets.banner_bkgImageUrl = ""
|
||||
platformAssets.banner_bkgImageUrl = platformAssets.map_bkgImageUrl
|
||||
}
|
||||
platformAssets = JSON.parse(JSON.stringify(modifier(JSON.parse(JSON.stringify(platformAssets)))))
|
||||
return JSON.parse(JSON.stringify(platformAssets));
|
||||
}
|
||||
songdbF.generate = function () {
|
||||
Object.keys(main.songdb).forEach((version) => {
|
||||
const a = {}
|
||||
if (version == 2017) a.pcdreyn = JSON.parse(JSON.stringify(songdbF.generateSongdb('pcdreyn', version, true)))
|
||||
a.pcparty = JSON.parse(JSON.stringify(songdbF.generateSongdb('pc', version, true)))
|
||||
a.pc = JSON.parse(JSON.stringify(songdbF.generateSongdb('pc', version, false)))
|
||||
a.nx = JSON.parse(JSON.stringify(songdbF.generateSongdb('nx', version, false)))
|
||||
a.wiiu = JSON.parse(JSON.stringify(songdbF.generateSongdb('wiiu', version, false)))
|
||||
main.songdb[version] = a
|
||||
})
|
||||
}
|
||||
songdbF.areAllValuesEmpty = function (obj) {
|
||||
for (let key in obj) {
|
||||
if (obj.hasOwnProperty(key) && obj[key] !== "") {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
songdbF.generateSonglist = function () {
|
||||
console.log(`[SONGDB] Processing Songdbs`)
|
||||
songdbF.generate()
|
||||
console.log(`[SONGDB] ${Object.keys(main.songdb[2017].pc).length} Maps Loaded`)
|
||||
return main.songdb
|
||||
}
|
||||
|
||||
module.exports = { songdbF }
|
||||
137
core/route/account.js
Normal file
137
core/route/account.js
Normal file
@@ -0,0 +1,137 @@
|
||||
// core/route/account.js
|
||||
//shit implementation, i need to fix it asap
|
||||
const fs = require("fs");
|
||||
const axios = require("axios");
|
||||
|
||||
const hidepass = btoa('SkROZXh0Q2F1dGlvblBsZWFzZURvTm90U3RlYWxVc2VyRGF0YS4xMg==');
|
||||
|
||||
function encrypt(str, secretKey) {
|
||||
const encodedResult = Buffer.from(str).toString('base64');
|
||||
let result = '';
|
||||
for (let i = 0; i < str.length; i++) {
|
||||
const charCode = str.charCodeAt(i) ^ secretKey.charCodeAt(i % secretKey.length);
|
||||
result += String.fromCharCode(charCode);
|
||||
}
|
||||
return encodedResult;
|
||||
}
|
||||
|
||||
function decrypt(str, secretKey) {
|
||||
const decodedStr = Buffer.from(str, 'base64').toString('ascii');
|
||||
let result = '';
|
||||
for (let i = 0; i < decodedStr.length; i++) {
|
||||
const charCode = decodedStr.charCodeAt(i) ^ secretKey.charCodeAt(i % secretKey.length);
|
||||
result += String.fromCharCode(charCode);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
exports.initroute = (app) => {
|
||||
const ubiwsurl = "https://public-ubiservices.ubi.com";
|
||||
const prodwsurl = "https://prod.just-dance.com";
|
||||
|
||||
// Endpoint to get profiles based on profileIds
|
||||
app.get("/profile/v2/profiles", (req, res) => {
|
||||
const ticket = req.header("Authorization"); // Extract Authorization header
|
||||
const profilesid = req.query.profileIds.split(','); // Split profileIds into an array
|
||||
const dataFilePath = 'database/account/profiles/user.json'; // Path to user data file
|
||||
const encryptedData = fs.readFileSync(dataFilePath, 'utf8'); // Read encrypted user data
|
||||
let decryptedData;
|
||||
try {
|
||||
decryptedData = JSON.parse(encryptedData); // Parse decrypted user data
|
||||
} catch (err) {
|
||||
decryptedData = {}; // Set empty object if data cannot be parsed
|
||||
}
|
||||
|
||||
// Map over profileIds to retrieve corresponding user profiles or create default profiles
|
||||
const responseProfiles = profilesid.map(profileId => {
|
||||
const userProfile = decryptedData[profileId]; // Get user profile based on profileId
|
||||
if (userProfile) {
|
||||
return { ...userProfile, ip: req.ip }; // Add IP to userProfile but not in the response
|
||||
} else {
|
||||
const defaultProfile = { ip: req.ip }; // Create a default profile with IP address
|
||||
decryptedData[profileId] = defaultProfile; // Add default profile to decrypted data
|
||||
return {}; // Return an empty object (don't include defaultProfile in response)
|
||||
}
|
||||
});
|
||||
|
||||
const encryptedUserProfiles = JSON.stringify(decryptedData); // Stringify decrypted data
|
||||
fs.writeFileSync(dataFilePath, encryptedUserProfiles); // Write updated data to file
|
||||
res.send(responseProfiles); // Send response containing user profiles
|
||||
});
|
||||
|
||||
// Endpoint to update or create a user profile
|
||||
app.post("/profile/v2/profiles", (req, res) => {
|
||||
const ticket = req.header("Authorization"); // Extract Authorization header
|
||||
const content = req.body; // Extract content from request body
|
||||
const dataFilePath = 'database/account/profiles/user.json'; // Path to user data file
|
||||
const encryptedData = fs.readFileSync(dataFilePath, 'utf8'); // Read encrypted user data
|
||||
let decryptedData;
|
||||
try {
|
||||
decryptedData = JSON.parse(encryptedData); // Parse decrypted user data
|
||||
} catch (err) {
|
||||
decryptedData = {}; // Set empty object if data cannot be parsed
|
||||
}
|
||||
|
||||
// Find a matching profile based on name or IP address (only one profile)
|
||||
// Check whether this user is a cracked game user
|
||||
if (content.name === "ALI123") {
|
||||
return res.status(400).send({
|
||||
error: "Cracked user is not allowed to use profiles"
|
||||
}); // Send 400 status with error message
|
||||
}
|
||||
const matchedProfileId = Object.keys(decryptedData).find(profileId => {
|
||||
const userProfile = decryptedData[profileId]; // Get user profile based on profileId
|
||||
return userProfile.name === content.name || userProfile.ip === req.ip; // Check for name or IP match
|
||||
});
|
||||
|
||||
if (matchedProfileId) {
|
||||
decryptedData[matchedProfileId] = content; // Update existing profile with posted content
|
||||
const encryptedUserProfiles = JSON.stringify(decryptedData); // Stringify decrypted data
|
||||
fs.writeFileSync(dataFilePath, encryptedUserProfiles); // Write updated data to file
|
||||
res.send(encryptedUserProfiles); // Send updated encrypted data as response
|
||||
} else {
|
||||
res.status(404).send("Profile not found."); // Send 404 status if profile not found
|
||||
}
|
||||
});
|
||||
|
||||
app.delete("/profile/v2/favorites/maps/:MapName", async (req, res) => {
|
||||
try {
|
||||
var MapName = req.params.MapName;
|
||||
var ticket = req.header("Authorization");
|
||||
var SkuId = req.header("X-SkuId");
|
||||
var response = await axios.delete(
|
||||
prodwsurl + "/profile/v2/favorites/maps/" + MapName,
|
||||
{
|
||||
headers: {
|
||||
"X-SkuId": SkuId,
|
||||
Authorization: ticket,
|
||||
},
|
||||
}
|
||||
);
|
||||
res.send(response.data);
|
||||
} catch (error) {
|
||||
res.status(500).send(error.message);
|
||||
}
|
||||
});
|
||||
|
||||
app.get("/v3/profiles/sessions", async (req, res) => {
|
||||
try {
|
||||
var ticket = req.header("Authorization");
|
||||
var appid = req.header("Ubi-AppId");
|
||||
var response = await axios.get(ubiwsurl + "/v3/profiles/sessions", {
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Ubi-AppId": appid,
|
||||
Authorization: ticket,
|
||||
},
|
||||
});
|
||||
res.send(response.data);
|
||||
} catch (error) {
|
||||
res.status(500).send(error.message);
|
||||
}
|
||||
});
|
||||
|
||||
app.post("/profile/v2/filter-players", function (request, response) {
|
||||
response.send(["00000000-0000-0000-0000-000000000000"]);
|
||||
});
|
||||
}
|
||||
324
core/route/leaderboard.js
Normal file
324
core/route/leaderboard.js
Normal file
@@ -0,0 +1,324 @@
|
||||
console.log(`[LEADERBOARD] Initializing....`);
|
||||
|
||||
const fs = require("fs");
|
||||
const axios = require("axios");
|
||||
const core = {
|
||||
main: require('../var').main,
|
||||
CloneObject: require('../helper').CloneObject,
|
||||
generateCarousel: require('../carousel/carousel').generateCarousel, generateSweatCarousel: require('../carousel/carousel').generateSweatCarousel, generateCoopCarousel: require('../carousel/carousel').generateCoopCarousel, updateMostPlayed: require('../carousel/carousel').updateMostPlayed
|
||||
}
|
||||
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
|
||||
|
||||
function generateToolNickname() {
|
||||
const prefixes = ["Wordkeeper", "Special", "Krakenbite", "DinosaurFan", "Definehub", "Termtracker", "Lexiconet", "Vocabvault", "Lingolink", "Glossarygenius", "Thesaurustech", "Synonymster", "Definitionary", "Jargonjot", "Idiomizer", "Phraseforge", "Meaningmaker", "Languageledger", "Etymologyengine", "Grammarguard", "Syntaxsense", "Semanticsearch", "Orthographix", "Phraseology", "Vernacularvault", "Dictionet", "Slangscroll", "Lingualist", "Grammargrid", "Lingoledge", "Termtoolbox", "Wordware", "Lexigizmo", "Synosearch", "Thesaurustech", "Phrasefinder", "Vocabvortex", "Meaningmatrix", "Languageledger", "Etymologist", "Grammargate", "Syntaxsphere", "Semanticsearch", "Orthographix", "Phraseplay", "Vernacularvault", "Dictionator", "Slangstack", "Lingolink", "Grammarguide", "Lingopedia", "Termtracker", "Wordwizard", "Lexilist", "Synomate", "Thesaurustool", "Definitizer", "Jargonjunction", "Idiomgenius", "Phrasemaker", "Meaningmate", "Duolingo", "Languagelink", "Etymoengine", "Grammarguru", "Syntaxsage", "Semanticsuite", "Orthography", "Phrasefinder", "Vocabverse", "Lexipedia", "Synoscribe", "Thesaurusware", "Definitionary", "Jargonscribe", "Idiomster", "Phrasetech", "Meaningmax", "Flop", "Slayguy", "Languagelex", "Etymoedge", "Grammargenie", "Syntaxsync", "Semanticsearch", "Orthography", "Phraseforge", "Vernacularex", "Dictionmaster", "Slangster", "Lingoware", "Grammargraph", "Lingomate", "Termmate", "Wordwork", "Lexixpert", "Synostar", "Thesaurusmax", "OculusVision", "FlowerPower", "RustySilver", "Underfire", "Shakeawake", "Truthhand", "Kittywake", "Definize", "Jargonize", "Idiomify", "Phrasemaster", "Meaningmark", "Lingualine", "Etymogenius", "Grammarguard", "Syntaxsmart", "Semanticsearch", "Orthography", "Phrasedex", "Vocabmax", "Lexilock", "Synomind", "Thesaurusmart", "Definify", "Jargonmatrix", "Idiomnet", "Phraseplay", "Meaningmate", "Lingolink", "Etymoexpert", "Grammargetter", "Syntaxsage", "Semanticsearch", "Orthography", "Phrasepad", "Vernacularvibe", "Dictiondom", "Slangster", "Lingolytics", "Grammargenie", "Lingotutor", "Termtracker", "Wordwarp", "Lexisync", "Synomind", "Thesaurusmate", "Definizer", "Jargonify", "Idiomster", "Phraselab", "Meaningmark", "Languageleaf", "Etymoedge", "Grammargrid", "Syntaxsync", "Semanticsuite", "Orthographix", "Phraseforge", "Vernacularvibe", "Dictiondom", "Slangster", "Lingolytics", "Grammargenie", "Lingotutor", "Termtracker", "Wordwarp", "Lexisync", "Synomind", "Thesaurusmate", "Definizer", "Jargonify", "Idiomster", "Phraselab", "Meaningmark", "Languageleaf", "Etymoedge", "Grammargrid", "Syntaxsync", "Semanticsuite", "Orthographix"];
|
||||
const suffixes = ["", "K", "Eja", "Guru", "Master", "Expert", "Ninja", "Pro", "Genius", "Champion", "Mega", "Super", "Ultra", "Ok", "Boomer"];
|
||||
const numbers = Math.floor(Math.random() * 10000); // Generate a random 4-digit number
|
||||
|
||||
const randomPrefix = prefixes[Math.floor(Math.random() * prefixes.length)];
|
||||
const randomSuffix = suffixes[Math.floor(Math.random() * suffixes.length)];
|
||||
|
||||
var name = "";
|
||||
if (Math.floor(Math.random() * 2) == 1) {
|
||||
return randomPrefix + numbers;
|
||||
} else {
|
||||
return randomSuffix + numbers;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const initroute = (app) => {
|
||||
app.post("/leaderboard/v1/maps/:mapName/friends", async (req, res) => {
|
||||
const { mapName } = req.params;
|
||||
|
||||
let leaderboardData = {
|
||||
"__class": "LeaderboardList",
|
||||
"entries": []
|
||||
};
|
||||
|
||||
try {
|
||||
leaderboardData.entries.push({
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": 13333,
|
||||
"name": ">:(",
|
||||
"avatar": 1,
|
||||
"country": 0,
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
});
|
||||
res.json(leaderboardData);
|
||||
} catch (error) {
|
||||
console.error("Error:", error.message);
|
||||
res.status(500).send("Internal Server Error");
|
||||
}
|
||||
});
|
||||
|
||||
app.get("/leaderboard/v1/maps/:mapName/countries/:country", async (req, res) => {
|
||||
const { mapName } = req.params;
|
||||
|
||||
let leaderboardData = {
|
||||
"__class": "LeaderboardList",
|
||||
"entries": []
|
||||
};
|
||||
|
||||
try {
|
||||
leaderboardData.entries.push(
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
});
|
||||
res.json(leaderboardData);
|
||||
} catch (error) {
|
||||
console.error("Error:", error.message);
|
||||
res.status(500).send("Internal Server Error");
|
||||
}
|
||||
});
|
||||
|
||||
app.get("/leaderboard/v1/maps/:mapName/world", async (req, res) => {
|
||||
const { mapName } = req.params;
|
||||
|
||||
let leaderboardData = {
|
||||
"__class": "LeaderboardList",
|
||||
"entries": []
|
||||
};
|
||||
|
||||
try {
|
||||
leaderboardData.entries.push(
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
},
|
||||
{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": Math.floor(Math.random() * 1333) + 12000,
|
||||
"name": generateToolNickname(),
|
||||
"avatar": Math.floor(Math.random() * 100),
|
||||
"country": Math.floor(Math.random() * 20),
|
||||
"platformId": "e3",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0,
|
||||
"mapName": mapName
|
||||
});
|
||||
res.json(leaderboardData);
|
||||
} catch (error) {
|
||||
console.error("Error:", error.message);
|
||||
res.status(500).send("Internal Server Error");
|
||||
}
|
||||
});
|
||||
|
||||
app.post("/profile/v2/map-ended", (req, res) => {
|
||||
var codename = req.body;
|
||||
for (let i = 0; i < codename.length; i++) {
|
||||
var song = codename[i];
|
||||
core.updateMostPlayed(song)
|
||||
if (fs.existsSync("./../../database/leaderboard/dotw/" + song.mapName + ".json")) {
|
||||
const readFile = fs.readFileSync(
|
||||
"./../../database/leaderboard/dotw/" + song.mapName + ".json"
|
||||
);
|
||||
var JSONParFile = JSON.parse(readFile);
|
||||
if (JSONParFile.score > song.score) {
|
||||
res.send(`1`);
|
||||
}
|
||||
} else {
|
||||
var ticket = req.header("Authorization");
|
||||
var xhr33 = new XMLHttpRequest();
|
||||
var sku = req.header('X-SkuId');
|
||||
var gameVer = sku.substring(0, 6);
|
||||
var prodwsurl = "https://prod.just-dance.com/"
|
||||
xhr33.open(req.method, prodwsurl + req.url, true);
|
||||
xhr33.setRequestHeader("X-SkuId", sku);
|
||||
xhr33.setRequestHeader("Authorization", ticket);
|
||||
xhr33.setRequestHeader("Content-Type", "application/json");
|
||||
xhr33.send(JSON.stringify(req.body), null, 2);
|
||||
var getprofil1 = xhr33.responseText.toString();
|
||||
for (let i = 0; i < getprofil1.length; i++) {
|
||||
var profiljson = getprofil1[i];
|
||||
}
|
||||
|
||||
console.log(profiljson)
|
||||
|
||||
// Creates the local DOTW file
|
||||
var profiljson1 = JSON.parse(profiljson);
|
||||
console.log(profiljson1)
|
||||
var jsontodancerweek = {
|
||||
__class: "DancerOfTheWeek",
|
||||
score: song.score,
|
||||
profileId: profiljson1.profileId,
|
||||
gameVersion: gameVer,
|
||||
rank: profiljson1.rank,
|
||||
name: profiljson1.name,
|
||||
avatar: profiljson1.avatar,
|
||||
country: profiljson1.country,
|
||||
platformId: profiljson1.platformId,
|
||||
//"platformId": "2535467426396224",
|
||||
alias: profiljson1.alias,
|
||||
aliasGender: profiljson1.aliasGender,
|
||||
jdPoints: profiljson1.jdPoints,
|
||||
portraitBorder: profiljson1.portraitBorder,
|
||||
};
|
||||
fs.writeFile("./../../database/leaderboard/dotw/" + song.mapName + ".json", jsontodancerweek, function (err) {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
} else {
|
||||
console.log("DOTW file for" + song.mapName + "created!");
|
||||
}
|
||||
}
|
||||
);
|
||||
res.send(profiljson);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
app.get("/leaderboard/v1/maps/:map/dancer-of-the-week", (req, res) => {
|
||||
const checkFile = fs.existsSync("./../../database/leaderboard/dotw/" + req.params.map + ".json");
|
||||
if (checkFile) {
|
||||
const readFile = fs.readFile("./../../database/leaderboard/dotw/" + req.params.map + ".json");
|
||||
res.send(readFile);
|
||||
} else {
|
||||
res.setHeader('Content-Type', 'application/json; charset=utf-8');
|
||||
res.setHeader('Access-Control-Allow-Origin', '*');
|
||||
res.send({
|
||||
"__class": "DancerOfTheWeek",
|
||||
"profileId": "00000000-0000-0000-0000-000000000000",
|
||||
"score": 69,
|
||||
"gameVersion": "jd2019",
|
||||
"rank": 1,
|
||||
"name": "NO DOTW",
|
||||
"avatar": 1,
|
||||
"country": 0,
|
||||
"platformId": "3935074714266132752",
|
||||
"alias": 0,
|
||||
"aliasGender": 0,
|
||||
"jdPoints": 0,
|
||||
"portraitBorder": 0
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = { initroute };
|
||||
321
core/route/rdefault.js
Normal file
321
core/route/rdefault.js
Normal file
@@ -0,0 +1,321 @@
|
||||
//Game
|
||||
console.log(`[DEFROUTE] Initializing....`)
|
||||
var requestCountry = require("request-country");
|
||||
var md5 = require('md5');
|
||||
const core = {
|
||||
main: require('../var').main,
|
||||
CloneObject: require('../helper').CloneObject,
|
||||
generateCarousel: require('../carousel/carousel').generateCarousel, generateSweatCarousel: require('../carousel/carousel').generateSweatCarousel, generateCoopCarousel: require('../carousel/carousel').generateCoopCarousel, updateMostPlayed: require('../carousel/carousel').updateMostPlayed,
|
||||
signer: require('../lib/signUrl')
|
||||
}
|
||||
const path = require('path');
|
||||
const signer = require('../lib/signUrl')
|
||||
const deployTime = Date.now()
|
||||
|
||||
function checkAuth(req, res) {
|
||||
if (!(req.headers["x-skuid"].startsWith("jd") || req.headers["x-skuid"].startsWith("JD")) || !req.headers["authorization"].startsWith("Ubi")) {
|
||||
const ip = req.headers['x-forwarded-for'] || req.socket.remoteAddress;
|
||||
res.status(400).send({
|
||||
'error': 400,
|
||||
'message': 'Bad request! Oops you didn\'t specify what file should we give you, try again'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
function returnSongdb(input, res) {
|
||||
const songdb = core.main.songdb;
|
||||
switch (true) {
|
||||
case input.startsWith("jd2017-pc"):
|
||||
res.send(songdb['2017'].pc);
|
||||
break;
|
||||
case input.startsWith("jd2017-durango"):
|
||||
res.send(songdb['2017'].pc);
|
||||
break;
|
||||
case input.startsWith("jd2017-orbis"):
|
||||
res.send(songdb['2017'].pc);
|
||||
break;
|
||||
case input.startsWith("jd2017-nx"):
|
||||
res.send(songdb['2017'].nx);
|
||||
break;
|
||||
case input.startsWith("openparty-pc"):
|
||||
res.send(songdb['2017'].pcparty);
|
||||
break;
|
||||
case input.startsWith("jd2023pc-next"):
|
||||
res.send(songdb['2017'].pcdreyn);
|
||||
break;
|
||||
case input.startsWith("jd2024pc-next"):
|
||||
res.send(songdb['2017'].pcdreyn);
|
||||
break;
|
||||
case input.startsWith("jd2018-nx"):
|
||||
res.send(songdb['2018'].nx);
|
||||
break;
|
||||
case input.startsWith("jd2019-nx"):
|
||||
res.send(songdb['2019'].nx);
|
||||
break;
|
||||
case input.startsWith("jd2017-nx"):
|
||||
res.send(songdb['2017'].nx);
|
||||
break;
|
||||
case input.startsWith("openparty-nx"):
|
||||
res.send(songdb['2018'].nx);
|
||||
break;
|
||||
case input.startsWith("jd2018-pc"):
|
||||
res.send(songdb['2017'].pc);
|
||||
break;
|
||||
case input.startsWith("JD2021PC"):
|
||||
res.send(songdb['2017'].pcparty);
|
||||
break;
|
||||
case input.startsWith("jd2022-pc"):
|
||||
res.send(songdb['2017'].pcparty);
|
||||
break;
|
||||
case input.startsWith("jd2019-wiiu"):
|
||||
res.send(songdb['2019'].wiiu);
|
||||
break;
|
||||
default:
|
||||
res.send('Invalid Game');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
exports.initroute = (app, express, server) => {
|
||||
app.get("/songdb/v1/songs", (req, res) => {
|
||||
if (checkAuth(req, res)) {
|
||||
returnSongdb(req.headers["x-skuid"], res);
|
||||
}
|
||||
});
|
||||
|
||||
app.get("/songdb/v2/songs", (req, res) => {
|
||||
var sku = req.header('X-SkuId');
|
||||
const songDBPlatform = sku && sku.startsWith('jd2019-wiiu') ? 'wiiu' : 'nx';
|
||||
const songDBUrl = signer.generateSignedURL(`https://jdp.justdancenext.xyz/private/songdb/prod/${req.headers["x-skuid"]}.${md5(JSON.stringify(core.main.songdb['2019'][songDBPlatform]))}.json`);
|
||||
const localizationDB = signer.generateSignedURL(`https://jdp.justdancenext.xyz/private/songdb/prod/localisation.${md5(JSON.stringify(core.main.localisation))}.json`);
|
||||
res.send({
|
||||
"requestSpecificMaps": require('../../database/db/requestSpecificMaps.json'),
|
||||
"localMaps": [],
|
||||
"songdbUrl": songDBUrl,
|
||||
"localisationUrl": localizationDB
|
||||
});
|
||||
});
|
||||
|
||||
app.get("/private/songdb/prod/:filename", (req, res) => {
|
||||
if (signer.verifySignedURL(req.originalUrl)) {
|
||||
if (req.path.split('/')[4].startsWith('localisation')) {
|
||||
res.send(core.main.localisation);
|
||||
} else {
|
||||
var sku = req.header('X-SkuId');
|
||||
const songDBPlatform = sku && sku.startsWith('jd2019-wiiu') ? 'wiiu' : 'nx';
|
||||
res.send(core.main.songdb['2019'][songDBPlatform]);
|
||||
}
|
||||
} else {
|
||||
res.send('Unauthorizated');
|
||||
}
|
||||
});
|
||||
|
||||
app.get('/packages/v1/sku-packages', function (req, res) {
|
||||
if (checkAuth(req, res)) {
|
||||
if (req.headers["x-skuid"].includes("wiiu")) res.send(core.main.skupackages.wiiu);
|
||||
if (req.headers["x-skuid"].includes("nx")) res.send(core.main.skupackages.nx);
|
||||
if (req.headers["x-skuid"].includes("pc")) res.send(core.main.skupackages.pc);
|
||||
if (req.headers["x-skuid"].includes("durango")) res.send(core.main.skupackages.durango);
|
||||
if (req.headers["x-skuid"].includes("orbis")) res.send(core.main.skupackages.orbis);
|
||||
}
|
||||
});
|
||||
|
||||
app.post("/carousel/v2/pages/party", (req, res) => {
|
||||
var search = ""
|
||||
if (req.body.searchString != "") {
|
||||
search = req.body.searchString
|
||||
} else if (req.body.searchTags != undefined) {
|
||||
search = req.body.searchTags[0]
|
||||
} else {
|
||||
search = ""
|
||||
}
|
||||
res.send(core.CloneObject(core.generateCarousel(search, "partyMap")))
|
||||
});
|
||||
app.post("/carousel/v2/pages/sweat", (req, res) => {
|
||||
var search = ""
|
||||
if (req.body.searchString != "") {
|
||||
search = req.body.searchString
|
||||
} else if (req.body.searchTags != undefined) {
|
||||
search = req.body.searchTags[0]
|
||||
} else {
|
||||
search = ""
|
||||
}
|
||||
res.send(core.CloneObject(core.generateCarousel(search, "sweatMap")))
|
||||
});
|
||||
app.post("/carousel/v2/pages/create-challenge", (req, res) => {
|
||||
var search = ""
|
||||
if (req.body.searchString != "") {
|
||||
search = req.body.searchString
|
||||
} else if (req.body.searchTags != undefined) {
|
||||
search = req.body.searchTags[0]
|
||||
} else {
|
||||
search = ""
|
||||
}
|
||||
res.send(core.CloneObject(core.generateCarousel(search, "create-challenge")))
|
||||
});
|
||||
app.post("/carousel/v2/pages/partycoop", (req, res) => {
|
||||
var search = ""
|
||||
if (req.body.searchString != "") {
|
||||
search = req.body.searchString
|
||||
} else if (req.body.searchTags != undefined) {
|
||||
search = req.body.searchTags[0]
|
||||
} else {
|
||||
search = ""
|
||||
}
|
||||
res.send(core.CloneObject(core.generateCarousel(search, "partyMap")))
|
||||
});
|
||||
app.post("/carousel/v2/pages/avatars", function (request, response) {
|
||||
response.send(core.main.avatars);
|
||||
});
|
||||
app.post("/carousel/v2/pages/dancerprofile", function (request, response) {
|
||||
response.send(core.main.dancerprofile);
|
||||
});
|
||||
app.post("/carousel/v2/pages/jdtv", function (request, response) {
|
||||
response.send(core.main.jdtv);
|
||||
});
|
||||
app.post("/carousel/v2/pages/jdtv-nx", function (request, response) {
|
||||
response.send(core.main.jdtv);
|
||||
});
|
||||
app.post("/carousel/v2/pages/quests", function (request, response) {
|
||||
response.send(core.main.quests);
|
||||
});
|
||||
|
||||
app.post("/carousel/v2/pages/jd2019-playlists", (request, response) => {
|
||||
response.send(core.main.playlists);
|
||||
});
|
||||
app.post("/carousel/v2/pages/jd2020-playlists", (request, response) => {
|
||||
response.send(core.main.playlists);
|
||||
});
|
||||
app.post("/carousel/v2/pages/jd2021-playlists", (request, response) => {
|
||||
response.send(core.main.playlists);
|
||||
});
|
||||
app.post("/carousel/v2/pages/jd2022-playlists", (request, response) => {
|
||||
response.send(core.main.playlists);
|
||||
});
|
||||
|
||||
app.post("/sessions/v1/session", (request, response) => {
|
||||
response.send({
|
||||
"pairingCode": "000000",
|
||||
"sessionId": "00000000-0000-0000-0000-000000000000",
|
||||
"docId": "0000000000000000000000000000000000000000"
|
||||
});
|
||||
});
|
||||
|
||||
app.get("/songdb/v1/localisation", function (request, response) {
|
||||
response.send(core.main.localisation);
|
||||
});
|
||||
|
||||
// Home
|
||||
app.post("/home/v1/tiles", function (request, response) {
|
||||
response.send(core.main.home);
|
||||
});
|
||||
|
||||
// Aliases
|
||||
app.get("/aliasdb/v1/aliases", function (request, response) {
|
||||
response.send(core.main.aliases);
|
||||
});
|
||||
|
||||
// Playlists
|
||||
app.get("/playlistdb/v1/playlists", function (request, response) {
|
||||
response.send(core.main.playlistdb);
|
||||
});
|
||||
|
||||
|
||||
app.get("/profile/v2/country", function (request, response) {
|
||||
var country = requestCountry(request);
|
||||
if (country == false) {
|
||||
country = "US";
|
||||
}
|
||||
response.send('{ "country": "' + country + '" }');
|
||||
});
|
||||
|
||||
app.post("/carousel/v2/pages/sweat", (req, res) => {
|
||||
res.send(core.main.sweat)
|
||||
});
|
||||
|
||||
app.get('/leaderboard/v1/coop_points/mine', function (req, res) {
|
||||
res.send(core.main.leaderboard);
|
||||
});
|
||||
|
||||
app.get('/:version/spaces/:SpaceID/entities', function (req, res) {
|
||||
res.send(core.main.entities);
|
||||
});
|
||||
|
||||
app.post("/subscription/v1/refresh", (req, res) => {
|
||||
res.send(core.main.subscription);
|
||||
});
|
||||
|
||||
app.get("/questdb/v1/quests", (req, res) => {
|
||||
var sku = req.header('X-SkuId');
|
||||
if (sku && sku.startsWith('jd2017-nx-all')) {
|
||||
res.send(core.main.questsnx);
|
||||
} else {
|
||||
res.send(core.main.questspc);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
app.get("/session-quest/v1/", (request, response) => {
|
||||
response.send({
|
||||
"__class": "SessionQuestService::QuestData",
|
||||
"newReleases": []
|
||||
});
|
||||
});
|
||||
|
||||
app.get("/customizable-itemdb/v1/items", (req, res) => {
|
||||
res.send(core.main.items);
|
||||
});
|
||||
|
||||
app.post("/carousel/v2/pages/upsell-videos", (req, res) => {
|
||||
res.send(core.main.upsellvideos);
|
||||
});
|
||||
|
||||
app.get("/constant-provider/v1/sku-constants", (req, res) => {
|
||||
res.send(core.main.block);
|
||||
});
|
||||
|
||||
app.get("/dance-machine/v1/blocks", (req, res) => {
|
||||
if (req.headers["x-skuid"].includes("pc")) {
|
||||
res.send(core.main.dancemachine_pc);
|
||||
}
|
||||
else if (req.headers["x-skuid"].includes("pc")) {
|
||||
res.send(core.main.dancemachine_nx);
|
||||
}
|
||||
else {
|
||||
res.send('Invalid Game')
|
||||
}
|
||||
});
|
||||
|
||||
app.get('/content-authorization/v1/maps/*', (req, res) => {
|
||||
if (checkAuth(req, res)) {
|
||||
var maps = req.url.split("/").pop();
|
||||
const chunk = require('../../database/nohud/chunk.json');
|
||||
try {
|
||||
if (chunk[maps]) {
|
||||
var placeholder = core.CloneObject(require('../../database/nohud/placeholder.json'))
|
||||
placeholder.urls = chunk[maps]
|
||||
res.send(placeholder);
|
||||
} else {
|
||||
var placeholder = JSON.stringify(core.CloneObject(require('../../database/nohud/placeholder.json')))
|
||||
var placeholder = core.CloneObject(require('../../database/nohud/placeholder.json'))
|
||||
placeholder.urls = {}
|
||||
res.send(placeholder);
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err)
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
app.post("/carousel/:version/packages", (req, res) => {
|
||||
res.send(core.main.packages);
|
||||
});
|
||||
|
||||
app.get("/com-video/v1/com-videos-fullscreen", (req, res) => {
|
||||
res.send([]);
|
||||
});
|
||||
|
||||
};
|
||||
90
core/route/ubiservices.js
Normal file
90
core/route/ubiservices.js
Normal file
@@ -0,0 +1,90 @@
|
||||
//Game
|
||||
console.log(`[UBISOURCE] Initializing....`)
|
||||
const core = {
|
||||
main: require('../var').main,
|
||||
CloneObject: require('../helper').CloneObject,
|
||||
generateCarousel: require('../carousel/carousel').generateCarousel, generateSweatCarousel: require('../carousel/carousel').generateSweatCarousel, generateCoopCarousel: require('../carousel/carousel').generateCoopCarousel, updateMostPlayed: require('../carousel/carousel').updateMostPlayed,
|
||||
signer: require('../lib/signUrl')
|
||||
}
|
||||
const { v4: uuidv4 } = require('uuid');
|
||||
|
||||
|
||||
|
||||
exports.initroute = (app, express, server) => {
|
||||
const prodwsurl = "https://public-ubiservices.ubi.com/"
|
||||
|
||||
app.get('/:version/applications/:appId/configuration', function (req, res) {
|
||||
res.send(core.main.configuration);
|
||||
});
|
||||
app.get('/:version/applications/:appId', function (req, res) {
|
||||
res.send(core.main.configurationnx);
|
||||
});
|
||||
|
||||
app.post("/v3/profiles/sessions", async (req, res) => {
|
||||
const sessionId = uuidv4(); // Regenerate UUID for sessionId
|
||||
const now = new Date();
|
||||
const expiration = new Date(now.getTime() + 3 * 60 * 60 * 1000); // 3 hours from now
|
||||
|
||||
// Retrieve client IP from request headers
|
||||
const clientIp = req.headers['x-forwarded-for'] || req.connection.remoteAddress;
|
||||
// You can also retrieve client country from request headers or any other source
|
||||
|
||||
res.send({
|
||||
"platformType": "uplay",
|
||||
"ticket": "ew0KICAidmVyIjogIjIiLA0KICAiYWlkIjogIjExMjM0NTY3LWNkMTMtNGU2My1hMzJkLWJhODFmZjRlYTc1NCIsDQogICJlbnYiOiAiU3RlYW0iLA0KICAic2lkIjogImI2MzQyMDdlLTQ3NjYtNGQwMS04M2UzLWQwYzg3Y2FhYmQxOSIsDQogICJ0eXBlIjogIlJlZnJlc2giLA0KICAiZW5jIjogIkpXVCIyNTYiLA0KICAiaXYiOiAic3YwSnlEb2MwQ1hCcF8wV3k2NU1nZz09IiwNCiAgImludCI6ICJIMzQ1Mzg1Ig0KfQ==",
|
||||
"twoFactorAuthenticationTicket": null,
|
||||
"profileId": "67e8e343-d535-4a6a-bb6e-315c5e028d31",
|
||||
"userId": "67e8e343-d535-4a6a-bb6e-315c5e028d31",
|
||||
"nameOnPlatform": "NintendoSwitch",
|
||||
"environment": "Prod",
|
||||
"expiration": expiration.toISOString(), // Convert expiration to ISO string
|
||||
"spaceId": "aaf29a36-17d3-4e69-b93c-7d535a0df492",
|
||||
"clientIp": clientIp, // Dynamic client IP
|
||||
"clientIpCountry": "ID", // Dynamic client country (You may replace "ID" with actual logic)
|
||||
"serverTime": now.toISOString(), // Set serverTime to current time
|
||||
"sessionId": sessionId,
|
||||
"sessionKey": "TqCz5+J0w9e8qpLp/PLr9BCfAc30hKlEJbN0Xr+mbZa=",
|
||||
"rememberMeTicket": null
|
||||
})
|
||||
});
|
||||
app.delete("/v3/profiles/sessions", (req, res) => {
|
||||
res.send()
|
||||
})
|
||||
|
||||
app.get("/v3/profiles", (req, res) => {
|
||||
const profId = `67e8e343-d535-4a6a-bb6e-315c5e028d31/userId/${req.query.idOnPlataform}`
|
||||
res.send({
|
||||
"profiles": [{
|
||||
"profileId": profId,
|
||||
"userId": profId,
|
||||
"platformType": "uplay",
|
||||
"idOnPlatform": profId,
|
||||
"nameOnPlatform": "Ryujinx"
|
||||
}]
|
||||
})
|
||||
});
|
||||
|
||||
app.get("/v1/profiles/me/populations", (req, res) => {
|
||||
const spaceId = `${req.query.spaceIds}/67e8e343-d535-4a6a-bb6e-315c5e028d31`
|
||||
res.send({
|
||||
"spaceId": spaceId,
|
||||
"data": {
|
||||
"US_SDK_APPLICATION_BUILD_ID": "202007232022",
|
||||
"US_SDK_DURABLES": []
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
app.get("/v1/applications/34ad0f04-b141-4793-bdd4-985a9175e70d/parameters", (req, res) => {
|
||||
res.send(require("../../database/v1/parameters.json"))
|
||||
});
|
||||
app.get("/v1/spaces/041c03fa-1735-4ea7-b5fc-c16546d092ca/parameters", (req, res) => {
|
||||
res.send(require("../../database/v1/parameters2.json"))
|
||||
});
|
||||
|
||||
|
||||
|
||||
app.post("/v3/users/:user", (request, response) => {
|
||||
response.send();
|
||||
});
|
||||
};
|
||||
15
core/scripts/generateBeat.py
Normal file
15
core/scripts/generateBeat.py
Normal file
@@ -0,0 +1,15 @@
|
||||
import json
|
||||
def generate_beats(bpm, duration):
|
||||
# Calculate time per beat
|
||||
time_per_beat = 60000 / bpm
|
||||
|
||||
# Generate an array of beats for 30 seconds
|
||||
beats_array = [time_per_beat * i for i in range(int(duration / time_per_beat))]
|
||||
|
||||
# Multiply each beat by 48
|
||||
final_array = [round(beat * 48) for beat in beats_array]
|
||||
|
||||
return json.dumps(beats_array, separators=(',', ':'))
|
||||
|
||||
print(generate_beats(int(input('bpm : ')), int(input('duration in ms : '))))
|
||||
input()
|
||||
127
core/scripts/generateSongdb.py
Normal file
127
core/scripts/generateSongdb.py
Normal file
@@ -0,0 +1,127 @@
|
||||
import json
|
||||
def generate_beats(bpm):
|
||||
# Calculate time per beat
|
||||
time_per_beat = 60000 / bpm
|
||||
|
||||
# Generate an array of beats for 30 seconds
|
||||
beats_array = [time_per_beat * i for i in range(int(30 * 1000 / time_per_beat))]
|
||||
|
||||
# Multiply each beat by 48
|
||||
final_array = [round(beat * 48) for beat in beats_array]
|
||||
|
||||
return json.dumps(final_array, separators=(',', ':'))
|
||||
|
||||
codename = input('Codename: ')
|
||||
songtitle = input('Song Title: ')
|
||||
songartist = input('Song Artist: ')
|
||||
mapLength = input('mapLength: ')
|
||||
coachcount = input('coachCount: ')
|
||||
difficulty = input('difficulty: ')
|
||||
originalJDVersion = input('originalJDVersion: ')
|
||||
lyricsScolor = input('lyricsScolor: ')
|
||||
customTypeName = input('customTypeName: ')
|
||||
bpm = int(input('BPM (for preview): '))
|
||||
|
||||
if int(coachcount) == 1:
|
||||
common = '''"map_bkgImageUrl": "",
|
||||
"banner_bkgImageUrl": "",
|
||||
"coach1ImageUrl": "",
|
||||
"phoneCoach1ImageUrl": "",
|
||||
"coverImageUrl": "",
|
||||
"cover_smallImageUrl": "",
|
||||
"expandCoachImageUrl": "",
|
||||
"phoneCoverImageUrl": ""'''
|
||||
if int(coachcount) == 2:
|
||||
common = '''"map_bkgImageUrl": "",
|
||||
"banner_bkgImageUrl": "",
|
||||
"coach1ImageUrl": "",
|
||||
"phoneCoach1ImageUrl": "",
|
||||
"coach2ImageUrl": "",
|
||||
"phoneCoach2ImageUrl": "",
|
||||
"coverImageUrl": "",
|
||||
"cover_smallImageUrl": "",
|
||||
"expandCoachImageUrl": "",
|
||||
"phoneCoverImageUrl": ""'''
|
||||
if int(coachcount) == 3:
|
||||
common = '''"map_bkgImageUrl": "",
|
||||
"banner_bkgImageUrl": "",
|
||||
"coach1ImageUrl": "",
|
||||
"phoneCoach1ImageUrl": "",
|
||||
"coach2ImageUrl": "",
|
||||
"phoneCoach2ImageUrl": "",
|
||||
"coach3ImageUrl": "",
|
||||
"phoneCoach3ImageUrl": "",
|
||||
"coverImageUrl": "",
|
||||
"cover_smallImageUrl": "",
|
||||
"expandCoachImageUrl": "",
|
||||
"phoneCoverImageUrl": ""'''
|
||||
if int(coachcount) == 4:
|
||||
common = '''"map_bkgImageUrl": "",
|
||||
"banner_bkgImageUrl": "",
|
||||
"coach1ImageUrl": "",
|
||||
"phoneCoach1ImageUrl": "",
|
||||
"coach2ImageUrl": "",
|
||||
"phoneCoach2ImageUrl": "",
|
||||
"coach3ImageUrl": "",
|
||||
"phoneCoach3ImageUrl": "",
|
||||
"coach4ImageUrl": "",
|
||||
"phoneCoach4ImageUrl": "",
|
||||
"coverImageUrl": "",
|
||||
"cover_smallImageUrl": "",
|
||||
"expandCoachImageUrl": "",
|
||||
"phoneCoverImageUrl": ""'''
|
||||
|
||||
songdb = '''
|
||||
"''' + codename + '''": {
|
||||
"artist": "''' + songartist + '''",
|
||||
"assets": {
|
||||
"nx": {},
|
||||
"x1": {},
|
||||
"common": {''' +common+'''}
|
||||
},
|
||||
"audioPreviewData": "{\\"__class\\":\\"MusicTrackData\\",\\"structure\\":{\\"__class\\":\\"MusicTrackStructure\\",\\"markers\\":''' + generate_beats(bpm) +''',\\"signatures\\":[{\\"__class\\":\\"MusicSignature\\",\\"marker\\":0,\\"beats\\":4}],\\"startBeat\\":0,\\"endBeat\\":60,\\"fadeStartBeat\\":0,\\"useFadeStartBeat\\":false,\\"fadeEndBeat\\":0,\\"useFadeEndBeat\\":false,\\"videoStartTime\\":0,\\"previewEntry\\":0,\\"previewLoopStart\\":0,\\"previewLoopEnd\\":65,\\"volume\\":0,\\"fadeInDuration\\":0,\\"fadeInType\\":0,\\"fadeOutDuration\\":0,\\"fadeOutType\\":0},\\"path\\":\\"\\",\\"url\\":\\"jmcs://jd-contents/''' + codename + '''/''' + codename + '''_AudioPreview.ogg\\"}",
|
||||
"coachCount": ''' + coachcount + ''',
|
||||
"credits": "All Credits Goes to ''' + songartist +'''. Placeholder Credits, Generated By Automodder",
|
||||
"difficulty": ''' + difficulty +''',
|
||||
"doubleScoringType": -1,
|
||||
"jdmAttributes": {},
|
||||
"lyricsColor": "'''+lyricsScolor+'''",
|
||||
"lyricsType": 0,
|
||||
"mainCoach": -1,
|
||||
"mapLength": ''' + mapLength + ''',
|
||||
"mapName": "''' + codename + '''",
|
||||
"mapPreviewMpd": {
|
||||
"videoEncoding": {
|
||||
"vp8": "<?xml version=\\"1.0\\"?>\\r\\n<MPD xmlns:xsi=\\"http://www.w3.org/2001/XMLSchema-instance\\" xmlns=\\"urn:mpeg:DASH:schema:MPD:2011\\" xsi:schemaLocation=\\"urn:mpeg:DASH:schema:MPD:2011\\" type=\\"static\\" mediaPresentationDuration=\\"PT30S\\" minBufferTime=\\"PT1S\\" profiles=\\"urn:webm:dash:profile:webm-on-demand:2012\\">\\r\\n\\t<Period id=\\"0\\" start=\\"PT0S\\" duration=\\"PT30S\\">\\r\\n\\t\\t<AdaptationSet id=\\"0\\" mimeType=\\"video/webm\\" codecs=\\"vp8\\" lang=\\"eng\\" maxWidth=\\"720\\" maxHeight=\\"370\\" subsegmentAlignment=\\"true\\" subsegmentStartsWithSAP=\\"1\\" bitstreamSwitching=\\"true\\">\\r\\n\\t\\t\\t<Representation id=\\"0\\" bandwidth=\\"494704\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_LOW.vp8.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"638-1127\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-638\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"1\\" bandwidth=\\"1473607\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_MID.vp8.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"2\\" bandwidth=\\"2452716\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_HIGH.vp8.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"3\\" bandwidth=\\"2503315\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_ULTRA.vp8.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t</AdaptationSet>\\r\\n\\t</Period>\\r\\n</MPD>\\r\\n",
|
||||
"vp9": "<?xml version=\\"1.0\\"?>\\r\\n<MPD xmlns:xsi=\\"http://www.w3.org/2001/XMLSchema-instance\\" xmlns=\\"urn:mpeg:DASH:schema:MPD:2011\\" xsi:schemaLocation=\\"urn:mpeg:DASH:schema:MPD:2011\\" type=\\"static\\" mediaPresentationDuration=\\"PT30S\\" minBufferTime=\\"PT1S\\" profiles=\\"urn:webm:dash:profile:webm-on-demand:2012\\">\\r\\n\\t<Period id=\\"0\\" start=\\"PT0S\\" duration=\\"PT30S\\">\\r\\n\\t\\t<AdaptationSet id=\\"0\\" mimeType=\\"video/webm\\" codecs=\\"vp9\\" lang=\\"eng\\" maxWidth=\\"720\\" maxHeight=\\"370\\" subsegmentAlignment=\\"true\\" subsegmentStartsWithSAP=\\"1\\" bitstreamSwitching=\\"true\\">\\r\\n\\t\\t\\t<Representation id=\\"0\\" bandwidth=\\"649637\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_LOW.vp9.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"1\\" bandwidth=\\"1494556\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_MID.vp9.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"2\\" bandwidth=\\"2985169\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_HIGH.vp9.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1129\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t\\t<Representation id=\\"3\\" bandwidth=\\"5932441\\">\\r\\n\\t\\t\\t\\t<BaseURL>jmcs://jd-contents/''' + codename + '''/''' + codename + '''_MapPreviewNoSoundCrop_ULTRA.vp9.webm</BaseURL>\\r\\n\\t\\t\\t\\t<SegmentBase indexRange=\\"639-1136\\">\\r\\n\\t\\t\\t\\t\\t<Initialization range=\\"0-639\\" />\\r\\n\\t\\t\\t\\t</SegmentBase>\\r\\n\\t\\t\\t</Representation>\\r\\n\\t\\t</AdaptationSet>\\r\\n\\t</Period>\\r\\n</MPD>\\r\\n"
|
||||
}
|
||||
},
|
||||
"mode": 6,
|
||||
"originalJDVersion": ''' + originalJDVersion + ''',
|
||||
"packages": {
|
||||
"mapContent": "''' + codename + '''_mapContent"
|
||||
},
|
||||
"parentMapName": "''' + codename + '''",
|
||||
"skuIds": {},
|
||||
"songColors": {
|
||||
"songColor_1A": "444444FF",
|
||||
"songColor_1B": "111111FF",
|
||||
"songColor_2A": "AAAAAAFF",
|
||||
"songColor_2B": "777777FF"
|
||||
},
|
||||
"status": 3,
|
||||
"sweatDifficulty": 1,
|
||||
"tags": [
|
||||
"Main",
|
||||
"subscribedSong"
|
||||
],
|
||||
"title": "''' + songtitle + '''",
|
||||
"urls": {
|
||||
"jmcs://jd-contents/''' + codename + '''/''' + codename + '''_AudioPreview.ogg": ""
|
||||
},
|
||||
"customTypeName": "''' + customTypeName + '''",
|
||||
"serverChangelist": 696566
|
||||
}
|
||||
'''
|
||||
print(songdb)
|
||||
input('\n\nPress enter: ')
|
||||
57
core/scripts/run.js
Normal file
57
core/scripts/run.js
Normal file
@@ -0,0 +1,57 @@
|
||||
const { spawnSync } = require('child_process');
|
||||
const fs = require('fs');
|
||||
|
||||
let outputLogs = [];
|
||||
|
||||
function start() {
|
||||
const { stdout, stderr, status } = spawnSync('node', ['jduparty.js']);
|
||||
|
||||
if (stdout) {
|
||||
const log = {
|
||||
method: 'LOG',
|
||||
url: stdout.toString().trim(),
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
outputLogs.push(log);
|
||||
|
||||
fs.writeFileSync('database/tmp/logs.txt', JSON.stringify(outputLogs));
|
||||
}
|
||||
|
||||
if (stderr) {
|
||||
const log = {
|
||||
method: 'LOG ERROR',
|
||||
url: stderr.toString().trim(),
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
outputLogs.push(log);
|
||||
|
||||
fs.writeFileSync('database/tmp/logs.txt', JSON.stringify(outputLogs));
|
||||
}
|
||||
|
||||
console.log(`[PARTY] child process exited with code ${status}`);
|
||||
if (status === 42) { // Replace 42 with your desired exit code
|
||||
start(); // Restart the process
|
||||
}
|
||||
}
|
||||
|
||||
function generateLog(req, res, next) {
|
||||
counted++;
|
||||
if (!req.url.startsWith('/party/panel/')) {
|
||||
const log = {
|
||||
timestamp: new Date().toISOString(),
|
||||
message: `[PARTY] ${req.method} ${req.url}`
|
||||
};
|
||||
requestLogs.push(log);
|
||||
if (requestLogs.length > 50) {
|
||||
requestLogs.shift();
|
||||
}
|
||||
fs.appendFileSync('database/tmp/logs.txt', `${JSON.stringify(log)}\n`);
|
||||
}
|
||||
next();
|
||||
}
|
||||
|
||||
start();
|
||||
|
||||
process.on('SIGINT', () => {
|
||||
process.exit();
|
||||
});
|
||||
106
core/scripts/update.js
Normal file
106
core/scripts/update.js
Normal file
@@ -0,0 +1,106 @@
|
||||
function restartPM2() {
|
||||
const { exec } = require('child_process');
|
||||
console.log('[UPDATER] PM2 Process Detected, Running In PM2 Way ...');
|
||||
console.log('[UPDATER] Pulling Upstream Before Restarting ...');
|
||||
|
||||
// Execute Git pull
|
||||
exec('git pull', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to execute git pull: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if package.json has been modified
|
||||
console.log('[UPDATER] Checking package.json ...');
|
||||
exec('git diff --name-only package.json', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to check for package.json modifications: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
if (stdout.trim() !== '') {
|
||||
console.log('[UPDATER] package.json has been modified. Running npm install...');
|
||||
// Execute npm install
|
||||
exec('npm install', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to execute npm install: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
console.log('[UPDATER] npm install completed successfully.');
|
||||
});
|
||||
} else {
|
||||
console.log('[UPDATER] No modifications detected in packages.json. Skipping npm install.');
|
||||
}
|
||||
|
||||
// Restart Node.js process using PM2
|
||||
console.log('[UPDATER] Restarting Server');
|
||||
pm2.connect((err) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to connect to PM2: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
console.log('[UPDATER] restarting Node.js process...');
|
||||
pm2.restart('JDPartyServer', (err) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to restart Node.js process: ${err.message}`);
|
||||
} else {
|
||||
console.log('[UPDATER] Node.js process restarted successfully.');
|
||||
}
|
||||
pm2.disconnect();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
function updateNormal(server) {
|
||||
const { exec } = require('child_process');
|
||||
const pm2 = require('pm2');
|
||||
console.log('[UPDATER] Pulling Upstream Before Starting ...');
|
||||
|
||||
// Execute Git pull
|
||||
exec('git pull', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to execute git pull: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if package.json has been modified
|
||||
console.log('[UPDATER] Checking package.json ...');
|
||||
exec('git diff --name-only package.json', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to check for package.json modifications: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
if (stdout.trim() !== '') {
|
||||
console.log('[UPDATER] package.json has been modified. Running npm install...');
|
||||
// Execute npm install
|
||||
exec('npm install', (err, stdout, stderr) => {
|
||||
if (err) {
|
||||
console.error(`[UPDATER] Failed to execute npm install: ${err.message}`);
|
||||
return;
|
||||
}
|
||||
|
||||
console.log('[UPDATER] npm install completed successfully.');
|
||||
});
|
||||
} else {
|
||||
console.log('[UPDATER] No modifications detected in packages.json. Skipping npm install.');
|
||||
}
|
||||
process.exit(42)
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function restart(server) {
|
||||
if (process.env.pm_id == undefined) {
|
||||
updateNormal(server)
|
||||
} else {
|
||||
restartPM2()
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
restart
|
||||
};
|
||||
42
core/var.js
Normal file
42
core/var.js
Normal file
@@ -0,0 +1,42 @@
|
||||
const axios = require('axios')
|
||||
const fs = require('fs')
|
||||
const songdb = require('./lib/songdb').songdbF
|
||||
console.log(`[VAR] Initializing....`)
|
||||
const main = {
|
||||
skupackages: {
|
||||
pc: require('../database/Platforms/jd2017-pc/sku-packages.json'),
|
||||
nx: require('../database/Platforms/jd2017-nx/sku-packages.json'),
|
||||
wiiu: require('../database/Platforms/jd2017-wiiu/sku-packages.json'),
|
||||
durango: require('../database/Platforms/jd2017-durango/sku-packages.json'),
|
||||
orbis: require('../database/Platforms/jd2017-orbis/sku-packages.json')
|
||||
},
|
||||
entities: require('../database/v2/entities.json'),
|
||||
configuration: require('../database/v1/configuration.json'),
|
||||
subscription: require('../database/db/subscription.json'),
|
||||
packages: require('../database/packages.json'),
|
||||
block: require('../database/carousel/block.json'),
|
||||
leaderboard: require("../database/db/leaderboard.json"),
|
||||
quests: require("../database/db/quests.json"),
|
||||
questsnx: require("../database/db/quests-nx.json"),
|
||||
questspc: require("../database/db/quests-pc.json"),
|
||||
items: require("../database/db/items.json"),
|
||||
upsellvideos: require("../database/carousel/pages/upsell-videos.json"),
|
||||
dancemachine_pc: require("../database/db/dancemachine_pc.json"),
|
||||
dancemachine_nx: require("../database/db/dancemachine_nx.json"),
|
||||
avatars: require("../database/db/avatars.json"),
|
||||
dancerprofile: require("../database/db/dancerprofile.json"),
|
||||
aliases: require("../database/db/aliases.json"),
|
||||
home: require("../database/db/home.json"),
|
||||
jdtv: require("../database/db/jdtv.json"),
|
||||
playlistdb: require("../database/db/playlistdb.json"),
|
||||
playlists: require("../database/db/playlists.json"),
|
||||
create_playlist: require("../database/carousel/pages/create_playlist.json"),
|
||||
songdb: { "2016": {}, "2017": {}, "2018": {}, "2019": {}, "2020": {}, "2021": {}, "2022": {} },
|
||||
localisation: require('../database/Platforms/openparty-all/localisation.json')
|
||||
}
|
||||
|
||||
main.songdb = songdb.generateSonglist()
|
||||
|
||||
module.exports = {
|
||||
main
|
||||
}
|
||||
15
database/Platforms/checksku.js
Normal file
15
database/Platforms/checksku.js
Normal file
@@ -0,0 +1,15 @@
|
||||
var sdb = require('./openparty-all/songdbs.json');
|
||||
var ahud = require('./jd2017-nx/sku-packages.json');
|
||||
var bhud = Object.keys(ahud);
|
||||
|
||||
var missingElements = [];
|
||||
|
||||
for (var key in sdb) {
|
||||
if (sdb.hasOwnProperty(key) ){
|
||||
if (bhud.indexOf(key + "_mapContent") === -1) {
|
||||
missingElements.push(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
console.log(JSON.stringify(missingElements));
|
||||
15
database/Platforms/checksongdb.js
Normal file
15
database/Platforms/checksongdb.js
Normal file
@@ -0,0 +1,15 @@
|
||||
var sdb = require('./openparty-all/songdbs.json');
|
||||
var ahud = require('./jd2017-nx/sku-packages.json');
|
||||
|
||||
var missingElements = [];
|
||||
|
||||
for (var key in ahud) {
|
||||
if (ahud.hasOwnProperty(key)) {
|
||||
// Check if the corresponding key without "_mapContent" exists in sdb
|
||||
if (!sdb[key.replace("_mapContent", "")]) {
|
||||
if(!key.includes("bossContent") && !key.includes("JDM"))missingElements.push(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
console.log(JSON.stringify(missingElements));
|
||||
3
database/Platforms/jd2017-durango/sku-packages.json
Normal file
3
database/Platforms/jd2017-durango/sku-packages.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
8
database/Platforms/jd2017-nx/sku-packages.json
Normal file
8
database/Platforms/jd2017-nx/sku-packages.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"Despacito_mapContent": {
|
||||
"md5": "938871f3641338323294848eb01e889d",
|
||||
"storageType": 0,
|
||||
"url": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_MAIN_SCENE_NX.zip/938871f3641338323294848eb01e889d.zip",
|
||||
"version": 8
|
||||
}
|
||||
}
|
||||
3
database/Platforms/jd2017-orbis/sku-packages.json
Normal file
3
database/Platforms/jd2017-orbis/sku-packages.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
8
database/Platforms/jd2017-pc/sku-packages.json
Normal file
8
database/Platforms/jd2017-pc/sku-packages.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"Despacito_mapContent": {
|
||||
"md5": "394a6d87d767aea40764d7f51ab1c127",
|
||||
"storageType": 0,
|
||||
"url": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/pc/Despacito_MAIN_SCENE_PC.zip/394a6d87d767aea40764d7f51ab1c127.zip",
|
||||
"version": 6
|
||||
}
|
||||
}
|
||||
3
database/Platforms/jd2017-wiiu/sku-packages.json
Normal file
3
database/Platforms/jd2017-wiiu/sku-packages.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
3958
database/Platforms/openparty-all/localisation.json
Normal file
3958
database/Platforms/openparty-all/localisation.json
Normal file
File diff suppressed because it is too large
Load Diff
121
database/Platforms/openparty-all/songdbs.json
Normal file
121
database/Platforms/openparty-all/songdbs.json
Normal file
@@ -0,0 +1,121 @@
|
||||
{"Despacito": {
|
||||
"artist": "Luis Fonsi & Daddy Yankee",
|
||||
"assets": {
|
||||
"nx": {
|
||||
"banner_bkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_banner_bkg.tga.ckd/261ad36277687ab5412ac7067f4adf25.ckd",
|
||||
"coach1ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Coach_1.tga.ckd/499a179bbf3011d9cc50532264027525.ckd",
|
||||
"coach2ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Coach_2.tga.ckd/8dc29e66a381419a31c8df96fabbe5ff.ckd",
|
||||
"coach3ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Coach_3.tga.ckd/ae10961858d35348e65ca38a671b0f89.ckd",
|
||||
"coach4ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Coach_4.tga.ckd/d963b51ee137c0d1a07f561d6b540e51.ckd",
|
||||
"coverImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Cover_Generic.tga.ckd/3b4a5cd3c15fab2ebe8ceb7a9e403922.ckd",
|
||||
"cover_1024ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Cover_1024.png/e01c321219f1da05abb565cd008d35f7.png",
|
||||
"cover_smallImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Cover_Online.tga.ckd/3f1945b9e673c58b03fb8a19e4e77ef8.ckd",
|
||||
"expandBkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Cover_AlbumBkg.tga.ckd/ac65d949f911ae89a89df216c9b4502a.ckd",
|
||||
"expandCoachImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_Cover_AlbumCoach.tga.ckd/3157921e6ce22ec9c2e03e0f7021b729.ckd",
|
||||
"phoneCoach1ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_1_Phone.png/e8b90227c95470f1e8a27269a685c899.png",
|
||||
"phoneCoach2ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_2_Phone.png/a74941ec8bef75883230776d952e9fca.png",
|
||||
"phoneCoach3ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_3_Phone.png/a656e3ecfcfc7498e4b13e1672617f38.png",
|
||||
"phoneCoach4ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_4_Phone.png/bcff3e8e426bae94c8c3f0ce6ce48760.png",
|
||||
"phoneCoverImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Cover_Phone.jpg/37a6d939c5417fc8ffe803221d74c380.jpg",
|
||||
"videoPreviewVideoURL": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_VideoPreview.webm/f07ae5e9ba18fbf313ef242d2704127d.webm",
|
||||
"map_bkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/nx/Despacito_map_bkg.tga.ckd/53a1cc4c2c1fbd06eafffa39f21496b2.ckd"
|
||||
},
|
||||
"x1": {
|
||||
"banner_bkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_banner_bkg.tga.ckd/55d95a8308b4a2cd829a81938b15f552.ckd",
|
||||
"coach1ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Coach_1.tga.ckd/d00a81051c32b768e47119126780c973.ckd",
|
||||
"coach2ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Coach_2.tga.ckd/815d889ed8979112cdb2389a809ff1cb.ckd",
|
||||
"coach3ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Coach_3.tga.ckd/641311fea52b557397f9011499b6d4ec.ckd",
|
||||
"coach4ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Coach_4.tga.ckd/ee075e1cf3811c8d9bf53612fce8d7ac.ckd",
|
||||
"coverImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Cover_Generic.tga.ckd/a2894ed8b71e8297b25b3a47a9a4eb20.ckd",
|
||||
"cover_1024ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Cover_1024.png/e01c321219f1da05abb565cd008d35f7.png",
|
||||
"cover_smallImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Cover_Online.tga.ckd/9c5272fe09b07564ef5cd685a292e990.ckd",
|
||||
"expandBkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Cover_AlbumBkg.tga.ckd/17aa1cda096bf451fdc8b1fd80016b98.ckd",
|
||||
"expandCoachImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_Cover_AlbumCoach.tga.ckd/dc40295ceffa079e7433488abd95f696.ckd",
|
||||
"phoneCoach1ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_1_Phone.png/e8b90227c95470f1e8a27269a685c899.png",
|
||||
"phoneCoach2ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_2_Phone.png/a74941ec8bef75883230776d952e9fca.png",
|
||||
"phoneCoach3ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_3_Phone.png/a656e3ecfcfc7498e4b13e1672617f38.png",
|
||||
"phoneCoach4ImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Coach_4_Phone.png/bcff3e8e426bae94c8c3f0ce6ce48760.png",
|
||||
"phoneCoverImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_Cover_Phone.jpg/37a6d939c5417fc8ffe803221d74c380.jpg",
|
||||
"videoPreviewVideoURL": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_VideoPreview.webm/f07ae5e9ba18fbf313ef242d2704127d.webm",
|
||||
"map_bkgImageUrl": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/x1/Despacito_map_bkg.tga.ckd/c05f8782ce0e8cea0b7f61d485785341.ckd"
|
||||
},
|
||||
"common": {}
|
||||
},
|
||||
"audioPreviewData": "{\"__class\":\"MusicTrackData\",\"structure\":{\"__class\":\"MusicTrackStructure\",\"markers\":[0,44064,88080,120432,152832,185184,217536,249888,282240,314592,346992,379344,411696,444048,476399,508751,541103,573503,605855,638207,670559,702911,735263,767663,800015,832367,864719,897071,929423,961775,994175,1026527,1058879,1091230,1123582,1155934,1188334,1220686,1253038,1285390,1317742,1350094,1382494,1414846],\"signatures\":[{\"__class\":\"MusicSignature\",\"marker\":0,\"beats\":2},{\"__class\":\"MusicSignature\",\"marker\":2,\"beats\":4}],\"startBeat\":-5,\"endBeat\":333,\"fadeStartBeat\":0,\"useFadeStartBeat\":false,\"fadeEndBeat\":0,\"useFadeEndBeat\":false,\"videoStartTime\":0,\"previewEntry\":0,\"previewLoopStart\":0,\"previewLoopEnd\":43,\"volume\":0,\"fadeInDuration\":0,\"fadeInType\":0,\"fadeOutDuration\":0,\"fadeOutType\":0},\"path\":\"\",\"url\":\"jmcs://jd-contents/despacito/despacito_AudioPreview.ogg\"}",
|
||||
"coachCount": 4,
|
||||
"credits": "Written by Ramon Ayala, Erika Ender and Luis Fonsi. Published by Los Cangris Inc. (ASCAP) c/o EMI April Music (Canada) Ltd. (SOCAN) and Excelender Songs/Sony/ATV Rhythm (SESAC) and Dafons Songs / Sony/ATV Latin Music Publishing LLC (BMI) both c/o Sony/ATV Music Publishing Canada (SOCAN). All rights reserved. Used with permission. Courtesy of Universal Music Latino under license from Universal Music Enterprises. All rights of the producer and other rightholders to the recorded work reserved. Unless otherwise authorized, the duplication, rental, loan, exchange or use of this video game for public performance, broadcasting and online distribution to the public are prohibited.",
|
||||
"difficulty": 1,
|
||||
"doubleScoringType": -1,
|
||||
"jdmAttributes": [],
|
||||
"lyricsColor": "43FFBEFF",
|
||||
"lyricsType": 0,
|
||||
"mainCoach": -1,
|
||||
"mapLength": 228.35299999999998,
|
||||
"mapName": "Despacito",
|
||||
"mapPreviewMpd": "<?xml version=\"1.0\"?>\r\n<MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:DASH:schema:MPD:2011\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011\" type=\"static\" mediaPresentationDuration=\"PT30S\" minBufferTime=\"PT1S\" profiles=\"urn:webm:dash:profile:webm-on-demand:2012\">\r\n\t<Period id=\"0\" start=\"PT0S\" duration=\"PT30S\">\r\n\t\t<AdaptationSet id=\"0\" mimeType=\"video/webm\" codecs=\"vp9\" lang=\"eng\" maxWidth=\"720\" maxHeight=\"370\" subsegmentAlignment=\"true\" subsegmentStartsWithSAP=\"1\" bitstreamSwitching=\"true\">\r\n\t\t\t<Representation id=\"0\" bandwidth=\"648085\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_LOW.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"1\" bandwidth=\"1492590\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_MID.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"2\" bandwidth=\"2984529\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_HIGH.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1111\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"3\" bandwidth=\"5942260\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_ULTRA.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"621-1118\">\r\n\t\t\t\t\t<Initialization range=\"0-621\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t</AdaptationSet>\r\n\t</Period>\r\n</MPD>\r\n",
|
||||
"mode": 6,
|
||||
"originalJDVersion": 2018,
|
||||
"packages": {
|
||||
"mapContent": "Despacito_mapContent"
|
||||
},
|
||||
"parentMapName": "Despacito",
|
||||
"skuIds": [
|
||||
"jd2018-nx-all",
|
||||
"jd2018-wiiu-noe",
|
||||
"jd2018-wiiu-noa",
|
||||
"jd2018-ps4-scee",
|
||||
"jd2018-xone-emea",
|
||||
"jd2018-ps4-scea",
|
||||
"jd2018-xone-ncsa"
|
||||
],
|
||||
"songColors": {
|
||||
"songColor_1A": "89500BFF",
|
||||
"songColor_1B": "F9CD52FF",
|
||||
"songColor_2A": "50CBFCFF",
|
||||
"songColor_2B": "02267AFF"
|
||||
},
|
||||
"status": 3,
|
||||
"sweatDifficulty": 1,
|
||||
"tags": [
|
||||
"Main",
|
||||
"subscribedSong",
|
||||
"LatinCorner",
|
||||
"JustDance2018",
|
||||
"Quartet",
|
||||
"Easy",
|
||||
"Fresh",
|
||||
"Latin",
|
||||
"Sweat Low",
|
||||
"Romantic",
|
||||
"Summer"
|
||||
],
|
||||
"title": "Despacito",
|
||||
"urls": {
|
||||
"jmcs://jd-contents/Despacito/Despacito_AudioPreview.ogg": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_AudioPreview.ogg/b7e46bd256856fdf802aa84451015c90.ogg",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_HIGH.vp8.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_HIGH.vp8.webm/8e3c668453341a01db89e387ace8d1a3.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_HIGH.vp9.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_HIGH.vp9.webm/fe1996ffcb7a022efe7bf8db1fb0c334.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_LOW.vp8.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_LOW.vp8.webm/4b23b3ee2cabe4817381b90fb1024db5.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_LOW.vp9.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_LOW.vp9.webm/3aae356f820a9506afcfc4ec48278c9b.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_MID.vp8.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_MID.vp8.webm/30d09d05502939ba2b2fcfef2dd2f235.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_MID.vp9.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_MID.vp9.webm/2ec92c2bc7e5a418bcac4d92072ee04a.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_ULTRA.vp8.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_ULTRA.vp8.webm/f138123f2b9339fb273c36f470987a89.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MapPreviewNoSoundCrop_ULTRA.vp9.webm": "https://jd-s3.bc5f39.workers.dev/public/map/Despacito/Despacito_MapPreviewNoSoundCrop_ULTRA.vp9.webm/9e36a22c9161bcbbec39022d88d187bb.webm"
|
||||
},
|
||||
"serverChangelist": 544216,
|
||||
"cnlyrics": "噢 噢 不 噢 不 噢 嗨 耶 洋基老爹 来了 是的 你知道我 已经对你深情注视 今天我一定要与你共舞 看 你的目光 在热切呼唤着我 指引着我 我定风雨无阻 你 你就是磁铁 我是金属 正被你吸引 我正周密的策划 只是想想 都会心跳加速 哦耶 我已经喜欢 这种非凡的感觉 所有的感官 都在祈求更多 这样的时光 不能心急 慢慢地 我想贴近你的耳边 慢慢地呼吸 让我向你吐露真言 让你牢记我的诺言 哪怕我不在你身边 慢慢地 我想吻 慢慢地 将你的谜题 画在墙上 成为我手稿的绘板 起来吧 起来吧 每日清晨见你用头发起舞 我想成为你生命的韵律 我想你向你暗示 最喜欢的宝贝 让我越过 直至你忘记你的姓名 如果我向你索求一个吻 请给我 我知道你正在考虑当中 我已尝试了一段时间 宝贝这只是一个吻 给我吧 你知道每每见你 我的心怦怦直跳 你知道我的心 在寻找着跳动的你 来从我这里 尝尝亲吻的滋味 我想 我想 我想 看看你能爱地多深 我并不着急 我想带着旅行的心情 始于风平浪静 之后疾风暴雨 一步一步 温柔再温柔一点 一点一点 我们拥抱 我们亲吻 我发觉是 你对我轻柔的挑逗 一步一步 温柔再温柔一点 一点一点 你的美如同 未完成的拼图 但我余有拼凑的 一角 慢慢地 我想贴近你的耳边 慢慢地呼吸 让我附在你耳边向你吐露真言 让你牢记我的诺言 哪怕我不在你身边 慢慢地 慢慢地 将你的谜题 画在墙上 成为我手稿的绘板 起来吧 起来吧 每日清晨见你用头发起舞 我想成为你生命的韵律 我想你向你暗示 直至你忘记你的姓名 慢慢地 让我们在海滩完成这个仪式 在波多黎各 直到给你 留下属于我的烙印 跳舞吧 一步一步 温柔再温柔一点 一点一点 我们拥抱 你最喜欢 最喜欢的宝贝 直至你忘记你的姓名 洋基老爹 慢慢地",
|
||||
"jdcReleaseDate": "2021-06-18T12:00:00",
|
||||
"subartist": "Unknown Artist",
|
||||
"subcredits": "Ramon Ayala、Erika Ender 和 Luis Fonsi 创作。Los Cangris Inc. (ASCAP) 授权 EMI April Music (Canada) Ltd. (SOCAN) 和 Excelender Songs / Sony/ATV Rhythm (SESAC)、 Dafons Songs / Sony/ATV Latin Music Publishing LLC (BMI) 共同授权 Sony/ATV Music Publishing Canada (SOCAN) 出版发行。保留所有权利。经许可后使用。承蒙 Universal Music Latino 经 Universal Music Enterprises 许可后提供。制作人和其他权利人对其保留所有权利。除另有授权外,禁止复制、租赁、出借、交换此视频游戏或将其用于公开演出、广播和在网上公开发行。",
|
||||
"subtitle": "慢慢地",
|
||||
"searchTags": [],
|
||||
"searchTagsLocIds": [
|
||||
15285,
|
||||
15299,
|
||||
12794,
|
||||
13024,
|
||||
15278,
|
||||
15189,
|
||||
13032,
|
||||
15289
|
||||
]
|
||||
}}
|
||||
18
database/Platforms/script.py
Normal file
18
database/Platforms/script.py
Normal file
@@ -0,0 +1,18 @@
|
||||
import json
|
||||
|
||||
def compare_json(a_file, b_file, output_file):
|
||||
with open(a_file, 'r') as a:
|
||||
data_a = json.load(a)
|
||||
with open(b_file, 'r') as b:
|
||||
data_b = json.load(b)
|
||||
|
||||
missing_keys = {key: data_a[key] for key in data_a if key not in data_b}
|
||||
|
||||
with open(output_file, 'w') as output:
|
||||
json.dump(missing_keys, output, indent=4)
|
||||
|
||||
a_file = 'jd2017-nx/sku-packages.json'
|
||||
b_file = 'jd2017-pc/sku-packages.json'
|
||||
output_file = 'missing_keys.json'
|
||||
|
||||
compare_json(a_file, b_file, output_file)
|
||||
26
database/Platforms/skucloner.js
Normal file
26
database/Platforms/skucloner.js
Normal file
@@ -0,0 +1,26 @@
|
||||
//This script will automatically generate songdb for specific platform
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
|
||||
function mergeJSON(obj1, obj2) {
|
||||
// Create a shallow copy of obj1 to avoid modifying it directly
|
||||
var merged = Object.assign({}, obj1);
|
||||
|
||||
for (var key in obj2) {
|
||||
if (obj2.hasOwnProperty(key)) {
|
||||
if (typeof obj2[key] === 'object' && obj1.hasOwnProperty(key) && typeof obj1[key] === 'object') {
|
||||
// Recursive merge if both values are objects
|
||||
merged[key] = mergeJSON(obj1[key], obj2[key]);
|
||||
} else {
|
||||
// Only assign the value if it doesn't exist in obj1
|
||||
if (!obj1.hasOwnProperty(key)) {
|
||||
merged[key] = obj2[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return merged;
|
||||
}
|
||||
|
||||
fs.writeFileSync(path.join(__dirname, 'jd2017-pc/sku-packages.json'), JSON.stringify(mergeJSON(JSON.parse(fs.readFileSync(path.join(__dirname, 'jd2017-pc/sku-packages-a.json'))), JSON.parse(fs.readFileSync(path.join(__dirname, 'jd2017-pc/skuc.json')))), null, 2))
|
||||
63
database/Platforms/songdbsGen.js
Normal file
63
database/Platforms/songdbsGen.js
Normal file
@@ -0,0 +1,63 @@
|
||||
//This script will automatically generate songdb for specific platform
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
|
||||
function mergeJSON(obj1, obj2) {
|
||||
// Create a shallow copy of obj1 to avoid modifying it directly
|
||||
var merged = Object.assign({}, obj1);
|
||||
|
||||
for (var key in obj2) {
|
||||
if (obj2.hasOwnProperty(key)) {
|
||||
if (typeof obj2[key] === 'object' && obj1.hasOwnProperty(key) && typeof obj1[key] === 'object') {
|
||||
// Recursive merge if both values are objects
|
||||
merged[key] = mergeJSON(obj1[key], obj2[key]);
|
||||
} else {
|
||||
// Only assign the value if it doesn't exist in obj1
|
||||
if (!obj1.hasOwnProperty(key)) {
|
||||
merged[key] = obj2[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return merged;
|
||||
}
|
||||
|
||||
function generateSongdb(){
|
||||
var tempAssets = {
|
||||
"banner_bkgImageUrl": "",
|
||||
"coach1ImageUrl": "",
|
||||
"coverImageUrl": "",
|
||||
"coverKidsImageUrl": "",
|
||||
"coverKids_smallImageUrl": "",
|
||||
"cover_1024ImageUrl": "",
|
||||
"cover_smallImageUrl": "",
|
||||
"expandBkgImageUrl": "",
|
||||
"expandCoachImageUrl": "",
|
||||
"map_bkgImageUrl": "",
|
||||
"phoneCoach1ImageUrl": "",
|
||||
"phoneCoverImageUrl": ""
|
||||
}
|
||||
var origin = mergeJSON(JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdb_nx.json'))), JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdbs.json'))))
|
||||
var originpc = JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdb_pc.json')))
|
||||
var originx1 = JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdb_xone.json')))
|
||||
var originps4 = JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdb_ps4.json')))
|
||||
var origincommon = JSON.parse(fs.readFileSync(path.join(__dirname, 'openparty-all/unused/songdb_common.json')))
|
||||
var pc = {}
|
||||
|
||||
Object.keys(origin).forEach((currentSong) => {
|
||||
const a = origin[currentSong]
|
||||
const assets = a.assets
|
||||
a.assets = {
|
||||
nx: assets,
|
||||
x1: originx1[currentSong] ? originx1[currentSong].assets : originpc[currentSong] ? originpc[currentSong].assets : tempAssets,
|
||||
ps4: originps4[currentSong] ? originps4[currentSong].assets : tempAssets,
|
||||
common: origincommon[currentSong] ? origincommon[currentSong].assets : tempAssets
|
||||
}
|
||||
pc[currentSong] = a;
|
||||
})
|
||||
|
||||
var o = fs.writeFileSync(path.join(__dirname, 'openparty-all/songdbs.json'), JSON.stringify(pc, null, 2))
|
||||
}
|
||||
|
||||
generateSongdb()
|
||||
1
database/account/profiles/user.json
Normal file
1
database/account/profiles/user.json
Normal file
@@ -0,0 +1 @@
|
||||
eyJ1bmRlZmluZWQiOiJbb2JqZWN0IE9iamVjdF1VYmlfdjEgZXdvZ0lDSjJaWElpT2lBaU1TSXNDaUFnSW1GcFpDSTZJQ0l6TkRFM09EbGtOQzFpTkRGbUxUUm1OREF0WVdNM09TMWxNbUpqTkdNNU5HVmhaRFFpTEFvZ0lDSmxibllpT2lBaVVISnZaQ0lzQ2lBZ0luTnBaQ0k2SUNJMk1tTXlPVGhrTXkxaU1HVTFMVFE1WVRBdFlXTmxaUzB6Tm1NeE9EQTJOVGczWVRjaUxBb2dJQ0owZVhBaU9pQWlTbGRGSWl3S0lDQWlaVzVqSWpvZ0lrRXhNamhEUWtNaUxBb2dJQ0pwZGlJNklDSkxRMmR5ZFZoT2F6ZHlXbGxJUm1ZMFZWaFBPSFJSSWl3S0lDQWlhVzUwSWpvZ0lraFRNalUySWl3S0lDQWlhMmxrSWpvZ0lqaGhNV1l3T1RGakxURXdOVEV0TkdSbFlpMDRNelZtTFRVNE0yRmpOekE0TVdZMU1TSUtmUS5sNTA3WWQ5Y2tiSW8wSlBlV3hla3hERGt4RXA3ZFFZN0dZcHN4bE45VDJiNS1ldmNwT0R3Z0tvTTBXVXN5UXJvZWh4T1l6SHg5UjFVRnpnZWROdWVwRTN3N1JjY0g5bTk3VVRXOXowQ2w3WVRBb0xReHRKbThZdXFtcWhSc0JuWGRDRjhvOWU1Y3hRMnU1clJvZzJWclk0UnM2TWxJRFJ5bEhBZWZZSjR6WV9jRVdqSS0xTTNqb3ozVjlkNHJNTVZHZmNhQTZOZERXU1VZeGMxRzIxV3p1VTdmeGhlNEhQVTV3dFFyTXVUMzJlMHNSUmt0NlpxU0QwYkVuUlp3Q2hFODg2ZGcxbG5idjR2cncyZTFFYXVLamt6RnBjNG5qc1c5QU9ub3VVTUFSVVNTbTNGNTdnc1lLendMb0pURGJVaXd6VE9rdm90cFBFZHlzejR3UUo4LTFtTUdtaGpDLWtVU1Z6UXNxWGRlOTFhSzJoSmRrWFlyWmx2X1lVX3NnNFJHWXF1ZHVEeXlGSVFhSWtqWlZxd1M3Szk1Q2VsSHpoSVBoUUozelpMZjZBbHRsYkFGUEpLSk41QV9CTUtpU0ExVGpFUEtmQWU3aXpiU0syWE02MFUweHp4WUw3X1NnaW9yUURvbW5aVy1oTXlIUHM3RDgzNWwtazhsd0VtY2o1YlFTNG45eEpOVHZidVE5S3BVWHlZRm1maXNUVHJFTzVfNk9md0xIbld1b3lIZ0NBZi1mZ3RvamJaMEVpbFVUYlNlMmtvUDNfejJpZzloNy0yVDQyZjhXQ3NXdFE2ekNIazJGSDk3MEVwOG1GN0x4TkZ0aVc5VHFlYzZ3THhjWmpIcGdfbGZPZ1FCcm9rdzVrNlVCbUs5YmpYOF9xTDBya1VXZ2RCc2pIRUJfOE50bVlueHU5ZXh6TFFreGV6bTlRLWM0LTczTWJLMk9kem1hd0U5ODlRVVRmblNVd3UyNVhqanlXSWtqOEFzSndQSHhUMEU5NGpvdzBpVXlRd3lsU0RBa0JTYTkzNEJZT19DdGpYYWNBRW1MbHU3RWJwYTB0Q3lfSy13WEtYS0gwT1JZM3pOMnBnVHRQNjNvNnZnci14eEhxVnZISkdXdW1QS092SGVieFJfeGVBNjM0SmRuNjV6NHdyVFZ3V3A3SnFESzhkWmNFWndvZFd1NnFlMEdjNXpRSW80Q3p0OVNFcENKc21ad0h2cV92SWQwaXFEZW5tb1QxODdMM3d0eElNbTV0dC1qRUNldlpmOGkxMGpqUnhOOU96ckJWS0NZTlBuXzBrS3ZIMXBvZDRpQ2VWMUxSLU1rTlhiTjhsRTNjRnR1WmZweG1URzNhUXdYT3lqclZvT3RFSDBnbVBZVElqWVZjMl8zV1lFLUp6c1NKaTBnQm9ZUnQwcHRfel9oa3p5cHp4blFHeUxUWjY3b09vUWczT2V3d3lwUlp2eEVrNUVydFd6b2RPS0RKNDRjb09wQVh1ZDJ1TEMtN1VTdFJXUXJCTG1FT3JFRE1GMFZGa1FfVVIxVDgxOHM0aUlTSHpvYmdLY0Y4dGxFTm9YSmNOMmFIN0l2Mk1QT2hINVB5OXlraEtIcWZLWlZYbFpoaVNlNWh3cHBqMHhkZDNOcFUyaW9nNXZtQXJHSG52MlB3QjZZRFZwQ1VVZ0QtVnZaLUN2blNlOWdHbk1WdmlKUnktNmZxSHQ5cE53MHFZSVFpRlRiRjFMY2o2Ukxpa1dGMmlnSkJJYkZ5b3dUQVdIaDc3SEcxbng5MThfdGlzQXI1VEtHM2lhTlh1WS1JWUZvakRSOE9kSldTeTVUdVVpb0gzaGZELUd6enNTaDNPbFFxU0JBWlRlZzdJYmhuVGNiMHU2bFBuMmFhc3V3WG1ZT1Z0Ym5yQ1pBbTNROFp6MEZCOEhNWmwxcDdsTVdSRHJtN2tPcFVJVHhHTGFEcWJGa1JvdDVQT1hSTllCdVEtY2lVd0MwRFRVX1NLU21UYzNkYWVhZGRRc1owdTQzbkQwci1DaDVKdUowb3RmNld1X0w0Q19WVVl1bmctYTNHTEQ5ZnpHeFZaX0FkYi1aekdVTUZBM2RuWUNJakl4aWdGSHRvQUF2cFg3ZWpJX3h4UWNfbDlMNGt4UnZiQWJMQWgtekt1RExaWjgzSXNSOUJqUmUzcjZsM1VFQTk2OWIyZlpDaVRMWnA4OFdrdDdPTThoUEYtUF9HVHhhOTVPcTBrNkkzVnRRVEZrQURSSU5PRC1lcU42X3BFN0FsQ2txa1BpUjJvOGJUcl9zOWUzT0VOblMzSFpDSDBBSFhkMmhWWVE4V0xOb1ZEeFB2Rk1UMEs5SnI2U3JoWTlIdm5sdFBxR09PcjR4ZGlRN0RZQTc5ZEg5MEtvdWN5MGp3OFBZQ2xiMFNBM1dMM1ZnSVVub3JyaExWS2NTNFp4bjVoQTlMdldxZVBBZ1phX1lVM0o4ajNhc3lnWFdWMFRQU1RJdE1xSlNsdzFDU2hKeGZXc0FhQkJMWXNBS05QUzlzalpFMjZLNHFiQ2ZVZUMzb2pMS1huRjB0T1dDT3QyQTB5enBQLVhuQTd5VW9JV3dCN290OF9tRXhwVGRfUzFBdkNNQmh3RHJWalJ6YzNQRDFOQks2amhkY09zbkRDeDBydEN1ZU1rQ0FUX1RqMFVwdTItdV9vSWd0YWY2UXUwRUM5YVp2S0F3N2s4RlNjdGFDNjdhYk90V3lSQnh0MUhESVhjc0t2d0FvOU12bXRLVmVrMTdfWXEyazZFdTFGTW9YLTRoMnJpTGhSZVBkX0toUk50Y0s3WVZ3d29wQ29peEpoQjZ1d18yX09PX3VyaWxHM1NWRkUyZ1JQUFN1UThZU2dpS21fRkhUdGZ2R0REQjIwdmY4a21Ya3c5WHZqM2swWDZ4c2VVMVRBZ2xZMGZiY0pTUVNaeElwSGUteWpmdlJuTFpuSGZ5RzYtMm9IU1kzdmMwd1pfU2NNWS05bnRDYVJpelkwZUVXLVNyTlpRenhFdDBuYjdwOUI4dmRsVDNYdnc4dUl1NGZlMHE1bV9BRzVKS293bTNnR1VNTmJvcDBiTHFmNEZMeGN6Q3ZDenl6cG1tUkVvanlmSzgySy01Q2NXckMtRmw5OHRmTjZCR0lkVVZuSWxpRlk3MkdUN2xSVmhkWXVXeEZ0MXN2Zk1BRnBwOXBpWXpoWnkyU2thSWpoTjlVVVdDUlM5S2ZLT195NWt4TDdqdDlLd2Iwb1ZkajQ3WHkteVFremVlazBxcFhnQ05keHRBWWwxN1lycHhrSDlvblNaN3NtRzVhMDM2MXYtMVFodEp3dmlZbi1Vc0JBQ3hNeTZmQkJBUndlTFlCR3l1SFNzTm5NWE5xNWJqMWR1MG1WSmhBLlJxZFRtbi1EWHRtT2poaVMtTFdGTnFpQVdqbjNrVEpxNWMzV2xNaktPYjAifQ==
|
||||
128
database/carousel/block.json
Normal file
128
database/carousel/block.json
Normal file
@@ -0,0 +1,128 @@
|
||||
{
|
||||
"ChallengeMatch": {
|
||||
"CreateChallenge": {
|
||||
"wait_after_share": 5
|
||||
}
|
||||
},
|
||||
"Friends": {
|
||||
"FriendListService": {
|
||||
"refresh_interval": 120
|
||||
},
|
||||
"FriendsPresence": {
|
||||
"max_msg": 6,
|
||||
"refresh_time": 121
|
||||
},
|
||||
"FriendsUGC": {
|
||||
"max_msg": 5,
|
||||
"refresh_time": 120
|
||||
}
|
||||
},
|
||||
"Home": {
|
||||
"Fetch": {
|
||||
"during_session_tiles_count": 1,
|
||||
"new_session_tiles_count": 3,
|
||||
"played_maps_count": 2
|
||||
}
|
||||
},
|
||||
"JDVersion": {
|
||||
"Override": {
|
||||
"1": "",
|
||||
"123": "Kids",
|
||||
"1230": "Kids 2",
|
||||
"1234": "Kids 2014",
|
||||
"31": "Wii",
|
||||
"32": "Wii 2",
|
||||
"51": "Wii U",
|
||||
"2023": "2023 Edition",
|
||||
"2024": "2024 Edition",
|
||||
"5001": "Disney Party",
|
||||
"5002": "Disney Party 2",
|
||||
"6020": "2020 China",
|
||||
"6017": "2017 China",
|
||||
"6015": "2015 China",
|
||||
"4884": "ABBA: You Can Dance",
|
||||
"8001": "Michael Jackson: The Experience",
|
||||
"8002": "Hip Hop Dance Experience",
|
||||
"8003": "Black Eyed Peas Experience",
|
||||
"8004": "The Smurfs: Dance Party",
|
||||
"1000": "Plus",
|
||||
"9999": "Unlimited"
|
||||
}
|
||||
},
|
||||
"originalJDVersion": {
|
||||
"Override": {
|
||||
"1": "",
|
||||
"123": "Kids",
|
||||
"1230": "Kids 2",
|
||||
"1234": "Kids 2014",
|
||||
"31": "Wii",
|
||||
"32": "Wii 2",
|
||||
"51": "Wii U",
|
||||
"2023": "2023 Edition",
|
||||
"2024": "2024 Edition",
|
||||
"5001": "Disney Party",
|
||||
"5002": "Disney Party 2",
|
||||
"6020": "2020 China",
|
||||
"6017": "2017 China",
|
||||
"6015": "2015 China",
|
||||
"4884": "ABBA: You Can Dance",
|
||||
"8001": "Michael Jackson: The Experience",
|
||||
"8002": "Hip Hop Dance Experience",
|
||||
"8003": "Black Eyed Peas Experience",
|
||||
"8004": "The Smurfs: Dance Party",
|
||||
"1000": "Plus",
|
||||
"9999": "Unlimited"
|
||||
}
|
||||
},
|
||||
"Quest": {
|
||||
"minimumScore": {
|
||||
"value": 1000
|
||||
},
|
||||
"questOverride": {
|
||||
"value": []
|
||||
},
|
||||
"sessionCountUntilDiscoveryKill": {
|
||||
"value": 4
|
||||
},
|
||||
"sessionCountUntilFirstDiscoveryKill": {
|
||||
"value": 2
|
||||
},
|
||||
"sessionCountUntilQuestKill": {
|
||||
"value": 10
|
||||
}
|
||||
},
|
||||
"Subscription_Service": {
|
||||
"ECTokenFetch": {
|
||||
"retry_count": 3,
|
||||
"retry_interval": 598
|
||||
},
|
||||
"ServerRefresh": {
|
||||
"refresh_interval": 600,
|
||||
"retry_interval": 60,
|
||||
"retry_interval_s2s": 600
|
||||
}
|
||||
},
|
||||
"Unlockables": {
|
||||
"AAAMap": {
|
||||
"LockAAAMap2": 1,
|
||||
"considerLocking": 1,
|
||||
"map1": "1",
|
||||
"map2": "Thumbs"
|
||||
}
|
||||
},
|
||||
"WDF": {
|
||||
"Recap": {
|
||||
"recap_retry_interval": 2
|
||||
},
|
||||
"UpdateScore": {
|
||||
"update_failure_allowance": 10,
|
||||
"update_score_interval": 5
|
||||
}
|
||||
},
|
||||
"Wall": {
|
||||
"FriendsWall": {
|
||||
"max_msg": 7,
|
||||
"refresh_time": 122
|
||||
}
|
||||
}
|
||||
}
|
||||
4
database/carousel/mostplayed.json
Normal file
4
database/carousel/mostplayed.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"1": {
|
||||
}
|
||||
}
|
||||
4997
database/carousel/pages/create_playlist.json
Normal file
4997
database/carousel/pages/create_playlist.json
Normal file
File diff suppressed because it is too large
Load Diff
1
database/carousel/pages/jdtv.json
Normal file
1
database/carousel/pages/jdtv.json
Normal file
@@ -0,0 +1 @@
|
||||
{}
|
||||
133
database/carousel/pages/party.json
Normal file
133
database/carousel/pages/party.json
Normal file
@@ -0,0 +1,133 @@
|
||||
{
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [{
|
||||
"__class": "Category",
|
||||
"title": "[icon:CROWN] Just Dance Party",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": []
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "[icon:SEARCH_FILTER] Search",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row_search",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [],
|
||||
"isc": "grp_search",
|
||||
"actionList": "search"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Solo"
|
||||
],
|
||||
"presetTitle": "Solo",
|
||||
"trackingTitle": "Solo"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Duet"
|
||||
],
|
||||
"presetTitle": "Duet",
|
||||
"trackingTitle": "Duet"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Trio"
|
||||
],
|
||||
"presetTitle": "Trio",
|
||||
"trackingTitle": "Trio"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"act": "ui_component_base",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_SearchPreset",
|
||||
"presetTags": [
|
||||
"Quartet"
|
||||
],
|
||||
"presetTitle": "Quartet",
|
||||
"trackingTitle": "Quartet"
|
||||
}
|
||||
],
|
||||
"isc": "grp_search_preset",
|
||||
"actionList": "searchPreset"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"actionLists": {
|
||||
"partyMap": {
|
||||
"__class": "ActionList",
|
||||
"actions": [{
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance",
|
||||
"type": "play-song"
|
||||
}, {
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Add to favorites",
|
||||
"type": "set-favorite"
|
||||
}, {
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_leaderboard",
|
||||
"title": "Leaderboard",
|
||||
"type": "leaderboard"
|
||||
}, {
|
||||
"__class": "Action",
|
||||
"bannerContext": "family_rival",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song_licensing",
|
||||
"title": "Credits",
|
||||
"type": "credits"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
}
|
||||
},
|
||||
"songItemLists": {}
|
||||
}
|
||||
303
database/carousel/pages/upsell-videos.json
Normal file
303
database/carousel/pages/upsell-videos.json
Normal file
@@ -0,0 +1,303 @@
|
||||
{
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [{
|
||||
"__class": "Category",
|
||||
"title": "Upsell Videos",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [{
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Diggin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Diggin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Diggin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Diggin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Diggin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Cheerleader"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "GangnamStyleDLC"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "LetItGo"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Happy"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "BeautyAndABeatDLC"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "SexyAndIKnowItDLC"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "BlurredLines"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Starships"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "JustDance"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "GoodFeeling"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Rasputin"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "MovesLikeDLC"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "BuiltForThis"
|
||||
}
|
||||
],
|
||||
"actionList": "upsell"
|
||||
}
|
||||
]
|
||||
}, {
|
||||
"__class": "Category",
|
||||
"title": "Upsell Videos Kids",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [{
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "LetItGo"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "AngryBirds"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "PrinceAli"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Cmon"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "Ghostbusters"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "UnderTheSea"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}, {
|
||||
"__class": "Item",
|
||||
"isc": "grp_cover",
|
||||
"act": "ui_component_base",
|
||||
"components": [{
|
||||
"__class": "JD_CarouselContentComponent_Song",
|
||||
"mapName": "CopaCabana"
|
||||
}
|
||||
],
|
||||
"actionList": "kidsMap"
|
||||
}
|
||||
]
|
||||
}, {
|
||||
"__class": "Category",
|
||||
"title": "WhatsNew Videos",
|
||||
"act": "avatar_carousel",
|
||||
"isc": "avatar_row",
|
||||
"items": []
|
||||
}
|
||||
],
|
||||
"actionLists": {
|
||||
"kidsMap": {
|
||||
"__class": "ActionList",
|
||||
"actions": [{
|
||||
"__class": "Action",
|
||||
"bannerContext": "kids",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Dance",
|
||||
"type": "play-song"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
},
|
||||
"upsell": {
|
||||
"__class": "ActionList",
|
||||
"actions": [{
|
||||
"__class": "Action",
|
||||
"bannerTheme": "DEFAULT",
|
||||
"bannerType": "song",
|
||||
"title": "Subscribe",
|
||||
"type": "display-upsell"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
}
|
||||
},
|
||||
"songItemLists": {}
|
||||
}
|
||||
9
database/carousel/playlist.json
Normal file
9
database/carousel/playlist.json
Normal file
@@ -0,0 +1,9 @@
|
||||
[
|
||||
{
|
||||
"name": "Test Playlist",
|
||||
"RecommendedName": "Test Playlist",
|
||||
"songlist": [
|
||||
"Despacito"
|
||||
]
|
||||
}
|
||||
]
|
||||
3289
database/db/aliases.json
Normal file
3289
database/db/aliases.json
Normal file
File diff suppressed because it is too large
Load Diff
409
database/db/avatars.json
Normal file
409
database/db/avatars.json
Normal file
@@ -0,0 +1,409 @@
|
||||
{
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2022",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2022,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "99a0e5f8-61f9-48a7-aff4-a5884887b23d"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2021",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2021,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "e737f5e8-bd4a-4fe7-b035-389de576ff20"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2020",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2020,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "bcea88b1-3dc3-4e06-8cee-feaf56480114"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2019",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2019,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "bcea88b1-3dc3-4e06-8cee-feaf56480114"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2018",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2018,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "1147833f-0634-45ee-a9bf-fbb05d20353b"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2017",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2017,
|
||||
"lockType": 20,
|
||||
"sortBy": 0,
|
||||
"uuid": "c1712549-8b73-44d6-9c17-e3cac56d5590"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2016",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2016,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "33ba21de-94cb-435a-8f4c-95a11509baec"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2015",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2015,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "0c5259c2-4146-44b8-8875-a9541c81abd6"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2014",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 5,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "c0a08068-edf7-419f-b30a-5c1a7f3f107c"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 4",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 4,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "ddffcbe0-8a73-418a-9702-9fea97a10b0e"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 3",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 3,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "d660937f-0d2d-414a-a42c-365e66c308bd"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 2",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "387d5eb9-9df3-4561-a32d-9a7406157c24"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance 1",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 1,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "250d5f55-c963-4833-b0a4-3ddcf5a54b71"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance Kids",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 123,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "ba9fa20d-d995-4a4a-abec-9688d4782a61"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "ABBA: You Can Dance",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 4884,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "84bb11f5-cdc3-49a6-a996-41020177fc09"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Mojo",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": -1,
|
||||
"lockType": 1,
|
||||
"sortBy": 1,
|
||||
"uuid": "657232bf-d5f2-4553-b9d0-c1cf070c8e90"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Dance Quest",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2017,
|
||||
"lockType": 9,
|
||||
"sortBy": 0,
|
||||
"uuid": "9a3885fa-b5aa-4362-a6a9-3f0b5b7e9769"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 9999,
|
||||
"lockType": 9,
|
||||
"sortBy": 0,
|
||||
"uuid": "04942341-ee4a-4681-a583-9fecf7e2670f"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Game mode progression",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": -1,
|
||||
"lockType": 10,
|
||||
"sortBy": 0,
|
||||
"uuid": "ae334024-badd-47f1-8b3d-3a2af9607eb6"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Ubisoft Club",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2017,
|
||||
"lockType": 6,
|
||||
"sortBy": 0,
|
||||
"uuid": "8ef22b56-d864-40e4-b061-001c3cdee05d"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 2017,
|
||||
"lockType": 16,
|
||||
"sortBy": 0,
|
||||
"uuid": "9071654f-c131-418c-b785-5bc809d1403e"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Just Dance Unlimited exclusive",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselCustomizableItemRequest",
|
||||
"itemType": 0,
|
||||
"jdVersion": 9999,
|
||||
"lockType": 0,
|
||||
"sortBy": 0,
|
||||
"uuid": "db38fe17-7653-4b89-8e9c-d841a48ece38"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"actionLists": {},
|
||||
"songItemLists": {}
|
||||
}
|
||||
40
database/db/blacklist.json
Normal file
40
database/db/blacklist.json
Normal file
@@ -0,0 +1,40 @@
|
||||
[
|
||||
"3.145.25.236",
|
||||
"20.244.18.230",
|
||||
"194.2.155.0/24",
|
||||
"216.98.48.0/20",
|
||||
"195.88.182.0/23",
|
||||
"220.225.106.216/30",
|
||||
"115.111.211.168/29",
|
||||
"182.19.70.0/26",
|
||||
"124.74.128.160/29",
|
||||
"34.205.220.58/32",
|
||||
"34.207.6.85/32",
|
||||
"35.174.158.139/32",
|
||||
"130.254.84.0/23",
|
||||
"130.254.64.0/19",
|
||||
"194.2.155.0",
|
||||
"216.98.48.0",
|
||||
"195.88.182.0",
|
||||
"220.225.106.216",
|
||||
"115.111.211.168",
|
||||
"182.19.70.0",
|
||||
"124.74.128.160",
|
||||
"34.205.220.58",
|
||||
"34.207.6.85",
|
||||
"35.174.158.139",
|
||||
"130.254.84.0",
|
||||
"130.254.64.0",
|
||||
"194.2.155.24",
|
||||
"216.98.48.20",
|
||||
"195.88.182.23",
|
||||
"220.225.106.30",
|
||||
"115.111.211.29",
|
||||
"182.19.70.26",
|
||||
"124.74.128.29",
|
||||
"34.205.220.32",
|
||||
"34.207.6.32",
|
||||
"35.174.158.32",
|
||||
"130.254.84.23",
|
||||
"130.254.64.19"
|
||||
]
|
||||
2201
database/db/dancemachine_nx.json
Normal file
2201
database/db/dancemachine_nx.json
Normal file
File diff suppressed because it is too large
Load Diff
2070
database/db/dancemachine_pc.json
Normal file
2070
database/db/dancemachine_pc.json
Normal file
File diff suppressed because it is too large
Load Diff
123
database/db/dancerprofile.json
Normal file
123
database/db/dancerprofile.json
Normal file
@@ -0,0 +1,123 @@
|
||||
{
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": " Dancer Cards",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselDancerCardRequest",
|
||||
"isSaveItem": true,
|
||||
"uuid": "f02934b9-647d-46b3-9d8f-d9983e7cfd7d"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselDancerCardRequest",
|
||||
"actionListName": "main-dancer-card",
|
||||
"main": true,
|
||||
"uuid": "0ff6ad3b-a0fb-4253-b12a-ef01e813874f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselDancerCardRequest",
|
||||
"actionListName": "dancer-card",
|
||||
"uuid": "a22c81fd-4e56-439c-a42d-74d17c55a6c0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"offlineRequest": {
|
||||
"__class": "JD_CarouselDancerCardRequest",
|
||||
"actionListName": "create-dancer-card",
|
||||
"create": true,
|
||||
"uuid": "69478a6a-20ad-47ee-9cfa-c42af702984a"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"actionLists": {
|
||||
"main-dancer-card": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Change avatar",
|
||||
"type": "change-avatar"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Change your skin",
|
||||
"type": "change-skin"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Edit nickname",
|
||||
"type": "edit-nickname"
|
||||
}
|
||||
],
|
||||
"itemType": "dancer-card"
|
||||
},
|
||||
"dancer-card": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Activate",
|
||||
"type": "set-as-main"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Change avatar",
|
||||
"type": "change-avatar"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Change skin",
|
||||
"type": "change-skin"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Edit nickname",
|
||||
"type": "edit-nickname"
|
||||
},
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerType": "dancer",
|
||||
"title": "Delete",
|
||||
"type": "delete-dancer-card"
|
||||
}
|
||||
],
|
||||
"itemType": "dancer-card"
|
||||
},
|
||||
"create-dancer-card": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"bannerContext": "CONTEXT_ADD",
|
||||
"bannerType": "dancer",
|
||||
"title": "Create Dancer Card",
|
||||
"type": "create-dancer-card"
|
||||
}
|
||||
],
|
||||
"itemType": "dancer-card"
|
||||
}
|
||||
},
|
||||
"songItemLists": {}
|
||||
}
|
||||
73
database/db/home.json
Normal file
73
database/db/home.json
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"__class": "HomeService::HomeData",
|
||||
"tileList": [{
|
||||
"__class": "HomeService::HomeTile",
|
||||
"type": 2,
|
||||
"creationTime": 1613578222360,
|
||||
"locked": false,
|
||||
"new": true,
|
||||
"lockDuration": 0,
|
||||
"contentExpiry": 0,
|
||||
"uuid": "00000000-0000-0000-0000-000000000000",
|
||||
"newsTileInfo": {
|
||||
"__class": "HomeService::NewsTileInfo",
|
||||
"type": 2,
|
||||
"title": "Welcome to Just Dance Party",
|
||||
"text": "",
|
||||
"imageUrl": "https://s3.amazonaws.com/cdn-efds.justdancenext.xyz/assets/icon.png",
|
||||
"winnerPid": "00000000-0000-0000-0000-000000000000",
|
||||
"winnerPlatform": "",
|
||||
"winnerName": "",
|
||||
"winnerNameSuffix": 0,
|
||||
"winnerCountry": 4294967295,
|
||||
"winnerAvatar": 4294967295,
|
||||
"winnerAlias": 4294967295,
|
||||
"offlineNewID": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "HomeService::HomeTile",
|
||||
"type": 2,
|
||||
"creationTime": 1613578222360,
|
||||
"locked": false,
|
||||
"new": true,
|
||||
"lockDuration": 0,
|
||||
"contentExpiry": 0,
|
||||
"uuid": "00000000-0000-0000-0000-000000000000",
|
||||
"newsTileInfo": {
|
||||
"__class": "HomeService::NewsTileInfo",
|
||||
"type": 2,
|
||||
"title": "Join our Discord server!",
|
||||
"text": "Here is the link: https://discord.gg/H7SeBSTS",
|
||||
"imageUrl": "https://cdn.glitch.global/62326fe4-c1d6-4a0d-bf57-06b57a460c36/discord.png",
|
||||
"winnerPid": "00000000-0000-0000-0000-000000000000",
|
||||
"winnerPlatform": "",
|
||||
"winnerName": "",
|
||||
"winnerNameSuffix": 0,
|
||||
"winnerCountry": 4294967295,
|
||||
"winnerAvatar": 4294967295,
|
||||
"winnerAlias": 4294967295,
|
||||
"offlineNewID": ""
|
||||
}
|
||||
}, {
|
||||
"__class": "HomeService::HomeTile",
|
||||
"type": 0,
|
||||
"creationTime": 1590943627,
|
||||
"locked": false,
|
||||
"new": true,
|
||||
"lockDuration": 0,
|
||||
"contentExpiry": 0,
|
||||
"uuid": "00000000-0000-0000-0000-000000000000",
|
||||
"mapTileInfo": {
|
||||
"__class": "HomeService::MapTileInfo",
|
||||
"type": 6,
|
||||
"mapName": "NeverBe"
|
||||
}
|
||||
}],
|
||||
"timestampLastRequest": 1613578407,
|
||||
"timestampLastManualContent": 1612964700,
|
||||
"timestampLastMapContent": 0,
|
||||
"timestampLastVideoContent": 0,
|
||||
"timestampLastPlaylistContent": 0,
|
||||
"timestampLastLocalTrack": 1540857600
|
||||
}
|
||||
29204
database/db/items.json
Normal file
29204
database/db/items.json
Normal file
File diff suppressed because it is too large
Load Diff
62965
database/db/jdtv.json
Normal file
62965
database/db/jdtv.json
Normal file
File diff suppressed because it is too large
Load Diff
17
database/db/leaderboard.json
Normal file
17
database/db/leaderboard.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"__class": "LeaderboardList",
|
||||
"entries": [{
|
||||
"__class": "LeaderboardEntry_Online",
|
||||
"profileId": "acfe6905-f1e5-4d37-afbf-088794a71938",
|
||||
"rank": 751,
|
||||
"score": 251,
|
||||
"name": "Adrian_Flopper",
|
||||
"avatar": 376,
|
||||
"country": 8521,
|
||||
"platformId": "",
|
||||
"jdPoints": 23210,
|
||||
"portraitBorder": 26
|
||||
}
|
||||
],
|
||||
"playerCount": 1
|
||||
}
|
||||
574
database/db/playlistdb.json
Normal file
574
database/db/playlistdb.json
Normal file
@@ -0,0 +1,574 @@
|
||||
{
|
||||
"__class": "PlaylistDbResponse",
|
||||
"db": {
|
||||
"00sGems": {
|
||||
"filters": true,
|
||||
"maps": ["BadRomance", "DynamiteQUAT", "HotNCold", "Girlfriend", "Promiscuous", "TheWeekend", "SomethinStupid", "HeyYa"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Dancing into the 2000s",
|
||||
"description": "Y2K never scared us...",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-09-11_00sGems/b225b3ae2dc5380ec756442311ca8693.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"10sGems": {
|
||||
"filters": true,
|
||||
"maps": ["BreakFreeDLC", "LittleParty", "SingleLadies", "BeautyAndABeatDLC", "TeenageDream", "Senorita", "PartyRock", "Finesse"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "The 2010s Were Banging",
|
||||
"description": "Iconic!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_10sGems/189549a9617c54d38fe529962a4778ab.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"70sGems": {
|
||||
"filters": true,
|
||||
"maps": ["KungFu", "IWasMadeQUAT", "NeverCanSay", "ThatsTheWay", "HeartOfGlass", "HotStuff", "WalkThisWay", "Alexandrie"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "The Groovy 70s",
|
||||
"description": "Peace and love, baby! Get your groove on with these golden oldies from the Seventies",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_70sGems/acd0dea3ba60dfe8efa313cd64a61b78.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"80sGems": {
|
||||
"filters": true,
|
||||
"maps": ["GimmeGimmeOSC", "LetsGroove", "HoldingOut", "ImStillStanding", "JumpGA", "GirlsJustWant", "Ghostbusters", "SpinMeRound"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "The Epic 80s",
|
||||
"description": "Watch out for that aesthetic... The Eighties never left",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_80sGems/82666e10558a167afbb3e2ba4d3c6130.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"90sGems": {
|
||||
"filters": true,
|
||||
"maps": ["GetGetDown", "Macarena", "Blue", "AlwaysLookOn", "LastChristmas", "Bailando1997", "Cotton", "CantTouchThis"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "The Poppin' 90s",
|
||||
"description": "Let's take a trip down memory lane!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_90sGems/197d716e79a6cdf1321a4af7f1d0759d.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BeastlyBeats": {
|
||||
"filters": true,
|
||||
"maps": ["IstanbulQUAT", "CanCan", "WaterMe", "ConCalma", "Kuliki", "DogsOut", "BabyShark", "DibbyDibby"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Beastly Beats",
|
||||
"description": "Hey, if it's got legs, it can dance!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_BeastlyBeats/5cc0e8cf8c4b7e10f6a60bfe09f43c6d.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_1": {
|
||||
"filters": true,
|
||||
"maps": ["HeartOfGlass", "GetAround", "LeFreak", "Potato", "EyeOfTheTiger", "Fame", "ThatsTheWay", "GirlsJustWant"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 1",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-23_BestOfJD_1/83959f48fee8b4466455a5a90b761b27.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_14": {
|
||||
"filters": true,
|
||||
"maps": ["YMCA", "IWillSurvive", "PoundTheAlarm", "WakeMeUpDLC", "Danse", "Moskau", "Gentleman", "Cmon"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2014",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_14/1924d1ee66b0cf1d39eb28c9bdef1121.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_15": {
|
||||
"filters": true,
|
||||
"maps": ["BadRomance", "Macarena", "WalkThisWay", "BreakFreeDLC", "Birthday", "LoveIsAll", "FindYourMove", "BoomClapDLC"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2015",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_15/24778ecdaca186e9db9d7894b958f817.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_16": {
|
||||
"filters": true,
|
||||
"maps": ["StadiumFlow", "Cheerleader", "Fancy", "Lights", "ShutUp", "GetUgly", "AngryBirds", "JuntoATi"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2016",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_16/3558dd6d1ed8bb865df12a61d932b9a9.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_17": {
|
||||
"filters": true,
|
||||
"maps": ["Groove", "TeDominar", "ILoveRock", "Bonbon", "IntoYou", "DragosteaDinTei", "DontStopMe", "Natoo"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2017",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_17/1bc18fc05cd18feb71e4b2b6b117605f.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_18": {
|
||||
"filters": true,
|
||||
"maps": ["GotThat", "Diggy", "Copperhead", "Dharma", "KissingStrangers", "Despacito", "SwishSwish", "Carmen"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2018",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_18/876bb15a8ad0206f1d91a3f013ef51aa.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_19": {
|
||||
"filters": true,
|
||||
"maps": ["DDUDU", "MakeMeFeel", "LittleParty", "ImStillStanding", "Criminal", "Finesse", "NotYourOrdinary", "IFeelItComing"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2019",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-24_BestOfJD_19/b0cf98dfe1c66be6dfeb9c6aa741cbf7.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_2": {
|
||||
"filters": true,
|
||||
"maps": ["Holiday", "MugsyBaloney", "KattiKalandal", "BigGirl", "MonsterMash", "ProfesseurDLC", "Futebol", "Rockafeller"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 2",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-23_BestOfJD_2/a644b6310a842fc247cc124f458bf548.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_3": {
|
||||
"filters": true,
|
||||
"maps": ["BoogieWonderQUAT", "HungarianDance", "CrazyLittle", "JamboMambo", "Mamasita", "PartyRock", "DynamiteQUAT", "SomethinStupid"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 3",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-23_BestOfJD_3/d6c9c2a94e2d6261c1aa7dd997d1d1da.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"BestOfJD_4": {
|
||||
"filters": true,
|
||||
"maps": ["IstanbulQUAT", "YouReTheFirst", "GlamorousCusto", "Diggin", "RockNRoll", "WeRWhoWeRDLC", "Oath", "IDidItAgainQUAT"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Just Dance 4",
|
||||
"description": "Go back in time for a nostalgic trip!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_BestOfJD_4/0d815e92fb36eedb8c2bc503e2c4ca69.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"CakeManiaCollection": {
|
||||
"maps": ["KIDSShout", "MagneticMU", "FollowTheLeader", "FollowTheLeaderALT", "BillieJean"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Season 2: Cake Mania Collection",
|
||||
"description": "ihir rela leka",
|
||||
"coverURL": "https://s3.amazonaws.com/cdn-efds.justdancenext.xyz/public/playlists/covers/ceb33ab64809c932d38925e5d719afdd.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Caps": {
|
||||
"filters": true,
|
||||
"maps": ["TheChoice", "ItsYou", "DespacitoALT", "CantFeelMyFace", "YoLeLlego", "StuckOnAFeeling", "IDontCare", "FitButYouKnow"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Cap It Off",
|
||||
"description": "Pull on that snapback and report to the dance floor!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Caps/ad5ed4269f100412ccc5428c1fe76c11.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Crowns": {
|
||||
"filters": true,
|
||||
"maps": ["ILoveRock", "FeelSpecial", "LeanOnALT", "Starships", "Thumbs", "WalkLike", "Alexandrie", "AintMy"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Royally Cool",
|
||||
"description": "A Playlist fit for royalty",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Crowns/4ccaaebedb0cc5066dab7f67bdaa6210.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"DisneyHits": {
|
||||
"filters": true,
|
||||
"maps": ["JuntoATi", "PrinceAli", "UnderTheSea", "LetItGoDLC", "LetItGo", "Lullaby", "PocoLoco", "HowFar"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Disney Hits",
|
||||
"description": "The best from the Mouse House",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_DisneyHits/dfb5881a49e4449c7611a93ccf739d8e.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"EasternInsirations": {
|
||||
"filters": true,
|
||||
"maps": ["SayonaraRetake", "KungFunk", "HeyMamaALT", "DDUDU", "NewWorld", "BubblePop", "Zenit", "KillThisLove"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Eastern Inspirations",
|
||||
"description": "From India to Bali, to Japan, South Korea, and China... Discover the inspirations for these beautiful worlds",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_EasternInsirations/8a2080935355157da440c2a69296cf6c.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"ElectroBeats": {
|
||||
"filters": true,
|
||||
"maps": ["Albatraoz", "Bangarang", "Animals", "Dharma", "DontYouWorryDLC", "Automaton", "RockNRoll", "Radical"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Electro Beats",
|
||||
"description": "Hit that electro beat... Do not add water",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_ElectroBeats/c5f92dfbf1eb28f878cfdababdbf745c.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Extreme": {
|
||||
"filters": true,
|
||||
"maps": ["JohnWALT", "AnimalsALT", "CircusALT", "DespacitoALT", "SorryALT", "GoodFeelingALT", "TumBumALT", "WalkThisWayALT"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Extreme Moves",
|
||||
"description": "Warm up before attempting this Playlist...",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Extreme/791f2360aa195b044af97135391128f6.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Fitness": {
|
||||
"filters": true,
|
||||
"maps": ["RabiosaALT", "IAmTheBest", "IDontCare", "IKissedSWT", "SeptemberALT", "DibbyDibby", "Skibidi", "GentlemanSWT"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Break a Sweat",
|
||||
"description": "Get through this Playlist, and you're allowed to skip the gym today!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Fitness/904ffea3d6d6136e2ec53aaa2eee638a.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"GirlsBands": {
|
||||
"filters": true,
|
||||
"maps": ["Macarena", "BewareOf", "BabyOneMoreQUAT", "QueTirePaLante", "7Rings", "Sorbet", "Circus", "DDUDU"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Girl Squad",
|
||||
"description": "Better together!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_GirlsBands/41df8a7a9ce5b65f7504d43dfa42530c.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Guests": {
|
||||
"filters": true,
|
||||
"maps": ["Lullaby", "FriendInMe", "BabyShark", "WakeMeUpALT", "LetItGoDLC", "UnderTheSea", "Barbie", "PocoLoco"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Fave Friends",
|
||||
"description": "A Playlist featuring our best friends!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Guests/4a59845dc471b30025236c8fa9cdce4c.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"GurlPowa": {
|
||||
"filters": true,
|
||||
"maps": ["TillTheWorldEnds", "AintMy", "365", "HeyMama", "BadBoy", "ConAltura", "ILoveRock", "FancyTwice"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Girl Power",
|
||||
"description": "The future is female, and so is this Playlist",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_GurlPowa/1ac5770771a887848dc6d7d1c04b709b.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"HappyBirthday": {
|
||||
"filters": true,
|
||||
"maps": ["ImStillStanding", "MeToo", "BornThisWay", "Birthday", "TheFinalCountdown", "IWillSurvive", "DontWorry", "Bailando1997"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Birthday Beats",
|
||||
"description": "It's your birthday! Or even if it's not, get down to these celebratory beats",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_HappyBirthday/854666933fe5e1933ed379cf61495616.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"HappyTimes": {
|
||||
"filters": true,
|
||||
"maps": ["Sugar", "Footloose", "PacaDance", "StopMovin", "InTheNavy", "Fun", "SoyYo", "Happy"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Happy Vibes",
|
||||
"description": "Simply happy :)",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_HappyTimes/8f7b8cfe76c96547a1b4591827cffcdb.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"Hats": {
|
||||
"filters": true,
|
||||
"maps": ["NineAfternoon", "StepByStep", "SangriaWine", "WakingUp", "HeyMama", "TasteTheFeeling", "BlackMamba", "Joone"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Put a Lid on It",
|
||||
"description": "Top off your dancing with these spect-hat-ular songs",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Hats/5ca2f41359fd5d306038e028436b4e6a.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"HeyHandsome": {
|
||||
"filters": true,
|
||||
"maps": ["AdoreYou", "IFeelItComing", "FeelIt", "Talk", "Georgia", "WantToWantMe", "RiskyBusiness", "OtherSideSZA"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Hey Handsome!",
|
||||
"description": "Do you dance as good as you look?",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_HeyHandsome/0a7c1cab477bbdade35c0aee9f59bc16.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"IndianInspirations": {
|
||||
"filters": true,
|
||||
"maps": ["CheapThrillsALT", "KattiKalandal", "JaiHo", "LeanOn", "BewareOf", "BollywoodXmas", "Kurio", "FancyALT"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "South Asian Sounds",
|
||||
"description": "Love that desi flavor",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_IndianInspirations/88226835fc9082e9859eed6d2ff0a780.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"JD22_PL_Online_Sku_Marathon": {
|
||||
"filters": [[{
|
||||
"__class": "JD_CarouselSkuFilter",
|
||||
"gameVersion": ["jd2022"]
|
||||
}
|
||||
]],
|
||||
"maps": ["Buttons", "Jopping", "TGIF", "China", "Judas", "RockYourBody", "Boombayah", "LoveStory"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Marathon",
|
||||
"description": "Test your endurance with longer songs",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/JD22_PL_SKU_Marathon/f02eaa7891a867ada7aa06fcab83b2ed.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"JD22_PL_Online_Sku_Must_Dance_2022": {
|
||||
"filters": [[{
|
||||
"__class": "JD_CarouselSkuFilter",
|
||||
"gameVersion": ["jd2022"]
|
||||
}
|
||||
]],
|
||||
"maps": ["GirlLikeMe", "Judas", "Levitating", "Boombayah", "PopStars", "Mood", "WhoRun", "RockYourBody"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Get a taste of Just Dance 2022",
|
||||
"description": "The most iconic songs from Just Dance 2022",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/JD22_PL_SKU_MustDance2022/316ac6c48d5d7c720671978be5ad407a.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"JD22_PL_Online_Sku_Play_and_Go": {
|
||||
"filters": [[{
|
||||
"__class": "JD_CarouselSkuFilter",
|
||||
"gameVersion": ["jd2022"]
|
||||
}
|
||||
]],
|
||||
"maps": ["PopStars", "China", "SmalltownBoy", "ThinkAboutThings", "Levitating", "TGIF", "Chandelier", "Funk"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Play and Go 2022",
|
||||
"description": "Get a taste of Just Dance 2022",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/JD22_PL_SKU_PlayAndGo2022/934b911d7aa803ffd6e75c68d346afc7.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"JD22_PL_Online_Sku_Teaming_Up": {
|
||||
"filters": [[{
|
||||
"__class": "JD_CarouselSkuFilter",
|
||||
"gameVersion": ["jd2022"]
|
||||
}
|
||||
]],
|
||||
"maps": ["Jopping", "BlackMam", "China", "LevelUp", "FlashPose", "PopStars", "Jerusalema", "Boombayah"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Teaming Up",
|
||||
"description": "Have a blast with your friends!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/JD22_PL_SKU_TeamingUp/25e05327057085a889b715c8d9c78f7a.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"KPop2020": {
|
||||
"filters": true,
|
||||
"maps": ["KillThisLove", "BubblePop", "Bang2019", "IAmTheBest", "FeelSpecial", "NewFace", "KickIt", "Gentleman"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "K-pop",
|
||||
"description": "The essentials of Korean Pop music",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_KPop2020/0a2d0aa52b23d1e73bcf44b867f63701.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"LatinFever": {
|
||||
"filters": true,
|
||||
"maps": ["ILikeIt", "Buscando", "Bailar", "ConAltura", "ObsessionRetake", "Havana", "TakiTaki", "Rabiosa"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Latin Flavors",
|
||||
"description": "These songs will have you feeling the heat",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_LatinFever/7110e36374d03626b9cd0ac8482ca59e.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"NeonTouch": {
|
||||
"filters": true,
|
||||
"maps": ["RockNRoll", "SpectronizerQUAT", "Titanium", "RadicalALT", "Automaton", "Runaway", "LikeIWould", "BlindingLights"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "High Voltage",
|
||||
"description": "Don't touch, just dance!",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_NeonTouch/7c297bc5877826fb9e6dcf6c5ee21e7a.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"RecoFallback": {
|
||||
"fallback": true,
|
||||
"filters": true,
|
||||
"fixedMapOrder": true,
|
||||
"maps": ["Bangarang", "MiGente", "HandClap", "GirlLikeMe", "Mood", "TGIF", "Albatraoz", "SaveYourTears"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Placeholder",
|
||||
"description": "Placeholder",
|
||||
"coverURL": "https://ubistatic-a.akamaihd.net/0060/uat/playlist/cover_1561468252.png",
|
||||
"pinned": false
|
||||
},
|
||||
"Sporty": {
|
||||
"filters": true,
|
||||
"maps": ["EyeOfTheTiger", "SexyAndIKnowItDLC", "SideToALT", "QueTirePaLante", "WhatAFeeling", "Juice", "AnotherOneALT", "Fame"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Work Work",
|
||||
"description": "Athleisure is so in right now",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_Sporty/811d102a359a9e40fd5786c0e92b4a72.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"StreetCred": {
|
||||
"filters": true,
|
||||
"maps": ["Finesse", "HabibiYaeni", "Policeman", "YoLeLlego", "FitButYouKnow", "GetUgly", "MiGente", "NotYourOrdinary"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Street Cred",
|
||||
"description": "Urban beats to move your feet",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_StreetCred/6f9cdcf081094af09d870056956fc376.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"SuperHeroes": {
|
||||
"filters": true,
|
||||
"maps": ["BassaSababa", "CosmicGirl", "HoldingOut", "BreakFreeDLC", "IDidItAgainQUAT", "AnotherOneALT", "WithoutMe", "CantTakeMyEyesALT"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "With Great Power...",
|
||||
"description": "Get on the dance floor with these Super Girls and Boys",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_SuperHeroes/1383f67fd479b22800f29c53a6bfa327.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"UnidentifiedlivingObjects": {
|
||||
"filters": true,
|
||||
"maps": ["RaveIn", "CanCan", "LoveWard", "Vodovorot", "WakeMeUpALT", "SweetSensation", "Blue", "BassaSababa"],
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Anyone Can Dance",
|
||||
"description": "And we mean... ANYONE",
|
||||
"coverURL": "https://jd-s3.cdn.ubi.com/public/playlists/covers/19-10-29_UnidentifiedlivingObjects/a3035e2a9d08537cceb9dd87f66e764e.png",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"reco-top_played": {
|
||||
"maps": ["DansVanDeFarao", "Natoo", "Sun", "Buttons", "Chacarron", "Error", "Mood", "Levitating"],
|
||||
"colors": {
|
||||
"base_color": "5FB61EFF",
|
||||
"grad_color": "17CDBAFF"
|
||||
},
|
||||
"type": "recommended",
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Top Played Worldwide",
|
||||
"description": "The most popular songs around the world",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"reco-top_replayed": {
|
||||
"maps": ["TasteTheFeeling", "Buttons", "KickIt", "BangarangALT", "SugarDance", "WantToWantMeALT", "Malibu", "MagicHalloweenKids"],
|
||||
"colors": {
|
||||
"base_color": "5FB61EFF",
|
||||
"grad_color": "17CDBAFF"
|
||||
},
|
||||
"type": "recommended",
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Top Replayed",
|
||||
"description": "The songs the community dances to on a loop",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"reco-for_you": {
|
||||
"maps": ["Levitating", "DansVanDeFarao", "Sun", "Chacarron", "Mood", "USA", "Natoo", "Believer"],
|
||||
"colors": {
|
||||
"base_color": "FF4582FF",
|
||||
"grad_color": "FFA100FF"
|
||||
},
|
||||
"type": "recommended",
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Recommended for You",
|
||||
"description": "Songs you will like",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"reco-discover": {
|
||||
"maps": ["Levitating", "DansVanDeFarao", "Sun", "Chacarron", "Mood", "USA", "Natoo", "Believer"],
|
||||
"colors": {
|
||||
"base_color": "5FB61EFF",
|
||||
"grad_color": "17CDBAFF"
|
||||
},
|
||||
"type": "recommended",
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Discovery",
|
||||
"description": "Try something new!",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
},
|
||||
"reco-top_country": {
|
||||
"maps": ["Sun", "Chacarron", "Buttons", "Kuliki", "DanceMonkey", "Uno", "Bangarang", "Boombayah"],
|
||||
"colors": {
|
||||
"base_color": "BD01ABFF",
|
||||
"grad_color": "69C2E0FF"
|
||||
},
|
||||
"type": "recommended",
|
||||
"__class": "PlaylistDbService::Playlist",
|
||||
"title": "Top Country",
|
||||
"description": "The most popular songs in your country",
|
||||
"fixedMapOrder": false,
|
||||
"fallback": false,
|
||||
"pinned": false
|
||||
}
|
||||
}
|
||||
}
|
||||
697
database/db/playlists.json
Normal file
697
database/db/playlists.json
Normal file
@@ -0,0 +1,697 @@
|
||||
{
|
||||
"__class": "JD_CarouselContent",
|
||||
"categories": [
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Recommended",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"categoryType": "playlist",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "reco-top_country",
|
||||
"displayCode": 1,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "reco-discover",
|
||||
"displayCode": 2,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "reco-for_you",
|
||||
"displayCode": 3,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "reco-top_played",
|
||||
"displayCode": 4,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "reco-top_replayed",
|
||||
"displayCode": 5,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Category",
|
||||
"title": "Themed Playlists",
|
||||
"act": "ui_carousel",
|
||||
"isc": "grp_row",
|
||||
"categoryType": "playlist",
|
||||
"items": [
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "00sGems",
|
||||
"displayCode": 6,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "10sGems",
|
||||
"displayCode": 7,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "70sGems",
|
||||
"displayCode": 8,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "80sGems",
|
||||
"displayCode": 9,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "90sGems",
|
||||
"displayCode": 10,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BeastlyBeats",
|
||||
"displayCode": 11,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_1",
|
||||
"displayCode": 12,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_2",
|
||||
"displayCode": 13,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_3",
|
||||
"displayCode": 14,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_4",
|
||||
"displayCode": 15,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_14",
|
||||
"displayCode": 16,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_15",
|
||||
"displayCode": 17,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_16",
|
||||
"displayCode": 18,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_17",
|
||||
"displayCode": 19,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_18",
|
||||
"displayCode": 20,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "BestOfJD_19",
|
||||
"displayCode": 21,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "CakeManiaCollection",
|
||||
"displayCode": 22,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Caps",
|
||||
"displayCode": 23,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Crowns",
|
||||
"displayCode": 24,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "DisneyHits",
|
||||
"displayCode": 25,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "EasternInsirations",
|
||||
"displayCode": 26,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "ElectroBeats",
|
||||
"displayCode": 27,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Extreme",
|
||||
"displayCode": 28,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Fitness",
|
||||
"displayCode": 29,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "GirlsBands",
|
||||
"displayCode": 30,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Guests",
|
||||
"displayCode": 31,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "GurlPowa",
|
||||
"displayCode": 32,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "HappyBirthday",
|
||||
"displayCode": 33,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "HappyTimes",
|
||||
"displayCode": 34,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Hats",
|
||||
"displayCode": 35,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "HeyHandsome",
|
||||
"displayCode": 36,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "IndianInspirations",
|
||||
"displayCode": 37,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "KPop2020",
|
||||
"displayCode": 38,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "LatinFever",
|
||||
"displayCode": 39,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "NeonTouch",
|
||||
"displayCode": 40,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "Sporty",
|
||||
"displayCode": 41,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "StreetCred",
|
||||
"displayCode": 42,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "SuperHeroes",
|
||||
"displayCode": 43,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class": "Item",
|
||||
"isc": "grp_row",
|
||||
"act": "ui_carousel",
|
||||
"actionList": "_None",
|
||||
"actionListUpsell": "_None",
|
||||
"components": [
|
||||
{
|
||||
"__class": "JD_CarouselContentComponent_Playlist",
|
||||
"playlistID": "UnidentifiedLivingObjects",
|
||||
"displayCode": 44,
|
||||
"displayMethod": "manual"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"actionLists": {
|
||||
"_None": {
|
||||
"__class": "ActionList",
|
||||
"actions": [
|
||||
{
|
||||
"__class": "Action",
|
||||
"title": "None",
|
||||
"type": "do-nothing"
|
||||
}
|
||||
],
|
||||
"itemType": "map"
|
||||
}
|
||||
},
|
||||
"songItemLists": {}
|
||||
}
|
||||
31
database/db/quests-nx.json
Normal file
31
database/db/quests-nx.json
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"__class": "OnlineQuestDb",
|
||||
"quests": [
|
||||
{
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/quest_logo.png/816427293e03aea07ae754fb359e76df.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/nx/quest_cover.tga.ckd/dee0111206bc753393441e97e19a2be9.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/nx/quest_logo.tga.ckd/a709e1f8a8dbd05a054146299d8bbc7f.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/nx/quest_logo_shaded.tga.ckd/cf05d311fa38bbe31db8fd4d0ee00227.ckd"
|
||||
},
|
||||
"id": "30",
|
||||
"locked": 0,
|
||||
"playlist": ["BornThisWay", "IKissed", "Titanium"],
|
||||
"title": "Pride Quest"
|
||||
},
|
||||
{
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/quest_logo.png/02234d2f68340f5803c995be4369c7d0.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/nx/quest_cover.tga.ckd/8eb79a90941444236c46f5902b51abb7.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/nx/quest_logo.tga.ckd/36754784ce44fb8978b8a2f39fd6ba2f.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/nx/quest_logo_shaded.tga.ckd/207b98cefea547d70bf36d6ca82ea18a.ckd"
|
||||
},
|
||||
"id": "31",
|
||||
"locked": 0,
|
||||
"playlist": ["Xmas", "LastChristmas", "BollywoodXmas"],
|
||||
"title": "Christmas"
|
||||
}
|
||||
]
|
||||
}
|
||||
344
database/db/quests-pc.json
Normal file
344
database/db/quests-pc.json
Normal file
@@ -0,0 +1,344 @@
|
||||
{
|
||||
"__class": "OnlineQuestDb",
|
||||
"quests": [
|
||||
{
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/quest_logo.png/816427293e03aea07ae754fb359e76df.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_cover.tga.ckd/b514e9fabbc39152d2ee9362437a1fb2.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_logo.tga.ckd/9c6630baf9b2ab30e8fd75b0699f2cc8.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_logo_shaded.tga.ckd/aa100767755dfc65ce74708dc09b94c7.ckd"
|
||||
},
|
||||
"id": "30",
|
||||
"locked": 0,
|
||||
"playlist": ["BornThisWay", "IKissed", "Titanium"],
|
||||
"title": "Pride Quest"
|
||||
},
|
||||
{
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/quest_logo.png/02234d2f68340f5803c995be4369c7d0.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_cover.tga.ckd/e9ad251548b89569b26d874e35b4995e.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_logo.tga.ckd/0ba02470475bdfb34868398bfcd637a4.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_logo_shaded.tga.ckd/dd695d93c4f213aacbe94b0ee60d6c3c.ckd"
|
||||
},
|
||||
"id": "31",
|
||||
"locked": 0,
|
||||
"playlist": ["Xmas", "LastChristmas", "BollywoodXmas"],
|
||||
"title": "Christmas"
|
||||
},
|
||||
{
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/29/quest_logo.png/338798c51107cf010220f72c654ca171.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/29/pc/quest_cover.tga.ckd/159924ac35e6a6a2c1f23da728d486cc.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/29/pc/quest_logo.tga.ckd/dbcd6b999232ab1e0abf5e21920472f0.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/29/pc/quest_logo_shaded.tga.ckd/13f2bd9d8f3179633b563787d623185d.ckd"
|
||||
},
|
||||
"id": "29",
|
||||
"locked": 0,
|
||||
"playlist": ["FindYourMove", "MrSaxobeat", "WakeMeUpALT"],
|
||||
"title": "Watermelon"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/28/quest_logo.png/24d1ec60e83494e05969e83ed7d4e74d.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/28/pc/quest_cover.tga.ckd/9b879d2b3207d89c32cc0fc0baaf3baf.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/28/pc/quest_logo.tga.ckd/7d11df956cb40aae9f30666a640aed95.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/28/pc/quest_logo_shaded.tga.ckd/95a627e06ae3e962f713367014815524.ckd"
|
||||
},
|
||||
"id": "28",
|
||||
"locked": 0,
|
||||
"playlist": ["BreakFreeDLC", "KaboomPow", "HowDeep"],
|
||||
"title": "Comics"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/27/quest_logo.png/bf3cec27e8de577f657208cfd51d932e.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/27/pc/quest_cover.tga.ckd/7091424e7cbb1da6b736bb7ffea9ff34.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/27/pc/quest_logo.tga.ckd/82b818785da971cbba0d262da0cd1a73.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/27/pc/quest_logo_shaded.tga.ckd/ce1e9c6e49a146ff5222082d112e6b24.ckd"
|
||||
},
|
||||
"id": "27",
|
||||
"locked": 0,
|
||||
"playlist": ["AintMy", "Aquarius", "MrSaxobeat"],
|
||||
"title": "Surfboard"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/26/quest_logo.png/df5720ad8387c4852d848af60994820b.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/26/pc/quest_cover.tga.ckd/a11a110c3d6e00324bfc1dbd90828b7f.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/26/pc/quest_logo.tga.ckd/a7e54eed42f69369a15750b470413582.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/26/pc/quest_logo_shaded.tga.ckd/0c5c79972355cd0a97855132016f5125.ckd"
|
||||
},
|
||||
"id": "26",
|
||||
"locked": 0,
|
||||
"playlist": ["DontLet", "RockNRollDLC", "TurnUpTheLoveALT"],
|
||||
"title": "Origami"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/quest_logo.png/816427293e03aea07ae754fb359e76df.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_cover.tga.ckd/b514e9fabbc39152d2ee9362437a1fb2.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_logo.tga.ckd/9c6630baf9b2ab30e8fd75b0699f2cc8.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/25/pc/quest_logo_shaded.tga.ckd/aa100767755dfc65ce74708dc09b94c7.ckd"
|
||||
},
|
||||
"id": "25",
|
||||
"locked": 0,
|
||||
"playlist": ["HandClap", "JailHouse", "AmericanGirlDLC"],
|
||||
"title": "Cactus"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/24/quest_logo.png/f9bf9b9dea0a07aead88872148ee7e9d.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/24/pc/quest_cover.tga.ckd/c64c4a33421a5d48e6715f38dfe623f7.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/24/pc/quest_logo.tga.ckd/ed7d9fb1d2b327069f61d5505d22c2d6.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/24/pc/quest_logo_shaded.tga.ckd/d32ef16e1b5c06c89cfa4b0db38b8d16.ckd"
|
||||
},
|
||||
"id": "24",
|
||||
"locked": 0,
|
||||
"playlist": ["MeToo", "LoveIsAll", "SomethinStupid"],
|
||||
"title": "Kiss"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/23/quest_logo.png/7628092640bc7f0e1461e6dcf807d2fa.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/23/pc/quest_cover.tga.ckd/c03b910b00cb2d61a21a83a2bf7ede47.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/23/pc/quest_logo.tga.ckd/1100664f144f0b5024091e4d29977b95.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/23/pc/quest_logo_shaded.tga.ckd/440d9fbb0feef0f19c1662f886586172.ckd"
|
||||
},
|
||||
"id": "23",
|
||||
"locked": 0,
|
||||
"playlist": ["DontWorryMadcon", "Gigolo", "GotMeDancing"],
|
||||
"title": "Dandy"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/21/quest_logo.png/53e8b57342a6b5ed488714feb9accd28.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/21/pc/quest_cover.tga.ckd/caf1e9f1c011e5740f03dac55f956799.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/21/pc/quest_logo.tga.ckd/611dfe4496f37be09ff25783fbe88749.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/21/pc/quest_logo_shaded.tga.ckd/bf9db0ef763fc0375abfa942c3636113.ckd"
|
||||
},
|
||||
"id": "21",
|
||||
"locked": 0,
|
||||
"playlist": ["TheGreatest", "CaliforniaGurls", "WantUBack"],
|
||||
"title": "Unicorn"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/20/quest_logo.png/cae9fe5093b162228e249d0ac951f923.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/20/pc/quest_cover.tga.ckd/b930b1cf962639524ce2a7871630c676.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/20/pc/quest_logo.tga.ckd/7faa506e28513e297720559ec2380fe9.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/20/pc/quest_logo_shaded.tga.ckd/afd285b2a524a077ad439f06708ec88b.ckd"
|
||||
},
|
||||
"id": "20",
|
||||
"locked": 0,
|
||||
"playlist": ["TimeWarpQUAT", "MonsterMash", "Youth"],
|
||||
"title": "Zombi"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/19/quest_logo.png/5e68281231e324dd8c15476e612332a3.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/19/pc/quest_cover.tga.ckd/9ecc4616494ebf59eacab34d22be4d1f.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/19/pc/quest_logo.tga.ckd/9a86fa38b320607040a1d25dbfa743a2.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/19/pc/quest_logo_shaded.tga.ckd/58b4949cfb2782fec097c008ad925326.ckd"
|
||||
},
|
||||
"id": "19",
|
||||
"locked": 0,
|
||||
"playlist": ["Summer", "KetchupSong", "TheWorldDLC"],
|
||||
"title": "Summer"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/18/quest_logo.png/b1986839a0d5c6a55de4621194b8686c.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/18/pc/quest_cover.tga.ckd/b77701a7d8e3637b22a206cf6f77d738.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/18/pc/quest_logo.tga.ckd/87600b39ff5f8aad2c4afac0ceb417cb.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/18/pc/quest_logo_shaded.tga.ckd/2bc36ac5414da2f024f793eb466aeffa.ckd"
|
||||
},
|
||||
"id": "18",
|
||||
"locked": 0,
|
||||
"playlist": ["Birthday", "Lollipop", "OhNo"],
|
||||
"title": "Lollipop"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/17/quest_logo.png/d2b910447666d0f7ad02996c5b1a927a.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/17/pc/quest_cover.tga.ckd/dcb3d330a657f4dda87cc1a9bf3a438f.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/17/pc/quest_logo.tga.ckd/8de883906eeef3163662aba2d4c621fc.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/17/pc/quest_logo_shaded.tga.ckd/97a218cad6ecf28e1b5c98b21e3e9191.ckd"
|
||||
},
|
||||
"id": "17",
|
||||
"locked": 0,
|
||||
"playlist": ["Maneater", "HoldMyHand", "BeautyAndABeatDLC"],
|
||||
"title": "Grimoire"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/16/quest_logo.png/c36e933fa8144f76be1f5ebbbebbf698.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/16/pc/quest_cover.tga.ckd/fbc1ab6e28738917420548852154e336.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/16/pc/quest_logo.tga.ckd/95cfb9df65b01ded7438396879fe5457.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/16/pc/quest_logo_shaded.tga.ckd/34eb7a055d4a61d4bfe1e392b40a9f96.ckd"
|
||||
},
|
||||
"id": "16",
|
||||
"locked": 0,
|
||||
"playlist": ["Domino", "Luftballons", "LoveYouLike"],
|
||||
"title": "Lily of the Valley"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/15/quest_logo.png/635664f2aa6021ce9df498bc0b7b9406.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/15/pc/quest_cover.tga.ckd/489ec14fed3e6e705d766617cca6c7c3.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/15/pc/quest_logo.tga.ckd/fc600396b9a8d67475fb8d9146e076c7.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/15/pc/quest_logo_shaded.tga.ckd/47d40401a61b3562e402fc3e1db2e702.ckd"
|
||||
},
|
||||
"id": "15",
|
||||
"locked": 0,
|
||||
"playlist": ["Balance", "AmIWrong", "Gentleman"],
|
||||
"title": "Cupcake"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/14/quest_logo.png/c0a65c3ee3f1deed33ea802cf6258573.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/14/pc/quest_cover.tga.ckd/0cc249321525cc309424af91273e8d95.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/14/pc/quest_logo.tga.ckd/851972c6213a1d0afd95b0e9349edc4a.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/14/pc/quest_logo_shaded.tga.ckd/eae358efcd2fa9b63e40fdd57c789689.ckd"
|
||||
},
|
||||
"id": "14",
|
||||
"locked": 0,
|
||||
"playlist": ["BlurredLines", "DontYouWorryDLC", "DynamiteQUAT"],
|
||||
"title": "Mushroom"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/13/quest_logo.png/74f502356412b40a623d7b95660ae76f.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/13/pc/quest_cover.tga.ckd/8149d51dca9a7b9a321547e8100de201.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/13/pc/quest_logo.tga.ckd/aaf7d376b312436abaf8d762e793ca6c.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/13/pc/quest_logo_shaded.tga.ckd/fbeb1f5454ef05ad9d0dc5038cf8de0c.ckd"
|
||||
},
|
||||
"id": "13",
|
||||
"locked": 0,
|
||||
"playlist": ["BreakFreeDLC", "PartyRock", "IndiaWaale"],
|
||||
"title": "Special Easter"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/12/quest_logo.png/5311d0135ede4c0f8347e423047b9778.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/12/pc/quest_cover.tga.ckd/db1a9316ef932e95729b707fa0deddaf.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/12/pc/quest_logo.tga.ckd/de582030f36091eabc583d8af3c4c41f.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/12/pc/quest_logo_shaded.tga.ckd/7baef08ecbf787edd8fbe3eceecf38d7.ckd"
|
||||
},
|
||||
"id": "12",
|
||||
"locked": 0,
|
||||
"playlist": ["SexyAndIKnowItDLC", "TasteTheFeeling", "Wild"],
|
||||
"title": "Lucky"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/11/quest_logo.png/abbefb0ab56600e7917e3ba522d2c59b.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/11/jd2016-pc-all/quest_cover.tga.ckd/c567b0c89d8ae453e281dadc8e6308aa.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/11/jd2016-pc-all/quest_logo.tga.ckd/57be10a1e786909f8a7127976ae20ac8.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/11/jd2016-pc-all/quest_logo_shaded.tga.ckd/a2f662a8933e61706dcc08c49fd3851a.ckd"
|
||||
},
|
||||
"id": "11",
|
||||
"locked": 0,
|
||||
"playlist": ["BoomClapDLC", "YouReTheFirst", "FindYou"],
|
||||
"title": "Special Valentine"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/quest_logo.png/02234d2f68340f5803c995be4369c7d0.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_cover.tga.ckd/e9ad251548b89569b26d874e35b4995e.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_logo.tga.ckd/0ba02470475bdfb34868398bfcd637a4.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/9/jd2016-pc-all/quest_logo_shaded.tga.ckd/dd695d93c4f213aacbe94b0ee60d6c3c.ckd"
|
||||
},
|
||||
"id": "9",
|
||||
"locked": 0,
|
||||
"playlist": ["LetItGo", "Xmas", "Rasputin"],
|
||||
"title": "Special New Year"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/8/quest_logo.png/7cffa3bfde67292fc6db4b6d71135216.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/8/jd2016-pc-all/quest_cover.tga.ckd/53f073649fa623de7a2ce9c2068fee8e.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/8/jd2016-pc-all/quest_logo.tga.ckd/83edfd18c0170287bf4f53ca021632a8.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/8/jd2016-pc-all/quest_logo_shaded.tga.ckd/77c9195cbc07a065cf2bb4f651eed324.ckd"
|
||||
},
|
||||
"id": "8",
|
||||
"locked": 0,
|
||||
"playlist": ["MovesLikeDLC", "ShutUp", "TurnUpTheLove"],
|
||||
"title": "Royal Key"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/7/quest_logo.png/10e2e3fa08edae8efebd021f06350cdf.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/7/jd2016-pc-all/quest_cover.tga.ckd/24677a442f399f91b3f940a87b15b247.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/7/jd2016-pc-all/quest_logo.tga.ckd/898de48f6d617d1f416735e0c44e2b70.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/7/jd2016-pc-all/quest_logo_shaded.tga.ckd/533c9c7f5bfc0df7198dd084275d2e94.ckd"
|
||||
},
|
||||
"id": "7",
|
||||
"locked": 0,
|
||||
"playlist": ["Mad", "HeyYa", "BetterWhen"],
|
||||
"title": "Castle"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/6/quest_logo.png/6751c7a26488a99c3fa1a3f68744e658.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/6/jd2016-pc-all/quest_cover.tga.ckd/f1a42d8cd25b5ffb9246d19e1bb9c2c9.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/6/jd2016-pc-all/quest_logo.tga.ckd/f6a9aefdc0ea779f745d717c3ac2dc5f.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/6/jd2016-pc-all/quest_logo_shaded.tga.ckd/6e21cbba14f40d5294bfd700818a2a9e.ckd"
|
||||
},
|
||||
"id": "6",
|
||||
"locked": 0,
|
||||
"playlist": ["GoodFeeling", "IDidItAgainQUAT", "BuiltForThis"],
|
||||
"title": "Royal"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/5/quest_logo.png/809c25c0e6f365305c15cd47c9a6bb6b.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/5/jd2016-pc-all/quest_cover.tga.ckd/b0a7fbe83595de3ccd1e3b582f18bb51.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/5/jd2016-pc-all/quest_logo.tga.ckd/4a5431acf99c575761caf4f298ebc010.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/5/jd2016-pc-all/quest_logo_shaded.tga.ckd/081b5061adc87f66e2b01381ad7cceba.ckd"
|
||||
},
|
||||
"id": "5",
|
||||
"locked": 0,
|
||||
"playlist": ["HalloweenQUAT", "IWillSurvive", "Ghostbusters"],
|
||||
"title": "Special Halloween"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/4/quest_logo.png/fb7b37c10b5527a8b202a94575725295.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/4/jd2016-pc-all/quest_cover.tga.ckd/c7f1e3ffa46db464491b14735803eb13.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/4/jd2016-pc-all/quest_logo.tga.ckd/a90165516797cfbe16b6d258ba2c14ba.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/4/jd2016-pc-all/quest_logo_shaded.tga.ckd/0d461a70699fe07db316c47e0fe7156d.ckd"
|
||||
},
|
||||
"id": "4",
|
||||
"locked": 0,
|
||||
"playlist": ["Happy", "Cmon", "PoundTheAlarm"],
|
||||
"title": "Ring"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/3/quest_logo.png/4ddd43c50a3fc4a625e75712541e304d.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/3/jd2016-pc-all/quest_cover.tga.ckd/4f50e3e612b389ecfd6a86ddd94c89b1.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/3/jd2016-pc-all/quest_logo.tga.ckd/37a776c63bd96a87d21fd3bbb4b2af68.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/3/jd2016-pc-all/quest_logo_shaded.tga.ckd/0d89016437bdfca9e0082a3a89acd889.ckd"
|
||||
},
|
||||
"id": "3",
|
||||
"locked": 0,
|
||||
"playlist": ["JustDance", "Americano", "ThatPower"],
|
||||
"title": "Scepter"
|
||||
}, {
|
||||
"__class": "OnlineQuest",
|
||||
"assetUrls": {
|
||||
"phoneImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/2/quest_logo.png/451367e761e147544cbbd7a7f25e777f.png",
|
||||
"coverImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/2/jd2016-pc-all/quest_cover.tga.ckd/658bb292c680d3b4aaf552e070442de4.ckd",
|
||||
"logoImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/2/jd2016-pc-all/quest_logo.tga.ckd/dbc4f4818f1055c566307367784fcb6e.ckd",
|
||||
"logoShadedImageURL": "https://jd-s3.bc5f39.workers.dev/public/quests/2/jd2016-pc-all/quest_logo_shaded.tga.ckd/0d89016437bdfca9e0082a3a89acd889.ckd"
|
||||
},
|
||||
"id": "2",
|
||||
"locked": 0,
|
||||
"playlist": ["GangnamStyleDLC", "Cheerleader", "BadRomance"],
|
||||
"title": "Throne"
|
||||
}
|
||||
]
|
||||
}
|
||||
405
database/db/quests.json
Normal file
405
database/db/quests.json
Normal file
@@ -0,0 +1,405 @@
|
||||
{
|
||||
"__class":"JD_CarouselContent",
|
||||
"categories":[
|
||||
{
|
||||
"__class":"Category",
|
||||
"title":"Local Dance Quests",
|
||||
"act":"quest_carousel",
|
||||
"isc":"quest_row",
|
||||
"items":[
|
||||
{
|
||||
"__class":"Item",
|
||||
"offlineRequest":{
|
||||
"__class":"JD_CarouselQuestRequest",
|
||||
"offline":true,
|
||||
"uuid":"c5a89b10-6130-45f7-b259-b50202e375a0",
|
||||
"actionListName":"questUnlocked"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"__class":"Category",
|
||||
"title":"Just Dance Unlimited",
|
||||
"act":"quest_carousel",
|
||||
"isc":"quest_row_unlimited",
|
||||
"items":[
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"31"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"30"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"29"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"28"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"27"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"26"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"25"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"24"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"23"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"21"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"20"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"19"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"18"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"17"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"16"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"15"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"14"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"13"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"12"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"11"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"9"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"8"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"7"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"6"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"5"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"4"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"3"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"2"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
},
|
||||
{
|
||||
"__class":"Item",
|
||||
"isc":"quest_item",
|
||||
"act":"ui_component_base",
|
||||
"components":[
|
||||
{
|
||||
"__class":"JD_CarouselContentComponent_Quest",
|
||||
"questId":"1"
|
||||
}
|
||||
],
|
||||
"actionList":"questUnlocked"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"actionLists":{
|
||||
"questUnlocked":{
|
||||
"__class":"ActionList",
|
||||
"actions":[
|
||||
{
|
||||
"__class":"Action",
|
||||
"title":"Dance",
|
||||
"type":"start-quest"
|
||||
}
|
||||
],
|
||||
"itemType":"quest"
|
||||
},
|
||||
"questLocked":{
|
||||
"__class":"ActionList",
|
||||
"actions":[
|
||||
{
|
||||
"__class":"Action",
|
||||
"title":"Locked",
|
||||
"type":"display-upsell-quest"
|
||||
}
|
||||
],
|
||||
"itemType":"quest"
|
||||
}
|
||||
},
|
||||
"songItemLists":{
|
||||
|
||||
}
|
||||
}
|
||||
55
database/db/requestSpecificMaps.json
Normal file
55
database/db/requestSpecificMaps.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"BoysALiar": {
|
||||
"artist": "PinkPantheress & Ice Spice",
|
||||
"assets": {
|
||||
"map_bkgImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/map_bkgImageUrl.png",
|
||||
"banner_bkgImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/banner_bkgImageUrl.png",
|
||||
"coach1ImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/coach1ImageUrl.png",
|
||||
"phoneCoach1ImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/phoneCoach1ImageUrl.png",
|
||||
"coach2ImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/coach2ImageUrl.png",
|
||||
"phoneCoach2ImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/phoneCoach2ImageUrl.png",
|
||||
"coverImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/coverImageUrl.png",
|
||||
"cover_smallImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/cover_smallImageUrl.png",
|
||||
"expandCoachImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/expandCoachImageUrl.png",
|
||||
"phoneCoverImageUrl": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/phoneCoverImageUrl.png"
|
||||
},
|
||||
"audioPreviewData": "{\"__class\":\"MusicTrackData\",\"structure\":{\"__class\":\"MusicTrackStructure\",\"markers\":[0,21654,43308,64962,86617,108271,129925,151579,173233,194887,216541,238195,259850,281504,303158,324812,346466,368120,389774,411429,433083,454737,476391,498045,519699,541353,563008,584662,606316,627970,649624,671278,692932,714586,736241,757895,779549,801203,822857,844511,866165,887820,909474,931128,952782,974436,996090,1017744,1039398,1061053,1082707,1104361,1126015,1147669,1169323,1190977,1212632,1234286,1255940,1277594,1299248,1320902,1342556,1364211,1385865,1407519],\"signatures\":[{\"__class\":\"MusicSignature\",\"marker\":0,\"beats\":4}],\"startBeat\":0,\"endBeat\":60,\"fadeStartBeat\":0,\"useFadeStartBeat\":false,\"fadeEndBeat\":0,\"useFadeEndBeat\":false,\"videoStartTime\":0,\"previewEntry\":0,\"previewLoopStart\":0,\"previewLoopEnd\":65,\"volume\":0,\"fadeInDuration\":0,\"fadeInType\":0,\"fadeOutDuration\":0,\"fadeOutType\":0},\"path\":\"\",\"url\":\"jmcs://jd-contents/BoysALiar/BoysALiar_AudioPreview.ogg\"}",
|
||||
"coachCount": 2,
|
||||
"credits": "All Credits Goes to PinkPantheress & Ice Spice. Placeholder Credits, Generated By Automodder",
|
||||
"difficulty": 2,
|
||||
"doubleScoringType": -1,
|
||||
"jdmAttributes": {},
|
||||
"lyricsColor": "FFE055FF",
|
||||
"lyricsType": 0,
|
||||
"mainCoach": -1,
|
||||
"mapLength": 130.376,
|
||||
"mapName": "BoysALiar",
|
||||
"mapPreviewMpd": "<?xml version=\"1.0\"?>\r\n<MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:DASH:schema:MPD:2011\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011\" type=\"static\" mediaPresentationDuration=\"PT30S\" minBufferTime=\"PT1S\" profiles=\"urn:webm:dash:profile:webm-on-demand:2012\">\r\n\t<Period id=\"0\" start=\"PT0S\" duration=\"PT30S\">\r\n\t\t<AdaptationSet id=\"0\" mimeType=\"video/webm\" codecs=\"vp9\" lang=\"eng\" maxWidth=\"720\" maxHeight=\"370\" subsegmentAlignment=\"true\" subsegmentStartsWithSAP=\"1\" bitstreamSwitching=\"true\">\r\n\t\t\t<Representation id=\"0\" bandwidth=\"649637\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/BoysALiar/BoysALiar_MapPreviewNoSoundCrop_LOW.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"639-1129\">\r\n\t\t\t\t\t<Initialization range=\"0-639\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"1\" bandwidth=\"1494556\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/BoysALiar/BoysALiar_MapPreviewNoSoundCrop_MID.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"639-1129\">\r\n\t\t\t\t\t<Initialization range=\"0-639\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"2\" bandwidth=\"2985169\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/BoysALiar/BoysALiar_MapPreviewNoSoundCrop_HIGH.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"639-1129\">\r\n\t\t\t\t\t<Initialization range=\"0-639\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t\t<Representation id=\"3\" bandwidth=\"5932441\">\r\n\t\t\t\t<BaseURL>jmcs://jd-contents/BoysALiar/BoysALiar_MapPreviewNoSoundCrop_ULTRA.vp9.webm</BaseURL>\r\n\t\t\t\t<SegmentBase indexRange=\"639-1136\">\r\n\t\t\t\t\t<Initialization range=\"0-639\" />\r\n\t\t\t\t</SegmentBase>\r\n\t\t\t</Representation>\r\n\t\t</AdaptationSet>\r\n\t</Period>\r\n</MPD>\r\n",
|
||||
"mode": 6,
|
||||
"originalJDVersion": 2024,
|
||||
"packages": {
|
||||
"mapContent": "BoysALiar_mapContent"
|
||||
},
|
||||
"parentMapName": "BoysALiar",
|
||||
"skuIds": {},
|
||||
"songColors": {
|
||||
"songColor_1A": "3C147DFF",
|
||||
"songColor_1B": "180832FF",
|
||||
"songColor_2A": "E078D1FF",
|
||||
"songColor_2B": "593053FF"
|
||||
},
|
||||
"status": 3,
|
||||
"sweatDifficulty": 1,
|
||||
"tags": [
|
||||
"Main",
|
||||
"freeSong",
|
||||
"subscribedSong"
|
||||
],
|
||||
"title": "Boy's A Liar pt. 2",
|
||||
"urls": {
|
||||
"jmcs://jd-contents/BoysALiar/BoysALiar_AudioPreview.ogg": "https://cdn.bc5f39.workers.dev/maps/public/assets/BoysALiar/BoysALiar_AudioPreview.ogg"
|
||||
},
|
||||
"customTypeName": "",
|
||||
"serverChangelist": 696566
|
||||
}
|
||||
}
|
||||
14
database/db/subscription.json
Normal file
14
database/db/subscription.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"validity": true,
|
||||
"errorCode": "",
|
||||
"timeLeft": 110320241505,
|
||||
"expiryTimeStamp": "110320241505",
|
||||
"platformId": "dffcb770-82e7-4b5d-b3e2-d33172abecea",
|
||||
"trialActivated": false,
|
||||
"consoleHasTrial": true,
|
||||
"trialTimeLeft": 110320241505,
|
||||
"trialDuration": "110320241505",
|
||||
"trialIsActive": false,
|
||||
"needEshopLink": false,
|
||||
"autoRefresh": true
|
||||
}
|
||||
1
database/leaderboard/dotw/__placeholder.json
Normal file
1
database/leaderboard/dotw/__placeholder.json
Normal file
@@ -0,0 +1 @@
|
||||
{}
|
||||
9
database/nohud/chunk.json
Normal file
9
database/nohud/chunk.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Despacito": {
|
||||
"jmcs://jd-contents/Despacito/Despacito_ULTRA.webm": "https://mirror.bc5f39.workers.dev/https://cdn.glitch.com/c6807563-9703-4452-bd7b-b06e822ec772/Despacito_ULTRA.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_MID.webm": "https://mirror.bc5f39.workers.dev/https://cdn.glitch.com/c6807563-9703-4452-bd7b-b06e822ec772/Despacito_MID.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_LOW.webm": "https://mirror.bc5f39.workers.dev/https://cdn.glitch.com/c6807563-9703-4452-bd7b-b06e822ec772/Despacito_LOW.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito_HIGH.webm": "https://mirror.bc5f39.workers.dev/https://cdn.glitch.com/c6807563-9703-4452-bd7b-b06e822ec772/Despacito_HIGH.webm",
|
||||
"jmcs://jd-contents/Despacito/Despacito.ogg": "https://mirror.bc5f39.workers.dev/https://cdn.glitch.com/c6807563-9703-4452-bd7b-b06e822ec772/Despacito.ogg"
|
||||
}
|
||||
}
|
||||
12
database/nohud/placeholder.json
Normal file
12
database/nohud/placeholder.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"__class" : "ContentAuthorizationEntry",
|
||||
"duration" : 300,
|
||||
"changelist" : 466919,
|
||||
"urls" : {
|
||||
"jmcs://jd-contents/{Placeholder}/{Placeholder}_ULTRA.webm" : "https://cdn.bc5f39.workers.dev/maps/nohud/{Placeholder}/{Placeholder}_ULTRA.webm",
|
||||
"jmcs://jd-contents/{Placeholder}/{Placeholder}_MID.webm" : "https://cdn.bc5f39.workers.dev/maps/nohud/{Placeholder}/{Placeholder}_MID.webm",
|
||||
"jmcs://jd-contents/{Placeholder}/{Placeholder}_LOW.webm" : "https://cdn.bc5f39.workers.dev/maps/nohud/{Placeholder}/{Placeholder}_LOW.webm",
|
||||
"jmcs://jd-contents/{Placeholder}/{Placeholder}_HIGH.webm" : "https://cdn.bc5f39.workers.dev/maps/nohud/{Placeholder}/{Placeholder}_HIGH.webm",
|
||||
"jmcs://jd-contents/{Placeholder}/{Placeholder}.ogg" : "https://cdn.bc5f39.workers.dev/maps/nohud/{Placeholder}/{Placeholder}.ogg"
|
||||
}
|
||||
}
|
||||
12
database/packages.json
Normal file
12
database/packages.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"__class": "PackageIds",
|
||||
"packageIds": [
|
||||
"carnival",
|
||||
"christmas",
|
||||
"easter",
|
||||
"halloween",
|
||||
"valentine",
|
||||
"abba_2017",
|
||||
"kids3"
|
||||
]
|
||||
}
|
||||
40
database/skumerge.js
Normal file
40
database/skumerge.js
Normal file
@@ -0,0 +1,40 @@
|
||||
const fs = require('fs');
|
||||
|
||||
function mergeSKUs(sku1Data, sku2Data, sku3Data) {
|
||||
// Parsing SKU data from JSON
|
||||
const sku1 = JSON.parse(sku1Data);
|
||||
const sku2 = JSON.parse(sku2Data);
|
||||
const sku3 = JSON.parse(sku3Data);
|
||||
|
||||
// Creating merged SKU object
|
||||
const mergedSKU = { ...sku1 };
|
||||
|
||||
// Merging sku2 into mergedSKU, if keys don't already exist
|
||||
Object.keys(sku2).forEach(key => {
|
||||
if (!mergedSKU[key]) {
|
||||
mergedSKU[key] = sku2[key];
|
||||
}
|
||||
});
|
||||
|
||||
// Merging sku3 into mergedSKU, if keys don't already exist in sku1 or sku2
|
||||
Object.keys(sku3).forEach(key => {
|
||||
if (!mergedSKU[key] && !sku2[key]) {
|
||||
mergedSKU[key] = sku3[key];
|
||||
}
|
||||
});
|
||||
|
||||
return mergedSKU;
|
||||
}
|
||||
|
||||
// Reading SKU data from input files
|
||||
const sku1Data = fs.readFileSync('sku1.json', 'utf8');
|
||||
const sku2Data = fs.readFileSync('sku2.json', 'utf8');
|
||||
const sku3Data = fs.readFileSync('sku3.json', 'utf8');
|
||||
|
||||
// Merging SKUs
|
||||
const mergedSKU = mergeSKUs(sku1Data, sku2Data, sku3Data);
|
||||
|
||||
// Writing merged SKU back to sku1.json
|
||||
fs.writeFileSync('sku1.json', JSON.stringify(mergedSKU, null, 2));
|
||||
|
||||
console.log('Merged SKUs into sku1.json successfully.');
|
||||
0
database/tmp/cooking.json
Normal file
0
database/tmp/cooking.json
Normal file
1
database/tmp/logs.json
Normal file
1
database/tmp/logs.json
Normal file
@@ -0,0 +1 @@
|
||||
[{"method":"LOG","url":"[PARTY] listening on port 8000","timestamp":"2023-05-01T14:47:04.961Z"},{"method":"LOG","url":"[PARTY] Open panel to see more log","timestamp":"2023-05-01T14:47:04.963Z"}]
|
||||
309
database/v1/configuration.json
Normal file
309
database/v1/configuration.json
Normal file
@@ -0,0 +1,309 @@
|
||||
{
|
||||
"configuration": {
|
||||
"platformConfig": {
|
||||
"applicationId": "341789d4-b41f-4f40-ac79-e2bc4c94ead4",
|
||||
"spaceId": "f1ae5b84-db7c-481e-9867-861cf1852dc8",
|
||||
"platform": "PC",
|
||||
"uplayGameCode": "",
|
||||
"environment": "prod"
|
||||
},
|
||||
"resources": [],
|
||||
"legacyUrls": [],
|
||||
"sandboxes": [],
|
||||
"uplayServices": [{
|
||||
"name": "AvatarsUrl",
|
||||
"url": "http://validation.ubi.com/webservices/uplay/{culture}/avatar/public/{userId}/default/{size}.png"
|
||||
}, {
|
||||
"name": "DefaultAvatar146Url",
|
||||
"url": "http://static2.cdn.ubi.com/gamesites/uplay/v20/api/Avatars/thumbs/default.jpg"
|
||||
}, {
|
||||
"name": "DefaultAvatar256Url",
|
||||
"url": "http://static2.cdn.ubi.com/gamesites/uplay/201211261811/img/avatar/hero_256.png"
|
||||
}, {
|
||||
"name": "DefaultAvatarTallUrl",
|
||||
"url": "http://static2.cdn.ubi.com/gamesites/uplay/201211261811/img/avatar/no_tall.png"
|
||||
}, {
|
||||
"name": "MovieBaseUrl",
|
||||
"url": "http://static8.ubi.com/private/{env}/u/Uplay/"
|
||||
}, {
|
||||
"name": "UplayDynamicPanelUrl",
|
||||
"url": "http://uat-uplay.ubi.com/UplayServices/WinServices/GameClientServices.svc/REST/JSON/ImagePanelRedirection/{spaceId}/{profileId}/{culture}/MyProfile.png?language={language}"
|
||||
}],
|
||||
"sdkConfig": {
|
||||
"timeoutSec": 30,
|
||||
"keepAliveTimeoutMin": 10,
|
||||
"httpSafetySleepTime": 0,
|
||||
"popEventsTimeoutMsec": 5000,
|
||||
"lspPort": 1200,
|
||||
"httpRetry": {
|
||||
"maxCount": 3,
|
||||
"initialDelayMsec": 5000,
|
||||
"incrementFactorMsec": 5000,
|
||||
"randomDelayMsec": 5000
|
||||
},
|
||||
"websocketRetry": {
|
||||
"maxCount": 3,
|
||||
"initialDelayMsec": 5000,
|
||||
"incrementFactorMsec": 5000,
|
||||
"randomDelayMsec": 5000
|
||||
},
|
||||
"remoteLogs": {
|
||||
"ubiservicesLogLevel": "None",
|
||||
"prodLogLevel": "None"
|
||||
},
|
||||
"connectionPingIntervalSec": 3
|
||||
},
|
||||
"featuresSwitches": [{
|
||||
"name": "ApplicationUsed",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Connection",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "ContentFiltering",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "EntitiesProfile",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "EntitiesSpace",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Event",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Everything",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "ExtendSession",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "FixAccountIssues",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "FriendsLookup",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "FriendsRequest",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Messaging",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "News",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Populations",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "PrimaryStore",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Profiles",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "ProfilesExternal",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "SecondaryStore",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "SendPopulationsInPlayerStart",
|
||||
"value": false
|
||||
}, {
|
||||
"name": "SendPrimaryStoreEvent",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Socialfeed",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UplayFriends",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UplayLaunch",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UplayWin",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UplayWinActions",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UplayWinRewards",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "Users",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "UsersManagement",
|
||||
"value": true
|
||||
}, {
|
||||
"name": "WebSocketClient",
|
||||
"value": true
|
||||
}],
|
||||
"punch": {
|
||||
"detectUrl1": "lb-uat-detect01.ubisoft.com:11000",
|
||||
"detectUrl2": "lb-uat-detect02.ubisoft.com:11000",
|
||||
"traversalUrl": "lb-uat-traversal01.ubisoft.com:11005"
|
||||
},
|
||||
"events": {
|
||||
"queues": [{
|
||||
"name": "A",
|
||||
"sendPeriodMilliseconds": 30000
|
||||
}, {
|
||||
"name": "B",
|
||||
"sendPeriodMilliseconds": 30000
|
||||
}, {
|
||||
"name": "C",
|
||||
"sendPeriodMilliseconds": 30000
|
||||
}],
|
||||
"tags": [],
|
||||
"comment": null
|
||||
},
|
||||
"gatewayResources": [{
|
||||
"name": "all_connections",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/connections",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "all_profiles/applications",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/applications",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "all_profiles/entities",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/entities",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "all_spaces/entities",
|
||||
"url": "http://msr-{env}public-ubiservices.ubi.com/{version}/spaces/entities",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "all_spaces/items",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/spaces/items",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "all_spaces/offers",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/spaces/offers",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "all_walls",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/wall",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "certificates",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/certificates",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "configs/events",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/configs/events",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "connections",
|
||||
"url": "https://useast1-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/connections",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "events",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/events",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "friends",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/me/friends",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "news",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/me/news",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "populations",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/profiles/me/populations",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "profiles",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "profiles/actions",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/actions",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "profiles/applications",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/me/applications",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "profiles/entities",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/entities",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "profiles/inventory",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/inventory",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "profiles/notifications",
|
||||
"url": "https://useast1-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/notifications",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "profiles/rewards",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/rewards",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "remote_logs",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/me/remotelog",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "sandboxes",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/sandboxes",
|
||||
"version": 0
|
||||
}, {
|
||||
"name": "spaces/actions",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/actions",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "spaces/entities",
|
||||
"url": "http://jdp.justdancenext.xyz/{version}/spaces/{spaceId}/entities",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "spaces/items",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/items",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "spaces/news",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/spaces/news",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "spaces/offers",
|
||||
"url": "https://{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/offers",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "spaces/rewards",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/spaces/{spaceId}/rewards",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "wall",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/{profileId}/wall",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "wall/comments",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/wall/{postId}/comments",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "wall/likes",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/wall/{postId}/likes",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "wall/post",
|
||||
"url": "https://msr-{env}public-ubiservices.ubi.com/{version}/profiles/wall/{postId}",
|
||||
"version": 1
|
||||
}, {
|
||||
"name": "websocket/notifications",
|
||||
"url": "wss://{env}public-ws-ubiservices.ubi.com/{version}/websocket",
|
||||
"version": 2
|
||||
}, {
|
||||
"name": "websocket/server",
|
||||
"url": "wss://{env}public-ws-ubiservices.ubi.com",
|
||||
"version": 1
|
||||
}],
|
||||
"custom": {
|
||||
"featuresSwitches": [],
|
||||
"resources": []
|
||||
}
|
||||
}
|
||||
}
|
||||
121
database/v1/parameters.json
Normal file
121
database/v1/parameters.json
Normal file
@@ -0,0 +1,121 @@
|
||||
{
|
||||
"parameters": {
|
||||
"us-staging": {
|
||||
"fields": {
|
||||
"spaceId": "041c03fa-1735-4ea7-b5fc-c16546d092ca"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientClub": {
|
||||
"fields": {
|
||||
"ps4ClubWebsite": "https://static8.cdn.ubi.com/u/sites/uplay/index.html",
|
||||
"xoneLaunchPath": "Ms-xbl-55C5EE27://default?url=/games/{deepLink}&context={context}&titleid={gameTitleId}&env={clubEnvName}&genomeid={applicationId}&actioncompleted={actionCompletedList}&debug={debug}&spaceId={spaceId}&applicationId={applicationId}",
|
||||
"dynamicPanelUrl": "https://{env}public-ubiservices.ubi.com/v1/profiles/{profileId}/club/dynamicPanel/MyProfile.png?spaceId={spaceId}&noRedirect=true",
|
||||
"psApiClubWebsite": "https://static8.cdn.ubi.com/u/sites/uplay/index.html",
|
||||
"ps4PsnoLaunchPath": "psno://localhost/?response_type=code&client_id=171ca84a-371e-412b-a807-6531f3f1e454&scope=psn%3As2s&redirect_uri={ps4ClubWebsiteUrlEncoded}&state={ps4ClubWebsiteArgumentsPsnoEncoded}",
|
||||
"psApiPsnoLaunchPath": "psno://localhost/?response_type=code&client_id=171ca84a-371e-412b-a807-6531f3f1e454&scope=psn%3As2s&redirect_uri={psApiClubWebsiteUrlEncoded}&state={psApiClubWebsiteArgumentsPsnoEncoded}",
|
||||
"stadiaClubWebsiteUrl": "https://static8.cdn.ubi.com/u/sites/UbisoftClub/Stadia/index.html?url=/games/{deepLink}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&env={env}&displayMode={displayMode}&locale={locale}&actioncompleted={actionCompletedList}&jotunVersion={jotunVersion}&jotunBinaryVersion={jotunBinaryVersion}&ticket={ticket}",
|
||||
"switchClubWebsiteUrl": "https://static8.cdn.ubi.com/u/sites/UbisoftClub/NintendoSwitch/index.html?url=/games/{deepLink}&ussdkversion={usSdkVersionName}&env={clubEnvName}&actioncompleted={actionCompletedList}&forceLang={forceLang}&profileId={profileId}&ticket={ticket}&context={context}&debug={debug}&spaceId={spaceId}&applicationId={applicationId}",
|
||||
"ps4ClubWebsiteArguments": "url=/games/{deepLink}&spaceId={spaceId}&applicationId={applicationId}&context={context}&env={clubEnvName}&genomeid={applicationId}&actioncompleted={actionCompletedList}&ussdkversion={usSdkVersionName}&debug={debug}{geometry}&ticket={ticket}&profileid={profileId}",
|
||||
"psApiClubWebsiteArguments": "url=/games/{deepLink}&spaceId={spaceId}&applicationId={applicationId}&context={context}&env={clubEnvName}&genomeid={applicationId}&actioncompleted={actionCompletedList}&ussdkversion={usSdkVersionName}&debug={debug}{geometry}&ticket={ticket}&profileId={profileId}&psEnterButton={psEnterButton}"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientGlobalAppConfig": {
|
||||
"fields": {
|
||||
"mobileDeviceEmailsDaysTTL": 90
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientHttpConfig": {
|
||||
"fields": {
|
||||
"maxConcurrentUsRequests": null
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientUplay": {
|
||||
"fields": {
|
||||
"ps4UplayUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ubiTicket={ubiTicket}&firstPartyToken={firstPartyToken}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}&psEnterButton={psEnterButton}&platformVariant={platformVariant}",
|
||||
"ps5UplayUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ubiTicket={ubiTicket}&firstPartyToken={firstPartyToken}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}&platformVariant={platformVariant}",
|
||||
"psnUplayClientId": "171ca84a-371e-412b-a807-6531f3f1e454",
|
||||
"iosUplayWebLaunchUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ticket={ticket}&env={environment}&playerSessionId={playerSessionId}&deviceType=phone&isStandalone=false",
|
||||
"xoneUplayUWPLaunchUrl": "Ms-xbl-55C5EE27://default?isUbisoftConnect=true&baseURL={env}overlay.cdn.ubisoft.com/default/µApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}",
|
||||
"xoneUplayWebLaunchUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ubiTicket={ubiTicket}&firstPartyToken={firstPartyToken}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}&platformVariant={platformVariant}",
|
||||
"androidUplayWebLaunchUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ticket={ticket}&env={environment}&playerSessionId={playerSessionId}&deviceType=phone&isStandalone=false",
|
||||
"iosUplayWebCompletionUrl": "ubisoftconnectscheme:",
|
||||
"scarlettUplayUWPLaunchUrl": "Ms-xbl-55C5EE27://default?isUbisoftConnect=true&baseURL={env}overlay.cdn.ubisoft.com/default/µApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}",
|
||||
"scarlettUplayWebLaunchUrl": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&profileId={profileId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ubiTicket={ubiTicket}&firstPartyToken={firstPartyToken}&env={environment}&deviceType=tv&playerSessionId={playerSessionId}&platformVariant={platformVariant}",
|
||||
"xoneUplayWebCompletionUrl": "about:blank",
|
||||
"androidUplayWebCompletionUrl": "ubisoftconnectscheme:",
|
||||
"iosUplayWebLaunchUrlMicroApp": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ticket={ticket}&env={environment}&playerSessionId={playerSessionId}&deviceType=phone&profileId={profileId}&isStandalone=false",
|
||||
"scarlettUplayWebCompletionUrl": "about:blank",
|
||||
"androidUplayWebLaunchUrlMicroApp": "https://{env}overlay.cdn.ubisoft.com/default/?microApp={microApp}µAppParams={microAppParams}&spaceId={spaceId}&applicationId={applicationId}&platform={platform}&locale={locale}&sdkVersion={sdkVersion}&ticket={ticket}&env={environment}&playerSessionId={playerSessionId}&deviceType=phone&profileId={profileId}&isStandalone=false"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientUrlsPlaceholders": {
|
||||
"fields": {
|
||||
"baseurl_ws": {
|
||||
"China": "wss://public-ws-ubiservices.ubisoft.cn/",
|
||||
"Standard": "wss://{env}public-ws-ubiservices.ubi.com",
|
||||
"China_GAAP": "wss://gaap.ubiservices.ubi.com:16000"
|
||||
},
|
||||
"baseurl_aws": {
|
||||
"China": "https://public-ubiservices.ubisoft.cn",
|
||||
"Standard": "https://jdp.justdancenext.xyz",
|
||||
"China_GAAP": "https://gaap.ubiservices.ubi.com:12000"
|
||||
},
|
||||
"baseurl_msr": {
|
||||
"China": "https://public-ubiservices.ubisoft.cn",
|
||||
"Standard": "https://msr-{env}public-ubiservices.ubi.com",
|
||||
"China_GAAP": "https://gaap.ubiservices.ubi.com:12000"
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientLogin": {
|
||||
"fields": {
|
||||
"populationHttpRequestOptimizationEnabled": true,
|
||||
"populationHttpRequestOptimizationRetryCount": 0,
|
||||
"populationHttpRequestOptimizationRetryTimeoutIntervalMsec": 5000,
|
||||
"populationHttpRequestOptimizationRetryTimeoutIncrementMsec": 1000
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientFeaturesSwitches": {
|
||||
"fields": {
|
||||
"populationsAutomaticUpdate": true,
|
||||
"forcePrimarySecondaryStoreSyncOnReturnFromBackground": true
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientChina": {
|
||||
"fields": {
|
||||
"websocketHost": "public-ws-ubiservices.ubi.com",
|
||||
"tLogApplicationId": "",
|
||||
"tLogApplicationKey": "",
|
||||
"tLogApplicationName": ""
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientFleet": {
|
||||
"fields": {
|
||||
"title": "",
|
||||
"spaces": "https://jdp.justdancenext.xyz/{version}/spaces/{spaceId}/title/{title}/",
|
||||
"profiles": "https://jdp.justdancenext.xyz/{version}/profiles/{profileId}/title/{title}/",
|
||||
"spaces_all": "https://jdp.justdancenext.xyz/{version}/spaces/title/{title}/",
|
||||
"applications": "https://jdp.justdancenext.xyz/{version}/applications/{applicationId}/title/{title}/",
|
||||
"profiles_all": "https://jdp.justdancenext.xyz/{version}/profiles/title/{title}/",
|
||||
"applications_all": "https://jdp.justdancenext.xyz/{version}/applications/title/{title}/"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientUrls": {
|
||||
"fields": {
|
||||
"populations": "{baseurl_aws}/{version}/profiles/me/populations",
|
||||
"profilesToken": "{baseurl_aws}/{version}/profiles/{profileId}/tokens/{token}"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
}
|
||||
}
|
||||
}
|
||||
863
database/v1/parameters2.json
Normal file
863
database/v1/parameters2.json
Normal file
@@ -0,0 +1,863 @@
|
||||
{
|
||||
"parameters": {
|
||||
"us-sdkClientSettingsSecondaryStoreSync": {
|
||||
"fields": {
|
||||
"maxCount": 10,
|
||||
"restPeriodMsec": 30000,
|
||||
"retryMaxDelayMsec": 3600000,
|
||||
"retryRandomDelayMsec": 5000,
|
||||
"retryInitialDelayMsec": 5000,
|
||||
"retryIncrementFactorMsec": 5000,
|
||||
"subscriptionAutomaticSyncPeriodInHoursGDK": 0
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientNotificationsSpaceIds": {
|
||||
"fields": {
|
||||
"FriendsService": "abb909cd-ebaa-4ba5-a4a5-afa75cae8195",
|
||||
"BlocklistService": "45d58365-547f-4b45-ab5b-53ed14cc79ed",
|
||||
"PlayerPrivilegesService": "2d2f687d-cf94-4757-9157-b8736284c438"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettingsCacheTTL": {
|
||||
"fields": {
|
||||
"defaultSec": 120,
|
||||
"spacesNewsSec": 900,
|
||||
"friendsListSec": 1800,
|
||||
"ssiRulesAllSec": 86400,
|
||||
"profilesNewsSec": 900,
|
||||
"profilesActionsSec": 120,
|
||||
"profilesRewardsSec": 120,
|
||||
"ssiAttributesAllSec": 86400,
|
||||
"profilesChallengesSec": 120,
|
||||
"ssiListsOfAttributesAllSec": 86400,
|
||||
"challengesDefinitionSeasonSec": 180,
|
||||
"battlepassSeasonProgressionSec": 60,
|
||||
"profilesChallengesStatusSeasonSec": 60,
|
||||
"friendsConfigSec": 1800,
|
||||
"spacesParametersSec": 120,
|
||||
"applicationsParametersSec": 120
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettingsHttpGame": {
|
||||
"fields": {
|
||||
"maxCount": 3,
|
||||
"retryMaxDelayMsec": 5000,
|
||||
"retryRandomDelayMsec": 5000,
|
||||
"retryInitialDelayMsec": 5000,
|
||||
"timeoutInitialDelayMsec": 30000,
|
||||
"retryIncrementFactorMsec": 5000,
|
||||
"timeoutIncrementFactorMsec": 5000
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientMocks": {
|
||||
"fields": {
|
||||
"Ugc": "",
|
||||
"Club": "",
|
||||
"News": "",
|
||||
"Stats": "",
|
||||
"Users": "",
|
||||
"Events": "",
|
||||
"Friends": "",
|
||||
"Persona": "",
|
||||
"Entities": "",
|
||||
"Profiles": "",
|
||||
"Blocklist": "",
|
||||
"Voicechat": "",
|
||||
"Battlepass": "",
|
||||
"Challenges": "",
|
||||
"Moderation": "",
|
||||
"Population": "",
|
||||
"Connections": "",
|
||||
"GamesPlayed": "",
|
||||
"Matchmaking": "",
|
||||
"Applications": "",
|
||||
"Leaderboards": "",
|
||||
"Notification": "",
|
||||
"Localizations": "",
|
||||
"PlayerReports": "",
|
||||
"SecondaryStore": "",
|
||||
"ApplicationUsed": "",
|
||||
"Recommendations": "",
|
||||
"EventsDefinitions": "",
|
||||
"PlayerOnlineStatus": "",
|
||||
"SecondaryStoreInstanciation": "",
|
||||
"SecondaryStoreInventoryRules": "",
|
||||
"Party": "",
|
||||
"Token": "",
|
||||
"Groups": "",
|
||||
"Trades": "",
|
||||
"Calendar": "",
|
||||
"Telemetry": "",
|
||||
"Reputation": "",
|
||||
"RichPresence": "",
|
||||
"UsersPolicies": "",
|
||||
"PlayerActivity": "",
|
||||
"PlayerConsents": "",
|
||||
"PlayerPrivileges": "",
|
||||
"GroupsInvitations": "",
|
||||
"PlayerPreferences": ""
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettingsHttpInternal": {
|
||||
"fields": {
|
||||
"maxCount": 3,
|
||||
"retryMaxDelayMsec": 3600000,
|
||||
"retryRandomDelayMsec": 5000,
|
||||
"retryInitialDelayMsec": 5000,
|
||||
"timeoutInitialDelayMsec": 30000,
|
||||
"retryIncrementFactorMsec": 5000,
|
||||
"timeoutIncrementFactorMsec": 5000
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettings": {
|
||||
"fields": {
|
||||
"popEventsTimeoutMsec": 5000,
|
||||
"primaryStoreSyncDelayMsec": 250,
|
||||
"createSessionRestPeriodMSec": 3000,
|
||||
"createSessionRestRandomMSec": 5000,
|
||||
"secondaryStoreInventoryRulesMode": "Disabled",
|
||||
"xboxOneResumeFromSuspendedDelayMsec": 5000,
|
||||
"xboxOneCloseWebsocketOnSuspendingMode": "All",
|
||||
"notificationTypesUpdateRandomDelayMsec": 3000,
|
||||
"waitRemoteLogCompletionOnDeleteSession": false,
|
||||
"secondaryStoreInventoryRulesRetryDelayMsec": 5000,
|
||||
"minBackgroundDurationForInventoryInvalidationMsec": 5000,
|
||||
"createSessionRestPeriodAfterConcurrentConnectDetectedMSec": 60000,
|
||||
"partyClientXblComplianceMethod": "mpsd",
|
||||
"enableCrossPlayPreferenceSyncForXbox": false,
|
||||
"enablePartyClientFirstPartyCompliance": false
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettingsWebSocketGame": {
|
||||
"fields": {
|
||||
"maxCount": 50,
|
||||
"retryMaxDelayMsec": 5000,
|
||||
"retryRandomDelayMsec": 5000,
|
||||
"retryInitialDelayMsec": 5000,
|
||||
"timeoutInitialDelayMsec": 30000,
|
||||
"retryIncrementFactorMsec": 5000,
|
||||
"connectionPingIntervalSec": 30,
|
||||
"timeoutIncrementFactorMsec": 5000
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientSettingsWebSocketInternal": {
|
||||
"fields": {
|
||||
"maxCount": 50,
|
||||
"retryMaxDelayMsec": 900000,
|
||||
"retryRandomDelayMsec": 5000,
|
||||
"retryInitialDelayMsec": 0,
|
||||
"timeoutInitialDelayMsec": 30000,
|
||||
"retryIncrementFactorMsec": 1500,
|
||||
"connectionPingIntervalSec": 30,
|
||||
"timeoutIncrementFactorMsec": 5000
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientUrls": {
|
||||
"fields": {
|
||||
"news": "{baseurl_aws}/{version}/profiles/me/news",
|
||||
"tLog": "https://tglog.datamore.qq.com/{appId}/report/",
|
||||
"users": "{baseurl_aws}/{version}/users",
|
||||
"events": "{baseurl_aws}/{version}/profiles/{profileId}/events",
|
||||
"friends": "{baseurl_aws}/{version}/profiles/me/friends",
|
||||
"policies": "{baseurl_aws}/{version}/policies",
|
||||
"profiles": "{baseurl_aws}/{version}/profiles",
|
||||
"sessions": "{baseurl_aws}/{version}/profiles/sessions",
|
||||
"blocklist": "{baseurl_aws}/{version}/profiles/{profileId}/blocks",
|
||||
"challenge": "{baseurl_aws}/{version}/spaces/{spaceId}/challenges",
|
||||
"sandboxes": "{baseurl_aws}/{version}/spaces/{spaceId}/sandboxes",
|
||||
"moderation": "{baseurl_aws}/{version}/spaces/{spaceId}/moderation/{text}",
|
||||
"remoteLogs": "{baseurl_aws}/{version}/profiles/me/remotelog",
|
||||
"spacesNews": "{baseurl_aws}/{version}/spaces/news",
|
||||
"connections": "{baseurl_aws}/{version}/profiles/{profileId}/connections",
|
||||
"gamesPlayed": "{baseurl_aws}/{version}/profiles/{profileId}/gamesplayed",
|
||||
"spacesItems": "{baseurl_aws}/{version}/spaces/{spaceId}/items",
|
||||
"spacesStats": "{baseurl_aws}/{version}/spaces/{spaceId}/communitystats",
|
||||
"applications": "{baseurl_aws}/{version}/applications/{applicationId}/configuration",
|
||||
"localization": "{baseurl_aws}/{version}/spaces/{spaceId}/localizations/strings",
|
||||
"personaSpace": "{baseurl_aws}/{version}/profiles/persona",
|
||||
"spacesOffers": "{baseurl_aws}/{version}/spaces/{spaceId}/offers",
|
||||
"configsEvents": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/events",
|
||||
"profilesStats": "{baseurl_aws}/{version}/profiles/{profileId}/stats",
|
||||
"spacesActions": "{baseurl_aws}/{version}/spaces/{spaceId}/actions",
|
||||
"spacesRewards": "{baseurl_aws}/{version}/spaces/{spaceId}/rewards",
|
||||
"allConnections": "{baseurl_aws}/{version}/profiles/connections",
|
||||
"allSpacesItems": "{baseurl_aws}/{version}/spaces/items",
|
||||
"moderationPOST": "{baseurl_aws}/{version}/spaces/{spaceId}/moderation",
|
||||
"personaProfile": "{baseurl_aws}/{version}/profiles/{profileId}/persona",
|
||||
"spacesEntities": "{baseurl_aws}/{version}/spaces/{spaceId}/entities",
|
||||
"allSpacesOffers": "{baseurl_aws}/{version}/spaces/offers",
|
||||
"localizationAll": "{baseurl_aws}/{version}/spaces/{spaceId}/localizations/strings/all",
|
||||
"profilesActions": "{baseurl_aws}/{version}/profiles/{profileId}/club/actions",
|
||||
"profilesFriends": "{baseurl_aws}/{version}/profiles/{profileId}/friends",
|
||||
"profilesRewards": "{baseurl_aws}/{version}/profiles/{profileId}/club/rewards",
|
||||
"recommendations": "{baseurl_aws}/{version}/profiles/{profileId}/recommendations",
|
||||
"spacesStatsCard": "{baseurl_aws}/{version}/spaces/{spaceId}/communitystatscard",
|
||||
"websocketServer": "{baseurl_ws}",
|
||||
"allProfilesStats": "{baseurl_aws}/{version}/profiles/stats",
|
||||
"blocklistUnblock": "{baseurl_aws}/{version}/profiles/{profileId}/blocks/{blockedProfileId}",
|
||||
"profilesEntities": "{baseurl_aws}/{version}/profiles/{profileId}/entities",
|
||||
"profilesExternal": "{baseurl_aws}/{version}/profiles/external",
|
||||
"profilesMeEvents": "{baseurl_aws}/{version}/profiles/me/events",
|
||||
"profilesUgcViews": "{baseurl_aws}/{version}/profiles/ugc/{contentId}/views",
|
||||
"spacesChallenges": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"spacesConfigsUgc": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/ugc",
|
||||
"spacesParameters": "{baseurl_aws}/{version}/spaces/{spaceId}/parameters",
|
||||
"allSpacesEntities": "{baseurl_aws}/{version}/spaces/entities",
|
||||
"eventsDefinitions": "{baseurl_aws}/{version}/spaces/{spaceId}/eventsDefinitions",
|
||||
"profilesInventory": "{baseurl_aws}/{version}/profiles/{profileId}/inventory",
|
||||
"profilesStatsCard": "{baseurl_aws}/{version}/profiles/statscard",
|
||||
"profilesUgcPhotos": "{baseurl_aws}/{version}/profiles/ugc/photos",
|
||||
"spacesLeaderboard": "{baseurl_aws}/{version}/spaces/{spaceId}/leaderboards",
|
||||
"blocklistBlockedBy": "{baseurl_aws}/{version}/profiles/{profileId}/blocks/blockedBy",
|
||||
"profilesChallenges": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"profilesUgcRatings": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/ratings",
|
||||
"spacesBattlepasses": "{baseurl_aws}/{version}/spaces/{spaceId}/battlepasses",
|
||||
"allProfilesEntities": "{baseurl_aws}/{version}/profiles/entities",
|
||||
"profilesLeaderboard": "{baseurl_aws}/{version}/profiles/ranks",
|
||||
"usersOnlineStatuses": "{baseurl_aws}/{version}/users/onlineStatuses",
|
||||
"voicechatTokenVivox": "{baseurl_aws}/{version}/profiles/{profileId}/voicechattoken/vivox",
|
||||
"applicationsMetadata": "{baseurl_aws}/{version}/applications",
|
||||
"challengeProgression": "{baseurl_aws}/{version}/profiles/{profileId}/challenges/progressions",
|
||||
"playerReportsProfile": "{baseurl_aws}/{version}/profiles/{profileId}/reports",
|
||||
"profilesApplications": "{baseurl_aws}/{version}/profiles/me/applications",
|
||||
"profilesUgcFavorites": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/favorites",
|
||||
"profilesUgcPhotosOwn": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/photos",
|
||||
"spacesChallengepools": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"voicechatConfigVivox": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/voicechat/vivox",
|
||||
"profilesMeLeaderboard": "{baseurl_aws}/{version}/profiles/me/ranks",
|
||||
"profilesNotifications": "{baseurl_aws}/{version}/profiles/{profileId}/notifications",
|
||||
"spacesConfigsSsiRules": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/secondarystore/instances/rules",
|
||||
"usersMeOnlineStatuses": "{baseurl_aws}/{version}/users/me/onlineStatuses",
|
||||
"applicationsParameters": "{baseurl_aws}/{version}/applications/{applicationId}/parameters",
|
||||
"spacesSeasonChallenges": "{baseurl_aws}/{version}/spaces/{spaceId}/club/seasonchallenges",
|
||||
"websocketNotifications": "{baseurl_ws}/{version}/websocket",
|
||||
"allProfilesApplications": "{baseurl_aws}/{version}/profiles/applications",
|
||||
"profilesUgcUpdateRating": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/{contentId}/ratings",
|
||||
"profilesSeasonChallenges": "{baseurl_aws}/{version}/profiles/{profileId}/club/seasonchallenges?spaceId={spaceId}",
|
||||
"profilesMeRoamingProfiles": "{baseurl_aws}/{version}/users/me/roamingProfiles",
|
||||
"profilesProfileChallenges": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"profilesUgcExternalVideos": "{baseurl_aws}/{version}/profiles/ugc/externalvideos",
|
||||
"profilesUgcUpdateFavorite": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/{contentId}/favorites",
|
||||
"spacesBattlepassesSeasons": "{baseurl_aws}/{version}/spaces/{spaceId}/battlepasses/seasons",
|
||||
"spacesCommunityChallenges": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"spacesConfigsPrimarystore": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/primarystore",
|
||||
"profilesInventoryInstances": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/instances",
|
||||
"profilesNotificationsBatch": "{baseurl_aws}/{version}/profiles/notifications",
|
||||
"spacesConfigsSsiAttributes": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/secondarystore/instances/attributes",
|
||||
"playerReportsSpaceCategories": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/reports/categories",
|
||||
"profilesInventoryPrimarystore": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/primarystore",
|
||||
"profilesInventoryTransactions": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/transactions",
|
||||
"profilesMeBattlepassesSeasons": "{baseurl_aws}/{version}/profiles/me/battlepasses/seasons",
|
||||
"profilesMeCommunityChallenges": "{baseurl_aws}/{version}/spaces/global/ubiconnect/challenges/api/legacy/empty",
|
||||
"profilesInventoryExpiredDetails": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/expiredDetails",
|
||||
"profilesMeInventoryPrimarystore": "{baseurl_aws}/{version}/profiles/me/inventory/primarystore",
|
||||
"profilesPreciseMatchmakingMatch": "{baseurl_aws}/{version}/profiles/{profileId}/matches/precise/matchstate",
|
||||
"profilesPreciseMatchmakingClient": "{baseurl_aws}/{version}/profiles/{profileId}/matches/precise/clientstate",
|
||||
"spacesBattlepassesSeasonsSeasonId": "{baseurl_aws}/{version}/spaces/{spaceId}/battlepasses/seasons/{seasonId}",
|
||||
"spacesConfigsSsiListsOfAttributes": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/secondarystore/instances/listsOfAttributes",
|
||||
"usersMeOnlineStatusesManualStatus": "{baseurl_aws}/{version}/users/me/onlineStatuses/manualStatus",
|
||||
"profilesMeBattlepassesSeasonsSeasonId": "{baseurl_aws}/{version}/profiles/me/battlepasses/seasons/{seasonId}",
|
||||
"secondaryStoreInventoryRulesExecution": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/rulesexecution",
|
||||
"profilesInventoryInstancesTransactions": "{baseurl_aws}/{version}/profiles/{profileId}/inventory/instances/transactions",
|
||||
"groups": "{baseurl_aws}/{version}/groups",
|
||||
"calendar": "{baseurl_aws}/{version}/spaces/{spaceId}/calendarentries",
|
||||
"groupType": "{baseurl_aws}/{version}/spaces/{spaceId}/grouptypes/{groupTypeId}",
|
||||
"telemetry": "{baseurl_aws}/{version}/spaces/{spaceId}/global/tgdp/telemetry/receiver/telemetry",
|
||||
"tokenSpace": "{baseurl_aws}/{version}/spaces/{spaceId}/tokens",
|
||||
"tokenProfile": "{baseurl_aws}/{version}/profiles/{profileId}/tokens",
|
||||
"allgroupTypes": "{baseurl_aws}/{version}/spaces/{spaceId}/grouptypes",
|
||||
"calendarLists": "{baseurl_aws}/{version}/spaces/{spaceId}/calendarentrylists",
|
||||
"groupsMembers": "{baseurl_aws}/{version}/groups/{groupId}/members",
|
||||
"partyXboxSync": "{baseurl_aws}/{version}/spaces/{spaceId}/parties/{partyId}/firstPartyParameters/xblMultiplayerSessionReferenceUri",
|
||||
"profilesToken": "{baseurl_aws}/{version}/profiles/{profileId}/tokens/{token}",
|
||||
"spacesParties": "{baseurl_aws}/{version}/spaces/{spaceId}/parties",
|
||||
"usersPolicies": "{baseurl_aws}/{version}/users/{userId}/policies",
|
||||
"friendsConfigs": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/friends",
|
||||
"playerConsents": "{baseurl_aws}/{version}/profiles/{profileId}/consents/categories",
|
||||
"profilesGroups": "{baseurl_aws}/{version}/profiles/{profileId}/groups",
|
||||
"profilesParties": "{baseurl_aws}/{version}/profiles/{profileId}/parties",
|
||||
"tradesItemsGifts": "{baseurl_aws}/{version}/profiles/{profileId}/trades/itemsgifts",
|
||||
"tradesOfferGifts": "{baseurl_aws}/{version}/profiles/{profileId}/trades/offergifts",
|
||||
"profilesReputation": "{baseurl_aws}/{version}/profiles/{profileId}/reputation",
|
||||
"gamesPlayedProfiles": "{baseurl_aws}/{version}/profiles/gamesplayed",
|
||||
"groupsRichPresences": "{baseurl_aws}/{version}/groups/{groupId}/richpresences",
|
||||
"spacesRichPresences": "{baseurl_aws}/{version}/spaces/{spaceId}/richpresences",
|
||||
"spacesPlayerActivity": "{baseurl_aws}/{version}/spaces/{spaceId}/playeractivities/activities",
|
||||
"groupsRetentionExpiry": "{baseurl_aws}/{version}/groups/{groupId}/policies/retention/expiry",
|
||||
"profilesRichPresences": "{baseurl_aws}/{version}/profiles/{profileId}/richpresences",
|
||||
"challengeManualBanking": "{baseurl_aws}/{version}/profiles/{profileId}/challenges/{challengeId}",
|
||||
"playerActivityProfiles": "{baseurl_aws}/{version}/profiles/{profileId}/playeractivities/activities",
|
||||
"playerConsentsCategory": "{baseurl_aws}/{version}/profiles/{profileId}/consents/categories/{categoryName}",
|
||||
"tradesItemsGiftsConfig": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/trades/itemsgifts",
|
||||
"tradesOfferGiftsConfig": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/trades/offergifts",
|
||||
"ubiConnectRewardsSpace": "{baseurl_aws}/{version}/spaces/{spaceId}/global/ubiconnect/rewards/api",
|
||||
"voicechatConfigPlayfab": "{baseurl_aws}/{version}/spaces/{spaceId}/configs/voicechat/playfab",
|
||||
"groupsInvitationsConfig": "{baseurl_aws}/{version}/groups/{groupId}/configs/groupsinvitations",
|
||||
"playerPrivilegesProfile": "{baseurl_aws}/{version}/profiles/{profileId}/playerprivileges",
|
||||
"voicechatNetworkPlayfab": "{baseurl_aws}/{version}/spaces/{spaceId}/voicechatnetworks/playfab",
|
||||
"groupsInvitationsInvites": "{baseurl_aws}/{version}/groups/{groupId}/groupsinvitations/invitations",
|
||||
"playerConsentsNextConfig": "{baseurl_aws}/{version}/spaces/configs/consents",
|
||||
"profilesUgcReportContent": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/{contentId}/reports",
|
||||
"ubiConnectRewardsProfile": "{baseurl_aws}/{version}/profiles/{profileId}/global/ubiconnect/rewards/api",
|
||||
"groupsInvitationsProfiles": "{baseurl_aws}/{version}/profiles/{profileId}/groupsInvitations",
|
||||
"playerConsentsNextProfile": "{baseurl_aws}/{version}/profiles/{profileId}/consents",
|
||||
"profilesInventoryReserves": "{baseurl_aws}/{version}/profiles/{profileId}/items/reserves",
|
||||
"groupsInvitationsLockState": "{baseurl_aws}/{version}/groups/{groupId}/groupsinvitations/lockstate",
|
||||
"profilesBattlepassesSeasons": "{baseurl_aws}/{version}/profiles/{profileId}/battlepasses/seasons",
|
||||
"groupsInvitationsJoinRequests": "{baseurl_aws}/{version}/groups/{groupId}/groupsinvitations/joinrequests",
|
||||
"groupsInvitationsUpdateInvite": "{baseurl_aws}/{version}/groups/{groupId}/groupsinvitations/invitations/{inviteeProfileId}/state",
|
||||
"playerConsentsNextAcceptances": "{baseurl_aws}/{version}/profiles/{profileId}/consents/acceptances",
|
||||
"matchmakingGroupsMatchesPrecise": "{baseurl_aws}/{version}/groups/{groupId}/matches/precise",
|
||||
"spacesPlayerPreferencesStandard": "{baseurl_aws}/{version}/spaces/{spaceId}/standardpreferences",
|
||||
"profilesBattlepassesSeasonsTiers": "{baseurl_aws}/{version}/profiles/{profileId}/battlepasses/seasons/{seasonId}/tiers",
|
||||
"profilesPlayerPreferencesStandard": "{baseurl_aws}/{version}/profiles/{profileId}/standardpreferences",
|
||||
"profilesUgcRequestReportedContent": "{baseurl_aws}/{version}/profiles/{profileId}/ugc/reports",
|
||||
"groupsInvitationsUpdateJoinRequest": "{baseurl_aws}/{version}/groups/{groupId}/groupsinvitations/joinrequests/{requesterProfileId}/state",
|
||||
"ubiConnectCommunityChallengesSpace": "{baseurl_aws}/{version}/spaces/{spaceId}/global/ubiconnect/challenges/api/community",
|
||||
"matchmakingSpaceGlobalHarboursocial": "{baseurl_aws}/{version}/spaces/{spaceId}/global/harboursocial/matchmaking",
|
||||
"spacesPartiesPartyIdMembersProfileId": "{baseurl_aws}/{version}/spaces/{spaceId}/parties/{partyId}/members/{profileId}",
|
||||
"ubiConnectCommunityChallengesProfile": "{baseurl_aws}/{version}/profiles/{profileId}/global/ubiconnect/challenges/api/community",
|
||||
"ubiConnectTimeLimitedChallengesSpace": "{baseurl_aws}/{version}/spaces/{spaceId}/global/ubiconnect/challenges/api/timelimited",
|
||||
"matchmakingProfilesGlobalHarboursocial": "{baseurl_aws}/{version}/profiles/{profileId}/global/harboursocial/matchmaking",
|
||||
"ubiConnectTimeLimitedChallengesProfile": "{baseurl_aws}/{version}/profiles/{profileId}/global/ubiconnect/challenges/api/timelimited",
|
||||
"ubiConnectApplicableTimeLimitedChallengesProfiles": "{baseurl_aws}/{version}/profiles/global/ubiconnect/challenges/api/timelimited/applicable"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientStorm": {
|
||||
"fields": {
|
||||
"detectConfig": "EnableDebug=false;ValidateDetect=true",
|
||||
"detectProvisioningUrl": "https://ncsa-storm.ubi.com/v1/natdetect",
|
||||
"routerProvisioningUrl": "https://apac-storm.ubi.com/v1/router;https://emea-storm.ubi.com/v1/router;https://ncsa-storm.ubi.com/v1/router;https://ap-southeast-2-storm.ubi.com/v1/router",
|
||||
"matchmakingSandboxName": "SM_PC_LNCH_A",
|
||||
"traversalProvisioningUrl": "https://ncsa-storm.ubi.com/v1/nattraversal",
|
||||
"matchmakingSandboxSpaceId": "4c29e04e-14d2-4245-a3c4-bf4703461119"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientRemoteLogsInternal": {
|
||||
"fields": {
|
||||
"job": "None",
|
||||
"ugc": "Warning",
|
||||
"club": "None",
|
||||
"core": "None",
|
||||
"http": "None",
|
||||
"news": "None",
|
||||
"tLog": "Warning",
|
||||
"task": "None",
|
||||
"test": "None",
|
||||
"user": "None",
|
||||
"async": "None",
|
||||
"event": "None",
|
||||
"mocks": "None",
|
||||
"stats": "None",
|
||||
"uplay": "None",
|
||||
"entity": "None",
|
||||
"friend": "None",
|
||||
"overlay": "Warning",
|
||||
"persona": "None",
|
||||
"profile": "None",
|
||||
"blocklist": "None",
|
||||
"challenge": "None",
|
||||
"remoteLog": "None",
|
||||
"scheduler": "None",
|
||||
"voicechat": "None",
|
||||
"websocket": "None",
|
||||
"battlepass": "Warning",
|
||||
"connection": "None",
|
||||
"httpEngine": "None",
|
||||
"moderation": "Warning",
|
||||
"parameters": "Warning",
|
||||
"population": "None",
|
||||
"gamesPlayed": "None",
|
||||
"leaderboard": "None",
|
||||
"matchmaking": "None",
|
||||
"userContent": "None",
|
||||
"localization": "None",
|
||||
"notification": "None",
|
||||
"primaryStore": "None",
|
||||
"configuration": "None",
|
||||
"maxTextLength": 32768,
|
||||
"playerReports": "None",
|
||||
"authentication": "None",
|
||||
"secondaryStore": "None",
|
||||
"applicationUsed": "None",
|
||||
"mobileExtension": "None",
|
||||
"recommendations": "None",
|
||||
"coreNotification": "None",
|
||||
"playerOnlineStatus": "None",
|
||||
"applicationInformation": "None",
|
||||
"secondaryStoreInstantiation": "None",
|
||||
"secondaryStoreInventoryRules": "None",
|
||||
"party": "None",
|
||||
"token": "None",
|
||||
"groups": "Warning",
|
||||
"trades": "None",
|
||||
"calendar": "Warning",
|
||||
"telemetry": "None",
|
||||
"reputation": "None",
|
||||
"remoteGaming": "Warning",
|
||||
"richPresence": "None",
|
||||
"usersPolicies": "None",
|
||||
"playerActivity": "None",
|
||||
"playerConsents": "None",
|
||||
"playerPrivileges": "None",
|
||||
"groupsInvitations": "Warning",
|
||||
"playerPreferences": "None"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientRemoteLogsGame": {
|
||||
"fields": {
|
||||
"url": "",
|
||||
"maxTextLength": 32768,
|
||||
"uncategorized": "None"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientNotificationsInternal": {
|
||||
"fields": {
|
||||
"BLOCKLIST_ADD": true,
|
||||
"BLOCKLIST_ADDED": true,
|
||||
"BLOCKLIST_REMOVE": true,
|
||||
"BLOCKLIST_REMOVED": true,
|
||||
"CLUB_BADGE_ACQUIRED": true,
|
||||
"SSI_INSTANCES_UPDATE": true,
|
||||
"CLUB_ACTION_COMPLETED": true,
|
||||
"CLUB_CHALLENGE_BANKED": true,
|
||||
"CLUB_REWARD_PURCHASED": true,
|
||||
"BATTLEPASS_TIERS_BANKED": true,
|
||||
"CLUB_CHALLENGE_COMPLETED": true,
|
||||
"CHALLENGES_REWARDS_BANKED": true,
|
||||
"US_APP_PARAMS_FULL_UPDATE": true,
|
||||
"US_APP_PARAMS_GROUP_UPDATE": true,
|
||||
"FRIENDS_RELATIONSHIP_UPDATE": true,
|
||||
"US_NOTIFICATION_MAINTENANCE": true,
|
||||
"US_SPACE_PARAMS_FULL_UPDATE": true,
|
||||
"CLUB_CHALLENGE_PARTICIPATION": true,
|
||||
"US_SPACE_PARAMS_GROUP_UPDATE": true,
|
||||
"US_CONCURRENT_CONNECT_DETECTED": true,
|
||||
"CHALLENGES_PROGRESSION_COMPLETED": true,
|
||||
"CLUB_CHALLENGE_THRESHOLD_REACHED": true,
|
||||
"US_CLIENT_SECONDARY_STORE_UPDATE": true,
|
||||
"TRADE_UPDATED": true,
|
||||
"PARTY_MEMBER_ADDED": true,
|
||||
"GROUPS_MEMBER_ADDED": true,
|
||||
"PARTY_PARTY_CREATED": true,
|
||||
"PARTY_PARTY_DELETED": true,
|
||||
"PARTY_PARTY_UPDATED": true,
|
||||
"FRIENDS_INFO_UPDATED": true,
|
||||
"GROUPS_GROUP_DELETED": true,
|
||||
"GROUPS_GROUP_UPDATED": true,
|
||||
"PARTY_MEMBER_REMOVED": true,
|
||||
"PARTY_MEMBER_UPDATED": true,
|
||||
"GROUPS_MEMBER_REMOVED": true,
|
||||
"GROUPS_MEMBER_UPDATED": true,
|
||||
"MM_ASK_GROUP_METADATA": true,
|
||||
"PARTY_INVITATION_SENT": true,
|
||||
"FRIENDS_STATUS_CHANGED": true,
|
||||
"PARTY_JOINREQUEST_SENT": true,
|
||||
"PARTY_PARTY_MOVE_FAILED": true,
|
||||
"PERSONA_PERSONA_CREATED": true,
|
||||
"PERSONA_PERSONA_DELETED": true,
|
||||
"PERSONA_PERSONA_UPDATED": true,
|
||||
"BATTLEPASS_TIERS_REACHED": true,
|
||||
"PARTY_INVITATION_EXPIRED": true,
|
||||
"PARTY_INVITATION_ACCEPTED": true,
|
||||
"PARTY_INVITATION_DECLINED": true,
|
||||
"PARTY_JOINREQUEST_EXPIRED": true,
|
||||
"PARTY_PARTY_OWNER_UPDATED": true,
|
||||
"GROUPS_GROUP_OWNER_UPDATED": true,
|
||||
"PARTY_INVITATION_CANCELLED": true,
|
||||
"PARTY_JOINREQUEST_ACCEPTED": true,
|
||||
"PARTY_JOINREQUEST_DECLINED": true,
|
||||
"PARTY_PARTY_EXPIRY_RENEWED": true,
|
||||
"PARTY_JOINREQUEST_CANCELLED": true,
|
||||
"UBICONNECT_REWARD_PURCHASED": false,
|
||||
"FRIENDS_RELATIONSHIP_TRIGGER": true,
|
||||
"PARTY_ACCESSREQUEST_ACCEPTED": true,
|
||||
"PARTY_PARTY_LOCKSTATE_UPDATED": true,
|
||||
"GROUPSINVITATIONS_GROUP_UPDATED": true,
|
||||
"PLAYERACTIVITY_ACTIVITIES_CLOSED": true,
|
||||
"GROUPSINVITATIONS_INVITATION_SENT": true,
|
||||
"PARTY_INVITATION_WORKFLOW_STARTED": true,
|
||||
"PLAYERACTIVITY_ACTIVITIES_CREATED": true,
|
||||
"PLAYERACTIVITY_ACTIVITIES_UPDATED": true,
|
||||
"GROUPSINVITATIONS_JOINREQUEST_SENT": true,
|
||||
"PLAYERPRIVILEGES_PRIVILEGES_UPDATED": true,
|
||||
"GROUPSINVITATIONS_GROUP_LOCK_UPDATED": true,
|
||||
"GROUPSINVITATIONS_INVITATION_EXPIRED": true,
|
||||
"PARTY_LIMITS_MAXIMUM_MEMBERS_UPDATED": true,
|
||||
"REPUTATION_PLAYERFACINGLEVEL_UPDATED": true,
|
||||
"GROUPSINVITATIONS_INVITATION_ACCEPTED": true,
|
||||
"GROUPSINVITATIONS_INVITATION_DECLINED": true,
|
||||
"GROUPSINVITATIONS_JOINREQUEST_EXPIRED": true,
|
||||
"PARTY_PARTY_INVITATIONSCONFIG_UPDATED": true,
|
||||
"GROUPSINVITATIONS_INVITATION_CANCELLED": true,
|
||||
"GROUPSINVITATIONS_JOINREQUEST_ACCEPTED": true,
|
||||
"GROUPSINVITATIONS_JOINREQUEST_DECLINED": true,
|
||||
"GROUPS_POLICY_RETENTION_EXPIRY_RENEWED": true,
|
||||
"PARTY_JOINREQUEST_PLAYER_PREAUTHORIZED": true,
|
||||
"PARTY_PARTY_JOINREQUESTSCONFIG_UPDATED": true,
|
||||
"GROUPSINVITATIONS_JOINREQUEST_CANCELLED": true,
|
||||
"RICHPRESENCE_PLAYER_RICHPRESENCE_CHANGED": true
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientNotificationsGame": {
|
||||
"fields": {
|
||||
"additionalSpaces": [],
|
||||
"INITIATE_PUNCH_PHONE_PAIRING": true
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-GlobalSpaceConfig": {
|
||||
"fields": {
|
||||
"friendsSpaceId": "45d58365-547f-4b45-ab5b-53ed14cc79ed",
|
||||
"blocklistSpaceId": "45d58365-547f-4b45-ab5b-53ed14cc79ed"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"us-sdkClientFeaturesSwitches": {
|
||||
"fields": {
|
||||
"ugc": true,
|
||||
"news": true,
|
||||
"tlog": true,
|
||||
"event": true,
|
||||
"mocks": false,
|
||||
"party": true,
|
||||
"stats": true,
|
||||
"token": true,
|
||||
"uplay": true,
|
||||
"users": true,
|
||||
"groups": true,
|
||||
"trades": true,
|
||||
"persona": true,
|
||||
"rewards": true,
|
||||
"calendar": true,
|
||||
"profiles": true,
|
||||
"blocklist": true,
|
||||
"challenge": true,
|
||||
"telemetry": true,
|
||||
"voicechat": true,
|
||||
"battlepass": true,
|
||||
"httpClient": true,
|
||||
"moderation": true,
|
||||
"parameters": true,
|
||||
"reputation": true,
|
||||
"clubService": true,
|
||||
"gamesPlayed": true,
|
||||
"matchmaking": true,
|
||||
"populations": true,
|
||||
"localization": true,
|
||||
"primaryStore": true,
|
||||
"remoteGaming": true,
|
||||
"richPresence": true,
|
||||
"createSession": true,
|
||||
"entitiesSpace": true,
|
||||
"extendSession": true,
|
||||
"friendsLookup": true,
|
||||
"leaderboardMe": true,
|
||||
"playerReports": true,
|
||||
"friendsRequest": true,
|
||||
"playerActivity": true,
|
||||
"playerConsents": true,
|
||||
"secondaryStore": true,
|
||||
"ubisoftConnect": true,
|
||||
"applicationUsed": true,
|
||||
"clubApplication": true,
|
||||
"entitiesProfile": true,
|
||||
"recommendations": true,
|
||||
"webSocketClient": true,
|
||||
"clubDynamicPanel": true,
|
||||
"notificationSend": true,
|
||||
"playerPrivileges": true,
|
||||
"usersLegalOptins": true,
|
||||
"eventsDefinitions": true,
|
||||
"groupsInvitations": true,
|
||||
"leaderboardSpaces": true,
|
||||
"playerPreferences": true,
|
||||
"playerOnlineStatus": true,
|
||||
"usersCreateAndLink": true,
|
||||
"friendsUplayProfile": true,
|
||||
"leaderboardProfiles": true,
|
||||
"friendsSpaceSpecific": true,
|
||||
"notificationSendBatch": true,
|
||||
"notificationWebsocket": true,
|
||||
"primaryStoreSendEvent": true,
|
||||
"applicationInformation": true,
|
||||
"notificationSendNoBroker": true,
|
||||
"notificationDynamicUpdate": true,
|
||||
"populationsAutomaticUpdate": true,
|
||||
"primaryStoreAutomaticFetch": true,
|
||||
"secondaryStoreTransactions": true,
|
||||
"secondaryStoreInstantiation": true,
|
||||
"secondaryStoreInventoryRules": true,
|
||||
"mobileExtensionUsersManagement": true,
|
||||
"notificationRequestConnections": true,
|
||||
"mobileExtensionProfilesExternal": true,
|
||||
"notificationRemoteLogReceivedData": false,
|
||||
"primaryStoreCatalogGetGameMediaType": false,
|
||||
"primarySecondaryStoreForceSyncAtLogin": true,
|
||||
"firstPartyAccessToMultiplayerInformation": true,
|
||||
"syncOnResumeToForegroundForNintendoSwitch": false,
|
||||
"usersPolicies": true,
|
||||
"playerCodeOfConduct": true
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsWall": {
|
||||
"fields": {
|
||||
"FriendsWall": {
|
||||
"max_msg": 7,
|
||||
"refresh_time": 122
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsFriends": {
|
||||
"fields": {
|
||||
"FriendsUGC": {
|
||||
"refresh_time": 120
|
||||
},
|
||||
"FriendsPresence": {
|
||||
"refresh_time": 121
|
||||
},
|
||||
"FriendListService": {
|
||||
"refresh_interval": 120
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsJDVersion": {
|
||||
"fields": {
|
||||
"Override": {
|
||||
"123": "Kids",
|
||||
"4884": "ABBA : You Can Dance",
|
||||
"9999": "2022"
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsUnlockable": {
|
||||
"fields": {
|
||||
"AAAMap": {
|
||||
"map2": "Thumbs",
|
||||
"LockAAAMap2": 1
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsQuickplayDesignRules": {
|
||||
"fields": {
|
||||
"FatigueRule1Config": {
|
||||
"MapCount": 1
|
||||
},
|
||||
"FatigueRule2Config": {
|
||||
"MapCount": 3
|
||||
},
|
||||
"RulesNamesToEnable": [],
|
||||
"DiscoveryRuleConfig": {
|
||||
"MapCount": 3
|
||||
},
|
||||
"DifficultyRuleConfig": {
|
||||
"MapCount": 1
|
||||
},
|
||||
"MultiplayerRuleConfig": {
|
||||
"MapCount": 2
|
||||
},
|
||||
"StartDifficultyRuleConfig": {
|
||||
"MapCount": 2,
|
||||
"StartDifficultyRuleConfig": [1, 2],
|
||||
"AcceptableSweatDifficulties": [1, 2]
|
||||
},
|
||||
"TaggedDiscoveryRuleConfig": {
|
||||
"MapCount": 2,
|
||||
"AcceptableTags": ["ExcluJD21_Quickplay"]
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsQuickplayTimer": {
|
||||
"fields": {
|
||||
"FeatureSwitch": {
|
||||
"value": true
|
||||
},
|
||||
"TimerDuration": {
|
||||
"recapTimer": 10,
|
||||
"lobbyTimerDefault": 12,
|
||||
"lobbyTimerNoChoice": 8,
|
||||
"lobbyTimerRefreshForCoop": 5
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-customFeatureSwitches": {
|
||||
"fields": {
|
||||
"relatedSongs": true,
|
||||
"anthologyMode": true,
|
||||
"customRecoLine": false
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsSongsSortingByRecommendation": {
|
||||
"fields": {
|
||||
"isActive": {
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsQuickplayFallbackLists": {
|
||||
"fields": {
|
||||
"EditoFallbackList": {
|
||||
"list": ["RainOnMe", "PacaDance", "Medicina", "BlindingLights", "NaeNae", "Sorbet", "Lullaby", "Temperature", "WomanLikeMe", "QueTirePaLante", "OldTownRoad", "Blue", "WithoutMe", "7Rings", "Bang2019", "Zenit", "ThatPower", "DibbyDibby", "1999", "Magenta", "GangnamStyleDLC", "Juice", "MiMiMi", "BadGuy", "SambaDeJaneiro", "Animals"]
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsWDF": {
|
||||
"fields": {
|
||||
"Recap": {
|
||||
"recap_retry_interval": 2
|
||||
},
|
||||
"UpdateScore": {
|
||||
"update_score_interval": 5,
|
||||
"update_failure_allowance": 10
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsUpsell": {
|
||||
"fields": {
|
||||
"streamedVideo": {
|
||||
"version": 2,
|
||||
"description": 12345,
|
||||
"trackingTag": "Demo_Home_Video",
|
||||
"thumbnailUrl": "https://jd-s3.cdn.ubi.com/public/home/WelcomeVideoJD2020/thumbsnail/558862fc616a732816595cb949729935.png",
|
||||
"videoDataUrl": "https://jd-s3.cdn.ubi.com/public/streamed-videos/Demo_Home_Video/metadata/74d6299d04d544622f9f2b58a9ba58ac.json"
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsSubscription_Service": {
|
||||
"fields": {
|
||||
"ECTokenFetch": {
|
||||
"retry_count": 3,
|
||||
"retry_interval": 598
|
||||
},
|
||||
"ServerRefresh": {
|
||||
"retry_interval": 60,
|
||||
"refresh_interval": 600,
|
||||
"retry_interval_s2s": 600
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsRelatedSongsAutoplayTimer": {
|
||||
"fields": {
|
||||
"durationInSeconds": {
|
||||
"value": 12
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsRelatedSongsAutoplay": {
|
||||
"fields": {
|
||||
"featureSwitch": {
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsRelatedSongs": {
|
||||
"fields": {
|
||||
"Fetch": {
|
||||
"retry_value": 120
|
||||
},
|
||||
"Patterns": {
|
||||
"Subscribed": ["replay", "any", "any", "any"],
|
||||
"Unsubscribed": ["replay", "disk", "disk", "jdu"]
|
||||
},
|
||||
"LocalHistory": {
|
||||
"maxSizePerSession": 3
|
||||
},
|
||||
"minimumSongsToDisplayScreen": {
|
||||
"value": 2
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsRecommendation": {
|
||||
"fields": {
|
||||
"Fetch": {
|
||||
"retry_interval": 120
|
||||
},
|
||||
"OnlineRecoConfig": {
|
||||
"numberOfSongsPlayedInPartyModeToSwitchToClassicReco": 2
|
||||
},
|
||||
"EditorialRecoList": {
|
||||
"maps": ["BlindingLights", "KickIt", "AdoreYou", "WithoutMe", "QueTirePaLante", "Juice"]
|
||||
},
|
||||
"RecoLineConfigForNonSubscribers": {
|
||||
"maxJDUSongsInRecoLine": 2
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsQuest": {
|
||||
"fields": {
|
||||
"minimumScore": {
|
||||
"value": 1000
|
||||
},
|
||||
"questOverride": {
|
||||
"value": []
|
||||
},
|
||||
"sessionCountUntilQuestKill": {
|
||||
"value": 10
|
||||
},
|
||||
"sessionCountUntilDiscoveryKill": {
|
||||
"value": 6
|
||||
},
|
||||
"sessionCountUntilFirstDiscoveryKill": {
|
||||
"value": 2
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsHttp": {
|
||||
"fields": {
|
||||
"FileStreaming": {
|
||||
"slow_bit_rate_in_bps": 512000
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-constantsHome": {
|
||||
"fields": {
|
||||
"Fetch": {
|
||||
"played_maps_count": 2,
|
||||
"new_session_tiles_count": 3,
|
||||
"during_session_tiles_count": 1
|
||||
}
|
||||
},
|
||||
"relatedPopulation": null
|
||||
},
|
||||
"jd-serverInfo": {
|
||||
"fields": {
|
||||
"url": "https://jdp.justdancenext.xyz",
|
||||
"name": "PROD"
|
||||
},
|
||||
"relatedPopulation": null
|
||||
}
|
||||
}
|
||||
}
|
||||
27
database/v2/entities.json
Normal file
27
database/v2/entities.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"entities": [{
|
||||
"entityId": "aa359245-8b6f-4a7d-81a6-0c91f52cc388",
|
||||
"spaceId": "f1ae5b84-db7c-481e-9867-861cf1852dc8",
|
||||
"type": "server",
|
||||
"name": "prod",
|
||||
"tags": [],
|
||||
"obj": {
|
||||
"name": "JMCS PROD",
|
||||
"url": "http://jdp.justdancenext.xyz"
|
||||
},
|
||||
"lastModified": "",
|
||||
"revision": 3
|
||||
}, {
|
||||
"entityId": "cd8593dc-2d53-449c-9dbd-cc43ebb7d3d4",
|
||||
"spaceId": "f1ae5b84-db7c-481e-9867-861cf1852dc8",
|
||||
"type": "server",
|
||||
"name": "default",
|
||||
"tags": [],
|
||||
"obj": {
|
||||
"name": "JMCS PROD",
|
||||
"url": "http://jdp.justdancenext.xyz"
|
||||
},
|
||||
"lastModified": "",
|
||||
"revision": 3
|
||||
}]
|
||||
}
|
||||
1
database/wdf/assign-room-nx.json
Normal file
1
database/wdf/assign-room-nx.json
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
7
database/wdf/assign-room-pc.json
Normal file
7
database/wdf/assign-room-pc.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"__class": "RoomInfo",
|
||||
"room": "MainJDNEXT",
|
||||
"type": "medium",
|
||||
"start": null,
|
||||
"end": null
|
||||
}
|
||||
163
database/wdf/newsfeed.json
Normal file
163
database/wdf/newsfeed.json
Normal file
@@ -0,0 +1,163 @@
|
||||
{
|
||||
"__class": "NewsfeedList",
|
||||
"entries": [{
|
||||
"activationTime": 1467358200,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13602,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13506,
|
||||
"themeType": "boss",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": [],
|
||||
"text": [],
|
||||
"title": ["boss-currentWeekMostBossesBeatenPlayer"]
|
||||
},
|
||||
"playerBasedEntry": true,
|
||||
"playerInfo": {
|
||||
"name": "Adrian",
|
||||
"avatar": 998,
|
||||
"country": 8490,
|
||||
"skin": 101,
|
||||
"platform": "pc",
|
||||
"portraitBorder": 34,
|
||||
"jdPoints": 461488,
|
||||
"tournamentBadge": false,
|
||||
"isSubscribed": false,
|
||||
"pid": "bb805585-4178-41f5-9c71-e4d55c0ff9d9",
|
||||
"__class": "NewsFeedPlayerInfo"
|
||||
},
|
||||
"pictureUrl": "https://ubistatic-a.akamaihd.net/0060/uat/newsfeed/m_1500468052.png",
|
||||
"text": "has beaten the most bosses this week!",
|
||||
"title": "Adrian",
|
||||
"__class": "NewsfeedEntry"
|
||||
}, {
|
||||
"activationTime": 1498834800,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13596,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13498,
|
||||
"themeType": "tournament",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": [],
|
||||
"text": [],
|
||||
"title": ["tournament-weeklyScheduledTournamentWinner"]
|
||||
},
|
||||
"playerBasedEntry": true,
|
||||
"playerInfo": {
|
||||
"name": "Rex",
|
||||
"avatar": 1013,
|
||||
"country": 8459,
|
||||
"skin": 101,
|
||||
"platform": "nx",
|
||||
"portraitBorder": 0,
|
||||
"jdPoints": 303300,
|
||||
"tournamentBadge": false,
|
||||
"isSubscribed": false,
|
||||
"pid": "f8cb988e-8aa7-4ff0-a573-9067a4d0cfd0",
|
||||
"__class": "NewsFeedPlayerInfo"
|
||||
},
|
||||
"pictureUrl": "https://ubistatic-a.akamaihd.net/0060/uat/newsfeed/m_1500468052.png",
|
||||
"text": "has won the latest Weekly Tournament!",
|
||||
"title": "Rex",
|
||||
"__class": "NewsfeedEntry"
|
||||
},
|
||||
{
|
||||
"activationTime": 1466778600,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13597,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13499,
|
||||
"themeType": "tournament",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": [],
|
||||
"text": [],
|
||||
"title": ["tournament-currentWeekMostTournamentsWinner"]
|
||||
},
|
||||
"playerBasedEntry": true,
|
||||
"playerInfo": {
|
||||
"name": "ibratatain17",
|
||||
"avatar": 1007,
|
||||
"country": 8483,
|
||||
"skin": 101,
|
||||
"platform": "pc",
|
||||
"portraitBorder": 0,
|
||||
"jdPoints": 110015,
|
||||
"tournamentBadge": false,
|
||||
"isSubscribed": false,
|
||||
"pid": "ed950db9-4f97-4f2a-a4b1-8da10b9bb2e8",
|
||||
"__class": "NewsFeedPlayerInfo"
|
||||
},
|
||||
"pictureUrl": "https://ubistatic-a.akamaihd.net/0060/uat/newsfeed/m_1500468052.png",
|
||||
"text": "has won the most tournaments this week!",
|
||||
"title": "ibratatain17",
|
||||
"__class": "NewsfeedEntry"
|
||||
},
|
||||
{
|
||||
"activationTime": 1467050400,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13502,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13505,
|
||||
"themeType": "boss",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": ["boss-boss1PictureUrl"],
|
||||
"text": ["boss-boss1BeatenCount"],
|
||||
"title": ["boss-boss1Name"]
|
||||
},
|
||||
"pictureUrl": "https://jd-s3.cdn.ubi.com/public/wdf-bosses/Clint/Clint.png/56bc806b38213ca00cc06cbb182b7d80.png",
|
||||
"text": "has been beaten 522 times.",
|
||||
"title": "Clint",
|
||||
"__class": "NewsfeedEntry"
|
||||
}, {
|
||||
"activationTime": 1467039600,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13503,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13600,
|
||||
"themeType": "boss",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": ["boss-boss2PictureUrl"],
|
||||
"text": ["boss-boss2BeatenCount"],
|
||||
"title": ["boss-boss2Name"]
|
||||
},
|
||||
"pictureUrl": "https://jd-s3.cdn.ubi.com/public/wdf-bosses/Monty/Monty.png/d664ef4f8f57bfa4512bb74856f0c094.png",
|
||||
"text": "has been beaten 370 times.",
|
||||
"title": "Monty",
|
||||
"__class": "NewsfeedEntry"
|
||||
}, {
|
||||
"activationTime": 1467050400,
|
||||
"active": true,
|
||||
"defaultLanguage": "en",
|
||||
"displayDuration": 3,
|
||||
"locId": 13504,
|
||||
"pool": "Priority2_Stats",
|
||||
"textLocId": 13601,
|
||||
"themeType": "boss",
|
||||
"type": "automatic",
|
||||
"variables": {
|
||||
"pictureUrl": ["boss-boss3PictureUrl"],
|
||||
"text": ["boss-boss3BeatenCount"],
|
||||
"title": ["boss-boss3Name"]
|
||||
},
|
||||
"pictureUrl": "https://jd-s3.cdn.ubi.com/public/wdf-bosses/Ori/Ori.png/114022534eebad232f8d8401c91bb142.png",
|
||||
"text": "has been beaten 119 times.",
|
||||
"title": "Ori",
|
||||
"__class": "NewsfeedEntry"
|
||||
}
|
||||
]
|
||||
}
|
||||
6
database/wdf/next-happyhours.json
Normal file
6
database/wdf/next-happyhours.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"__class": "HappyHoursInfo",
|
||||
"start": 1677391200,
|
||||
"end": 1677393000,
|
||||
"running": true
|
||||
}
|
||||
439
database/wdf/screens.json
Normal file
439
database/wdf/screens.json
Normal file
@@ -0,0 +1,439 @@
|
||||
{
|
||||
"__class": "ScreenList",
|
||||
"screens": [{
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247358.3359149,
|
||||
"endTime": 1677247524.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "AmIWrong",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247524.9519148,
|
||||
"endTime": 1677247544.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "JohnCena",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247537.9519148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "vote-recap",
|
||||
"startTime": 1677247544.9519148,
|
||||
"endTime": 1677247564.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "PARTY",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247358.3359149,
|
||||
"endTime": 1677247524.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "INeedYourLoveDLC",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247524.9519148,
|
||||
"endTime": 1677247544.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "ThankUNext",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247537.9519148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "vote-recap",
|
||||
"startTime": 1677247544.9519148,
|
||||
"endTime": 1677247564.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "LoveIsAll",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247358.3359149,
|
||||
"endTime": 1677247524.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "Misunderstood",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247524.9519148,
|
||||
"endTime": 1677247544.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "ThatPower",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247537.9519148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "vote-recap",
|
||||
"startTime": 1677247544.9519148,
|
||||
"endTime": 1677247564.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "KIDSHickoryDickoryDock",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-presentation",
|
||||
"startTime": 1677247564.9519148,
|
||||
"endTime": 1677247574.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Rhythm",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-lobby",
|
||||
"startTime": 1677247574.9519148,
|
||||
"endTime": 1677247586.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "WorthItALT",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247586.9519148,
|
||||
"endTime": 1677247768.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "WorthItALT",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247768.1759148,
|
||||
"endTime": 1677247788.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "NeverCanSay",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247781.1759148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-recap",
|
||||
"startTime": 1677247788.1759148,
|
||||
"endTime": 1677247830.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "NeverCanSay",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"__class": "Screen",
|
||||
"type": "tournament-presentation",
|
||||
"startTime": 1677247564.9519148,
|
||||
"endTime": 1677247574.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Rabiosa",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-lobby",
|
||||
"startTime": 1677247574.9519148,
|
||||
"endTime": 1677247586.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "IFeelItComing",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247586.9519148,
|
||||
"endTime": 1677247768.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Kuliki",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247768.1759148,
|
||||
"endTime": 1677247788.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Kuliki",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247781.1759148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-recap",
|
||||
"startTime": 1677247788.1759148,
|
||||
"endTime": 1677247830.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "INeedYourLoveDLC",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
196
database/wdf/screens_backup.json
Normal file
196
database/wdf/screens_backup.json
Normal file
@@ -0,0 +1,196 @@
|
||||
{
|
||||
"__class": "ScreenList",
|
||||
"screens": [{
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247358.3359149,
|
||||
"endTime": 1677247524.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "Diggin",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247524.9519148,
|
||||
"endTime": 1677247544.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "Diggin",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247537.9519148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "vote-recap",
|
||||
"startTime": 1677247544.9519148,
|
||||
"endTime": 1677247564.9519148,
|
||||
"theme": "vote",
|
||||
"mapName": "Diggin",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "MapVote",
|
||||
"occurance": {
|
||||
"next": 1677247294335.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-presentation",
|
||||
"startTime": 1677247564.9519148,
|
||||
"endTime": 1677247574.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Diggin",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-lobby",
|
||||
"startTime": 1677247574.9519148,
|
||||
"endTime": 1677247586.9519148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Diggin",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "in-game",
|
||||
"startTime": 1677247586.9519148,
|
||||
"endTime": 1677247768.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Diggin",
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "waiting-screen",
|
||||
"startTime": 1677247768.1759148,
|
||||
"endTime": 1677247788.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Diggin",
|
||||
"waitingScreenInfo": {
|
||||
"__class": "WaitingScreenInfo",
|
||||
"getRecapTime": 1677247781.1759148
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"__class": "Screen",
|
||||
"type": "tournament-recap",
|
||||
"startTime": 1677247788.1759148,
|
||||
"endTime": 1677247830.1759148,
|
||||
"theme": "tournament",
|
||||
"mapName": "Diggin",
|
||||
"tournamentInfo": {
|
||||
"__class": "TournamentScreenInfo",
|
||||
"tournamentType": "default",
|
||||
"tournamentLogo": "https://jd-s3.cdn.ubi.com/public/wdf/tournament/Regular_tournament_cup/c3236d5d336c2cb59f8d72d4aec6c3fd.png",
|
||||
"roundNumber": 1,
|
||||
"playListSize": 3,
|
||||
"rewards": [{
|
||||
"type": "skin",
|
||||
"value": 48
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 49
|
||||
}, {
|
||||
"type": "skin",
|
||||
"value": 50
|
||||
}, {
|
||||
"type": "mojo",
|
||||
"value": 700
|
||||
}
|
||||
]
|
||||
},
|
||||
"schedule": {
|
||||
"type": "probability",
|
||||
"theme": "RegularTournament",
|
||||
"occurance": {
|
||||
"next": 1677247564951.9148,
|
||||
"prev": null
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
3
database/wdf/server-time.json
Normal file
3
database/wdf/server-time.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"time": 1677247379.669
|
||||
}
|
||||
0
database/wdf/test.json
Normal file
0
database/wdf/test.json
Normal file
5214
package-lock.json
generated
Normal file
5214
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
28
package.json
Normal file
28
package.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"name": "open-party",
|
||||
"version": "1.0.0",
|
||||
"description": "Ibratabian17's JDU Code",
|
||||
"main": "server.js",
|
||||
"scripts": {
|
||||
"start": "node core/scripts/run.js",
|
||||
"startPM2": "pm2 start server.js --name server --no-daemon",
|
||||
"maintenancea": "node core/scripts/update.js"
|
||||
},
|
||||
"author": "PartyService",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"axios": "^1.6.5",
|
||||
"body-parser": "^1.20.2",
|
||||
"express": "^4.19.2",
|
||||
"fs": "^0.0.1-security",
|
||||
"md5": "^2.3.0",
|
||||
"mongoose": "^5.13.22",
|
||||
"pm2": "^5.3.0",
|
||||
"request-country": "^0.1.2",
|
||||
"xmlhttprequest": "^1.8.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.0.0",
|
||||
"npm": ">=7.0.0"
|
||||
}
|
||||
}
|
||||
19
server.js
Normal file
19
server.js
Normal file
@@ -0,0 +1,19 @@
|
||||
// Ibratabian17's jdu
|
||||
|
||||
const express = require("express");
|
||||
const app = express();
|
||||
console.log(`[MAIN] Starting daemon`);
|
||||
process.title = "Just Dance Unlimited Server";
|
||||
|
||||
const settings = require('./settings.json');
|
||||
const core = require('./core/core');
|
||||
const port = settings.server.forcePort ? settings.server.port : process.env.PORT || settings.server.port;
|
||||
const isPublic = settings.server.isPublic ? "0.0.0.0" : "127.0.0.1";
|
||||
|
||||
// Initialize Express.js
|
||||
const server = app.listen(port, isPublic, () => {
|
||||
core.init(app, express, server);
|
||||
console.log(`[MAIN] listening on ${isPublic}:${port}`);
|
||||
console.log(`[MAIN] Open panel to see more log`);
|
||||
console.log(`[MAIN] Running on ${process.env.NODE_ENV} session`);
|
||||
});
|
||||
15
settings.json
Normal file
15
settings.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"server": {
|
||||
"SaveData": {
|
||||
"windows": "{Home}/AppData/Roaming/openparty/",
|
||||
"linux": "{Home}/.openparty/"
|
||||
},
|
||||
"port": 80,
|
||||
"forcePort": false,
|
||||
"isPublic": true,
|
||||
"serverstatus": {
|
||||
"isMaintenance": false,
|
||||
"channel": "prod"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user