Region not working

F

forsaken240

Guest
I'm trying to make a King of the Hill style game so when the players enter the region, and for every second they're inside the region, the player gains 100 points. If anyone could help I'd be extremely grateful. I'm not sure if the problem is in my leaderboard not counting the points, or the players not recieving any points at all. Here's what I have so far.

Leaderboard
Events
Time - Elapsed game time is 5.00 seconds
Conditions
(None)
Actions
Leaderboard - Create a leaderboard for (All players) titled (King Of The Hill Scores)
Custom script: set bj_wantDestroyGroup=true
Player Group - Pick every player in (All players) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked player) controller) Equal to User
((Picked player) slot status) Equal to Is playing
Then - Actions
Leaderboard - Add (Picked player) to (Last created leaderboard)
with label (Name of (Picked player)) and value 0
Else - Actions
Do nothing
Leaderboard - Show (Last created leaderboard)

Trigger Tally Score

Events
Unit - A unit enters region Hill <gen>
Conditions
((Triggering unit) is an Ancient) Equal to True
Actions
Set ScoreArray[(Player number of (Owner of (picked unit)))] =
(ScoreArray[(Player number of (Owner of (Picked unit)))] + 100)


Leaderboard - Change the value for (Owner of (Picked unit)) in
(Last created leaderboard) to ScoreArray[(Player number of (Owner of (Picked unit)))]

Leaderboard - Sort (Last created leaderboard) by Value in Descending order
 
These are the events for the hill itself

Hill
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units in Hill <gen>) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is an Ancient) Equal to True
Then - Actions
Set ScoreArray[(Player number of (Owner of (Picked unit)))] = (ScoreArray[(Player number of (Owner of (Picked unit)))] + 100)
Else - Actions
Do nothing

Thanks for any help
 
PS. I changed my unit types to Ancient, will that make a difference?
 
Okay, I know your condition is wrong on the trigger tally score, and maybe try (entering unit) insted of (picked unit) at the trigger tally score again, im not sure what you would change your condition to on the trigger tally score but I can tell you surely that isn't correct, everything else looks fine, maybe change your condition to the all the players example, (owner of(triggerering unit) equal to (player1 red) or (owner of(triggerering unit)) equal to (Player2 blue), and so on like that...


BrokenX
 
I see various problems here
Leaderboard
Events
Time - Elapsed game time is 5.00 seconds
Conditions
(None)
Actions
Leaderboard - Create a leaderboard for (All players) titled (King Of The Hill Scores)
Custom script: set bj_wantDestroyGroup=true
Player Group - Pick every player in (All players) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked player) controller) Equal to User
((Picked player) slot status) Equal to Is playing
Then - Actions
Leaderboard - Add (Picked player) to (Last created leaderboard)
with label (Name of (Picked player)) and value 0
Else - Actions
Do nothing
Leaderboard - Show (Last created leaderboard)

There is one, bj_wantDestroyGroup ONLY WORKS FOR UNIT GROUPS! . Also you don't have to destroy (All players) it is not a function, it is a variable.

Since you used bj_wantDestroyGroup , it would surelly destroy the next unit group used on an Pick Every unit in (group) action, even if you don't want it to be destroyed.

Trigger Tally Score

Events
Unit - A unit enters region Hill <gen>
Conditions
((Triggering unit) is an Ancient) Equal to True
Actions
Set ScoreArray[(Player number of (Owner of (picked unit)))] =
(ScoreArray[(Player number of (Owner of (Picked unit)))] + 100)
Leaderboard - Change the value for (Owner of (Picked unit)) in
(Last created leaderboard) to ScoreArray[(Player number of (Owner of (Picked unit)))]
Leaderboard - Sort (Last created leaderboard) by Value in Descending order
This isn't inside a Pick Every unit in Unit group action, so you should use Triggering unit instead of picked unit
 
Aright, thanks for all the advice. I got the scores to work, but they won't go up every second, they only go up the first time the unit enters. Any tips?
 
forsaken240 said:
Aright, thanks for all the advice. I got the scores to work, but they won't go up every second, they only go up the first time the unit enters. Any tips?
I think you should update the leaderboard after increasing the variable value.
 
Look in the trigger editor. I BELIEVE you can set the leaderboard value back to the variable in question. I can't exactly describe it, but basically just make a trigger that, in the actions, sets everyone's score to your variable. Now when something happens, simply change one of the variables, and run the trigger.

Leaderboard - Add (Picked player) to (Last created leaderboard)
with label (Name of (Picked player)) and value 0

^ I suppose something to do with this action ^
 
I still can't get it to work. It will only work when a unit enters it, and then give no more points for standing in the region. I've tried using 'unit in region' and specified the region and done the same as the entrance to add points. If anybody has any idea in the least, I'd be happy to hear it. Thanks
 
Entering unit still won't work. Here's my current trigger.

