Skip to content

Releases: ZAdamMac/PETI

0.5.0 - Food and Hygine Update

18 Mar 13:11
5f59dc2

Choose a tag to compare

What's Changed

Full Changelog: 0.4.1...0.5.0

Version 0.4.1

16 Jan 20:26
8aba631

Choose a tag to compare

Installation

Installation requires you have the separate mspdebug tool installed.
It is also possible to clone the full repository, switch to the head of branch v/0.4.1, and run make target-flash.

  1. Download the attached binary.
  2. Navigate to that directory in the terminal and run the command mspdebug tilib "prog ./PETI-0.4.1.out"

v 0.4.1 - Bug Fixes to 0.4.0

  • Corrects an issue (#38) which causes an irrecoverable program crash during the Rock Paper Scissors minigame, by completely rewriting the minigame to use the newer WORK_STRING display method rather than writing directly to individual lines on the DISPLAY_FRAME.

Version 0.4.0

02 Jun 23:28
66bf6d4

Choose a tag to compare

Installation

Installation requires you have the separate mspdebug tool installed.
It is also possible to clone the full repository, switch to the head of branch v/0.4.0, and run make target-flash.

  1. Download the attached binary.
  2. Navigate to that directory in the terminal and run the command mspdebug tilib "prog ./PETI-0.4.0.out"

v 0.4.0 - Sleep and Growth Update

  • Adds functionality to handle conditional evolution of the pet, in a simplistic early version:
    • If the pet's needs are relatively well met at the time evolution is checked for, it will evolve into the "high" evolution, else the low evolution.
    • The egg and the baby's first evolution evolve through this mechanism; the baby is hardcoded to evolve a total of three hours after hatching.
    • If the pet evolves to the special reserved "Death Identifier" the game state is reset. This is temporary.
    • StateMachine now contains a .OLD_STAGE_ID property that records the previous stage ID before the current evolution
  • Adds functionality that allows the pet to fall asleep between wall-clock times defined by their age group through game_manager.h
    • Sleeping pets do not have the game state recompute while sleeping and accordingly do not experience stat depletion.
    • Hunger and Fun degradation now occur retroactively when the pet wakes.
    • The main game screen displays a status icon and special pet animations when the pet is sleeping.
      • evo_data.h's struct Stage was ammended to add a animationSleeping character pointer that holds sleeping animations. This shares the limitation with all other animation data that font addressing is not currently implemented at this level.
      • Minor font changes for font16x16 to correct the misalignment of zazenkuchi's sleeping head from his body.
    • The Food and Minigame menus are not accessible when the pet is sleeping, as is appropriate.
      • menus/main_game.c/h were refactored to use a function-derived model similar to menu_generator in order to achieve this.
    • The baby pet now correctly naps one hour after the game is started, for one hour.
  • Rearranges the main game idle screen's menu to be more logically accessible to the player in terms of icon order.
  • Adds an icon to the main game menu that allows the pet to be put to bed by turning the lights off.
    • A pet that has freshly woken up will turn the lights back on.
  • A sleeping pet with the lights off will cause the screen to turn off after roughly 15 seconds.
    • A waking pet, or the human touching the buttons, will turn the screen back on.
  • Sets the egg delay correctly back to 5 minutes.
  • Fixes unreported bug that caused odd-numbered main menu menus to render the cursor on the bottom row one square earlier than it should.
  • Refactors the main_game screen to use the shared WORK_STRING mutable char array rather than per-function strings, for memory savings.
    • As a knock-on impact, this corrects #37
  • Refactors the metanimations to support a more animated sequence for the upper forms of the pet.
    • Exposed, and corrected, a bug in main_game.c's MG_computeLine() which caused large pets to explode when reversed.
  • Refactors the Stage structure so that pet stages can target metanimations
  • Adds support for the font files being defined in multiple areas
  • Adds font16x16_1.h, defining a second set of 255 useful pet glyphs.
  • Adds options to the debug menu used for testing evolution quickly.
  • Corrects a bug in display.c that was causing all font address evaluation to fail, meaning only each size's "font zero" could be used.
    • Updated all scenes to use the new addressible font logic instead of hardcoding FONT_ADDR_0 for pet sprites.
  • Corrects the bug in issue #38 that caused games of rockpapergame.c to be unplayable.
    • Added a technical debt item to address the deeper root cause in display.c's printText_Large function.
  • Removed printdeltas_Demo, printdeltas_Game, and printdeltas_Menu from the codebase, since none of them were used anymore
  • Display now gives a convenience function, DISPLAY_blankFrame which resets the contents of the DISPLAY_FRAME