View unanswered posts | View active topics It is currently Thu Apr 17, 2014 7:45 pm



Reply to topic  [ 25 posts ]  Go to page Previous  1, 2
 Aimbots and Several Contemporaneous Ideas 
Author Message
Delta Force
User avatar

Joined: Wed Mar 31, 2004 8:59 pm
Posts: 4258
Location: New Jersey, USA
Reply with quote
Post Re: Aimbots
Talking with Samuco is fun, because he moves forward with ideas, then I move forward again with them, and it becomes a masterpiece goal when the dust settles. Then I go read more on programming methods and he goes afk for like half a year until one of us comes back with something new and cool.

To move forward:
What about a program that lets you spawn and control AI dynamically during a game? It could work if we could also figure out how to dynamically control the spawning of itmc and vehicles and other map assets (such as players also). Alternatively, you could synthesize this by moving the spawn points outside of the map bsp. You could develop a map where all the spawn points are at a single location outside the bsp, then using memory hacking you could place whatever you wanted to show up on the map inside the bsp area so it spawned there.

It would be as easy as moving players around the map, which Starlight already lets you do.

_________________
Either you are groping for answers, or you are asking God and listening to Jesus.


Thu Jun 28, 2012 1:17 pm
Profile WWW
Peon
User avatar

Joined: Mon Apr 26, 2010 1:39 am
Posts: 129
Reply with quote
Post Re: Aimbots
Sparky wrote:
Then I go read more on programming methods and he goes afk for like half a year until one of us comes back with something new and cool.
Heh, so true :D

Sparky wrote:
Alternatively, you could synthesize this by moving the spawn points outside of the map bsp. You could develop a map where all the spawn points are at a single location outside the bsp, then using memory hacking you could place whatever you wanted to show up on the map inside the bsp area so it spawned there.

It would be as easy as moving players around the map, which Starlight already lets you do.
Just look at 5-Team-Slayer for custom spawning.
The biggest problem with this is the actual 'spawning' of objects. I tried to dynamically spawn different objects several years ago and it didn't work.
Converting objects is also... weird (I did manage to turn a hog into a tank... but it was so glitchy that it crashed after ~ 5 seconds)


Mon Jul 02, 2012 8:23 pm
Profile
Delta Force
User avatar

Joined: Wed Mar 31, 2004 8:59 pm
Posts: 4258
Location: New Jersey, USA
Reply with quote
Post Re: Aimbots
Maybe try using garb tags instead of scen tags.

_________________
Either you are groping for answers, or you are asking God and listening to Jesus.


Tue Jul 03, 2012 3:32 am
Profile WWW
Ranger
User avatar

Joined: Wed Aug 16, 2006 5:48 pm
Posts: 867
Location: AFK
Reply with quote
Post Re: Aimbots
Sparky wrote:
Once you respawn, though, these memory addresses are no longer used. Doesn't it have something to do with the map magic ... or something like that?


Magic is basically the offset in which the map is loaded. You could change map values without reloading the map using

Code:
magic + offset


When you respawn, the object ID and address of the player is discarded and you obtain a new ID. The address can be derived from the ID pretty easy.

playerIndex is the player number. 0 = Host, 1 = first player that joined, etc. It can be derived sv_players (usually correct) or from memory mods like the Colors mod, which lists players in order, or the Assassin mod I made, which lists in numerical order.

Variables in all caps are constants.

Code:
objectIDAddress = FIRST_STATIC_PLAYER_ADDRESS (0x4BD7AFD0) + PLAYER_OBJECT_ID_OFFSET (0x32) + STATIC_PLAYER_SIZE (0x200) * playerIndex


Then, you take the value from this address. It's a 16-bit unsigned integer. We'll call this value objectID If it's 0 or 0xFFFF (-1), the player is not alive or existing.

Note: If it is 0 and the player is alive or spawned, you're playing a modded map on slayer without scenery, machines, vehicles, weapons, equipment, etc. which is boring. On most occasions, 0 is invalid.

A little trivia. The object ID 0 in CTF is the red team flag. In slayer, if unchanged, is a warthog.

Now we can find the dynamic player address. The one that contains shield, health, location, and stuff.

Code:
playerAddressAddress = FIRST_TABLE_OBJECT_ADDRESS (0x4BB206EC) + OBJECT_TABLE_SIZE (0xC) * objectID + OFFSET_TO_HALO_OBJECT_POINTER (0x8)


Now we take the value of this. It's a 32-bit unsigned integer. This is the actual address of the dynamic player.

To change stuff with it, you could do things like:

Code:
changeFloat(playerAddress + OFFSET_TO_PLAYER_Z_COORDINATE (0x64),50)
This would set the player's Z coordinate to 50. In an unchanged Blood Gulch, this would surely kill them.


Halo Full and Demo have different FIRST_STATIC_PLAYER_ADDRESS and FIRST_STATIC_PLAYER_OBJECT_ID, and FIRST_OBJECT_TABLE_ADDRESS. They also have different magics. Using subtraction of the two magics, you could compensate for this and convert a demo memory mod. I did it with the Zombies mod that I made in late 2010.

