Page 1 of 1

New Multiplayer AI theory! plz read this

Posted: Thu Jun 15, 2006 11:44 am
by aidan7
im new to the forums although iv been modding for a while now. but the 1 thing iv wanted to do is make AI work in multiplayer. so iv been studying differences between singleplayer maps and multiplayer maps.

this is one of the differences which (i think) determines if AI works or not.
you can see from this image in Insolense that the single player map oldmombasa has a reflexive "unknown 19" then at the right it shows chunk 0 n says for tag type styl (situation specific AI) n its ID is ai\guarding.
the other chunks have different styl's like ai\assaulting, ai\hunting, ai\bunkering and ai\retreating.
then looking at the reflexives on the multiplayer map zanzibar, the reflexive "unknown 19" is un-hilighted / not there.
Image
iv tried using the Reflexive chunk adder but i dono if its possible to add chunks to an unkown reflexive.
its not in the template drop down menu in the Reflexive chunk adder even when u open a single player map.

could any1 make a plugin for it so u can add chunks to unknown 19, or
even add a reflexive (if its possible) for any great hex editors PLZ look into this!

n like sumone in another AI thread said, AI in multiplayer has been way overlooked, it may be beyond me but i think for sum ppl out there, they could make it work.

thanks to the ppl that made Insolence

Posted: Thu Jun 15, 2006 1:10 pm
by xzodia
interesting but im sure their must be more to it then that but ill make the plugin

edit: here you go just replace the contents of the plugin.xml with this

Code: Select all

<?xml version="1.0" encoding="UTF-8" ?>
<plugin>
	<bipd>
		<struct>
			<name>Hud</name>
			<position>420</position>
			<size>8</size>
		</struct>
	</bipd>
	<cont>
		<struct>
			<name>Color Phase</name>
			<position>236</position>
			<size>64</size>
		</struct>
	</cont>
	<effe>
		<struct>
			<name>Spawns</name>
			<position>80</position>
			<size>56</size>
		</struct>
	</effe>
	<hlmt>
		<struct>
			<name>Vehicle Turrets</name>
			<position>284</position>
			<size>16</size>
		</struct>
	</hlmt>
	<itmc>
		<struct>
			<name>Item(s) Spawned</name>
			<position>4</position>
			<size>16</size>
		</struct>
	</itmc>
	<matg>
		<struct>
			<name>Grenades</name>
			<position>260</position>
			<size>44</size>
		</struct>
	</matg>
	<scnr>
		<struct>
			<name>Local Object(s)</name>
			<position>76</position>
			<size>36</size>
		</struct>
		<struct>
			<name>Scenery</name>
			<position>84</position>
			<size>92</size>
		</struct>
                             <struct>
			<name>Scenery Palette</name>
                                            <position>92</position>
                                            <size>40</size>
                             </struct>
                             <struct>
			<name>Equpiment</name>
                                            <position>132</position>
                                            <size>56</size>
                             </struct>
                             <struct>
			<name>Equpiment Palette</name>
                                            <position>140</position>
                                            <size>40</size>  
                             </struct>
                             <struct>
			<name>Character Palette</name>
                                            <position>380</position>
                                            <size>8</size>
                             </struct>               
                             <struct>
			<name>Biped(s)</name>
			<position>100</position>
			<size>84</size>
		</struct>
                             <struct>
			<name>Biped Palette</name>
                                            <position>108</position>
                                            <size>40</size>
                             </struct> 
		<struct>
			<name>BSobject(s)</name>
			<position>132</position>
			<size>56</size>
		</struct>
		<struct>
			<name>Weapon(s)</name>
			<position>148</position>
			<size>84</size>
		</struct>
                              <struct>
			<name>Object Names</name>
			<position>76</position>
			<size>36</size>
		</struct>
                              <struct>
			<name>Device Groups</name>
                                            <position>164</position>
                                            <size>40</size>
                             </struct>
		<struct>
			<name>Machine(s)</name>
			<position>172</position>
			<size>72</size>
		</struct>
		<struct>
			<name>Machine Dependencies</name>
			<position>180</position>
			<size>40</size>
		</struct>
		<struct>
			<name>Control(s)</name>
			<position>188</position>
			<size>68</size>
		</struct>
		<struct>
			<name>Control Dependencies</name>
			<position>196</position>
			<size>40</size>
		</struct>
		<struct>
			<name>Sounds?</name>
			<position>220</position>
			<size>80</size>
		</struct>
		<struct>
			<name>Wall(s)</name>
			<position>236</position>
			<size>108</size>
		</struct>
		<struct>
			<name>Starting Profile(s)</name>
			<position>252</position>
			<size>68</size>
		</struct>
		<struct>
			<name>Player Spawn(s)</name>
			<position>260</position>
			<size>52</size>
		</struct>
		<struct>
			<name>Collection(s)</name>
			<position>292</position>
			<size>144</size>
		</struct>
		<struct>
			<name>Style Palette</name>
			<position>340</position>
			<size>8</size>
		</struct>
		<struct>
			<name>Bloc(s)</name>
			<position>812</position>
			<size>76</size>
		</struct>
		<struct>
			<name>Bloc Dependencies</name>
			<position>820</position>
			<size>40</size>
		</struct>
                             <struct>
			<name>Lights</name>
                                            <position>236</position>
                                            <size>108</size>
                             </struct>
                             <struct>
			<name>Light Palette</name>
                                            <position>244</position>
                                            <size>40</size>
                             </struct>
                             <struct>
			<name>Vehicles</name>
                                            <position>116</position>
                                            <size>84</size>
                             </struct>
                             <struct>
			<name>Vehicle Palette</name>
			<position>124</position>
			<size>40</size>
		</struct>
               </scnr>
	<vehc>
		<struct>
			<name>Vehicle(s) Spawned</name>
			<position>4</position>
			<size>16</size>
		</struct>
	</vehc>
	<vehi>
		<struct>
			<name>Vehicle Weapon</name>
			<position>452</position>
			<size>8</size>
		</struct>
		<struct>
			<name>Vehicle Seats</name>
			<position>460</position>
			<size>176</size>
		</struct>
	</vehi>
	<weap>
		<struct>
			<name>Light</name>
			<position>152</position>
			<size>24</size>
		</struct>
		<struct>
			<name>Clip</name>
			<position>708</position>
			<size>104</size>
		</struct>
		<struct>
			<name>Trigger</name>
			<position>716</position>
			<size>64</size>
		</struct>
		<struct>
			<name>Projectile</name>
			<position>724</position>
			<size>236</size>
		</struct>
	</weap>
