1
0
mirror of synced 2024-11-12 01:00:46 +01:00

Add default song phase unlock settings for Lapistoria and Sunny Park, document flags a bit better.

This commit is contained in:
Jennifer Taylor 2021-09-09 01:04:46 +00:00
parent 218cb7f74a
commit 1bef9ebd95
2 changed files with 100 additions and 8 deletions

View File

@ -49,6 +49,31 @@ class PopnMusicLapistoria(PopnMusicBase):
"""
return {
'ints': [
{
'name': 'Music Open Phase',
'tip': 'Default music phase for all players.',
'category': 'game_config',
'setting': 'music_phase',
'values': {
0: 'No music unlocks',
1: 'Phase 1',
2: 'Phase 2',
3: 'Phase 3',
4: 'Phase 4',
5: 'Phase 5',
6: 'Phase 6',
7: 'Phase 7',
8: 'Phase 8',
9: 'Phase 9',
10: 'Phase 10',
11: 'Phase 11',
12: 'Phase 12',
13: 'Phase 13',
14: 'Phase 14',
15: 'Phase 15',
16: 'Phase MAX',
}
},
{
'name': 'Story Mode',
'tip': 'Story mode phase for all players.',
@ -96,18 +121,57 @@ class PopnMusicLapistoria(PopnMusicBase):
def handle_info22_common_request(self, request: Node) -> Node:
game_config = self.get_game_config()
story_phase = game_config.get_int('story_phase')
music_phase = game_config.get_int('music_phase')
phases = {
# Default song phase availability (0-16)
0: 16,
# The following songs are unlocked when the phase is at or above the number specified:
# 1 - 1340, 1341, 1342, 1343, 1351, 1352
# 2 - 1317, 1344, 1345
# 3 - 1362, 1363
# 4 - 1368
# 5 - 1370
# 6 - 1379, 1380
# 7 - 1385
# 8 - 1388
# 9 - 1395, 1396, 1397
# 10 - 1393
# 11 - 1398, 1399
# 12 - 1400, 1401
# 13 - 1408
# 14 - 1414
# 15 - 1421
# 16 - 1422
0: music_phase,
# Card phase (0-11)
1: 11,
# Pop'n Aura, max (0-11) (remove all aura requirements)
2: 11,
# Story (0-24)
# Note also that depending on the story phase, some songs are also unlocked.
# Given the story phase at or above the below phases, the following songs are unlocked:
# 1 - 1314, 1328, 1338, 1339
# 2 - 1346, 1347, 1361
# 3 - 1349, 1364, 1365, 1367
# 4 - 1366, 1369
# 5 - 1337, 1348
# 6 - 1371, 1372, 1373
# 7 - 1374
# 8 - 1383
# 9 - 1336
# 10 - 1382
# 11 - 1387
# 12 - 1386
# 15 - 1390
# 16 - 1389
# 18 - 1391
# 19 - 1392
# 21 - 1405, 1406, 1407
# 22 - 1410, 1411
3: story_phase,
# BEMANI ruins Discovery! 0 = off, 1 = active, 2 = off
4: 0,
# When in phase 1 or 2, the following songs are available for unlock: 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360
4: 2,
# Unknown event, something to do with net taisen (0-2)
5: 2,
# Unknown event (0-1)
@ -119,10 +183,11 @@ class PopnMusicLapistoria(PopnMusicBase):
# Course mode phase (0-11)
9: 11,
# Pon's Fate Purification Plan, 0 = off, 1 = active, 2 = off
10: 0,
# When in phase 1 or 2, the following songs are available for unlock: 1375, 1376, 1377, 1378, 1381
10: 2,
# Unknown event (0-3)
11: 3,
# Unknown event (0-1)
# Unlock song 1384 (0-1)
12: 1,
# Appears to be unlocks for course mode including KAC stuff.
13: 2,
@ -133,11 +198,19 @@ class PopnMusicLapistoria(PopnMusicBase):
# Unknown event (0-2)
16: 2,
# Unknown event (0-12)
17: 0,
# Unknown event (0-2)
17: 12,
# Kaitou BisCo no yokokujou!! event, 0 = off, 1 = active, 2 = off (0-2)
# When in phase 1 or 2, the following songs are available for unlock: 1402, 1403, 1404, 1409
18: 2,
# Bemani Summer Diary, 0 = off, 1-6 are phases, 7 = off
19: 0,
# When the phase is at or above the below phases, the following songs are unlocked:
# 1 - 1415
# 2 - 1417
# 3 - 1416
# 4 - 1418
# 5 - 1419
# 6 - 1420
19: 7,
}
root = Node.void('info22')

View File

@ -53,6 +53,24 @@ class PopnMusicSunnyPark(PopnMusicBase):
"""
return {
'ints': [
{
'name': 'Music Open Phase',
'tip': 'Default music phase for all players.',
'category': 'game_config',
'setting': 'music_phase',
'values': {
0: 'No music unlocks',
1: 'Phase 1',
2: 'Phase 2',
3: 'Phase 3',
4: 'Phase 4',
5: 'Phase 5',
6: 'Phase 6',
7: 'Phase 7',
8: 'Phase 8',
9: 'Phase MAX',
}
},
{
'name': 'Event Phase',
'tip': 'Event phase for all players.',
@ -471,10 +489,11 @@ class PopnMusicSunnyPark(PopnMusicBase):
def handle_game_get_request(self, request: Node) -> Node:
game_config = self.get_game_config()
event_phase = game_config.get_int('event_phase')
music_phase = game_config.get_int('music_phase')
root = Node.void('game')
root.add_child(Node.s32('ir_phase', 0))
root.add_child(Node.s32('music_open_phase', 8))
root.add_child(Node.s32('music_open_phase', music_phase))
root.add_child(Node.s32('collabo_phase', 8))
root.add_child(Node.s32('personal_event_phase', event_phase))
root.add_child(Node.s32('shop_event_phase', 6))