Skip to content

Releases: AmyrAhmady/samp-gps-plugin

1.4.1

24 Jan 18:37
cdd2e22
Compare
Choose a tag to compare

Don't throw an exception when server.cfg is not found or unable to open, this way we prevent crashing the host process

1.4.0

31 Aug 19:19
Compare
Choose a tag to compare
  • Refactoring.
  • More thread safety.
  • Option to disable loading nodes on startup: set gps_load_nodes to 0 in your server.cfg or if using sampctl, add "gps_load_nodes": false to the runtime.extra object in your pawn.json.

1.3.0

13 Apr 22:08
Compare
Choose a tag to compare
  • Runtime node management: Map nodes and their connections can be deleted and added.
  • The data of connections between map nodes can be accessed.
  • Function to save map node and connection data to a file.
  • Major refactoring and many minor optimisations.

1.2.0

01 Jan 14:11
Compare
Choose a tag to compare
  • Fixed the pathfinding algorithm - node comparison was completely broken and it most likely returned the first path it found, not the shortest one. It also improved the performance a lot. Using non-threaded pathfinding, finding a path from the top-leftmost node on the map to the bottom-rightmost node takes just 3 milliseconds on my testing server - that is around 30 times faster than before! Threaded (and asynchronous) pathfinding should be just as fast in real life situations, my test script spammed out so many pathfinding function calls that std::mutex became the "bottleneck".
  • Refactored some more code, node connections are now the only thing that need to be refactored, but this will happen when I implement runtime node management.
  • Updated the GPS.dat distributed with the plugin, thanks @Naseband!
  • New native (requested by @karimcambridge in #1):
native GetPathNodeIndex(Path:pathid, MapNode:nodeid, &index);

1.1.0

25 Dec 18:53
Compare
Choose a tag to compare
  • Fixed GetMapNodeDistanceFromPoint and GetClosestMapNodeToPoint.
  • Some refactoring.
  • New natives:
native GetAngleBetweenMapNodes(MapNode:first, MapNode:second, &Float:angle);
native GetMapNodeAngleFromPoint(MapNode:nodeid, Float:x, Float:y, &Float:angle);
native GetMapNodeConnectionCount(MapNode:nodeid, &count);
native GetHighestMapNodeID();
native GetRandomMapNode(&MapNode:nodeid);

1.0.0

24 Dec 00:18
Compare
Choose a tag to compare

Initial release.