Balloon race Entities Balloon Race Entities Overview Balloon race is a TF2 racing map, it's backbone is formed by the entities it uses. In GM23 (V2t23) Balloon race has over 1000 entities. The balloons themselves are simple, they consist of: 1.Func_tracktrain - This is the balloon itself, as the name suggests, the balloons are trains and follow a pre-set path. 2.Func_brush - The purpose of these is simple. Anything that isn't part of the train needs to be parented, one of the ways to parent a brush is to make it into a func_brush. 3.Prop_dynamic - This is the model for the dispenser in the boat. 4.Mapobj_cart_dispenser - This is the “dispensing” part of the dispenser 5.func_door_rotating - This is used for the fans on the back of the boats 6.info_particle_system – These are triggered when a team loses the game, they make a large explosion. 7.trig_hurt – There are two of these on-board, on hurts the opposing team if they are on the deck, the other kills anyone who gets too close to the boat when it has exploded. So, that's the balloons out the way. Now the path they follow. Like all trains, the balloons follow a track. The track for the red team has 64 “points”, the track for the blue team has 50 (Not including alternate routes), each “point” is linked together in the entities settings. Here is a diagram clearly showing the two balloons paths. For anyone familiar to balloon race it is easy to work out what each thing on this diagram is. The two largest yellow loops are the tracks for the balloons. (The smaller loop is the path for the sharks around the first CP) The typical setup for a path_track in balloon race looks like this: Sometimes a team is given a shortcut or alternate route, this may be because they are doing badly and need to catch up, or to keep the game balanced. For the next lines I will use Capture point 3 as an example. In V1 of balloon race RED team would always end up on the top deck of CP3, giving them a huge advantage over BLU. This was remedied by using a feature in track_paths called branch path. This is a picture of the Track approaching point 3: Although you probably can't see it very clearly, both tracks go onto the bottom deck. There is another track_path near my visgroups window that leads up onto the top deck. When control point 2 is captured a series of logic_relays force the “losing” (the team that didn't get point 2) to take this branch path. The Teleporters on point 3 are also controlled by the same relays (the colour of sprites/model) Here is an image of a path_tracks settings, with a branch path involved (c3u1 stands for Control 3 upper path 1) That's pretty much all there is to the track. So what about the speed of the balloon? How is that controlled? The speed of the balloon is controlled by the “logic wall” of that team. Words won't describe it, so here is a picture of the logic wall for BLU team: Looks confusing, doesn't it? Well, it's not really, there are only 7 types of entity there. Here is the same image grouped and colour coded. I will go through each group in the order they are used; Blue: Everything in the blue group is for deciding the speed, every three seconds (if a person is by the boats wheel) a value of 1 will be added to the math counter (capping at 5), every three seconds someone is not at the wheel a value of 1 will be deducted from the counter. Purple: The logic_case on the far right of the group receives the current value of the math counter and then depending on the value triggers one of the logic_relays, A value of 1 will activate relay 1, 2 will activate 2, etc etc. The logic relays do the following; force the corresponding game_text to show (red group) and set the speed of the train in units per second. Green: Green controls win scenarios. The number of points a team has is calculated by the math_counter on the bottom, 1 point is given for capturing a point, if a team reaches 4 points, the white box tells the other teams balloon to explode and then ends the game, resulting in a win for that team. If a balloon crosses the final track point, it also triggers the white box and results in a win.