Events
Time - Every 1.00 seconds of the game
Conditions
(Region 002 <gen> (contains (triggering unit)) equal to true
((triggering unit) is alive) equal to true
((triggering unit) is an ancient) equal to true
Actions
Set ScoreArray[(player number of (owner of (triggering unit)))] = (ScoreArray [(player number of (owner of (triggering unit)))] + 100)

I'm sure there's something wrong somewhere. Any help?
 
Use this:

HillPoints
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((((Matching unit) is An Ancient) Equal to True) and (((Matching unit) is alive) Equal to True))) and do (Set ScoreArray[(Player number of (Owner of (Picked unit)))] = (ScoreArray[(Player number of (Owner of (Picked unit)))] + 100))


Whats wrong in your trigger is "Triggering unit" in a periodic event theire is no "Triggering unit"
 
I believe he wantd heroes, not ancients, so change the ancient condition to hero.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    Luckily I live in an age with electricity so it's way fucking faster, but when I was just a boy trying to find my place I had some hardcore chefs that made use do things like that by hand. It is WAY easier to get right by hand because you control it and can feel it, but it takes soooooo much longer. And on the scale a modern kitchen requires... I serve 400-500 guests on average per day right now, if I had 100 then we could do things way better
  • Varine Varine:
    But we can't do that. In the winter yeah, but I HAVE to get people through here right now so I can afford the staff that we CAN do that. We have about 100 days of summer, and if that summer doesn't make us what it will, then I can't operate the other most of the year with my staff. The owner is talking about closing two days a week to cut down on labor, I told him he should cut down on vacations and it did not go great. I do think I won though, I have to keep my fucking core staff and they have to be gainfully employed
  • Varine Varine:
    Sure some of them might take a second job, but I can't just cut my entire staff to unlivable hours, nor can I can cut them off all winter if I want them to come back.
  • Varine Varine:
    And also, there is no fucking way I'm pulling these hours come september. I only do this right now because I have to, the second I don't have to be the one doing it I won't be
  • Varine Varine:
    I have a 5 person core staff in the kitchen, not including me or Chef Ben
  • Varine Varine:
    Though two of those people are likely not making it this year. One of them has been replaced, the other I am kind of trying to. He's being a giant bitch, today I had to get onto him because in the three hours before I left he had taken like thirty minutes for cigarette breaks
  • Varine Varine:
    And he was also complaining to me the other day that he was out of weed so couldn't smoke any before work that day, and was confused about why I was annoyed he was telling me, his boss, that he is smoking weed everyday before work.
    +1
  • Varine Varine:
    Like yeah I can tell. I don't need to fucking know.
  • Varine Varine:
    So now he's getting scrutinized and will not be top of the list. I know I don't have the smartest people but I do expect them to have some common fucking sense
  • Varine Varine:
    I did do a rare thing for me and hire a girl last month without warning. Everyone was made at me because I started her at like 21, but she worked with me before and I was like don't care. She made 19 at her old job and I wanted her to come work with me, she is the best
    +1
  • Varine Varine:
    I'm going to get her a raise at the end of the summer. She wants to go to school again, but I want her to still work with me so.... she kind of can just tell me what the price is. I can go to 25 if she keeps up. I need to get her onto line more, that's what she wants, but I need her where she is and it's not fair that she doesn't get the little bit of raise that comes with it. She can do it no problem, I've worked with her there.
  • Varine Varine:
    It's just hard to move and train people unnecessarily right now. And also the line fucking sucks, it's not any more fun. This is turn and burn so I have the bankroll, and everyone suffers for it
  • Varine Varine:
    Eventually we'll get it balanced, we'
  • Varine Varine:
    we're starting online orders and stuff, but I also turn that off all the time because I barely keep up trying to be the best at Sysco shit
  • Varine Varine:
    I think it's gonna be a good fall and winter though. We're going to have a good staff, they will get along, they will be able to manage the workload and the complications, they know how to really cook this year, like every person on line knows their steak temps. Some of them use thermometers a lot and they don't always use them right, but they do know how to do it. Failure, especially in this field, is the only way to get better. They'll get it
  • Varine Varine:
    They won't get feel down while they do the thermometer, but we didn't have an instant read probe when I was learning. Like they did but god knows how off it is, you HAD to do it by feel. Even if the chef was fine with me bringing my own, it takes too long. Poke and know
  • The Helper The Helper:
    420 threads in the Artificial Intelligence forum :)
  • The Helper The Helper:
    Happy Monday!
    +1
  • The Helper The Helper:
    and then it was Tuesday!
    +1
  • The Helper The Helper:
    fyi I am going out of town to lake somewhere in bfe texas for the weekend will be gone Friday morning to sunday afternoon for a paranormal thing and some rest peace
  • jonas jonas:
    cool take it easy
  • jonas jonas:
    I recently had an experience with a waiter that really brought down @Varine's point about them being in sales. The first waiter just asked "anything else? deserts?" and when the table shook their head said "ok" and left. Then the other waiter came in and started going off describing the deserts and you could see the heads turning, and they finally got a bunch of deserts
  • jonas jonas:
    makes sense if you consider that the tip is basically a commission on sales

      The Helper Discord

      Staff online

      • Ghan
        Administrator - Servers are fun

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials
      Top