Skip to content

Commit

Permalink
Fixed three NG+ levels
Browse files Browse the repository at this point in the history
- Level 12 balanced for new door breaking behavior
- Secret 101 and 102 fixed players winning after defeat

102 has new binaries: https://github.com/dkfans/keeperfx/files/8931819/origplus102.zip
  • Loading branch information
Loobinex committed Jun 22, 2022
1 parent 436f22a commit ef27383
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 11 deletions.
15 changes: 15 additions & 0 deletions campgns/origplus/map00012.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ SET_GENERATE_SPEED(400)

COMPUTER_PLAYER(PLAYER1,0)
COMPUTER_PLAYER(PLAYER2,0)
SET_COMPUTER_EVENT(PLAYER1,"EVENT ENEMY DOOR",400,25,2500,2,DRAWFROM(18000,22000))
SET_COMPUTER_EVENT(PLAYER2,"EVENT ENEMY DOOR",400,25,2500,2,DRAWFROM(18000,22000))

ALLY_PLAYERS(PLAYER1,PLAYER2,1)

Expand Down Expand Up @@ -159,4 +161,17 @@ IF(PLAYER2,HEART_HEALTH <= 28000)
ENDIF
ENDIF

SET_DOOR(LOCKED,41,30)

IF(PLAYER1,BATTLES_WON > 0)
IF_SLAB_OWNER(37,42,PLAYER1)
SET_DOOR(UNLOCKED,37,42)
ENDIF
ENDIF
IF(PLAYER2,BATTLES_WON > 0)
IF_SLAB_OWNER(46,42,PLAYER2)
SET_DOOR(UNLOCKED,46,42)
ENDIF
ENDIF

REM ****************************************************************************
15 changes: 9 additions & 6 deletions campgns/origplus/map00101.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ ENDIF
IF(PLAYER0,TIMER0 >= 4000)
IF(PLAYER0,FLAG1 == 0)
DISPLAY_OBJECTIVE(142,PLAYER0)
SET_FLAG(PLAYER0,FLAG1,2)
LOSE_GAME
ENDIF
ENDIF
Expand All @@ -55,11 +56,13 @@ ENDIF
IF(PLAYER0,FLAG2 == 1)
IF(PLAYER0,IMP <= 0)
IF(PLAYER0,DUNGEON_DESTROYED == 0)
REM "You are indeed a twisted soul, master. You made the Imps extinct with such panache that not one but two Dark Mistresses have devoted themselves to helping you achieve your next goal. You may proceed to your next conquest."
DISPLAY_OBJECTIVE(143,PLAYER0)
ADD_CREATURE_TO_LEVEL(PLAYER0,DARK_MISTRESS,PLAYER0,2,4,10000)
REM Using a timer to make sure add creature command will be executed
SET_TIMER(PLAYER0,TIMER1)
IF(PLAYER0,FLAG1 == 0)
REM "You are indeed a twisted soul, master. You made the Imps extinct with such panache that not one but two Dark Mistresses have devoted themselves to helping you achieve your next goal. You may proceed to your next conquest."
DISPLAY_OBJECTIVE(143,PLAYER0)
ADD_CREATURE_TO_LEVEL(PLAYER0,DARK_MISTRESS,PLAYER0,2,4,10000)
REM Using a timer to make sure add creature command will be executed
SET_TIMER(PLAYER0,TIMER1)
ENDIF
ENDIF
ENDIF
ENDIF
Expand All @@ -80,7 +83,7 @@ KILL_CREATURE(PLAYER0,IMP,MOST_EXPERIENCED,50)
DISPLAY_OBJECTIVE(143,PLAYER0)
SET_FLAG(PLAYER0,FLAG3,1)
ENDIF

SET_FLAG(PLAYER0,FLAG1,1)
WIN_GAME
ENDIF

Expand Down
36 changes: 32 additions & 4 deletions campgns/origplus/map00102.txt
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ IF(PLAYER0,CAMPAIGN_FLAG3 <= 2)
REM Using a timer to make sure add creature command will be executed
SET_TIMER(PLAYER0,TIMER1)
SET_FLAG(PLAYER0,FLAG1,1)
ADD_OBJECT_TO_LEVEL(SPECBOX_TRANSFR,2,0)
ENDIF

IF(PLAYER0,FLAG1 == 1)
Expand Down Expand Up @@ -95,17 +96,44 @@ IF(PLAYER0,TIMER1 >= 100)
WIN_GAME
BONUS_LEVEL_TIME(0)
IF(PLAYER0,HELL_HOUND <= 0)
SET_FLAG(PLAYER0,CAMPAIGN_FLAG3,2)
IF(PLAYER0,CREATURES_TRANSFERRED > 0)
IF(PLAYER0,FLAG6 != 1)
IF(PLAYER0,FLAG7 == 0)
REM There is a creature transferred, and it's not the Hound, so it must be the Warlock.
SET_FLAG(PLAYER0,CAMPAIGN_FLAG3,2)
SET_FLAG(PLAYER0,FLAG7,1)
ENDIF
ENDIF
ENDIF
IF(PLAYER0,CREATURES_TRANSFERRED == 0)
REM No Hound and nothing transferred, this means the hound has died.
SET_FLAG(PLAYER0,FLAG7,2)
ENDIF
ENDIF
ENDIF

IF(PLAYER0,SORCEROR >= 1)
SET_FLAG(PLAYER0,CAMPAIGN_FLAG4,1)
ENDIF

IF(PLAYER0,CAMPAIGN_FLAG4 >= 1)
IF(PLAYER0,GAME_TURN >= 60)
IF(PLAYER0,SORCEROR <= 0)
SET_FLAG(PLAYER0,CAMPAIGN_FLAG4,2)
IF(PLAYER0,FLAG1 == 1)
IF(PLAYER0,GAME_TURN >= 60)
IF(PLAYER0,SORCEROR <= 0)
IF(PLAYER0,CREATURES_TRANSFERRED > 0)
IF(PLAYER0,FLAG7 != 1)
IF(PLAYER0,FLAG6 == 0)
REM There's a creature transfer, but it's not the hound, so it must be the warlock.
SET_FLAG(PLAYER0,CAMPAIGN_FLAG4,2)
SET_FLAG(PLAYER0,FLAG6,1)
ENDIF
ENDIF
ENDIF
IF(PLAYER0,CREATURES_TRANSFERRED == 0)
REM The Warlock is gone, but there's no creature transfer yet, so it must have died.
SET_FLAG(PLAYER0,FLAG6,2)
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
Expand Down
2 changes: 1 addition & 1 deletion version.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
VER_MAJOR=0
VER_MINOR=4
VER_RELEASE=9
VER_BUILD=2761
VER_BUILD=2762
PACKAGE_SUFFIX=

0 comments on commit ef27383

Please sign in to comment.