======================
freya by jaymakesgames
Current version: 0.0.5
======================

Thanks for taking the time to check out this project, whether you find it enjoyable or absolutely terrible.

Any and all feedback is welcome and encouraged! If you're playing this and don't know how to reach me, 
find out from whomever shared this with you. :)

About:
------

This is a spare time/hobby project. 

Everything is made by jay using a variety of tools like:

	- custom built pixel art tool ("Pixel")
	- Helix (https://helix-editor.com/)
	- Bfxr (https://www.bfxr.net/)
	- Logic Pro (https://www.apple.com/logic-pro/)
	- Audacity (https://www.audacityteam.org)

    - except for the excellent font: "712_serif" 
		- by Christian Munk (http://christianmunk.dk/da)

Running on Win/Mac:
-------------------
	The game's binaries are NOT signed! Your OS may try to prevent you from 
	running them. 
	
	You can do the following as a workaround to force your OS run them anyway:

	Windows:
		- Click the disclosure triangle in the warning prompt and choose "Run Anyway"

	macOS:
		- Open Terminal.app and execute the following command:
			xattr -d com.apple.quarantine /path/to/freya.app

Running on Steam Deck:
----------------------
	The game doesn't run natively on Steam Deck yet. You must add it as a non-steam game
	first:
	
    - In Desktop mode, download and uncompress the game somewhere
    - Launch Steam (still in Desktop mode):
        - On the bottom left, click "Add a Game"
            - Click "Add a Non-Steam Game..."
           - On the bottom left, click "Browse..."
            - Navigate to where you uncompressed the game and choose "freya.exe"
        - Go to your "Library" tab
            - Select "freya.exe" from the list
            - Right click it, choose "Properties..."
            - Select the "Compatibility" tab
                - Check "Force the use of a specificsteam Play compatibility tool"
                - Close the window
    - Now you can choose "Play" and enjoy

Tips & 
Miscellaneous trivia:
---------------------------------
    - Game state / saves are not compatible between versions! You must start from fresh
	  with each new release.
	
	- The default keyboard input scheme may feel weird; it's non-traditional and
	  laid out to enable playing without having to move your hands, without needing
	  a dedicated numpad, and supporting easy diagonal movement.

	  Movement / Navigation in menus:     

        
                                  move up
                move up + left    |      move up + right
                             \    |    /

           	                 [U] [I] [O] 
        
        	move left  --    [J] [K] [L]  --  move right
                                  |
                                  \- press: skip your turn
                                  \- hold: start auto-exploration

        		             [M] [,] [.] 

                             /    |    \
	          move down + left    |     move down + right
                                  move down

	  Actions / Interface:

	      [W] [E] [R] [T]
           |   |   |   \- Toggle inventory
           |   |   \----- Select next toolbelt item
           |   \--------- Select previous toolbelt item
           \------------- Show minimap

	  [A] [S] [D] [F] [G]
	   |   |   |   |   \- Show menu
	   |   |   |   \----- Confirm / Select / Use equipped item
	   |   |   \--------- Cancel / Back
	   |   \------------- Fast movemet (hold + movement keys)
       \----------------- Move build target reticle (hold + movement keys)

	  [Z] [X] [C] [V]
	   |   |   |   \- Cycle toolbelt forward
	   |   |   \----- Cycle toolbelt backward
	   |   \--------- Sub-cycle the currently selected tool forward
	   \------------- Sub-cycle the currently selected tool backward

	  Special:

	     F6 - Show the debug interface. See below for available commands.

	- Use the inventory "Info" option to learn more about what items do
		- Particular uses of items will often be conveyed through its info text
		- Hints as to the purpose of unique items is also often put here

	- Use the pass turn command to trick enemies into wasting their turn
		- Some enemies have predictable behaviors; exploit it

	- To properly wield weapons, they must be equipped/the focused item in your toolbelt
		- Note that any item can be used as a weapon. Even berries are more useful than your bare hands

	- Using an Orb of Persistence marks a given map to not regenerate when you die
		- This could be used as a place to store items you don't want to risk losing
		- This could be a way to ensure a unique enemy never gets wiped forever
		  (along with its unique loot!), until you're ready to face it

	- Cycling equipment does not use a turn
		- Use this to your advantage to swap to berries or a potion and heal up, in a pinch

	- Enemies do not follow you across maps
		- Use this to escape and heal up
		- You can also use this to "cheese" some enemies

	- Dying could be useful
		- When you die you can choose to buy:
		  - persistent gear that carries over with you between resurrections 
		    using currency dropped from fighting enemies
		  - permanent upgrades to health, speed, strength, etc

	- IMPORTANT: Some bosses only spawn once per *character*
		- once spawned, if you die without killing them you will miss out on their (potentially
		  unique) loot *forever* on that *character*. 
		  
		  You will have to make a new character to try again.

	- Debug console: 'F6' to show, ESC to hide
		- commands: 
			spawn <entityname> // Spawn a named entity
			invincibility      // Max health, virtual invincibility
			heal               // Heals you to full
			light  	           // Lights the entire map
			tools	           // Give yourself all the tools
			kille	           // Kill all enemies on the current map
			killp	           // Suicide
			debug              // Toggle debug overlay

			// Some commands don't occur immediately. Take an in-game turn (eg: "wait" or move) to trigger their effect.

Shout outs to the following:
----------------------------

	- family & friends
	- the fine folks of GDR

Update history:
---------------
	- v0.0.5:
		- New player avatars
		- Character creation now has a few random names to cycle through
		- Downgraded some unique map spawns to be "per resurrection"
		- The following now stack:
			- Portal Anchors
			- Portal Keys
		- Minimap now shows icons for "persisted" and "portal anchored" maps
		- Added an animation for receiving the "Moonlight" blessing
		- Added salvage amount to item descriptions
		- New enemies:
			- Rock Golem: for you to discover!
		- New items:
			- Moonlight Splinter: offers direction to those needing guidance
			- Imp Crown: shows you where strongholds are on the minimap
			- Scale of Janus: prevent death, once
		- New furniture:
			- Stash: store your items
		- Bug fixes
			- Fixed a bug where trying to destroy items using a tool would show the main menu
			- Fixed a bug where water did not render correctly
			- Fixed a bug with lighting model
			- Fixed a bug where some unique maps would never spawn
			- Fixed a bug where strongholds could generate too close to the world edge
			- Fixed a bug with the attack pattern for ranged enemies
			- Fixed a bug with cave dungeon generation
			- Fixed a bug where it was possible to case multiple pets to be summoned at once
			- Fixed a bug where total playtime could be incorrect
			- Fixed a bug where the wrong music could play on the origin map 
			- Fixed a crash when using Goose's Feather while a pet was summoned
			- Fixed various bugs surrounding using a portal key while in a cave dungeon
			- Fixed typos in item descriptions
		
	- v0.0.4:
		- Added automatic saving 		
		- Added currency worth of enemies to the compendium
		- Added placeholder text for player name input field
		- Using a scroll to learn something you already know now gives you coins
		- Toolbelts are no longer fully "deselectable"
		- Add a new setting to automatically disable input when taking damage while at critical heatlh
		  - Warning: It's still possible to die without this triggering if you take enough damage in a single hit!
		- Increase input delay temporarily after completing a dialogue
		- Reduced default message log size to 4 lines
		- Message log is configurable and has three modes you can cycle through:
			- Show full log
			- Show custom # of lines (configurable in settings)
			- Don't show at all
		- New items:
			- Longevity Potion: find one to learn more!
			- Worm: It's a worm.
		- New furniture:
			- Vanity: use this to alter your physical attributes
		- New NPC:
			- Giguinha: details for you to discover!
			- Flit Hong: details for you to discover!
			- Fishliont: details for you to discover!
		- Character creation:
			- Added a background visual effect
		- Bug fixes
			- Fixed a bug where playtime would include time spent in system sleep
			- Fixed a bug where having a tool equipped prevented "cancel" from opening the menu
			- Fixed a bug where music would not repeat with the expected patterns
			- Fixed a crash when trying to show tool options for tools that don't support it
			
	- v0.0.3:
		- New player portraits
		- New building scrolls to learn
	    - Moved input settings into submenus
		- Add key configuration setting for showing the build picker
		- Added stat information to the main menu
		- Added "Knowledge Scrolls" section in the compendium
		- Barrels can now drop loot
		- More enemies drop daggers
		- Reduce default damage bonus of non weapon items to 1
		- Reduce the amount of coin granted when receiving a blessing
		- Reduce the density of "pillar" maps
		- Added pagination indicators to the character creation screen
		- Pressing cancel in the keyboard will now focus the "Done" key instead of canceling input altogether
		- Trees now drop tree seeds when chopped
		- Pets:
			- Work in progress
			- Pets will prevent certain enemy types from automatically aggroing you
		- NPC shops:
			- buy (non permanent) items from certain NPCs using coins
		- Auto explore:
			- press+hold the "wait" key to turn on auto-explore
			- this will navigate the map and pickup any items, open any (unlocked) doors, chests, etc
			- automatically cancels if an enemy is spotted
			- press any key to cancel, otherwise
		- New zone:
			- Cave dungeon: details for you to discover!
		- New NPC:
			- Grudin: details for you to discover!
		- New enemies:
			- Spawnling: details for you to discover!
		- New items:
			- Light Shard: mark your way or increase your light radius
			- Lantern: mark your way or increase your light radius
			- Magic bell: syphon nearby items/crops to you
			- Slime marble: summons a pet slime to your side
			- Goose's Feather: offers a quick way to restart
			- Tree seed: plant to grow a tree
		- New furniture:
			- Salvager: drop items on this to convert them into coin
		- Bug fixes:
			- Fixed sprite animations for Bats
			- Fixed a bug where the plains stronghold boss would spawn multiple times
			- Fixed a bug where scrolls weren't randomized
			- Fixed a bug where scrolls would spawn in incomplete areas
			- Fixed a bug where bats could spawn on a persisted map
			- Fixed a bug where reading scrolls would say "Nothing happened."
			- Fixed a bug where the game would crash when defeating certain enemies
			- Fixed a bug where the minimap rendered maps incorrectly
			- Fixed a bug where stat upgrades were not being applied correctly

	- v0.0.2:
		- NPC changes:
			- Various new dialogue for Malcreaud
		- Default gamepad input changes:
			- triggers cycle through items in the current toolbelt
			- bumpers cycle between toolbelts
		- QOL tweaks to map generation (less dense "pillar" maps)
		- Added UI for picking what to build with certain tools
		- New items:
			- Orb of Destruction: destroys *everything* in sight, except its holder
			- Construction hammer: build furniture
			- Scrolls: impart knowledge of how to build more things with various tools
				- explore to find these
		- New enemies:
			- Imp King (Plains Stronghold)
			- Plorp (Plains)
		- New blessings:
			- Moonlight
				- Increases visibility by a significant amount
				- Prevents enemy spawns from occurring at night
		- Bedrolls now fully heal you when used
		- Add missing flavor text for various compendium entries
		- Bug fixes:
			- fixed a crash when moving items to inventory from toolbelt
			- fixed rendering issues on a number of preset maps
			- fixed a bug where conversations with Malcreaud would accidentally repeat
			- fixed a bug where viewing info in the inventory would not unmark the item in the compendium
			- fixed a bug where enemies would stop pursuing you if they lost sight
			- fixed a bug where enemies wouldn't vary their decision patterns
			- fixed a bug where you could move while a blessing was animating
			- fixed a bug where music would not correctly repeat
			- fixed a memory leak with some visual effects
	
	- v0.0.1: 
		- Steam Deck support
		- Re-work "scripting" engine (more than once)
		- Locked doors + keys
		- Compendium (fully functional, but WIP contents)
		- Unique map spawns (WIP, some spawn, others don't. Plains only.)
		- New NPC (WIP, can spawn but doesn't fulfill his destiny. Yet.)
		- New enemies: various type of imps
		- New player portraits
		- Revamped HUD layout
		- Multiple toolbelts
		- "Automatic" toolbelt
			- when enabled, the toolbelt remembers what was last placed in every spot
		- New option: "Wait for animations"
			- if on, actions can't be taken until animations complete
				- combat will feel "slower" with this on
				- the intent is to make it more clear what is happening during combat
			- hold the "fast modifier" key to temporarily disable this, even if it is on
		- New reset options: choose which keyboard layout to use by default
		- "Blessings"
			- you have a chance to be blessed when resurrecting, which grants various boons for
			  that run. These do not carry over between resurrections.
		- "Strongholds" (WIP)
			- has a chance to spawn in the Plains biome
		- "Shrines" (WIP)
			- share lore about the game world
		- Bug fixes:
			- fixed a bug where you could use long-ranged weapons to attack through walls
			- fixed a bug where you could use long-ranged weapons to attack tiles you couldn't see
			- fixed a bug where, when restarting, persisted maps weren't automatically uncovered in the minimap
			- fixed a bug where dialogue would sometimes not display
 		
	- v0.0.0: 
		- first demo
