On this page
  1. Related
  2. Games
  3. References
  4. Sources

A day limit gives the player a set number of game days to reach a goal. Pikmin allows 30: all 30 ship parts give the good ending, and the ending after the 30th day is neutral or bad by how many of the others the player holds1.

  • Star Trader (1974). A set number of years, 5 by default, ending on January 1 of the last.2,3,4
  • Ending by progressPikmin (2001). 30 days to recover the ship's parts; all 30 give the good ending, and the 25 parts other than five optional ones give the neutral one.1

Games

GameYearHowNote
Star Trader1974a set number of years, 5 by default, ending on January 1 of the last
Pikmin2001Ending by progress30 days to recover the ship's parts; all 30 give the good ending, and the 25 parts other than five optional ones give the neutral one
Every claim about this mechanic, by game (4)

References

  1. ^ abThe game allows MAX_DAYS = 30 days, counted by mCurrentDay (getCurrDay() returns it minus 1). At the end of a day with all 30 ship parts (MAX_UFO_PARTS) the good ending plays. Otherwise, a day count below 30 goes up by 1 with the end-of-day results, and once it has reached 30, the ending is the neutral one if the player holds at least MIN_HAPPY_END_PARTS = 25 parts, counted without five named parts (the Nova Blaster, Space Float, Massage Machine, Secret Safe, and UV Lamp), and the bad one if not. Computed: of 30 parts with 5 not counted, 25 means every one of the other 25.CodeprojectPiki/pikmin
    How we know
    9#define MAX_UFO_PARTS       (30)
    ⋮
    11#define MAX_DAYS            (30)
    ⋮
    13#define MIN_HAPPY_END_PARTS (25) // NB: also need to edit the hard-coded IDs in PlayerState::getUfoParts
    
    include/GlobalGameOptions.h lines 9–13 at 9a21636 · upstream ↗
    1565	if (playerState->getCurrParts() == MAX_UFO_PARTS) {
    1566		// we collected all the parts! play the good ending take off :)
    1567		gameflow.mMoviePlayer->startMovie(DEMOID_GoodEndingTakeOff, 0, nullptr, nullptr, nullptr, CAF_AllVisibleMask, true);
    ⋮
    1569	} else if (gameflow.mWorldClock.mCurrentDay < MAX_DAYS) {
    
    src/plugPikiColin/newPikiGame.cpp lines 1565–1569 at 9a21636 · upstream ↗
    1586		// advance the day and handle the end-of-day results entries
    1587		gameflow.mWorldClock.mCurrentDay++;
    
    src/plugPikiColin/newPikiGame.cpp lines 1586–1587 at 9a21636 · upstream ↗
    1624		// we've hit max days, and haven't collected 30 parts :(
    1625		if (playerState->happyEndable()) {
    ⋮
    1627			flowCont.mEndingType = ENDING_Neutral;
    1628			gameflow.mMoviePlayer->startMovie(DEMOID_NeutralEndingLeaveOK, 0, nullptr, nullptr, nullptr, CAF_AllVisibleMask, true);
    1629		} else {
    ⋮
    1631			gameflow.mMoviePlayer->startMovie(DEMOID_BadEndingFailEscape, 0, nullptr, nullptr, nullptr, CAF_AllVisibleMask, true);
    
    src/plugPikiColin/newPikiGame.cpp lines 1624–1631 at 9a21636 · upstream ↗
    273bool PlayerState::happyEndable()
    ⋮
    275	return mRequiredUfoPartCount >= MIN_HAPPY_END_PARTS;
    
    src/plugPikiKando/playerState.cpp lines 273–275 at 9a21636 · upstream ↗
    1090	if (partID != UFOID_NovaBlaster && partID != UFOID_SpaceFloat && partID != UFOID_MassageMachine && partID != UFOID_SecretSafe
    1091	    && partID != UFOID_UVLamp) {
    1092		mRequiredUfoPartCount++;
    
    src/plugPikiKando/playerState.cpp lines 1090–1092 at 9a21636 · upstream ↗
    778int PlayerState::getCurrDay()
    ⋮
    780	return gameflow.mWorldClock.mCurrentDay - 1;
    
    src/plugPikiKando/playerState.cpp lines 778–780 at 9a21636 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-22.

    Checked by a second AI model, 2026-10-22.

    In the claim ledger

  2. ^A Star Trader game lasts a set number of years and ends when the next arrival falls in its last year, Y9, after the January 1 report for that year and before the landing.PublisherPCC Games, 1974revised
    How we know
    826 PRINT "THE LAST YEAR OF THIS GAME IS ";Y9;" BUT IF YOU" 828 PRINT "WANT TO QUIT BEFORE THEN, YOU CAN TYPE 'SAVE' AS" 829 PRINT "YOUR NEXT PORT OF CALL - THIS WILL PUNCH A TAPE" … 840 IF Y1<Y9 THEN 900
    p. 25, lines 780–870 · archived copy ↗
    730 Y9=Y1+5
    p. 29, set-up module line 730 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-22.

    Revised after a check by a second AI model, 2026-10-22.

    In the claim ledger

  3. ^When any player hasn't played before, Star Trader skips the setup questions and starts a game for 2 to 4 players with two ships each, three stars per player plus one, lasting 5 years.PublisherPCC Games, 1974
    How we know
    590 PRINT "HAVE ALL PLAYERS PLAYED BEFORE"; … 690 PRINT "2,3, OR 4 CAN PLAY" 700 GOTO 660 710 T9=2*P9 720 S9=3*P9+1 730 Y9=Y1+5
    p. 29, set-up module lines 590–740 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-22.

    Checked by a second AI model, 2026-10-22.

    In the claim ledger

  4. ^A custom game of Star Trader takes 2 to 12 players with at most 12 ships in all, 4 to 13 stars, any whole number of years, a cargo limit of at least 25 tons, a minimum star spacing of 10 to 25 light-years, at least one bid, and a profit-margin setting that the prompt asks to be 1 to 5 and the code caps at 5, with no lower bound.PublisherPCC Games, 1974 · What to Do After You Hit Returnrevised
    How we know
    970 PRINT "2,3,4, ... ,12 CAN PLAY"
    p. 29, set-up module lines 960–970 · archived copy ↗
    1030 IF T9 <= 12 THEN 1070 1040 PRINT "I CAN'T KEEP TRACK OF MORE THAN 12 SHIPS;" … 1100 PRINT "FROM 4 TO 13 STARS" … 1120 PRINT "ENTER THE LENGTH OF GAME IN YEARS"; … 1140 IF X >= 1 AND INT(X)=X THEN 1170 … 1200 IF W<25 THEN 1180 … 1240 PRINT "MIN SPACING 10, MAX 25" … 1280 IF K9<1 THEN 1260
    p. 30, set-up module lines 1030–1330 · archived copy ↗
    Pick any length game (a million years?)
    p. 96 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-22.

    Revised after a check by a second AI model, 2026-10-22.

    In the claim ledger

Sources

Code