diff --git a/Adventures in Lestoria/AdventuresInLestoria.cpp b/Adventures in Lestoria/AdventuresInLestoria.cpp index 026f9fc7..215a4aca 100644 --- a/Adventures in Lestoria/AdventuresInLestoria.cpp +++ b/Adventures in Lestoria/AdventuresInLestoria.cpp @@ -2860,7 +2860,7 @@ void AiL::InitializeDefaultKeybinds(){ Player::KEY_ITEM2.AddKeybind({KEY,K2}); Player::KEY_ITEM2.AddKeybind({CONTROLLER,static_cast(GPButtons::L2)}); Player::KEY_ITEM3.AddKeybind({KEY,K3}); - Player::KEY_ITEM3.AddKeybind({CONTROLLER,static_cast(GPButtons::R2)}); + Player::KEY_ITEM3.AddKeybind({CONTROLLER,static_cast(GPButtons::SELECT)}); KEY_ATTACK.AddKeybind({KEY,SHIFT}); KEY_ATTACK.AddKeybind({MOUSE,Mouse::LEFT}); KEY_ATTACK.AddKeybind({CONTROLLER,static_cast(GPButtons::FACE_R)}); diff --git a/Adventures in Lestoria/SaveFile.cpp b/Adventures in Lestoria/SaveFile.cpp index c74e15fb..465685cd 100644 --- a/Adventures in Lestoria/SaveFile.cpp +++ b/Adventures in Lestoria/SaveFile.cpp @@ -314,12 +314,14 @@ void SaveFile::LoadFile(){ for(auto&[key,data]:loadFile["Player"]["Base Stats"].GetOrderedKeys()){ game->GetPlayer()->SetBaseStat(key,data.GetReal()); } - for(const auto&[key,data]:loadFile["Unlocks"].GetOrderedKeys()){ - Unlock::UnlockArea(key); - if(data.GetValueCount()>1&&data.GetBool(1U)){ - auto opt_cp=State_OverworldMap::ConnectionPointFromString(key); - if(!opt_cp)continue; //Harmless, it just means the connection point used to exist and doesn't anymore. - else opt_cp.value()->SetVisited(); + if(loadFile.HasProperty("Unlocks")){ + for(const auto&[key,data]:loadFile["Unlocks"].GetOrderedKeys()){ + Unlock::UnlockArea(key); + if(data.GetValueCount()>1&&data.GetBool(1U)){ + auto opt_cp=State_OverworldMap::ConnectionPointFromString(key); + if(!opt_cp)continue; //Harmless, it just means the connection point used to exist and doesn't anymore. + else opt_cp.value()->SetVisited(); + } } } if(State_OverworldMap::HasStageMarker(loadFile["Overworld Map Location"].GetString())){ diff --git a/Adventures in Lestoria/TODO.txt b/Adventures in Lestoria/TODO.txt index 90a1beb8..9ad96ea8 100644 --- a/Adventures in Lestoria/TODO.txt +++ b/Adventures in Lestoria/TODO.txt @@ -12,4 +12,32 @@ Toggle for displaying error messages Equip Gear using Start menu tutorial Steam Controller SDK -Add in vsync system option \ No newline at end of file +Steam Rich Presence +Add in vsync system option +Remove Unlock All Button + +Fix scaling on some UI equip windows. + +Your game uses the proper controller-specific glyphs when showing in-game input prompts. +The Steam Input configurator screen uses in-game actions that the player performs in your game, instead of keys or buttons. +You've published an official configuration for the controllers you support. +Your game doesn't restrict the user's ability to customize their controls. This means it allows any mix of mouse, keyboard, or gamepad input simultaneously. +When your game wants keyboard input (e.g. when naming avatars), you use the API to automatically bring up the text entry UI. +Your game has no launchers that require mouse or KB input - or even better, no launcher at all. + +To ensure users have a good experience from the couch, we also recommend the following: + +Make your UI readable from several feet away. Our rule of thumb: when your game is running at 1920x1080, your fonts should be a minimum of 24px in size. +Start your game in fullscreen by default when the user is running Steam Big Picture (the "SteamTenfoot" environment variable will be set) +For bonus points, at first launch detect the user's screen resolution and set your resolution to match it. + +Implementing Steam Input API support + +The implementation process is straightforward, and shouldn't take more than a few days of work. Four steps are involved: + +In a text editor, create an in-game actions file, which tells Steam what in-game actions your players can bind to the controller. +In Steam, use the Steam Input configurator UI to create your default configuration. +In your game, use the Steam Input API to read actions from the controller, and to retrieve appropriate glyphs for display. +Update your game depot with the new binaries, and publish your configuration as the official config. + +Make another actions config file for the main build \ No newline at end of file diff --git a/Adventures in Lestoria/Version.h b/Adventures in Lestoria/Version.h index a664a26c..25ad7e26 100644 --- a/Adventures in Lestoria/Version.h +++ b/Adventures in Lestoria/Version.h @@ -39,7 +39,7 @@ All rights reserved. #define VERSION_MAJOR 0 #define VERSION_MINOR 5 #define VERSION_PATCH 1 -#define VERSION_BUILD 8210 +#define VERSION_BUILD 8212 #define stringify(a) stringify_(a) #define stringify_(a) #a diff --git a/Adventures in Lestoria/assets/AdventuresInLestoria_VideoThumb.png b/Adventures in Lestoria/assets/AdventuresInLestoria_VideoThumb.png new file mode 100644 index 00000000..e89ff610 Binary files /dev/null and b/Adventures in Lestoria/assets/AdventuresInLestoria_VideoThumb.png differ diff --git a/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.png b/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.png new file mode 100644 index 00000000..e0cadc3a Binary files /dev/null and b/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.png differ diff --git a/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.xcf b/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.xcf new file mode 100644 index 00000000..593edf59 Binary files /dev/null and b/Adventures in Lestoria/assets/AdventuresInLestoria_YoutubeThumbnail.xcf differ diff --git a/x64/Release/Adventures in Lestoria.exe b/x64/Release/Adventures in Lestoria.exe index 0bbd6322..9563570e 100644 Binary files a/x64/Release/Adventures in Lestoria.exe and b/x64/Release/Adventures in Lestoria.exe differ