Staredit Network > Forums > SC1 UMS Mapmaking Assistance > Topic: Seriously, what am I doing wrong?
Seriously, what am I doing wrong?
May 7 2009, 2:12 am
By: Xpenguin17  

May 7 2009, 2:12 am Xpenguin17 Post #1



'sup mofoz (signed up back in 2006 but account prolly frozen since I didn't log in like, forever?) so I made this map a longass time ago 'cuz I got sick of playing Free for alls with dumbshit comps who give me zero challenge, so I wanted to fight against 6 insane computers with an insane ally, but I could never get it to work no matter how many times I fine-tuned and double-checked the triggers.

I want the players to be random races and random locations just like a normal Free for all, so I set 3 switches to randomize and coded Command centre placement conditions in accordance.

In the beginning, all players would be moved to one location, so I fixed that by adding conditions to not move the building+4 peons if another player already has units there, and then only 2-3 players would be moved.

'Fixed this by appending "Preserve trigger" to the conditions so it has more than one loop of switch randomization to adhere to before halting, and now all players would be moved to their designated locations except 2, sometimes 3 sometimes 1.

It took me a year, but I realized I fucked up when I added 3 locations that span across the map to encapsulate the bases so I would have less tedious work to do when writing triggers, so I removed them and re-wrote the triggers as I should've, and I didn't use easy editors like SCMDraft back then so it took forever, but meh.

Sadly, the problem persisted and 6/8 players were not being moved.

