Skip to content

Releases: JujuAdams/Bonk

3.4.1-beta

17 Feb 10:28

Choose a tag to compare

  • Fixes BonkCollideMany*() returning the wrong shape in collision
  • Fixes edge case in capsule-cylinder collisions

3.4.0 (beta)

26 Jan 12:05

Choose a tag to compare

  • Moves all async workers into a global handler
  • ... which fixes a bug where all workers would run at the same time leading to lock-ups in extreme cases
  • Adds BonkAsyncSetBudget() and BonkAsyncGetBudget()
  • Adds BonkAsyncGetPendingWorkers()

3.3.0 (beta)

20 Jan 11:32

Choose a tag to compare

  • Fixes .Collide() and .Touch() shape methods not working with worlds
  • More supercover fixes

3.2.6 (beta)

19 Jan 10:38

Choose a tag to compare

  • Fixes edge cases in capsule-triangle and capsule-quad collisions
  • Adds toString() methods to result structs to try to solve internal GameMaker freezes when stringifying those structs

Since 3.2.6.1

  • Fixes crash in .GetCellsFromLine()
  • More supercover fixes, my nemesis

3.2.5 (beta)

22 Nov 21:48

Choose a tag to compare

  • Fixes sphere/capsule vs. tri/quad edge cases

3.2.4 (beta)

22 Nov 20:51

Choose a tag to compare

  • Fixes instance-based BonkWorlds having a collision mask that is slightly too small
  • Fixes sphere-AABB collision case where the centre of the sphere is inside the AABB

3.2.3 (beta)

22 Nov 09:53

Choose a tag to compare

  • Adds BonkFilter() back in. No idea why this disappeared
  • Fixes capsule-AABB collisions where the capsule axis is inside the AABB
  • Fixes input struct being ignored for some direct checker functions
  • Fixes raycasting against BonkWorld
  • Fixes crash when calling the .Hit() method on lines/rays
  • Fixes a crash when a line/ray narrowly misses a cylinder

3.2.2 (beta)

14 Oct 08:23

Choose a tag to compare

  • Adds .RemoveWorld() to all Bonk structs (instances cannot be added to worlds so this method will do nothing when called on instances)
  • Fixes line/ray hit freezes in multiple places
  • Fixes line/ray hit functions returning bad data
  • Adds BONK_SUPERCOVER_DEBUG. Bonk will show a loud warning if 1) you're running from the IDE and 2) it detects a line/ray hit test is taking too long to process. If you see this warning then please report it so the final algorithmic bugs can be sorted out
  • Fixes potential use of stagnant data for comparisons in deflect functions
  • Works around stupid GameMaker ds_exists() behaviour. I thought stronger data structure typing was meant to fix this nonsense?
  • Fixes memory leak when cancelling async load
  • Fixes incorrect use of array_find_index()
  • Works around instance_exists() returning false positives

3.2.1 (alpha)

10 Oct 14:23

Choose a tag to compare

  • Roughly doubles the performance of Bonk worlds in most situations (very sparse or very dense geometry probably won't see much of an improvement)
  • Adds asynchronous vertex buffer-to-triangle methods to Bonk worlds. Documentation for this functions can be found in BonkSetupWorld()
    • .AddVertexBufferAsync()
    • .GetVertexBufferAsyncCount()
    • .CancelVertexBufferAsync()
  • Adds neighborhood functions to Bonk worlds to help debug collisions. Documentation for this functions can be found in BonkSetupWorld()
    • .DrawNeighborhoodForRange()
    • .DrawNeighborhoodForArray()
    • .DrawNeighborhoodForShape()
    • .DrawNeighborhoodForLine()
    • .DrawNeighborhoodForLineExt()
  • Potentially fixes lock-up when trying to calculate line/ray collisions using a Bonk world and the starting position is at negative coordinates

Since 3.2.1.1:

  • Fixes line/ray hit functions returning bad data when targeting struct worlds
  • Fixes potential use of stagnant data for comparisons in deflect functions
  • Works around stupid GameMaker ds_exists() behaviour. I thought stronger data structure typing was meant to fix this nonsense?

Since 3.2.1.2:

  • More line/ray hit fixes
  • Adds BONK_SUPERCOVER_DEBUG. Bonk will show a loud warning if 1) you're running from the IDE and 2) it detects a line/ray hit test is taking too long to process. If you see this warning then please report it so the final algorithmic bugs can be sorted out
  • Fixes memory leak when cancelling async load

Since 3.2.1.3:

  • Yet more line/ray hit fixes. Hopefully the last batch

3.1.0 (alpha)

06 Oct 11:21

Choose a tag to compare

  • Adds JSDoc documentation
  • Adds variable struct support to instance creators
  • Adds BONK_SET_INSTANCE_DEPTH
  • Adds .DebugDrawMask()
  • Tidies up instance variables
  • Removes .AddVelocty()
  • Since 3.1.0.1: Fix world .Deflect() not writing into the inbound struct in all cases leading to BonkMoveAndDeflectExt() rarely returning a useful .deflectType