Finally figured out why "closest target" auto aim was not auto aiming at the actual closest target. Was aiming at the "max aiming point reach" of the closest target. Release Build 8578.

mac-build
sigonasr2 8 months ago
parent b8790c16b6
commit cd8944db96
  1. 9
      Adventures in Lestoria/Player.cpp
  2. 28
      Adventures in Lestoria/TODO.txt
  3. 2
      Adventures in Lestoria/Version.h
  4. BIN
      x64/Release/Adventures in Lestoria.exe

@ -1443,17 +1443,18 @@ const vf2d Player::GetAimingLocation(bool useWalkDir,bool invert){
vf2d closestPoint={std::numeric_limits<float>::max(),std::numeric_limits<float>::max()}; vf2d closestPoint={std::numeric_limits<float>::max(),std::numeric_limits<float>::max()};
for(Monster&m:MONSTER_LIST){ for(Monster&m:MONSTER_LIST){
if(m.IsAlive()){ if(m.IsAlive()){
float distToMonster=geom2d::line<float>(GetPos(),m.GetPos()).length();
geom2d::line<float>aimingLine=geom2d::line<float>(GetPos(),m.GetPos()); geom2d::line<float>aimingLine=geom2d::line<float>(GetPos(),m.GetPos());
vf2d aimingPoint=aimingLine.rpoint((invert?-1.f:1.f)*operator""_Pixels("Player.Aiming Cursor Max Distance"_F)); float distToMonster=aimingLine.length();
float distToClosestPoint=geom2d::line<float>(GetPos(),closestPoint).length(); float distToClosestPoint=geom2d::line<float>(GetPos(),closestPoint).length();
if(distToClosestPoint>distToMonster&&distToMonster<=operator""_Pixels("Player.Auto Aim Detection Distance"_F)){ if(distToClosestPoint>distToMonster&&distToMonster<=operator""_Pixels("Player.Auto Aim Detection Distance"_F)){
closestPoint=aimingPoint; closestPoint=m.GetPos();
} }
} }
} }
if(closestPoint!=vf2d{std::numeric_limits<float>::max(),std::numeric_limits<float>::max()}){ if(closestPoint!=vf2d{std::numeric_limits<float>::max(),std::numeric_limits<float>::max()}){
return game->GetScreenSize()/2+closestPoint-GetPos(); geom2d::line<float>aimingLine=geom2d::line<float>(GetPos(),closestPoint);
vf2d aimingPoint=aimingLine.rpoint((invert?-1.f:1.f)*operator""_Pixels("Player.Aiming Cursor Max Distance"_F));
return game->GetScreenSize()/2+aimingPoint-GetPos();
}else }else
return game->GetScreenSize()/2+vf2d{float(operator""_Pixels("Player.Aiming Cursor Max Distance"_F)),aimingAngle.y}.cart(); return game->GetScreenSize()/2+vf2d{float(operator""_Pixels("Player.Aiming Cursor Max Distance"_F)),aimingAngle.y}.cart();
} }

@ -10,34 +10,6 @@ Upon the second time entering a stage, the game will spawn a timer that the play
Upon completion of a stage in time trial mode if the player beat their previous time (which they likely will) the record will update. Upon completion of a stage in time trial mode if the player beat their previous time (which they likely will) the record will update.
For each class and stage combination there will be a "dev time" For each class and stage combination there will be a "dev time"
Achievements
A Good Night's Rest - Unlock the Camp
Handyman - Unlock Greg the Blacksmith
A Strange Gemstone - Complete Chapter 1
Slime Hunter(100), Killer(250), Slayer(1000)
Slime King
Slime King Destroyer (<1 Minute Kill)
Ursule, Mother of Bears
Ursule, Mother of Bears Destroyer (<1 Minute Kill)
Tough as Steel - Obtain Level 5 on Warrior
Skilled Marksman - Obtain Level 5 on Ranger
Controller of Elements - Obtain Level 5 on Wizard
+5 a Weapon
+5 an Armor piece
+10 an Armor piece
Fully Decked out - Wear a full set of maxed out gear
Beat the Devs - Obtained a Time Medal
Speedrunner - Obtained 11 Time Medals
SetAchievement
File Hash on Save/Load.
Include a Reset Achievements button in Settings
Move based on analog stick amount instead of full speed by default
Still aiming at a target down below?
============================================ ============================================
Consider a "killed by player" / "marked by player" flag for monsters to determine if a player gets credit for a monster kill (for achievements) Consider a "killed by player" / "marked by player" flag for monsters to determine if a player gets credit for a monster kill (for achievements)
Make another actions config file for the main build (The app # is different) Make another actions config file for the main build (The app # is different)

@ -39,7 +39,7 @@ All rights reserved.
#define VERSION_MAJOR 1 #define VERSION_MAJOR 1
#define VERSION_MINOR 0 #define VERSION_MINOR 0
#define VERSION_PATCH 0 #define VERSION_PATCH 0
#define VERSION_BUILD 8577 #define VERSION_BUILD 8578
#define stringify(a) stringify_(a) #define stringify(a) stringify_(a)
#define stringify_(a) #a #define stringify_(a) #a

Loading…
Cancel
Save