> For the complete documentation index, see [llms.txt](https://riseclients-organization.gitbook.io/rise-6-scripting-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://riseclients-organization.gitbook.io/rise-6-scripting-api/examples/exempted-value-speed-bypass.md).

# Exempted value speed bypass

From Rise 5

```javascript
var module = rise.registerModule("Exempted Value Speed", "A speed ported from Rise 5 to Rise 6's scripting api.")

module.registerSetting("mode", "Mode", "1", "1","2","3")

script.handle("onUnload", function () {
	module.unregister()
})

// Called 20 times per second, just before the players movement is added for the current tick
module.handle("onStrafe", function(e) {
	// When the player is on the ground, the jump method will be called
	if (player.onGround) {
		player.jump()
	
	// When the player has been in the air for 1 tick, the players motionY will be set to the given exempted value
	} else if (player.getAirTicks() == 1) {
		switch (module.getSetting("Mode")) {
		 	case "1":
				player.setMotionY(-0.0784000015258789)
			break;

		 	case "2":
				player.setMotionY(-0.09800000190734864)
			break;

		 	case "3":
				player.setMotionY(-0.09800000190735147)
			break;
		}
	}

	player.strafe()

	return e
})

```
