Move towards removing Annotation

This commit is contained in:
2025-09-24 10:17:18 +01:00
parent a83186e6dd
commit 96b95907f2
7 changed files with 384 additions and 77 deletions
+146 -34
View File
@@ -1,51 +1,163 @@
Seed: 7114951007332849727
Room layout (compact):
0,1,2,3
0,1,2,3,4,5,6
|
+- 4,5
+- 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
| |
| +- 22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46
| | |
| | +- 47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64
| | |
| | 65,66
| |
| 67,68,69
|
+- 6,7
|
8,9,10,11,12,13,14,15,16,17,18,19
70,71,72
Layout with room names:
tutRezBox-0
rezBox-0
|
autoDoor-1
|
Corridor-2
rectPillars-2
|
doorToggle-6gon-3
autoDoor-3
|
+- triggerDoorRoom-4
Corridor-4
|
autoDoor-5
|
ElecautoRect-6
|
+- triggerDoorRoom-7
| |
| autoRect-5
|
+- triggerDoorRoom-6
| autoDoor-8
| |
| autoRect-7
| autoDoor-9
| |
| Corridor-10
| |
| autoDoor-11
| |
| 8gon-12
| |
| triggerDoorRoom-13
| |
| autoDoor-14
| |
| autoDoor-15
| |
| Corridor-16
| |
| autoRect-17
| |
| autoDoor-18
| |
| Corridor-19
| |
| autoDoor-20
| |
| 6gon-21
| |
| +- triggerDoorRoom-22
| | |
| | autoDoor-23
| | |
| | autoDoor-24
| | |
| | Corridor-25
| | |
| | autoDoor-26
| | |
| | doorToggle-autoRect-27
| | |
| | triggerDoorRoom-28
| | |
| | autoDoor-29
| | |
| | autoDoor-30
| | |
| | Corridor-31
| | |
| | autoRect-32
| | |
| | autoDoor-33
| | |
| | Corridor-34
| | |
| | autoDoor-35
| | |
| | Corridor-36
| | |
| | 8gon-37
| | |
| | triggerDoorRoom-38
| | |
| | autoDoor-39
| | |
| | autoDoor-40
| | |
| | Corridor-41
| | |
| | tanksRoom-42
| | |
| | autoDoor-43
| | |
| | Corridor-44
| | |
| | autoDoor-45
| | |
| | 8gon-46
| | |
| | +- triggerDoorRoom-47
| | | |
| | | autoDoor-48
| | | |
| | | autoDoor-49
| | | |
| | | Corridor-50
| | | |
| | | autoRect-51
| | | |
| | | defaultRoom-52
| | | |
| | | autoRect-53
| | | |
| | | defaultRoom-54
| | | |
| | | autoRect-55
| | | |
| | | autoDoor-56
| | | |
| | | Corridor-57
| | | |
| | | autoDoor-58
| | | |
| | | 8gon-59
| | | |
| | | triggerDoorRoom-60
| | | |
| | | autoDoor-61
| | | |
| | | autoDoor-62
| | | |
| | | Corridor-63
| | | |
| | | defaultRoom-64
| | |
| | autoDoor-65
| | |
| | Corridor-66
| |
| autoDoor-67
| |
| Corridor-68
| |
| rect-69
|
Corridor-8
autoDoor-70
|
autoDoor-9
Corridor-71
|
Corridor-10
|
Corridor-11
|
roomCenterPillar-12
|
corridorN-13
|
autoDoor-14
|
Corridor-15
|
6gon-16
|
defaultRoom-17
|
autoRect-18
|
Corridor-19
defaultRoom-72
+1 -1
View File
@@ -1,4 +1,4 @@
Generating level with seed 7114951007332849727
After 1 attempt(s), Successful generation of level with seed 7114951007332849727
20 rooms in total
73 rooms in total
+222 -24
View File
@@ -1,23 +1,65 @@
Seed: 7114951007332849727
0:TutStartRez
0:startThenWeaponRoom
|
1:corDoor
|
2:DoorTest
2:PassthroughLockKeyLists-HELD {_ibtHeld = SPARKGUN}
|
3:corDoor
|
4:critroom
4:lasSensorTurretTest
|
5:corDoor
|
6:TutDrop
6:anRoom
|
7:cor
7:corDoor
|
8:PassthroughLockKeyLists-HELD {_ibtHeld = KEYCARD 0}
|
9:corDoor
|
10:warningRooms
|
11:corDoor
|
12:chaseCrit+armourChaseCrit rectRoom
|
13:corDoor
|
14:healthTest
|
15:corDoor
|
16:empty tanksRoom
|
17:corDoor
|
18:PassthroughLockKeyLists-LASER
|
19:corDoor
|
20:shootingRange
|
21:corDoor
|
22:lasSensorTurretTest
|
23:corDoor
|
24:randomFourCornerRoom
0:0:TutStartRez
0:0:startThenWeaponRoom
|
0:1:weaponBetweenPillars_BANGSTICK4
0:0:0:tutRezBox
0:0:0:rezBox'
0:0:0:0:rezBox
|
0:0:0:1:autoDoor
0:1:0:rectPillars
1:0:corDoor
@@ -25,19 +67,27 @@ Seed: 7114951007332849727
|
1:0:1:Corridor
2:0:DoorTest
2:0:PassthroughLockKeyLists-HELD {_ibtHeld = SPARKGUN}
2:0:0:doorToggle-6gon
2:0:0:RassThroughLockKeyLists
|
+- 2:0:1:triggerDoorRoom
2:0:1:roomsContaining chaseCritchaseCritchaseCritTRANSFORMERCANCAN
2:0:0:0:sensorRoomRunPast
2:0:0:0:0:autoDoor
|
2:0:0:0:1:ElecautoRect
|
+- 2:0:0:0:2:triggerDoorRoom
| |
| 2:0:2:autoRect
| 2:0:0:0:3:autoDoor
|
+- 2:0:3:triggerDoorRoom
| |
| 2:0:4:autoRect
2:0:0:0:4:autoDoor
|
2:0:5:Corridor
2:0:0:0:5:Corridor
2:0:1:0:defaultRoom
3:0:corDoor
@@ -45,13 +95,15 @@ Seed: 7114951007332849727
|
3:0:1:Corridor
4:0:critroom
4:0:lasSensorTurretTest
4:0:0:Corridor
4:0:0:autoDoor
|
4:0:1:roomCenterPillar
4:0:1:8gon
|
4:0:2:corridorN
4:0:2:triggerDoorRoom
|
4:0:3:autoDoor
5:0:corDoor
@@ -59,13 +111,159 @@ Seed: 7114951007332849727
|
5:0:1:Corridor
6:0:TutDrop
6:0:anRoom
6:0:0:6gon
6:0:0:autoRect
7:0:corDoor
7:0:0:autoDoor
|
6:0:1:defaultRoom
7:0:1:Corridor
8:0:PassthroughLockKeyLists-HELD {_ibtHeld = KEYCARD 0}
8:0:0:RassThroughLockKeyLists
|
6:0:2:autoRect
8:0:1:roomsContaining chaseCritKEYCARD 0
7:0:Corridor
8:0:0:0:keyCardRoomRunPast
8:0:0:0:0:autoDoor
|
8:0:0:0:1:6gon
|
+- 8:0:0:0:2:triggerDoorRoom
| |
| 8:0:0:0:3:autoDoor
|
8:0:0:0:4:autoDoor
|
8:0:0:0:5:Corridor
8:0:1:0:rect
9:0:corDoor
9:0:0:autoDoor
|
9:0:1:Corridor
10:0:warningRooms
10:0:0:autoDoor
|
10:0:1:doorToggle-autoRect
|
10:0:2:triggerDoorRoom
|
10:0:3:autoDoor
11:0:corDoor
11:0:0:autoDoor
|
11:0:1:Corridor
12:0:chaseCrit+armourChaseCrit rectRoom
12:0:0:autoRect
13:0:corDoor
13:0:0:autoDoor
|
13:0:1:Corridor
14:0:healthTest
14:0:0:autoDoor
|
14:0:1:Corridor
|
14:0:2:8gon
|
14:0:3:triggerDoorRoom
|
14:0:4:autoDoor
15:0:corDoor
15:0:0:autoDoor
|
15:0:1:Corridor
16:0:empty tanksRoom
16:0:0:tanksRoom
17:0:corDoor
17:0:0:autoDoor
|
17:0:1:Corridor
18:0:PassthroughLockKeyLists-LASER
18:0:0:RassThroughLockKeyLists
|
18:0:1:roomsContaining chaseCritPRISMTRANSFORMERPIPE
18:0:0:0:lasCenSensEdge
18:0:0:0:0:autoDoor
|
18:0:0:0:1:8gon
|
+- 18:0:0:0:2:triggerDoorRoom
| |
| 18:0:0:0:3:autoDoor
|
18:0:0:0:4:autoDoor
|
18:0:0:0:5:Corridor
18:0:1:0:autoRect
19:0:corDoor
19:0:0:autoDoor
|
19:0:1:Corridor
20:0:shootingRange
20:0:0:autoRect
|
20:0:1:defaultRoom
|
20:0:2:autoRect
|
20:0:3:defaultRoom
|
20:0:4:autoRect
21:0:corDoor
21:0:0:autoDoor
|
21:0:1:Corridor
22:0:lasSensorTurretTest
22:0:0:autoDoor
|
22:0:1:8gon
|
22:0:2:triggerDoorRoom
|
22:0:3:autoDoor
23:0:corDoor
23:0:0:autoDoor
|
23:0:1:Corridor
24:0:defaultRoom
+1 -1
View File
File diff suppressed because one or more lines are too long
+4 -8
View File
@@ -18,13 +18,8 @@ import Dodge.Tree
import LensHelp
import RandomHelp
-- | A test level tree.
initialRoomTree :: State LayoutVars (MetaTree Room String)
initialRoomTree = annoToRoomTree initialAnoTree
--initialRoomTree = annoToRoomTree startWorldTreeTest
tutRoomTree :: State LayoutVars (MetaTree Room String)
tutRoomTree = annoToRoomTree tutAnoTree
tutRoomTree = tutAnoTree
--startWorldTreeTest :: Annotation
--startWorldTreeTest =
@@ -32,8 +27,9 @@ tutRoomTree = annoToRoomTree tutAnoTree
-- [ IntAnno $ AnTree . startRoom
-- ]
initialAnoTree :: Annotation
initialAnoTree =
initialRoomTree :: State LayoutVars MTRS
initialRoomTree =
annoToRoomTree $
OnwardList $
intersperse
(AnTree $ zoom lyGen corDoor)
+1
View File
@@ -54,6 +54,7 @@ layoutLevelFromSeed i seed = do
appendFile "log/attemptedSeeds" "\n"
let g = mkStdGen seed
let treecluster = evalState tutRoomTree (LayVars g 0)
--let treecluster = evalState initialRoomTree (LayVars g 0)
let labts = decomposeSelfTree $ numSelfTree $ combineTree _rmName treecluster
appendFile "log/treeCluster" ("Seed: " ++ show seed ++ "\n")
putStrLn "MetaTree clusters:"
+9 -9
View File
@@ -1,18 +1,13 @@
module Dodge.Room.Tutorial where
import Dodge.Annotation
import Dodge.Room.Room
import Dodge.Annotation.Data
import Dodge.Cleat
--import Control.Monad
--import qualified Data.Set as S
--import Dodge.Cleat
import Dodge.Data.GenWorld
import Dodge.Default.Terminal
import Dodge.Item.Ammo
import Dodge.Item.Held.Cane
--import Dodge.Item.Random
import Dodge.LevelGen.PlacementHelper
--import Dodge.LightSource
import Dodge.Placement.Instance
import Dodge.PlacementSpot
import Dodge.Room.Airlock
@@ -41,11 +36,10 @@ import TreeHelp
--import Data.List (intersperse)
tutAnoTree :: Annotation
tutAnoTree :: State LayoutVars MTRS
tutAnoTree =
annoToRoomTree $
OnwardList
-- [ AnTree $ return $ tToBTree "teststart" $ return $ cleatOnward corridor
-- , AnTree $ tutDrop
[ AnTree $ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox
, AnTree corDoor
, AnTree tutRooms
@@ -58,6 +52,12 @@ tutAnoTree =
---- , AnTree $ weaponTut
]
foldMTRS :: [State LayoutVars (MetaTree Room String)]
-> State LayoutVars (MetaTree Room String)
foldMTRS xs = do
ys <- sequence xs
return $ foldr1 attachOnward' ys
setRoomInt :: Room -> State LayoutVars (Int,Room)
setRoomInt x = do
i <- nextLayoutInt