Giter Site home page Giter Site logo

daylonz / mccbounceenable Goto Github PK

View Code? Open in Web Editor NEW
20.0 0.0 1.0 59 KB

A program that alters the tick rate of Halo 2 Classic in Halo:MCC to enable super bouncing.

License: The Unlicense

C# 100.00%
halo 2 halo2 super bounce jump superbounce superjump the master

mccbounceenable's Introduction

MCCBounceEnable

Github all releases Discord

A program that alters the tick rate of Halo 2 Classic in Halo:MCC to enable super bouncing. This program utilizes memory pattern matching to ensure that any updates to Halo:MCC will not cause it to malfunction. This tool was created after seeing complaints of an existing tool (MCCbounce) that was breaking with hardcoded memory addresses. This tool calculates addresses at runtime.

Bounce Demo

Download

Download - Last Updated 3/7/2021

Warning

This program is not meant to be used with the MCC anticheat. Please ensure that EAC is disabled by selecting the second launch option at runtime.

Disclaimer

The following is my analysis of how and why this works the way it does. This has not been confirmed by me personally.

About

One of the many reasons people play Halo 2 is for the nostalgia of playing the game everyone used to know and love as a kid. In the original Halo 2, the Xbox was capped at 30 frames per second. This meant that the physics engine of the game was also running at 30 ticks per second to match the frame rate. Porting the original game to PC allowed the developers to increase the frame rate and tick rate to 60. This means that the physics engine can match the increased frame rate of 60 frames per second on the Xbox One/PC. Super bounces originally worked because 30 ticks allows for a large enough gap in-between each tick so that if a player hits a surface hard enough and their player falls slightly into a crack of the mesh, the engine will detect this and attempt to "bounce" the player out of the mesh. In certain instances, this can result in the player being bounced very high distances and allows for players to reach parts of the map that aren't normally able to be reached. The increased tick rate of 60 allows for more "checks" per second and it becomes increasingly more difficult to manipulate the physics engine like you were once able to a kid. Dropping the tick rate back down to 30 allows for super bounces to be achieved on PC.

Requirements

.NET Framework 4.6.1

mccbounceenable's People

Contributors

daylonz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

phoenix0822

mccbounceenable's Issues

Can you safely play online in custom games with this (assuming easy anti-cheat is disabled?)

Pretty much what the title says; would love to do some custom bounce lobbies with friends but don't want to risk ban...

Also, is there any way that I could make SURE the game always launches with easy anti-cheat disabled when using this? I'm talking about more out-of-the-box solutions. For example, I was thinking about potentially using an AutoHotkey script to launch MCC with EAC disabled then running this program (if there's a way to launch MCC without EAC via command line or whatever).

Enabling wireframe gets error

Hi,

Enabling wireframe gets this error:
image

This is with the MCC running with anti-cheat off. Enabling bounce still works fine.

Using the latest version of MCC from Steam as of 10/29/2021.

Unhandled exception when launching

image

Full text:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at MCCBounceEnable.UIForm.timer1_Tick(Object sender, EventArgs e)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

MCCBounceEnable
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Luke/Downloads/MCCBounceEnable.exe

System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4270.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.3752.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

SharpDX.XInput
Assembly Version: 4.2.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Luke/Downloads/MCCBounceEnable.exe

Process.NET
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Luke/Downloads/MCCBounceEnable.exe

SharpDX
Assembly Version: 4.2.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Luke/Downloads/MCCBounceEnable.exe

System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.3752.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.