Jump to content
SSForum.net is back!

Developing add-ons for continuum (light hacking)


Recommended Posts

Posted

Groundwork

 

The actual reason I developed Continuum Resizer was to overlay graphics over Continuum. This is straight-forward when playing windowed (overlaying over windows is easy) but things change when you're trying to draw over a fullscreen directx/draw application. I tried a different ways of getting graphics to appear over a directx/draw app but was unsuccessful so in the end I changed strategies to just making continuum a window (when in fullscreen mode). Getting fullscreen windowed was not at all necessary for overlaying graphics (since continuum already has a windowed mode) but I wanted any add-on I developed to be seemless.

 

Once I developed resizer, I did some probing of Continuum's memory. It should be noted that Continuum has an encrypted executable, prevents debugging, and also encrypts its network data. However once in game, Continuum does store some useful game-related objects in heap memory. I found ship data (position/velocity) and powerball data. A value essential to the add-on I had in mind but was missing was a reliable ship rotation value. (I found something which was indirectly related to rotation - it could be converted to rotation most of the time - however it would start going wonky when energy levels were low). After some time I decided switch methods to trying to get the ship rotation from when continuum draws the ship graphic to the screen. This worked.

 

So, to recap, with these foundations in place i can now read all ship position data and powerball data whenever from continuum. By whenever i actually mean whenever (which is spectacular): before the frame is drawn, after the frame is drawn, essentially any arbitrary time. This is everything I need for the add-on in mind.

 

The Addon

 

The goal is a multifunction add-on running silently along Continuum for use in the Powerball zone. This is the feature-list

  • detect ports and warp to them when the ball was within catching distant of them (port-steals/port-goals) (implemented)
  • overlay loose ball trajectories (including geometry of the lvl)
  • overlay where the ball comes to rest (onscreen)
  • have a mode that searches for any possible scoring shots and automatically shoots those shots (an aim-bot)
  • display how much time left on the ball timer for any player carrying the ball (implemented)

and have context-sensitive hotkey combos for:

  • ballkilling (an enemy passes you the ball while you were goalie & shooting bullets - the add-on would immediately shoot back the ball, which prevents anyone from ballkilling you in goal)
  • passing (ctrl/tab passes always use insert)

I have ceased working on it as it's too much effort to glean geometry data from the lvl and use that to compute ball trajectories/possible shots. Also, it's undetectable in the current version of continuum and likely to be so forever since continuum isn't developed anymore lol.

 

I'll leave anyone interested with a link to the source: https://bitbucket.org/weasal/powerballshot/src

Anyone competent should be able to compile it with a bit of effort, idiots/skiddies probably will have trouble since I haven't included any of the project files.

 

This was intended to be mostly academic, but it is cheating, so mods, please do net-ban me.

a.k.a Weasal (dsb)
Posted

I tried a different ways of getting graphics to appear over a directx/draw app but was unsuccessful

also, a few people before you have worked on this type of stuff

https://spreadsheets.google.com/pub?key=pm5Z0y5OuJVxMIvcbjqOTUA

you can also edit the resources & dlls that ss uses to restyle things like the directory window

SSC Distension Owner
SSCU Trench Wars Developer


3:JabJabJab> sometimes i feel like when im in this mood im like a productive form of Cheese
Dr Brain> Pretty much everything you said was wrong. Except where you called me a lazy jerk with no time. That was true.
3:KrynetiX> do you ever open your web browser and type ?go google
5:Ceiu> Wow. My colon decided that was a good time to evacuate itself.

Posted
those offsets might be for subspace and not continuum though

SSC Distension Owner
SSCU Trench Wars Developer


3:JabJabJab> sometimes i feel like when im in this mood im like a productive form of Cheese
Dr Brain> Pretty much everything you said was wrong. Except where you called me a lazy jerk with no time. That was true.
3:KrynetiX> do you ever open your web browser and type ?go google
5:Ceiu> Wow. My colon decided that was a good time to evacuate itself.

Posted (edited)

you can also edit the resources & dlls that ss uses to restyle things like the directory window

 

http://forums.minegoboom.com/viewtopic.php?p=77737

Edited by Cheese

SSC Distension Owner
SSCU Trench Wars Developer


3:JabJabJab> sometimes i feel like when im in this mood im like a productive form of Cheese
Dr Brain> Pretty much everything you said was wrong. Except where you called me a lazy jerk with no time. That was true.
3:KrynetiX> do you ever open your web browser and type ?go google
5:Ceiu> Wow. My colon decided that was a good time to evacuate itself.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...