1 file liked
10 komentářů
0 videí
0 uploads
12 followers
- When this menu stopped getting updates years ago, I tried to find another menu that came close to what this one provided and didn't find it.
- Thus I took over updates/adds to the menu.
- At the same time, GTALua also stopped getting updates, so I started updating it myself.
- I continue today to release updates and at this point, Community Mod Menu is 10x more code/features than Essential.
@OHMYMODZ Thx for the good base to start with (aside from your odd affinity for removing all newlines from code hoping people would not mod it)
https://www.gta5-mods.com/scripts/community-mod-menu
@sollaholla I appreciate the positive response and that you didnt take my remarks as flames ;)
@sollaholla "GUYS REMEMBER TO DELETE YOUR INI FILE AND INVENTORY.XML AFTER EACH UPDATE!!!"
After being in tech support of some sort for many years, I can claim to know 1 thing for sure. Any process with the words "remember to..." is a failing process.
Thusly; I request that you detect a build date/number in your code and write a unique string to the .ini and .xml. When the mod loads, it reads this string to determine if the configurations need to be wiped, and if they do, it would automatically wipe them.
Thx!
@NotCrunchyTaco
And for .NET, raytracing helpers are defined in world.cpp
RaycastResult World::Raycast(Math::Vector3 source, Math::Vector3 target, IntersectOptions options)
{
return Raycast(source, target, options, nullptr);
}
RaycastResult World::Raycast(Math::Vector3 source, Math::Vector3 target, IntersectOptions options, Entity ^ignoreEntity)
{
return RaycastResult(Native::Function::Call<int>(Native::Hash::_CAST_RAY_POINT_TO_POINT, source.X, source.Y, source.Z, target.X, target.Y, target.Z, static_cast<int>(options), ignoreEntity == nullptr ? 0 : ignoreEntity->Handle, 7));
}
RaycastResult World::Raycast(Math::Vector3 source, Math::Vector3 direction, float maxDistance, IntersectOptions options)
{
return Raycast(source, direction, maxDistance, options, nullptr);
}
RaycastResult World::Raycast(Math::Vector3 source, Math::Vector3 direction, float maxDistance, IntersectOptions options, Entity ^ignoreEntity)
{
Math::Vector3 target = source + (direction * maxDistance);
return RaycastResult(Native::Function::Call<int>(Native::Hash::_CAST_RAY_POINT_TO_POINT, source.X, source.Y, source.Z, target.X, target.Y, target.Z, static_cast<int>(options), ignoreEntity == nullptr ? 0 : ignoreEntity->Handle, 7));
}
RaycastResult World::RaycastCapsule(Math::Vector3 source, Math::Vector3 target, float radius, IntersectOptions options)
{
return RaycastCapsule(source, target, radius, options, nullptr);
}
RaycastResult World::RaycastCapsule(Math::Vector3 source, Math::Vector3 target, float radius, IntersectOptions options, Entity ^ignoreEntity)
{
return RaycastResult(Native::Function::Call<int>(Native::Hash::_CAST_3D_RAY_POINT_TO_POINT, source.X, source.Y, source.Z, target.X, target.Y, target.Z, radius, static_cast<int>(options), ignoreEntity == nullptr ? 0 : ignoreEntity->Handle, 7));
}
RaycastResult World::RaycastCapsule(Math::Vector3 source, Math::Vector3 direction, float maxDistance, float radius, IntersectOptions options)
{
return RaycastCapsule(source, direction, maxDistance, radius, options, nullptr);
}
RaycastResult World::RaycastCapsule(Math::Vector3 source, Math::Vector3 direction, float maxDistance, float radius, IntersectOptions options, Entity ^ignoreEntity)
{
Math::Vector3 target = source + (direction * maxDistance);
return RaycastResult(Native::Function::Call<int>(Native::Hash::_CAST_3D_RAY_POINT_TO_POINT, source.X, source.Y, source.Z, target.X, target.Y, target.Z, radius, static_cast<int>(options), ignoreEntity == nullptr ? 0 : ignoreEntity->Handle, 7));
}
@NotCrunchyTaco How to get coords in front if cam (in LUA, but you should be able to easily translate)
- To get coords 5 meters in front of cam:
local distance = 5
local newCoords = GetCoordsInFrontOfCam(distance)
- Now, this does not tell you if there is an entity/wall/car/etc in the way and for that you'd need to use ray tracing
--------------------------------------------------------------
function DegreeToRadian(fDegree)
return fDegree * ( 3.141593 / 180.0 )
end
--------------------------------------------------------------
function RotationToDirection(rot)
if rot == nil then rot = natives.CAM.GET_GAMEPLAY_CAM_ROT(2); end
local rotZ = DegreeToRadian(rot.z)
local rotX = DegreeToRadian(rot.x)
local c = cos(rotX);
local multXY = abs(c)
local res = Vector( ( sin(rotZ) * -1 )*multXY, cos(rotZ)*multXY, sin(rotX) )
return res
end
--------------------------------------------------------------
function GetCoordsInFrontOfCam(distance)
distance = distance or 5.0
if distance == 0 then distance = 0.00001 ; end
local camcoords = natives.CAM.GET_GAMEPLAY_CAM_COORD();
local direction = RotationToDirection();
return = Vector(
camcoords.x + ( distance*direction.x ),
camcoords.y + ( distance*direction.y ),
camcoords.z + ( distance*direction.z )
)
end
--------------------------------------------------------------
@greedylou I'm very curious about your comment about how Community Mod Menu is too complicated?
The basic layout is nearly identical and many items merged into 1, further simplifying the menu all together.
While CMM *does* offer a ton of other features its not as if you have to use them.
Anyhow, The reason for this menu crashing is GTALua.asi
I've taken on the huge task of re-learning C++ and updating GTALua.asi so CMM can continue.
In short, If you were to get the GTALua.asi from CMM, you could probably make Essential work once again. While you're doing such updates im sure you'll want updated vehicle/ped/object lists which CMM also comes with.
But if you're really going to do all that, wouldnt you just take CMM as your new mod menu? :)
I would...
Since this menu is marked as OUTDATED, thought I'd drop a note here informing that this mod menu has been continued and is updated almost daily, as: https://www.gta5-mods.com/scripts/community-mod-menu
Thanks to Ohmy for a decent enough base to work with.
If you're looking for the closest thing to parkour I've seen yet in GTA5, try https://www.gta5-mods.com/scripts/community-mod-menu
Dis is Z to the E to the murda-fckin F... *two-thumbs*
Is 'interesting' for sure. Would use if frame rate wasnt obliterated (dropping from 60 fps, to 15 fps upon enabling infection)