</plugin>

Posted: Thu Jun 15, 2006 1:34 pm
by sickofit
what the hell does bungie use to make AI? cuse if we find that we all know whatd happen

Posted: Thu Jun 15, 2006 1:36 pm
by xzodia
they make their own programs :roll:

Posted: Thu Jun 15, 2006 2:43 pm
by aidan7
thanks xzodia ill try this out, if it works, then.. many thanks lol

Posted: Thu Jun 15, 2006 2:51 pm
by aidan7
i see you added a char palette, i think we might need a plugin for styl, it might work, so could someone post me a plugin that adds styl into scnr? id be grateful :D

Posted: Thu Jun 15, 2006 5:25 pm
by leorimolo
u know maybe if u used simpler ai like the swarm one where its search and destroy

Posted: Fri Jun 16, 2006 7:35 am
by xzodia
aidan7 wrote:i see you added a char palette, i think we might need a plugin for styl, it might work, so could someone post me a plugin that adds styl into scnr? id be grateful :D
err i did add the stly palette

Posted: Fri Jun 16, 2006 8:00 am
by aidan7
oh yea so you did :oops: sorry lol, i have trouble using this chunk adder, its confusing :(

Posted: Fri Jun 16, 2006 5:55 pm
by akamasta
hate to burst your bubble but this has already been discovered and talked about in many posts including my own. We already know how to spawn ai. But it freezes when we do it because we don't have a way to get a char pallette in mp. So even though you can't do it, here's how. Just import a char such as elite into mp from sp with it's styl and everything. Add a style pallette. Switch out one of the chunks for the styl for ur char. And use something like itmc or a swapped proj to spawn the char, which is how ai is spawned, and it will freeze. Like i said, we no this already

Posted: Sat Jun 17, 2006 10:00 am
by aidan7
iv read ur threads but i guess not all of them, dono if u know this too but take a look. n by the way, how do people make Chars spawn in SP maps like in the newmombasa AI mod, is that by puting more marine char in scnr? and how does is spawn them in a particular place? iv not tried AI modding in SP but it might help to understand it in MP maps:?
if u look at unknown 24 in insolence, thats a char pallette that i added.

Image

and this other reflexive from single player, i dont know what it does but it says covenant so i added it anyway:?

Image :

Posted: Sat Jun 17, 2006 7:38 pm
by akamasta
i dont know...i think it has to do with style spawn or something

Posted: Sat Jun 17, 2006 7:45 pm
by [users]P8ntballer24
Just more people saying they found somthing though it's old..

[quote="Trulife8342"]
No you havent even scratched the surface, First off i'll give you and everyone here a small challange, First learn the AI script structure, Google works miracles, Then once you have a tiny bit of knowladge look threw the scnr reflexives, then figure out which one's you would need to to have in MP for the AI to work, once you've done that. Move those reflexives (have fun with that) use p8ntballers24's Tutorial on it, THEN after you moved it, transfer a squad from the SP map, if you dont know what a squad is then just stop at this point, But if you know what that is, transfer that squad (which ever you want) to your map, Then transfer all of its dependancies, The char/biped/ and if nessary the weapon it uses, Then after all of that (let me tell you we arent even 1/10th done) You would need to find the Script index, lol have fun, Once you've found it find out how it works, Meaning the commands, Then find out whats wrong with the xbe, have fun with that too, then make sure every little thing is linked together (dependancies,string id's, scnr pallets), after all of that then you need to fix its spawning info, meaning which script commands it uses, the path it uses, the cordinates, how many will spawn, which char will spawn, and the weapon it uses, if it drives a vehicle and the vehicle seat, and then you might be on your way to having AI in MP, please if anyone has done those things let me know, Have fun

[quote="Du blev

Posted: Sun Jun 18, 2006 4:16 am
by aidan7
k then i think ill just stop at this point before i drive myself into an early grave :(