The other day I was speaking with my friend about how cool Construct King would be in Halo 5 so I decided to attempt to recreate KotH in forge using Strongholds as a base. A day of forging, and one epiphany filled dream, later and I figured it out! There are a few things to note about the gametype. The first being the obvious, you don't have to sit in the hill to actually get points. As it is a stronghold, you simply cap it and then get points from it. However the instant capture time makes it beneficial to leave a teammate in, or near, the hill in order to stop a team just rushing in. The other big issue is a movement of the hill can only be a maximum of 100 units in each direction. For instance, if the first hill is at 0,0,0 then the furthest the second hill can be is at 100,100,100. This could probably be worked around with some clever scripting, and at some point I will attempt to do it, but I have not yet attempted to remedy this issue. The issues are annoying, but this is just supposed to tide people over until 343 hopefully patches in actual KotH. Video: If you would like to see the gametype setup, I have a map and gametype for it on my bookmarks. GT: ILLMASTER MONK Now for the actual setup. You will need the following objects to script a standard 2 min hill cycle. So the hill will move A-B, B-A, A-C, C-A, A-B, B-A throughout the game, which each move happening every 2 mins. 6 barrels (or any exploding prop), 1 script brain, and 1 stronghold. ____________________________ Script Brain Scripts ____________________________ On Timer: Initial: 2 Mins Repeat: 2 Mins Action: Message Send Channel: Alpha ______________________ Barrel Scripts ______________________ MAKE SURE THAT RESPAWN IS OFF!!!!!!!!!!!!!!!!! On Message: Received Channel: Alpha Action: Damage Ration Barrel 1: 1.00 Barrel 2: .50 Barrel 3: .34 Barrel 4: .25 Barrel 5: .24 Barrel 6: .19 Script 2: On Destroyed/Despawn Action: Message: Send Channel: Barrel 1: Zulu Barrel 2: Yankee Barrel 3: xray Barrel 4: whiskey Barrel 5: victor Barrel 6: uniform _____________________________ Stronghold Scripts _____________________________ 1: On message receive Zulu Action: Move Offset (move to first hill location) Local Movement: Off Time: 0.1 (if it has issues, set it .1 higher until the issue stops.) 2: On message receive Yankee Position reset (this is the second hill, which is the start) Time: 0.1 (if it has issues, set it .1 higher until the issue stops.) 3: On message receive Xray Action: Move offset (move to third hill) Local Movement: Off Time: 0.1 (if it has issues, set it .1 higher until the issue stops.) 4: On message receive whiskey Action: Reset Time: 0.1 (if it has issues, set it .1 higher until the issue stops.) 5: On Message Receive victor Action: Move offset (same as first script) Local Movement: Off Time: 0.1 (if it has issues, set it .1 higher until the issue stops.) 6: On Message receive uniform Action: Reset Time: 0.1 (if it has issues, set it .1 higher until the issue stops.)
Thanks for developing this and sharing with us! We shared your thread with the rest of the community via twitter just now: TWEET
This is pretty cool, however it seems a little hacky moving the terminal like that. I think I have a solution for that though. Instead of: Having only one terminal Having the terminal move based on the message it receives from different barrels What about: Have multiple terminals (place them where you want the different hill locations) Create a script for each barrel: Upon being destroyed, send message Charlie Create a script for each terminal: Upon message Charlie received, despawn (so that all terminals despawn) Give each barrel another "Upon being destroyed, send message" script, but make the channel for each barrel unique Create a corresponding script for each terminal: Upon [message from barrel x] received, spawn So each time a barrel is destroyed, all terminals are despawned, and then the terminal receiving the message that the destroyed barrel just sent respawns. So only one terminal is visible at a time. Does this make sense? This should work, right?
It's sad that we need to jump through so many hoops to play a basic gametype that's been in Halo for over 10 years. Nice job, though.
Also, assuming my above idea isn't flawed, you would only need to use as many barrels as there are terminals, just set respawn timer for the barrels to (120sec * (# of barrels - 1)) + 1 (the +1 is added so it doesn't get caught up with the Alpha message). For instance, say you have 3 terminals, 3 barrels, & a brain on your map: Spoiler Script Brain: On Timer: Initial: 2 Mins Repeat: 2 Mins Action: Message Send Channel: Alpha Barrel Z: Respawn: Upon destroyed: 241 sec On Message: Received Channel: Alpha Action: Damage Ratio Ratio: 1 On Destroyed/Despawn Action: Message: Send Channel: Charlie On Destroyed/Despawn Action: Message: Send Channel: Zulu Barrel Y: Respawn: Upon destroyed: 241 sec On Message: Received Channel: Alpha Action: Damage Ratio Ratio: 0.5 On Destroyed/Despawn Action: Message: Send Channel: Charlie On Destroyed/Despawn Action: Message: Send Channel: Yankee Barrel X: Respawn: Upon destroyed: 241 sec On Message: Received Channel: Alpha Action: Damage Ratio Ratio: 0.34 On Destroyed/Despawn Action: Message: Send Channel: Charlie On Destroyed/Despawn Action: Message: Send Channel: Xray Terminal Z: On Message: Received Channel: Charlie Action: Despawn On Message: Received Channel: Zulu Action: Spawn Terminal Y: On Message: Received Channel: Charlie Action: Despawn On Message: Received Channel: Yankee Action: Spawn Terminal X: On Message: Received Channel: Charlie Action: Despawn On Message: Received Channel: Xray Action: Spawn
This was actually my original idea for the gametype, but unfortunately it doesn't work. Despawning a stronghold does not set it to neutral so whichever team controlled it when it despawned would continue to control it forever. I believe I was also having issues with spawning and despawning the terminal at some point, but I'm not sure if I ever fixed that.
Hmm, I see. What about giving each terminal a movement offset of -10 in the Y direction, then despawning them, then respawning the terminal that's up next? I guess this is also pretty hacky, but to me it'd still be easier this way than trying to find the exact coordinates to move the single terminal. And have you checked to see if players receive damage if they're hit by the terminal while it's moving?
I don't really follow how that offset would change anything. And yeah we tested it moving and a player being in the way. The terminal moves so fast that it just teleports through a player, and if the move time is set to a long enough time that this doesn't happen it will just push them. We actually discovered an issue when playtesting recently where the players could walk through the terminal. I fixed it on the test map by putting the stronghold into the floor.
Oh sorry, I'm dumb. First, I actually meant to say in the Z direction, not Y. So the idea was that it'd disappear under the floor before despawning. But also, I guess I got started thinking too much about koth, and was thinking: "if you move the terminal so that no one is in it, then it'll be set back to neutral and no one will continue to get points!" But then I remembered Strongholds doesn't work like that. I think. I don't know, I don't play Halo that much anymore. Looks like you've got it figured it carry on.