Really complicated entities.

Discussion in 'Mapping Questions & Discussion' started by lerlerson, Mar 4, 2008.

  1. lerlerson

    lerlerson L2: Junior Member

    Messages:
    75
    Positive Ratings:
    7
    Well, I'm going to try working on- and finishing!- a map for once, simply because I'm attempting to develop a new maptype. However, this involves complicated use of control point entites, and normal entities, and I THINK I can get them to work, but before I try, I want to see if you all think it's possible:

    Okay, there are six (maybe five, probably five) control points. All of them start off in Red's control, but four are instantly capped by Blu, and Red can't cap them back. That's simple enough, I think. Now, the fifth works like a normal control point, albeit a faster capture.

    Now, this is where it starts to get confusing. I need Red to have a normal spawn with the max respawn time, but I need Blu to have a spawn that can only can be used once... IE they can only spawn at it once, and then they lose control of it (it becomes neutral, but locked eternally.) Now this is fine, but what happens if people join Blu mid-game? I was thinking, perhaps, that after the playerspawn entity is used once, it is destroyed, but I don't know how to do that.

    Ugh, here is where it gets even more confusing. Like I said at first, I need them to lose control of the spawn after a while- well, actually, I need them to lose control of it after they cap the next point. I need it to become neutral because this IS a new maptype, and the appearance of the control points on the bottom tell the status of the control points which serve a somewhat different purpose in this maptype.

    Now, if I can get this to work, it's all pretty easy at this point. Blu spawns 16 times, and they can't spawn at the first point anymore. If they capture the next point, they lose control of the first, and can only spawn 16 times at that next point. So on, and so forth.

    Man, I'm confusing myself here. Any idea if this is possible?
     
  2. Armadillo of Doom

    aa Armadillo of Doom Group Founder, Lover of Pie

    Messages:
    949
    Positive Ratings:
    615
    Little confusing, but not at all difficult. You have a couple options, depending how often you want to time it. I think the easiest thing would be to use a logic_timer. Give it 10min. or whatever, and then send an output that deletes each of the info_players in your neutral spawn. If you have to be really specific, you can use math_counter to keep track of individual stuff, in this case spawns. When the max # is hit, same deal, output and delete or lock the spawnroom. Hope this helps :)
     
  3. MangyCarface

    aa MangyCarface Mapper

    Messages:
    1,616
    Positive Ratings:
    1,275
  4. dirtyminuth

    dirtyminuth L5: Dapper Member

    Messages:
    221
    Positive Ratings:
    14
    Regarding limiting a spawnroom to X number of uses, here's one way to do it:

    Create a spawnroom with X info_player_teamspawns. Surround each info_player_teamspawn with a trigger_teleport. For each trigger_teleport, include an I/O of "OnStartTouch > [teamspawn] > Disable". Moreover, each trigger_teleport will teleport a player to a second spawn room. Make sure that the first spawn room is completely sealed from the rest of the game world.

    Thus, when a player spawns, the info_player_teamspawn is disabled and the player is teleported to the second spawn room (i.e. the game area).

    There is likely a better way to do this that doesn't require so many entities.

    Lastly, I advise against a spawn room that only has X uses. Instead, do what Immortal-D said and use a timer. This prevents horrible players from quickly exhausting a spawn room.
     
  5. lerlerson

    lerlerson L2: Junior Member

    Messages:
    75
    Positive Ratings:
    7
    Oh wow, that was really idiotic, I just realized I neglected to mention something quite important: After a person spawns once, I don't want them to be able to spawn again unless it's at a different spawn point.

    Eh, it just occured to me: The whole point of these spawn rooms is that they're checkpoints. The Blu team is supposed to survive long enough to get to the final control point, and 'Escape' from the map. (Bloody Valve, stole my es_). The problem is, though, is that my take on the gametype is that Blu is only able to spawn once, and can only re-spawn when they hit a checkpoint, and even then they can only spawn once. But then there's other things to take into account, like, for example, couldn't somebody just spam changing their class to use up all the spawn points?
     
    Last edited: Mar 4, 2008
  6. dirtyminuth

    dirtyminuth L5: Dapper Member

    Messages:
    221
    Positive Ratings:
    14
    Now that makes your problem more difficult, yet much easier to understand. I am not aware of any entities that allow you to discriminate between players, which is why your problem is so hard. Here's a hack solution:

    Place all BLU's info_player_teamspawns in a room we'll call the Staging Room. This room is enveloped in a trigger_teleport as well as a nobuild entity.

    At the start of the round (and during setup time), the trigger_teleport is active and will teleport players to BLU's Stage One Room. As soon as setup time ends and the round begins, deactivate the teleporter.

    As soon as the "checkpoint" is reached, change the teleporter's destination to BLU's Stage Two Room, and activate the teleporter for a short period of time. This will "catch" any lingering players from stage one.

    This effectively prevents multiple respawns by a single player, as when they die, they will be sent to the staging room. ctf_steamroll has a similar mechanic. The only issue I see is how you determine when all of the BLU team is in the Staging Room (i.e. then BLU loses). But hey, one problem at a time :)
     
  7. Jive Turkey

    Jive Turkey L3: Member

    Messages:
    120
    Positive Ratings:
    32
    Why not just have people respawn in a cage at the next checkpoint? That way, Blu has to unlock that next checkpoint to free all their comrades and continue to the next point. Then Red's strategy can include preparing for the jailbreak if they feel they're about to lose a check point. And Blu's team can sit in the cage with certain a vantage point and maybe "radio" back to their mates various enemy positions/buildings etc. You'd have to make sure Red can't just camp the jail doors unfairly, and that Blu can't completely spoil Red's defense with communication, but it could be more interesting than players just sitting in limbo waiting for respawn.

    Actually I think it would be cool if upon death, Red were also thrown in a similar cage, but back one checkpoint. Kind of a moving sudden death situation. What happens if all of Blu dies in your current setup? Is that end of round?
     
  8. lerlerson

    lerlerson L2: Junior Member

    Messages:
    75
    Positive Ratings:
    7
    Well, yeah, the map has somewhat of a storyline, so I'll explain it:

    One of Blu's many assault forces has returned to one of their main bases to rest and restock. There aren't all that many Blus at the base, about 60 in all. Little does the assault force know, Red is sitting just outside their base, waiting to strike back, which an endless supply of reinforcements available to them.

    And then, they strike. The Blu squadron is the only one who realizes that the Red are there, and find their communications cut. They decide that they need to escape rather than fight- and they shall use the boat moored on the beach.

    Now, at the 'checkpoints', there are Blu units that didn't realize Red were there, and when Blu reaches the checkpoints, those units bolster their numbers.

    So, yeah, when all of the Blu team dies, Red wins. To make this fair, Red is stuck coming only from one way depending on which checkpoint Blu has reached. Red's path is linear, they have a simple pathway to the left of their spawn with five doors, each opening to halfway to Blu's next checkpoints. They only have access to the doors that open up to the area with the checkpoint Blu is trying to reach, if that makes sense. Blu has geography on their side too, with lots of cover, but the pathways Red would come from are really open and obvious.

    Obviously, this map will require balancing but I think I can pull it off.
     
  9. MacNetron

    MacNetron L5: Dapper Member

    Messages:
    203
    Positive Ratings:
    47
    I'll strongly advice to start a 'concept map' (with just a couple of rooms, spawnpoint and cp's), and then make some screenies with specific problems you encounter.
    Why? Because I'm getting confused with all the concepts you're trying to get into the map. Break it down in manageable parts.