# Note: This claims to be a "to first boss" journal but in fact Maptroid # Worlds has no bosses. I've cut it off at grabbing the ship shields, # which seems analogous to the "first boss" point in many other games: # you've gotten a few basic upgrades and have just gotten one that's # going to open up your exploration options significantly; all the game's # main systems have been tutorialized (except maybe teleporters). # Preferences P softerChecks on # Not sure about this... P revertAspects [ current-positions primary effects ] # Macros = haveMoney n [ A set money*{n} n has: money*{n} ] = _jaunt where [ p {where} g jaunt ] = bossDoor name [ o {name} gt bossDoor ] = boss who level [ oa fight{who} gt bossFight e [ { <{level}>sum(combat, {who}){ gain defeated{who}; save; deactivate }{ goto endings//death } } ] ] = failBossRevert who [ !ta fight{who}%f R ] = beatBoss who [ ta {who}%s # This means that further 'At's after > beatBoss will correctly only # be available if you beat the boss: a claimReward q {who}Defeated At deactivate gt trigger ] = useSavePoint [ a save At save ] = enemy which [ gd enemy{which} ] = seeSwitch [ m switch:unhit oa hitSwitch q Apino At { set switch:hit; deactivate } ] = switch [ m switch:unhit a hitSwitch q Apino At { set switch:hit; deactivate } ] = namedSwitch name [ m switch{name}:unhit a hitSwitch{name} q Apino At { set switch{name}:hit; deactivate } ] = seeNamedSwitch name [ m switch{name}:unhit oa hitSwitch{name} q Apino e { set switch{name}:hit; deactivate } ] = combat enemy level [ m combat:unresolved oa fight e [ { <{level}>sum(combat,{enemy}){ set combat:victory; deactivate }{ set combat:defeat; goto endings//death } } ] ] = lose [ !ta fight%f ] = win [ ta fight%s ] = grab what [ a grab{_} At { gain {what}; deactivate } ] = seeItem [ oa grab e deactivate ] = quest which [ g quest{which} active At gain quest{which}Progress*1 ] = questProgress which [ g quest{which} advanced At gain quest{which}Progress*1 ] = questComplete which [ g quest{which} complete At gain quest{which}Complete ] = upgradeMenu which [ # TODO: Should this be a v? o menu{which} {which}UpgradeMenu::menu backTo{__zone__} e gain cameFrom{__zone__} qr cameFrom{__zone__} er lose cameFrom{__zone__} t menu{which} n at: {which}UpgradeMenu::menu gd menu ] = leaveMenu zone [ t backTo{zone} n at: {zone}::main ] = logVisits [ a visit e [ { gain visited{__zone__}; deactivate } ] gt trigger ] = hazardHere which [ # Using oa means we don't trigger it immediately but we will if a # second or subsequent action ends up in this position. This makes # sense (although is not precise) because hazards have a timer before # they actually hurts us. oa {which}hazard q !?{which}Resist e lose health*30 gt trigger ] # Note: we can't add '!hazard:suppressed' to the normal hazard macro, # because mechanism search would find distant mechanisms and read their # state. But using this one in a zone where a 'hazard' mechanism has been # set up is safe. = suppressibleHazardHere which [ oa {which}hazard q !?{which}Resist&!{which}:suppressed e lose health*30 gt trigger ] # Set up endings domain for goto effects domain endings @ death @ @ @ victory @ @ # Journal g time: 2024-3-21:14:07 domain main S StartingHallway::main zz Home n [ We've locked ourselves out of our house. ] o left OurHouse::rightSide right qb blueKey @ OurHouse::rightSide o down x up attic down x downLeft leftSide up o left @ @ o right qb swim o downRight qb light x aroundLeft OurHouse::rightSide down xt up n at: OurHouse::attic n [ Tutorial shows map scroll keys; we can see our ship to the right. ] xt downLeft n at: OurHouse::leftSide xt left OurYard::main right n [ There's grass here but it doesn't require a special tool. ] gd grass > grab torch F torch light t ? OurHouse::leftSide g jauntStart t ? OurHouse::attic t ? OurHouse::rightSide t down StartingHallway::main g jauntEnd xt downRight SecondHallway::main underLeft v left StartingHallway::main right x right launchPad left qb torch x blastOff StartingQuadrant::main - gt blastOff zz Galaxy n [ We blast off in our ship, but there's no option to return to land back at home. ] n [ We meet a traveler whose space ship needs a tyre, maybe we can find a spare? ] o rockyPlanet o welcomingPlanet n [ We also see a third planet or other celestial body that we can't quite access. ] xt rockyPlanet RP_RockyLanding::main blastOff zz RockyPlanet gt landing gr blastOff o right o topLeft o bottomLeft o downRight o downLeft qb blueKey xt topLeft upperLeftHallway right > grab glasses n [ Increases vision radius. ] x south RP_LeftJunction::main upLeft o up RP_InnerUpperLeftHallway::main down @ RP_InnerUpperLeftHallway::main v topRight RP_RockyLanding::main bottomLeft @ @ o down o right qb yellowKey xt up n at: RP_InnerUpperLeftHallway::main o downRight qb swim t down n at: RP_LeftJunction::main xt down RP_BottomV::main upLeft o right qb blueKey t ? RP_LeftJunction::main g jauntStart t ? RP_RockyLanding::upperLeftHallway t ? RP_RockyLanding::main g jauntEnd xt downRight deadEnd up t up n at: RP_RockyLanding::main xt right rightCooridor left o downLeft q ?tomatoRed t left n at: RP_RockyLanding::main t blastOff n at: StartingQuadrant::main xt welcomingPlanet WP_GrassyLanding::main blastOff zz WelcomingPlanet gt landing gr blastOff o topRight grassyNook left qb blueKey @ WP_GrassyLanding::grassyNook > seeItem @ @ o bottomRight qb blueKey x left WP_ShallowTunnel::main up o left o downMid qb ?throughWalls x right rightEnd left o down qb ?throughWalls > grab blueKey t left n at: WP_ShallowTunnel::main xt left zigZags right o upLeft qb ?darkBrown x left WP_LeftTunnels::main right o upperLeft qb ?darkBrown o down qb swim t ? WP_ShallowTunnel::zigZags g jauntStart t ? WP_ShallowTunnel::main t ? WP_GrassyLanding::main g jauntEnd xt topRight n at: WP_GrassyLanding::grassyNook ta grab n [ It's just a note about hiding something in a tree house. ] t left n at: WP_GrassyLanding::main xt bottomRight WP_RightBeach::leftSide left o right qb swim t left n at: WP_GrassyLanding::main t blastOff n at: StartingQuadrant::main o right asteroids left qb ?traverseAsteroids @ asteroids o concentricArcs > seeItem @ @ t rockyPlanet n at: RP_RockyLanding::main xt downLeft RP_MiddleTunnel::main up o down qb swim > grab shipShields F shipShields ?traverseAsteroids