Then yesterday when I opened my map and perused the triggers, I realized there was one typo (P2 instead of P3 on Player 3's triggers) so that explained why at least ONE was not being moved.

Now 7/8 are moved to their respective bases, all except Player 8, and right now I'm out of ideas.

If anyone could peruse my triggers and tell me what the hell I'm missing, that would be cool.

kthx

Greetz to Tuxedo-Templar, and MePHiStO_is_GoD, best map makers on B.net.

Attachments:
[ BGH_INSallyComptest5.scx
Hits: 3 Size: 103.33kb

Post has been edited 1 time(s), last time on May 7 2009, 3:04 am by Xpenguin17.



None.

May 7 2009, 2:52 am killer_sss Post #2



your paragraph block is extremly hard to read. I've got thorugh it a general idea and there was a recent random start location discussion that might benifit you as to fixing your problems i don't have much help to offer other than that.

I would edit your post to have a new paragraph or a line break about every 2-3 lines of text to make it easier to read so you can get the help you need.



None.

May 7 2009, 3:08 am Xpenguin17 Post #3



Paragraph de-scuzzed as requested. Un-randomizing start locations didn't do jack shit, though I've had the same impression for a long time that random start locations did tend to violate SC's 'karma' every now and then, and have not used them except in this isolated instance. Link me to the aforementioned discussion.



None.

May 7 2009, 5:01 am killer_sss Post #4



http://www.staredit.net/topic/7197/

theres the link idk if it will help or not. start locations might be able to help then again maybe not i'm not quite sure as you'll see i botched my one reply in that discussion.



None.

May 7 2009, 6:14 am Xpenguin17 Post #5



My issue is not randomizing teams. Player 2 is automatically set to be Player 1's (human) ally so no issues with that. The issue is randomizing the base locations, which works for everyone except Player 8. I've re-read my triggers and I see no error in logic of why Player 8's building and workers are not being moved.

There are 8 locations right? P1-P8, I got 3 switches randomized, they got 8 possible combos so it's perfect for this setup.

Code
If Switch 1 is set
If Switch 2 is set
If Switch 3 is set
Move all units for Player 1 to "P1"

If Switch 1 is set
If Switch 2 is set
If Switch 3 is cleared
Move all units for Player 1 to "P2"

If Switch 1 is set
If Switch 2 is cleared
If Switch 3 is set
Move all units for Player 1 to "P3"

If Switch 1 is set
If Switch 2 is cleared
If Switch 3 is cleared
Move all units for Player 1 to "P4"

If Switch 1 is cleared
If Switch 2 is set
If Switch 3 is set
Move all units for Player 1 to "P5"

If Switch 1 is cleared
If Switch 2 is set
If Switch 3 is cleared
Move all units for Player 1 to "P6"

If Switch 1 is cleared
If Switch 2 is cleared
If Switch 3 is set
Move all units for Player 1 to "P7"

If Switch 1 is cleared
If Switch 2 is cleared
If Switch 3 is cleared
Move all units for Player 1 to "P8"


And there are additional conditions like, "If All players bring 0 units to location P1" i.e. Only move there if nobody else has already.

And once Player 1 brings at least 1 unit to either of the 8 locations, then switch "P2" is set.

Once "P2" is set, the same mechanism applies to Player 2. Based on the random switch combo, he shall be moved to his designated location, again, if Player 1 has a Nexus and probes at location "P3" then he won't be moved there, only to an available location. Once Player 2 has been moved to one of the available spots, "P3" is set and "P2" is cleared, 'cuz his session is over (durr.)

And so on, finally Player 7 gets his spot, P7 is cleared and P8 is set, but nothing happens for Player 8... this is my problem here.



None.

May 7 2009, 10:03 am killer_sss Post #6



i tested your map a couple of times and it works sometimes and the othertimes it doesn't. It is your randomizing triggers that you constantly randomized that mess things up because what happens is the game goes thru the list and performs in order the triggers that meet it's condition and then moves on to next trigger checking and performs actions when it finds something.

Your randomizing is capped at 180 game seconds which is where the problem arises. If it goes through and randomizes one of the wrong switch combos the units won't move because someone else already occupies the area it is told to go to. At 180 game seconds all randomization stops and if its stuck on a bad switch combo that is how it will stay and the units will never move and will never recieve their orders.

To fix this you can either randomize the switches longer or indefinately or you can speed up the trigger process by making hyper triggers. Hyper triggers are a set of usually 3-5 triggers with 62 wait commands one preserve trigger and a comment, such as "hyper Trigger", so they collapse to smaller form.

Basically what they do is instead of checking every trigger in order and preforming them as it finds ones it can preform, it will instead check every trigger written at once and perform the ones that can be preformed as fast as it can. It can even preform two or more triggers at once if conditions are met.

i'll suggest the hypers because they speed everything up.



None.

May 7 2009, 3:59 pm Xpenguin17 Post #7



Hypertriggers did speed the process up, but Player 8 is still not being moved. Even without them, it should still work. For a switch to be randomized to a combo that matches one of the available 8 locations has a 1/8 probability and triggers are iterated every 2 seconds, so 3 minutes should be more than enough for P8 to be moved. Any more than that and everyone would have Zerglings while he just started to mine.

EDIT: Whaddya mean it sometimes works? Did you see Player 8 move?



None.

May 7 2009, 9:17 pm killer_sss Post #8



Quote from Xpenguin17
Hypertriggers did speed the process up, but Player 8 is still not being moved. Even without them, it should still work. For a switch to be randomized to a combo that matches one of the available 8 locations has a 1/8 probability and triggers are iterated every 2 seconds, so 3 minutes should be more than enough for P8 to be moved. Any more than that and everyone would have Zerglings while he just started to mine.

EDIT: Whaddya mean it sometimes works? Did you see Player 8 move?

yes i saw all 8 players move. i had put on map revealers so i could see it happen without having to move arround. can you update the file with your new hyper triggers and paste on here? I'll look at it again.



None.

May 7 2009, 9:35 pm Xpenguin17 Post #9



No way! How long did it take? And why map revealers? Just type in black sheep wall. Also, I should note that hyper triggers turns some of the comps into retards (they start mining out of their base and make no progress.) I guess I should try and control when the hyper triggers are active with another switch.

Attachments:
[ BGH_INSallyComptest5.scx
Hits: 1 Size: 103.46kb



None.

May 8 2009, 1:54 am killer_sss Post #10



ok well you constructed the hypers wrong i guess i forgot to say they are suppose to be wait 0 seconds. The Ai seems to be working perfectly to me everyone seems to be building shit although i haven't played more than 5 mins but they all seem to build basic buildings. ***Note*** this was after i reconstructed the triggers properly.

as for the random location thing idk exactly whats wrong to be quite honest. sometimes it works and sometimes it doesn't. I've seen player seven get stuck not being able to move as well and then again sometimes they all move.

I've have looked thru your triggers and for some reason your moving the locations where the players are suppose to move to on top of the player. for example Condition: player 3 brings at least 1 building to p1 Action: center location p3 on buildings owned by current player at location p1. And from here is where you execute the ai.

Ah i got it. Here is whats happening when your players move say player 1 lands on p6 he gets move there and p6 stays where it is. Player 2 moves p3. Player 3 moves to P7 and P3 centers on player 3... Basically when it gets to player 8 if someone has already moved to player 8's spot he is stuck because when you move player (x) P(x) gets moved and you'll end up with two locations stacked on each other and no open spots will be available for player 8 as someone occupies both P8 and P(x).

What you need to do is make a location like you did for player 2 and call it insane comp ai and use that location to set all your ai scripts. this will require substituting lots of locations :( but your problem will be fixed :).



None.

May 8 2009, 2:38 am Xpenguin17 Post #11



GAAAAAAAAHHH *smacks forehead* FUCK ME, WHY DID I NOT REALIZE THIS SINCE THE BEGINNING. I'm such a cocksmithical fuckwit! If the P(X) locations are supposed to be stationary then they shouldn't follow a random player for obvious reasons. Jeez... :><:

Thanks a lot for clearing this up, man!

I know what I need to do now, 'gotta build separate locations for the bases and the players.

EDIT: One more question, I wanna make Player 2 the baddest mofo in the game, want him to be the most psychotic, craziest maddest skillz a comp can have. Does adding additional AI scripts like "Send units on strategic suicide missions" to his Insane script make him crazier? So far he's been boring, but I guess he's confused by all the excess resources since he doesn't proactively seek more bases and just builds another hatchery in his main base, so he can't build up units fast enough. Maybe I oughta do some mineral trimming?

Post has been edited 1 time(s), last time on May 8 2009, 2:44 am by Xpenguin17.



None.

May 8 2009, 3:05 am killer_sss Post #12



Quote from Xpenguin17
GAAAAAAAAHHH *smacks forehead* FUCK ME, WHY DID I NOT REALIZE THIS SINCE THE BEGINNING. I'm such a cocksmithical fuckwit! If the P(X) locations are supposed to be stationary then they shouldn't follow a random player for obvious reasons. Jeez... :><:

Thanks a lot for clearing this up, man!

I know what I need to do now, 'gotta build separate locations for the bases and the players.

EDIT: One more question, I wanna make Player 2 the baddest mofo in the game, want him to be the most psychotic, craziest maddest skillz a comp can have. Does adding additional AI scripts like "Send units on strategic suicide missions" to his Insane script make him crazier? So far he's been boring, but I guess he's confused by all the excess resources since he doesn't proactively seek more bases and just builds another hatchery in his main base, so he can't build up units fast enough. Maybe I oughta do some mineral trimming?

honestly i know very little about ai scripts but i think to make players better you need more ai locations for bases ect. I know from some of the 5vs3 insane comps games that you can manipulate them into using spells and creating certain units more than they normally would. The value this area higher and expansion town scripts are some of the more useful ones.

Honestly idk y know has decided to help you beyond me :\ but i can't help you in this area so i hope someone else would be kind enough to help otherwise your kinda on your own for this part.



None.

May 8 2009, 3:21 am Xpenguin17 Post #13



Finished coding, game works perfectly now, all players are allocated successfully in less than 10 seconds without hyper triggers. Thanks again.



None.

May 8 2009, 5:11 am NudeRaider Post #14

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Then why wait when you can have it practically instantly with hyper triggers?

Also, yes random / strategic suicide missions makes him more aggressive as he sends out all his units.
The AIs were never made for much money maps, so they will perform very bad on them. To improve this trigger building/unit creation, drops, attacks and patrol orders.




May 8 2009, 5:11 pm Xpenguin17 Post #15



As I said, it screws up the AI for some of the comps. I think it has to do with the hyper triggers permitting the execution of the AI on the comp's command center before his SCVs are moved (I have to move building first before units otherwise I will get the UNIT UNPLACABLE error.) Then again, I could always create a new condition for the AI script to only run when player brings at least 5 any unit to the base.



None.

May 8 2009, 6:57 pm NudeRaider Post #16

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Hypers have no direct effect on AIs. However spamming an AI can screw things up:
preserve + AI + hypers = bad.
Without preserve hypers have no effect on the comp's behavior.




May 8 2009, 8:06 pm Xpenguin17 Post #17



It's not the hypers per se, but the fact that they kill the 2-second leeway triggers have, and AI must not be executed until 4 peons have also been moved to their base, otherwise they will start mining from a base far away from their own.



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[10:53 pm]
Oh_Man -- https://youtu.be/MHOZptE-_-c are yall seeing this map? it's insane
[2024-5-04. : 1:05 am]
Vrael -- I won't stand for people going around saying things like im not a total madman
[2024-5-04. : 1:05 am]
Vrael -- that's better
[2024-5-04. : 12:39 am]
NudeRaider -- can confirm, Vrael is a total madman
[2024-5-03. : 10:18 pm]
Vrael -- who says I'm not a total madman?
[2024-5-03. : 2:26 pm]
UndeadStar -- Vrael, since the ad messages get removed, you look like a total madman for someone that come late
[2024-5-02. : 1:19 pm]
Vrael -- IM GONNA MANUFACTURE SOME SPORTBALL EQUIPMENT WHERE THE SUN DONT SHINE BOY
[2024-5-02. : 1:35 am]
Ultraviolet -- Vrael
Vrael shouted: NEED SOME SPORTBALL> WE GOT YOUR SPORTBALL EQUIPMENT MANUFACTURING
Gonna put deez sportballs in your mouth
[2024-5-01. : 1:24 pm]
Vrael -- NEED SOME SPORTBALL> WE GOT YOUR SPORTBALL EQUIPMENT MANUFACTURING
[2024-4-30. : 5:08 pm]
Oh_Man -- https://youtu.be/lGxUOgfmUCQ
Please log in to shout.


Members Online: Ultraviolet