Separating state out of the location

This commit is contained in:
Vladislav Khorev committed 2026-10-30 14:56:24 +06:00
1 parent 5e9a663812
commit 297bd7377f
45 files changed
+2114 -778

No files matched your search

-774
View File
@@ -1,774 +0,0 @@
{
"campaignId": "main",
"chatHistory": [
[],
[],
[]
],
"chatPreviewMsg": [
"",
"",
""
],
"chatUnread": [
true,
true,
true
],
"currentLocationId": "",
"globalFloats": {
"player_hp": 200.0
},
"globalInts": {},
"inventory": {
"items": []
},
"isDarklands": false,
"isDawn": false,
"isNight": false,
"locations": {
"location_dorm": {
"dialogue": {
"active": true,
"currentNodeId": "line_1",
"dialogueId": "dialog_start001"
},
"interactiveObjects": {
"Bed001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Boombox001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Bath_-1_-1_1_Leaf_002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -2.825000047683716,
"positionY": 0.9695000052452087,
"positionZ": -14.300000190734863,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Bath_-1_1_1_Leaf_002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 2.825000047683716,
"positionY": 0.9695000052452087,
"positionZ": -14.300000190734863,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_-1_-1_0_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -10.0,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_-1_-1_1_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -15.699999809265137,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_-1_1_0_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -10.0,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_-1_1_1_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -15.699999809265137,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_1_-1_0_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 10.0,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_1_-1_1_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 15.699999809265137,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_1_1_0_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 10.0,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Room_1_1_1_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 15.699999809265137,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Utility_-1_-1_2_Leaf_001": {
"alpha": 1.0,
"animTask": {
"durationMs": 10.0,
"elapsedMs": 0.0,
"startPosX": -1.100000023841858,
"startPosY": 0.9695000052452087,
"startPosZ": -19.950000762939453,
"startRotY": 0.0,
"startScale": 1.0,
"targetPosX": -1.100000023841858,
"targetPosY": 0.9695000052452087,
"targetPosZ": -19.950000762939453,
"targetRotY": -1.5707963705062866,
"targetScale": 1.0,
"type": 1
},
"isActive": true,
"isAnimating": true,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Utility_-1_1_2_Leaf_001": {
"alpha": 1.0,
"animTask": {
"durationMs": 10.0,
"elapsedMs": 0.0,
"startPosX": 1.100000023841858,
"startPosY": 0.9695000052452087,
"startPosZ": -19.950000762939453,
"startRotY": 0.0,
"startScale": 1.0,
"targetPosX": 1.100000023841858,
"targetPosY": 0.9695000052452087,
"targetPosZ": -19.950000762939453,
"targetRotY": 1.5707963705062866,
"targetScale": 1.0,
"type": 1
},
"isActive": true,
"isAnimating": true,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": -19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Utility_1_-1_2_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Door_Utility_1_1_2_Leaf_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 1.100000023841858,
"positionY": 0.9695000052452087,
"positionZ": 19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Dryer001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Dryer002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Freezer001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Journal001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 5.842959880828857,
"positionY": 0.9284919500350952,
"positionZ": -12.466099739074707,
"rotationY": 0.0,
"scale": 1.0
},
"Music001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 5.1006693840026855,
"positionY": 1.0181854963302612,
"positionZ": -11.958325386047363,
"rotationY": 0.0,
"scale": 1.0
},
"Phone001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 6.664400577545166,
"positionY": 0.8999999761581421,
"positionZ": -12.526200294494629,
"rotationY": 0.0,
"scale": 1.0
},
"Roof": {
"alpha": 1.0,
"isActive": false,
"isAnimating": false,
"positionX": 0.0,
"positionY": 3.2049999237060547,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_Bath_W_N_2_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 2.8249998092651367,
"positionY": 2.8500001430511475,
"positionZ": -12.850000381469727,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_LivingRoom_W_N_2_001": {
"alpha": 1.0,
"isActive": false,
"isAnimating": false,
"positionX": 4.949999809265137,
"positionY": 2.8500001430511475,
"positionZ": -14.25,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_LivingRoom_W_S_2_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -4.949999809265137,
"positionY": 2.8500001430511475,
"positionZ": -14.25,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_Main_Hall_And_Corridors_002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 2.8500001430511475,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_Others_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 2.8500001430511475,
"positionZ": 4.250000476837158,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_Utility_W_N_3_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 4.949999809265137,
"positionY": 2.8500001430511475,
"positionZ": -19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Room_Cover_Utility_W_S_3_001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": -4.949999809265137,
"positionY": 2.8500001430511475,
"positionZ": -19.950000762939453,
"rotationY": 0.0,
"scale": 1.0
},
"Shelf001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Shower001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Sink001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Sink002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Sink003": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Sink004": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Sink005": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Stove001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"Toilet001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"WashingMachine001": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
},
"WashingMachine002": {
"alpha": 1.0,
"isActive": true,
"isAnimating": false,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"rotationY": 0.0,
"scale": 1.0
}
},
"npcs": {
"npc_alik": {
"animationFrame": 0.0,
"attackTargetId": "",
"attack_cooldown": 0.0,
"battle_state": 0,
"currentState": 0,
"currentWaypointIndex": 0,
"enabled": false,
"faceTargetId": "",
"facingAngle": 1.5707963705062866,
"homeDriftCheckTimer": 5.0,
"homePosition": [
-6.334780216217041,
0.0,
-15.038200378417969
],
"hp": 100.0,
"pathWaypoints": [
[
-6.296899795532227,
0.0,
-15.041899681091309
]
],
"position": [
-6.334780216217041,
0.0,
-15.038200378417969
],
"requestedWalkTarget": [
-6.334780216217041,
0.0,
-15.038200378417969
],
"showWeapon": true,
"targetFacingAngle": 0.0,
"visibleRange": 6.0,
"walkTarget": [
-6.296899795532227,
0.0,
-15.041899681091309
]
}
},
"scriptGlobals": {
"alik_door_opened": false,
"bathroom_door_opened": false,
"journal_picked_up": false,
"phone_picked_up": false,
"player_door_opened": false
},
"state": {
"activeNavigationIndex": 0,
"cameraAzimuth": -2.3499999046325684,
"cameraInclination": 1.103600025177002,
"targetInteractNpcId": "",
"targetInteractiveObjectId": "",
"targetTeleportZoneId": "",
"taxi": {
"arrivedCallbackCalled": false,
"car": {
"currentWaypoint": 0,
"mode": 1,
"position": [
-20.850000381469727,
0.0,
64.0
],
"rotation": 0.0,
"steeringAngle": 0.0,
"velocity": 0.0,
"waypoints": [],
"wheelAngle": 0.0
}
}
},
"teleportZones": {
"tp_dorm_to_2floor": false,
"tp_dorm_to_loc2": false
},
"triggerZones": {
"ladder_zone001": {
"enabled": true,
"playerInside": false
},
"pickup_phone_zone001": {
"enabled": true,
"playerInside": false
},
"taxi_zone001": {
"enabled": true,
"playerInside": false
}
}
}
},
"money": 5500,
"playerHp": 200.0,
"playerMaxHp": 200.0,
"players": {
"player": {
"animationFrame": 0.0,
"attackTargetId": "",
"attack_cooldown": 0.0,
"battle_state": 0,
"currentState": 0,
"currentWaypointIndex": 0,
"enabled": true,
"faceTargetId": "",
"facingAngle": 0.0,
"homeDriftCheckTimer": 5.0,
"homePosition": [
0.0,
0.0,
0.0
],
"hp": 200.0,
"pathWaypoints": [
[
6.8031005859375,
0.0,
-14.641900062561035
]
],
"position": [
6.7634501457214355,
0.0,
-14.60219955444336
],
"requestedWalkTarget": [
6.7634501457214355,
0.0,
-14.60219955444336
],
"showWeapon": true,
"targetFacingAngle": 0.0,
"visibleRange": 6.0,
"walkTarget": [
6.8031005859375,
0.0,
-14.641900062561035
]
}
},
"questJournal": {
"quests": [
{
"activeObjectiveIndex": 0,
"id": "tutorial_take_items",
"objectives": [
{
"completed": false,
"id": "take_phone",
"visible": true
},
{
"completed": false,
"id": "take_journal",
"visible": true
}
],
"status": 1
},
{
"activeObjectiveIndex": 0,
"id": "ghost_lore",
"objectives": [
{
"completed": false,
"id": "ghost_lore_aiperi",
"visible": true
},
{
"completed": false,
"id": "ghost_lore_alik",
"visible": false
},
{
"completed": false,
"id": "ghost_lore_teacher",
"visible": true
}
],
"status": 0
},
{
"activeObjectiveIndex": 0,
"id": "ghost_coursework",
"objectives": [
{
"completed": false,
"id": "ghost_coursework_find",
"visible": true
},
{
"completed": false,
"id": "ghost_coursework_mark",
"visible": true
}
],
"status": 0
},
{
"activeObjectiveIndex": 0,
"id": "ghost_release",
"objectives": [
{
"completed": false,
"id": "ghost_release_reportcard",
"visible": true
},
{
"completed": false,
"id": "ghost_release_mark",
"visible": true
},
{
"completed": false,
"id": "ghost_release_show",
"visible": true
}
],
"status": 0
},
{
"activeObjectiveIndex": 0,
"id": "study_beginning",
"objectives": [
{
"completed": false,
"id": "study_beginning_lecture",
"visible": true
},
{
"completed": false,
"id": "study_beginning_task",
"visible": true
}
],
"status": 1
},
{
"activeObjectiveIndex": 0,
"id": "study_project",
"objectives": [
{
"completed": false,
"id": "study_project_book",
"visible": true
},
{
"completed": false,
"id": "study_project_write",
"visible": true
},
{
"completed": false,
"id": "study_project_give",
"visible": true
}
],
"status": 0
},
{
"activeObjectiveIndex": 0,
"id": "aiperi_knife",
"objectives": [
{
"completed": false,
"id": "aiperi_knife_keys",
"visible": true
},
{
"completed": false,
"id": "aiperi_knife_take",
"visible": true
},
{
"completed": false,
"id": "aiperi_knife_give",
"visible": true
}
],
"status": 0
}
]
},
"savedAt": "2026-10-28 23:16",
"schemaVersion": 1,
"taxiIsCalled": false,
"tutorialJournalScreenOpened": false,
"tutorialNeedOpenTaxiScreen": false,
"tutorialPhoneChatScreenOpened": false,
"tutorialStep": 0,
"tutorialTaxiHintDone": false
}