Everything else like PLAYER_OBJECT_ID_OFFSET is the same and should not be changed. Usually these offsets have 4 or less digits.


Sat Jul 07, 2012 8:28 am
Profile
Delta Force
User avatar

Joined: Wed Mar 31, 2004 8:59 pm
Posts: 4258
Location: New Jersey, USA
Reply with quote
Post Re: Aimbots
I'm really just way too tired to understand any of this right now.

Back to PHP stuff for Zeus.

I have an idea though where HDM can host scripts that the HDM server would use to rcon remote connect with the hosted halo demo or halo games... basically what I'm trying to say here is that HaloDemoMods.com can have web pages where you can remote-control a hosted halo game. This would be the next best thing to running the game on the server itself to host players in that game from the HDM server. All this stuff would of course be with another server setup.


I'm wondering if anyone could recommend a Mac OS X server host, so perhaps we'd be able to have some real Halo Demo dedicated servers, and so all this stuff would be so much more flexible overall.

_________________
Either you are groping for answers, or you are asking God and listening to Jesus.


Sat Jul 07, 2012 2:17 pm
Profile WWW
HaloMD Dev
User avatar

Joined: Sat Jul 05, 2008 8:38 am
Posts: 890
Location: null zone
Reply with quote
Post Re: Aimbots
You are so overcomplicating things. There is a dedi command-line tool that runs natively on Windows, or can easily run on Linux via WINE (this is what the clanhalo dedi uses). Halo provides a remote console built in, no need to think about it. You can just run a number of those instances you want. Although I doubt you have a server that can support many dedi's at once. Not like it matters for now because the number of users on MD is not that high.

_________________
it's the nil zone!
HaloMD


Sat Jul 07, 2012 7:53 pm
Profile
Delta Force
User avatar

Joined: Wed Mar 31, 2004 8:59 pm
Posts: 4258
Location: New Jersey, USA
Reply with quote
Post Re: Aimbots
Right.

Well, I have been looking to discuss the most useful server scenario; that is to what I alluded here.

HDM server is filling up, and yet there is relatively little activity on it now, I think because of our focus elsewhere. So I'm not saying we should focus on filling up the server hard drive, or that we should not be doing what we are doing elsewhere. When I renew the hosting plan for halodemomods.com, would another server setup, such as a windows server (ugh) or Mac OS X server (with linux "screen" support) be more useful to our goals than a red hat linux server?

I applaud other life goals and to move on from this to do other decidedly better things (not games, but other more important things in life), yet while we continue here, we are moving towards a direction with these efforts also, to make this little part of the world ideal to match other life values we gain elsewhere. So while we fiddle with this present computer technology, what is the most useful to what we seek to achieve here? Thinking as creative modders, not as those who hold the source code to the game.

_________________
Either you are groping for answers, or you are asking God and listening to Jesus.


Sun Jul 08, 2012 11:23 am
Profile WWW
HaloMD Dev
User avatar

Joined: Sat Jul 05, 2008 8:38 am
Posts: 890
Location: null zone
Reply with quote
Post Re: Aimbots
I don't see any advantage to have an OS X server over a linux one. Linux is widely used for servers, and you'll likely find it a pain to install packages that aren't heavily tested on OS X (eg: WINE). I'd still go with Linux.

_________________
it's the nil zone!
HaloMD


Sun Jul 08, 2012 12:10 pm
Profile
Delta Force
User avatar

Joined: Wed Mar 31, 2004 8:59 pm
Posts: 4258
Location: New Jersey, USA
Reply with quote
Post Re: Aimbots
Thanks for that, and yes I agree. But why don't you see the advantage of an OS X server over a linux one? I haven't been able to install "screen" support and I don't anticipate being able to do that on a dedicated server either. That's pretty much the only thing keeping halo demo from having a dedicated host through HDM.

_________________
Either you are groping for answers, or you are asking God and listening to Jesus.


Sun Jul 08, 2012 5:09 pm
Profile WWW
HaloMD Dev
User avatar

Joined: Sat Jul 05, 2008 8:38 am
Posts: 890
Location: null zone
Reply with quote
Post Re: Aimbots
Sparky wrote:
Thanks for that, and yes I agree. But why don't you see the advantage of an OS X server over a linux one? I haven't been able to install "screen" support and I don't anticipate being able to do that on a dedicated server either. That's pretty much the only thing keeping halo demo from having a dedicated host through HDM.


I need some clarification on 'screen.' If you think the command line tool needs a GUI running via WINE, it doesn't. You can pass a flag that will make it run in the terminal window you started it from.

If you're saying you don't have screen installed, then you are insane, and you should install it for it is useful. (Honestly, one would think Red Hat would come with screen installed anyway). But if you aren't using screen, then I'm curious how are you keeping that lobby script running, and if you can keep that script running, then what is preventing you from keeping this tool running?

_________________
it's the nil zone!
HaloMD


Sun Jul 08, 2012 6:35 pm
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 25 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: Google [Bot] and 2 guests


You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
PPowered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.