From 7e2bbac2aa29f3b56e062492294a4b142a2a6f06 Mon Sep 17 00:00:00 2001 From: Ariel A <24759293+aarant@users.noreply.github.com> Date: Fri, 26 Jan 2024 19:23:17 -0500 Subject: [PATCH] Updated README. --- README.md | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 52 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 0dde7185fb..07427e2bd5 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,21 @@ This fork tries to maintain vanilla compatibility whenever possible. It doesn't There are several branches, each with one main feature (and sometimes some extra stuff): **followers** branch: -* [HGSS-style pokémon followers](https://bulbapedia.bulbagarden.net/wiki/Walking_Pok%C3%A9mon#Pok.C3.A9mon_HeartGold_and_SoulSilver) for all 386 pokémon, including emotes, the 28 Unown forms and a majority of follower messages. -* Dynamic overworld palettes & reflections compatible with vanilla berry trees. -* PID (but not legitimacy) preserving Pokémon nature-changing function -* Function to detect modern emulators/GBA hardware. +* [HGSS-style pokémon followers](https://bulbapedia.bulbagarden.net/wiki/Walking_Pok%C3%A9mon#Pok.C3.A9mon_HeartGold_and_SoulSilver) for all 386 pokémon (including forms & shinies) +* Includes follower emotes and a majority of the HGSS messages +* Custom pokeball sprites for Gen 1-7 pokéballs +* Followers can use field moves in the overworld +* Overworld form changes for Ditto, Mew, Castform, etc. +* Asymmetrical & 64x64 OW support +* Dynamic Overworld Palette System (DOWP) & reflections compatible with berry trees, etc. > Note: Unless you have a specific need for it, you should probably use `followers-expanded-id` over this. +![Pokeball](https://i.imgur.com/OMbS67Q.gif) +![Messages](https://i.imgur.com/sTbGVEY.gif) +![Forms](https://i.imgur.com/wDhFNf4.gif) +![HM](https://i.imgur.com/lnXJGHd.gif) + **icons** branch: * Everything from the **followers** branch. * All pokemon icons updated to Gen 6, based on [this repo](https://github.com/msikma/pokesprite/tree/master/icons/pokemon/regular) @@ -32,7 +40,7 @@ There are several branches, each with one main feature (and sometimes some extra **just-lighting** branch: * `lighting-expanded-id` but with following pokémon code & assets completely removed. (This allows for more than 255 OW graphics) -* Saves with following pokémon can safely be loaded. +* Saves with following pokémon can still safely be loaded. **followers-expanded-id** branch: * Like `followers`, but includes expands OW graphicsIds to 16-bits @@ -45,6 +53,12 @@ Additional branches to mention: To set up the repository, see [INSTALL.md](INSTALL.md). +**guillotine** branch: +* ~~Decapitates~~ Decapitalizes **all** text at runtime, with some exceptions (see the [FAQ](#guillotine-q-how-can-i-keep-my-strings-from-being-decapped)) +* Future-proof, does not require mass-replacing strings + +To set up the repository, see [INSTALL.md](INSTALL.md). + ## FAQ ### `(followers*)` Q: Where are the config settings? A: Configuration for the follower system is mostly in [event_objects.h](include/constants/event_objects.h): @@ -57,6 +71,10 @@ A: Configuration for the follower system is mostly in [event_objects.h](include/ // to OW code so that large (48x48, 64x64) OWs // will display correctly under bridges, etc. #define LARGE_OW_SUPPORT TRUE + +// Followers will emerge from the pokeball they are stored in, +// instead of a normal pokeball +#define OW_MON_POKEBALLS TRUE ``` ### `(lighting)` Q: How do I mark certain colors in a palette as light-blended? @@ -76,6 +94,35 @@ on separate lines to mark those colors as being light-blended, i.e: You might have to `make mostlyclean` or change the `.pal` file to pick up the changes. +### `(guillotine)` Q: How can I keep my string(s) from being decapped? +A: There are a number of ways to make a string "fixed case" so that it will not be decapitalized when displayed: + +C strings: Replace the `_` with `_C`: +```c +// _C = fixed (C)ase string! +const u8 gText_IDNumber[] = _C("IDNo."); +``` +ASM strings: Replace `.string` with `.fixstr`: +```arm +gText_SavingDontTurnOff:: + @ Lasts until the string terminator '$' + .fixstr "SAVING…\n" + .string "DON'T TURN OFF THE POWER.$" +``` +You can fix-case/unfix parts of a string like so: +```arm + .string "{FIXED_CASE}WARNING!{UNFIX_CASE}\p" +``` +For a placeholder (only the placeholder will be fixed-case): +```arm + .string "{STR_VAR_2_FIXED} was transferred to\n" + .string "BOX “{STR_VAR_1}.”$" +``` +See also the configuration in [text.h](gflib/text.h). + +There's also special handling for "separated bigrams"; basically, two letter words. +This includes: `"TM01", "PC", "EV"`, any two uppercase characters surrounded by digits, whitespace, or the start/end of a string. These will not be decapped. + ## See also For contacts and other pret projects, see [pret.github.io](https://pret.github.io/).