Turn any map into a bot map: Bot map maker / script writer
Moderator: Moderators
- small_sumo
- Lieutenant General
- Posts: 953
- Joined: Mon Jul 01, 2002 4:17 pm
- Contact:
This is a menu and script system Yarik . It does not actually write the whole script just the bot stuff needed to make the map a bot map . When you use the writescript button it prints to the log file the stuff you have added to the map .Here is a sample of the output to the log
//<------------------ Bot pathnode writeout---------------------->
//<------------------ Spawn menu writeout------------------------>
level.obj_model[0] = spawn script_origin
level.obj_model[0].targetname = alliesspawn
level.obj_model[0].origin = ( 16.000 836.000 265.000 )
level.obj_model[0].angles = ( 0.000 0.000 0.000 )
//<-------------------------------------------------------------->
level.obj_model[1] = spawn script_origin
level.obj_model[1].targetname = axisspawn
level.obj_model[1].origin = ( 16.000 1244.732 265.000 )
level.obj_model[1].angles = ( 0.000 0.000 0.000 )
//<-------------------------------------------------------------->
level.obj_model[2] = spawn info_player_allied
level.obj_model[2].targetname = alliesspawnpoint
level.obj_model[2].origin = ( -131.329 1081.627 265.000 )
level.obj_model[2].angles = ( 0.000 0.000 0.000 )
level.obj_model[2].set = 0
//<-------------------------------------------------------------->
level.obj_model[3] = spawn info_player_axis
level.obj_model[3].targetname = axisspawnpoint
level.obj_model[3].origin = ( -131.329 1081.627 265.000 )
level.obj_model[3].angles = ( 0.000 0.000 0.000 )
level.obj_model[3].set = 0
//<-------------------------------------------------------------->
level.obj_model[4] = spawn info_pathnode
level.obj_model[4].targetname = bombnode
level.obj_model[4].origin = ( -131.329 1081.627 265.000 )
level.obj_model[4].angles = ( 0.000 0.000 0.000 )
level.obj_model[4].target = bomb1
level.obj_model[4].route = route1
//<-------------------------------------------------------------->
level.obj_model[5] = spawn models/human/multiplayer_allied_1st-ranger_captain.tik
level.obj_model[5].targetname = alliesspawnpreset
level.obj_model[5].origin = ( 32.122 1624.610 240.125 )
level.obj_model[5].angles = ( 0.000 98.009 0.000 )
//<-------------------------------------------------------------->
level.obj_model[6] = spawn models/human/multiplayer_german_afrika_grenadier.tik
level.obj_model[6].targetname = axisspawnpreset
level.obj_model[6].origin = ( -5.803 2363.585 240.125 )
level.obj_model[6].angles = ( 0.000 0.000 0.000 )
//<-------------------------------------------------------------->
level.obj_model[7] = spawn script_origin
level.obj_model[7].targetname = scriptorg_7
level.obj_model[7].origin = ( 79.751 2267.964 265.000 )
level.obj_model[7].angles = ( 0.000 0.000 0.000 )
level.obj_model[7].set = 0
//<-------------------------------------------------------------->
I hate writeing docs but I have a sample for you . You see there is a write script button and a save script button . The write script button outputs a script that you paste into the level scirpt at the top tha looks like this
You see the save script repawns the temp models so you can edit it and move them around again you can't move spawned pathnodes . As I said there is a premade save script for The hunt that you can look at to see how some of it is done .
but the out put of the save script looks like this//<------------------------------------------------------------->
level.obj_model[43] = spawn info_pathnode
level.obj_model[43].targetname = bombcamp
level.obj_model[43].origin = ( 3611.004 -492.440 -312.322 )
level.obj_model[43].angles = ( 0.000 0.000 0.000 )
level.obj_model[43].target = scriptorg_44
level.obj_model[43].set = 2
level.obj_model[43].route = "myroute"
level.obj_model[43].noaxis = 0
level.obj_model[43].noallies = 0
//<------------------------------------------------------------->
level.obj_model[44] = spawn script_origin
level.obj_model[44].targetname = scriptorg_44
level.obj_model[44].origin = ( 3611.004 -421.440 -274.322 )
level.obj_model[44].angles = ( 0.000 0.000 0.000 )
level.obj_model[44].set = 0
//<------------------------------------------------------------->
//<------------------------------------------------------------->
level.obj_model[43] = spawn script_model model models/fx/bdb_bombcampnode.tik spawnflags 1
level.obj_model[43].targetname = bombcamp
level.obj_model[43].origin = ( 3611.004 -492.440 -312.322 )
level.obj_model[43].angles = ( 0.000 0.000 0.000 )
level.obj_model[43].target = scriptorg_44
level.obj_model[43].set = 2
level.obj_model[43].route = "myroute"
level.obj_model[43].noaxis = 0
level.obj_model[43].noallies = 0
level.obj_model[43].type = bombcamp
level.obj_model[43].menu_item = bomb_camp
//<------------------------------------------------------------->
level.obj_model[44] = spawn script_model model models/fx/bdb_scriptorigin.tik spawnflags 1
level.obj_model[44].targetname = scriptorg_44
level.obj_model[44].origin = ( 3611.004 -421.440 -274.322 )
level.obj_model[44].angles = ( 0.000 0.000 0.000 )
level.obj_model[44].set = 0
level.obj_model[44].type = scriptorigin
level.obj_model[44].menu_item = script_origin
//<------------------------------------------------------------->
You see the save script repawns the temp models so you can edit it and move them around again you can't move spawned pathnodes . As I said there is a premade save script for The hunt that you can look at to see how some of it is done .
- small_sumo
- Lieutenant General
- Posts: 953
- Joined: Mon Jul 01, 2002 4:17 pm
- Contact:
Well it is ready to go . I think every thing works ok any problems let me know and have fun with it . I have included a sample for you to get started . The sample is for the hunt . The zip has 4 files in it 3 for the sample .
obj_team1.scr
obj_team1_bot.scr
obj_team1_save.scr
user_Bdboger_botmapper.pk3
the obj_team1.scr is set up so that if you start it with the other 2 files in the
obj directory it will run the obj_team1_save.scr and the botmapper.scr . Read the readme on how to setup the menu by binding it to a key or you can launch it from the console either way you need to execute the script for it to work .
//waitexec maps/obj/obj_team1_bot.scr
waitexec maps/obj/obj_team1_save.scr
exec global/Botsmapper.scr
uncomment the first line to play the test map and comment out the other two lines . This works for 1 round only read the readme to see why . If you edit the map and add pathnodes don't forget to delete the .pth file before you run it again . You can download it Here
obj_team1.scr
obj_team1_bot.scr
obj_team1_save.scr
user_Bdboger_botmapper.pk3
the obj_team1.scr is set up so that if you start it with the other 2 files in the
obj directory it will run the obj_team1_save.scr and the botmapper.scr . Read the readme on how to setup the menu by binding it to a key or you can launch it from the console either way you need to execute the script for it to work .
//waitexec maps/obj/obj_team1_bot.scr
waitexec maps/obj/obj_team1_save.scr
exec global/Botsmapper.scr
uncomment the first line to play the test map and comment out the other two lines . This works for 1 round only read the readme to see why . If you edit the map and add pathnodes don't forget to delete the .pth file before you run it again . You can download it Here






