Page 2 of 2
Posted: Fri Nov 19, 2004 12:06 am
by Axion
I just downloaded and ran through it...
Nice work!
My only complaint (and it's not really a complaint at all) is that there is no liberation version. The layout looks like it would lend itself very well to liberation-style gameplay.
Posted: Fri Nov 19, 2004 1:13 am
by [MOH]GreenMan
Bjarne BZR, Wave objective sounds interesting. Would you be interested in scripting it

? If so I could send you my map file.
Axion, liberation version? Know anybody that could make that happen

Posted: Fri Nov 19, 2004 3:28 am
by Axion
Well, Bjarne wrote a liberation tutorial that works for Allied Assault, so I know that it's definitely possible.
Posted: Fri Nov 19, 2004 8:58 am
by Bjarne BZR
[MOH]GreenMan wrote:Bjarne BZR, Wave objective sounds interesting. Would you be interested in scripting it

? If so I could send you my map file.
I'm really pressed for time right now but I'm interested in seeing how a Wave map dynamic would work... So send it to me, but I cant promise you anything at all.
Posted: Fri Nov 19, 2004 6:43 pm
by [MOH]GreenMan
OK, I?ll send it when I get home from work.
I found your liberation tutorial (thanks for pointing that out Axion). I think I might give it a shot and convert it myself.
The Wave concept sounds very interesting. I understand about being pressed for time, but
hurry up, I can?t wait to give it a try

. It?s ideas like yours that keep MOHAA alive.
I?ll send you my other map that I'm working on. It?s almost done and I think it might work even better for your Wave concept. If you like it, let me know and when it's done I'll send you the finished version.
Thanks again guys.
Posted: Fri Nov 19, 2004 7:19 pm
by Bjarne BZR
I actually managed to find a completed Wave script I had...
Code: Select all
// FACTORY WAVE OBJECTIVE
// BY BJARNE GR?NNEVIK
main:
level waittill prespawn
exec global/DMprecache.scr
$world farplane 7500
$world farplane_color (0.675 0.663 0.651)
level.script = maps/obj/obj_factory_wave.scr
exec global/ambient.scr obj_team5
setcvar "g_obj_alliedtext1" "[ ]Front spawn taken"
setcvar "g_obj_alliedtext2" "[ ]Middle spawn taken"
setcvar "g_obj_alliedtext3" "[ ]Rear spawn taken"
setcvar "g_obj_axistext1" "[ ]Front spawn taken"
setcvar "g_obj_axistext2" "[ ]Middle spawn taken"
setcvar "g_obj_axistext3" "[ ]Rear spawn taken"
setcvar "g_scoreboardpic" "obj_factory_wave"
waitthread spawn_setup
level waittill spawn
// level waittill roundstart
thread axis_win_test
thread allies_win_test
end
spawn_setup:
level.spawn_count = 0
level.dmroundlimit = 10 // round time limit in minutes
level.clockside = kills // set to axis, allies, kills, or draw
thread spawn_controller
$spawn_allied_front_axis disablespawn
$spawn_allied_middle_axis disablespawn
$spawn_allied_back_axis disablespawn
$spawn_allied_front_allied enablespawn
$spawn_allied_middle_allied enablespawn
$spawn_allied_back_allied enablespawn
$spawn_allied_front_trigger.taken_by_enemy = 0
$spawn_allied_middle_trigger.taken_by_enemy = 0
$spawn_allied_back_trigger.taken_by_enemy = 0
$spawn_allied_front_marker light 0.0 0.0 1.0 300
$spawn_allied_middle_marker light 0.0 0.0 1.0 300
$spawn_allied_back_marker light 0.0 0.0 1.0 300
$spawn_allied_front_marker lightOn
$spawn_allied_middle_marker lightOn
$spawn_allied_back_marker lightOn
thread allied_back_spawn_check
thread allied_middle_spawn_check
thread allied_front_spawn_check
$spawn_axis_front_allied disablespawn
$spawn_axis_middle_allied disablespawn
$spawn_axis_back_allied disablespawn
$spawn_axis_front_axis enablespawn
$spawn_axis_middle_axis enablespawn
$spawn_axis_back_axis enablespawn
$spawn_axis_front_trigger.taken_by_enemy = 0
$spawn_axis_middle_trigger.taken_by_enemy = 0
$spawn_axis_back_trigger.taken_by_enemy = 0
$spawn_axis_front_marker light 1.0 0.0 0.0 300
$spawn_axis_middle_marker light 1.0 0.0 0.0 300
$spawn_axis_back_marker light 1.0 0.0 0.0 300
$spawn_axis_front_marker lightOn
$spawn_axis_middle_marker lightOn
$spawn_axis_back_marker lightOn
thread axis_back_spawn_check
thread axis_middle_spawn_check
thread axis_front_spawn_check
end
spawn_controller:
level.dmrespawning = 0
level waittill roundstart
while(1) {
wait 30
level.dmrespawning = 1
wait 10
level.dmrespawning = 0
}
end
axis_win_test:
while(level.spawn_count > 3) {
waitframe // protection
}
iprintlnbold_noloc "The axis has gained complete control of the factory!"
teamwin axis
end
allies_win_test:
while(level.spawn_count < 3) {
waitframe // protection
}
iprintlnbold_noloc "The allies has gained complete control of the factory!"
teamwin allies
end
allied_back_spawn_check:
while(1) {
$spawn_allied_back_trigger waittill trigger
if(parm.other.dmteam != allies) {
if($spawn_allied_back_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread allied_back_spawn_change
}
} else {
if($spawn_allied_back_trigger.taken_by_enemy) {
waitthread allied_back_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
allied_back_spawn_change:
$spawn_allied_back_trigger playsound convert_spawn
if($spawn_allied_back_trigger.taken_by_enemy) {
level.spawn_count ++
$spawn_allied_back_trigger.taken_by_enemy = 0
$spawn_allied_back_marker lightOff
$spawn_allied_back_marker light 0.0 0.0 1.0 300
$spawn_allied_back_marker lightOn
$spawn_allied_back_axis disablespawn
$spawn_allied_back_allied enablespawn
// $spawn_allied_back_switch anim disable // disable is just a guess
iprintlnbold_noloc "The allies controls their rear entrance again!"
setcvar "g_obj_axistext3" "[ ]Rear spawn taken"
} else {
level.spawn_count --
$spawn_allied_back_trigger.taken_by_enemy = 1
$spawn_allied_back_marker lightOff
$spawn_allied_back_marker light 1.0 0.0 0.0 300
$spawn_allied_back_marker lightOn
$spawn_allied_back_axis enablespawn
$spawn_allied_back_allied disablespawn
// $spawn_allied_back_switch anim enable // enable is just a guess
iprintlnbold_noloc "The axis controls the rear allied entrance!"
setcvar "g_obj_axistext3" "[X]Rear spawn taken"
}
end
allied_middle_spawn_check:
while(1) {
$spawn_allied_middle_trigger waittill trigger
if(parm.other.dmteam != allies) {
if($spawn_allied_middle_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread allied_middle_spawn_change
}
} else {
if($spawn_allied_middle_trigger.taken_by_enemy) {
waitthread allied_middle_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
allied_middle_spawn_change:
$spawn_allied_middle_trigger playsound convert_spawn
if($spawn_allied_middle_trigger.taken_by_enemy) {
level.spawn_count ++
$spawn_allied_middle_trigger.taken_by_enemy = 0
$spawn_allied_middle_marker lightOff
$spawn_allied_middle_marker light 0.0 0.0 1.0 300
$spawn_allied_middle_marker lightOn
$spawn_allied_middle_axis disablespawn
$spawn_allied_middle_allied enablespawn
// $spawn_allied_middle_switch anim disable // disable is just a guess
iprintlnbold_noloc "The allies controls their middle entrance again!"
setcvar "g_obj_axistext2" "[ ]Middle spawn taken"
} else {
level.spawn_count --
$spawn_allied_middle_trigger.taken_by_enemy = 1
$spawn_allied_middle_marker lightOff
$spawn_allied_middle_marker light 1.0 0.0 0.0 300
$spawn_allied_middle_marker lightOn
$spawn_allied_middle_axis enablespawn
$spawn_allied_middle_allied disablespawn
// $spawn_allied_back_switch anim enable // enable is just a guess
iprintlnbold_noloc "The axis controls the middle allied entrance!"
setcvar "g_obj_axistext2" "[X]Middle spawn taken"
}
end
allied_front_spawn_check:
while(1) {
$spawn_allied_front_trigger waittill trigger
if(parm.other.dmteam != allies) {
if($spawn_allied_front_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread allied_front_spawn_change
}
} else {
if($spawn_allied_front_trigger.taken_by_enemy) {
waitthread allied_front_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
allied_front_spawn_change:
$spawn_allied_front_trigger playsound convert_spawn
if($spawn_allied_front_trigger.taken_by_enemy) {
level.spawn_count ++
$spawn_allied_front_trigger.taken_by_enemy = 0
$spawn_allied_front_marker lightOff
$spawn_allied_front_marker light 0.0 0.0 1.0 300
$spawn_allied_front_marker lightOn
$spawn_allied_front_axis disablespawn
$spawn_allied_front_allied enablespawn
// $spawn_allied_front_switch anim disable // disable is just a guess
iprintlnbold_noloc "The allies controls their front entrance again!"
setcvar "g_obj_axistext1" "[ ]Front spawn taken"
} else {
level.spawn_count --
$spawn_allied_front_trigger.taken_by_enemy = 1
$spawn_allied_front_marker lightOff
$spawn_allied_front_marker light 1.0 0.0 0.0 300
$spawn_allied_front_marker lightOn
$spawn_allied_front_axis enablespawn
$spawn_allied_front_allied disablespawn
// $spawn_allied_front_switch anim enable // enable is just a guess
iprintlnbold_noloc "The axis controls the front allied entrance!"
setcvar "g_obj_axistext1" "[X]Front spawn taken"
}
end
axis_back_spawn_check:
while(1) {
$spawn_axis_back_trigger waittill trigger
if(parm.other.dmteam != axis) {
if($spawn_axis_back_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread axis_back_spawn_change
}
} else {
if($spawn_axis_back_trigger.taken_by_enemy) {
waitthread axis_back_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
axis_back_spawn_change:
$spawn_axis_back_trigger playsound convert_spawn
if($spawn_axis_back_trigger.taken_by_enemy) {
level.spawn_count --
$spawn_axis_back_trigger.taken_by_enemy = 0
$spawn_axis_back_marker lightOff
$spawn_axis_back_marker light 1.0 0.0 0.0 300
$spawn_axis_back_marker lightOn
$spawn_axis_back_axis disablespawn
$spawn_axis_back_allied enablespawn
// $spawn_axis_back_switch anim disable // disable is just a guess
iprintlnbold_noloc "The axis controls their rear entrance again!"
setcvar "g_obj_alliestext3" "[ ]Rear spawn taken"
} else {
level.spawn_count ++
$spawn_axis_back_trigger.taken_by_enemy = 1
$spawn_axis_back_marker lightOff
$spawn_axis_back_marker light 0.0 0.0 1.0 300
$spawn_axis_back_marker lightOn
$spawn_axis_back_axis enablespawn
$spawn_axis_back_allied disablespawn
// $spawn_axis_back_switch anim enable // enable is just a guess
iprintlnbold_noloc "The allies controls the rear axis entrance!"
setcvar "g_obj_alliestext3" "[X]Rear spawn taken"
}
end
axis_middle_spawn_check:
while(1) {
$spawn_axis_middle_trigger waittill trigger
if(parm.other.dmteam != axis) {
if($spawn_axis_middle_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread axis_middle_spawn_change
}
} else {
if($spawn_axis_middle_trigger.taken_by_enemy) {
waitthread axis_middle_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
axis_middle_spawn_change:
$spawn_axis_middle_trigger playsound convert_spawn
if($spawn_axis_middle_trigger.taken_by_enemy) {
level.spawn_count --
$spawn_axis_middle_trigger.taken_by_enemy = 0
$spawn_axis_middle_marker lightOff
$spawn_axis_middle_marker light 1.0 0.0 0.0 300
$spawn_axis_middle_marker lightOn
$spawn_axis_middle_axis disablespawn
$spawn_axis_middle_allied enablespawn
// $spawn_axis_middle_switch anim disable // disable is just a guess
iprintlnbold_noloc "The axis controls their middle entrance again!"
setcvar "g_obj_alliestext2" "[ ]Middle spawn taken"
} else {
level.spawn_count ++
$spawn_axis_middle_trigger.taken_by_enemy = 1
$spawn_axis_middle_marker lightOff
$spawn_axis_middle_marker light 0.0 0.0 1.0 300
$spawn_axis_middle_marker lightOn
$spawn_axis_middle_axis enablespawn
$spawn_axis_middle_allied disablespawn
// $spawn_axis_middle_switch anim enable // enable is just a guess
iprintlnbold_noloc "The allies controls the middle axis entrance!"
setcvar "g_obj_alliestext2" "[X]Middle spawn taken"
}
end
axis_front_spawn_check:
while(1) {
$spawn_axis_front_trigger waittill trigger
if(parm.other.dmteam != axis) {
if($spawn_axis_front_trigger.taken_by_enemy) {
parm.other iprint "You already control this entrance." 1
continue
} else {
waitthread axis_front_spawn_change
}
} else {
if($spawn_axis_front_trigger.taken_by_enemy) {
waitthread axis_front_spawn_change
} else {
parm.other iprint "You already control this entrance." 1
continue
}
}
waitframe // protection
}
end
axis_front_spawn_change:
$spawn_axis_front_trigger playsound convert_spawn
if($spawn_axis_front_trigger.taken_by_enemy) {
level.spawn_count --
$spawn_axis_front_trigger.taken_by_enemy = 0
$spawn_axis_front_marker lightOff
$spawn_axis_front_marker light 1.0 0.0 0.0 300
$spawn_axis_front_marker lightOn
$spawn_axis_front_axis disablespawn
$spawn_axis_front_allied enablespawn
// $spawn_axis_front_switch anim disable // disable is just a guess
iprintlnbold_noloc "The axis controls their front entrance again!"
setcvar "g_obj_alliestext1" "[ ]Front spawn taken"
} else {
level.spawn_count ++
$spawn_axis_front_trigger.taken_by_enemy = 1
$spawn_axis_front_marker lightOff
$spawn_axis_front_marker light 0.0 0.0 1.0 300
$spawn_axis_front_marker lightOn
$spawn_axis_front_axis enablespawn
$spawn_axis_front_allied disablespawn
// $spawn_axis_front_switch anim enable // enable is just a guess
iprintlnbold_noloc "The allies controls the front axis entrance!"
setcvar "g_obj_alliestext2" "[X]Front spawn taken"
}
end
I have a *.map file for it as well. Depending on your scripting experience you could decrypt the script to see what targetnamed objects are needed in the map... Else I'll mail you the map ( think I got bored with it because of a strange compiler error, so dont count on that map dude

)
Posted: Fri Nov 19, 2004 8:21 pm
by [MOH]GreenMan

What the ?

Humm, OK I think I can follow that.

I?ll probably regret this but..., OK... I?ll give it a try. Go ahead and send me the .map file.
Do you still want my map files?
Posted: Sat Nov 20, 2004 1:54 am
by Bjarne BZR
[MOH]GreenMan wrote:Do you still want my map files?
Not really. If you understand the script; you will know what to add to your map. So unless you run into problems: I won't need to see the actual map.
Keep it going m8!
Posted: Sat Nov 27, 2004 9:20 pm
by LtNeil
I have'nt even looked at your map yet(but i just downloaded it and i say ignore the moaners!
I have made a few maps myself and have turned dm into lib maps(although i dont think i will release them)and i know that you must have put in a lot of work to do this,so well done!!
If these other people took the time to do thier own maps they would see that unless your a genius its bloody hard work sometimes and when you have done something(that at least your proud of)it kind of hurts the old ego when people try to shoot you down in flames.
Once again well done and carry on mapping as its people like you(and me)that sometimes makes a map theat is sheer joy to someone else!!
Posted: Sat Nov 27, 2004 9:59 pm
by Axion
Who's moaning? I think you should realize that any comments that were offered in this topic are opinions. No one is faulting the work that was put into this map, and no one is saying that more needs to be done.
The suggestions for modifying the map to be wave-based or liberation are exactly that- Suggestions. No one is demanding more work, so maybe you should calm down and reread this thread before you go and accuse others of trying to "shoot the author down in flames".
I can't speak for everyone, but the majority of the posters in this thread have all made maps, and we all understand the hard work and time that is needed to create one. But that doesn't mean we can't offer suggestions or ideas.
Posted: Sat Nov 27, 2004 11:13 pm
by [MOH]GreenMan
Thanks LtNeil?
I didn?t take any of the post as moaning and only as positive suggestions. There were a couple of comments about choke points but I think they saw the error of their way once they tried it

.
I?m almost done with my second map (that?s been over a year in the making

). I should be posting it soon. Once I?m done, I plan on turning both of them into a liberation and a wave map, thanks to Bjarne?s script.
Please keep the ideas coming

Was i moaning?
Posted: Sun Nov 28, 2004 1:10 pm
by LtNeil
Sorry if i upset anyone or what i typed came out the wrong way,it seemed in MY opinion that there were some negative comments,but maybe i was just fresh from doing some mapping myself and i wanted to make the author of the map feel good about his work(in case any one put a "downer" on him).
sorry for rattling anyones cage to!,lol and i can not wait for the liberation version! Woohoo!
Posted: Sun Nov 28, 2004 3:58 pm
by Master-Of-Fungus-Foo-D
NIIICE greenman.... i always love the "algirs night" style... IT is just so cool... you could put music into the script to make it a little more...um...intemse!