i^love^mixery
6 years ago
Did you try yet to delete ALL scripts?

If that fixes it, try to figure out what script is causing this issue.

Gentool does a lot of things in the background. It is possible that some anti cheat feature of gentool is breaking usage of a certain script. This happened before to camera scripts and I contacted Xezon to get it fixed. It might have happened again to a different script.

You might want to add me on Discord if you need help troubleshooting this
kABUSE#2915
i^love^mixery
6 years ago
Hello again.

So, first things first, you are very lucky.

Just now, I created a test-map to test something random using two local machines in LAN mode.

And the bug you described happened to my very empty test map without scripts. I would have never believed it if I didn't see this behaviour myself on an empty map.

The problem is 100% unrelated to the map. It is a gentool bug that for some incredibly f**ked up reason is related to the check-sum of the map.

I contacted the creator of gentool.

Check this out for full explanation and troubleshooting steps I've taken:
https://www.gamereplays.org/community/index.php?showtopic=1031963 

If you need a temporary fix, this will most likely work:

host the map with all players in the same team.

Use a script to overwrite the relationship of skirmish player to player0, player1, player2 and player3 to fix teams via script:

  [???] Player 'player0' considers Player 'player1' to be Friend
  [???] Player 'player0' considers Player 'player2' to be Friend
  [???] Player 'player0' considers Player 'player3' to be Friend
  [???] Player 'player0' considers Player 'player4' to be Enemy
  [???] Player 'player1' considers Player 'player0' to be Friend
  [???] Player 'player1' considers Player 'player2' to be Friend
  [???] Player 'player1' considers Player 'player3' to be Friend
  [???] Player 'player1' considers Player 'player4' to be Enemy
  [???] Player 'player2' considers Player 'player0' to be Friend
  [???] Player 'player2' considers Player 'player1' to be Friend
  [???] Player 'player2' considers Player 'player3' to be Friend
  [???] Player 'player2' considers Player 'player4' to be Enemy
  [???] Player 'player3' considers Player 'player0' to be Friend
  [???] Player 'player3' considers Player 'player1' to be Friend
  [???] Player 'player3' considers Player 'player2' to be Friend
  [???] Player 'player3' considers Player 'player4' to be Enemy
  [???] Player 'player4' considers Player 'player0' to be Enemy
  [???] Player 'player4' considers Player 'player1' to be Enemy
  [???] Player 'player4' considers Player 'player2' to be Enemy
  [???] Player 'player4' considers Player 'player3' to be Enemy

i^love^mixery
6 years ago
And hello yet another time,

Xezon was able to fix this. Check the topic above.
i^love^mixery
6 years ago
And btw, if you followed my advice of narrowing down the problem by deleting scripts, you would have been able to fix your map yourself.

You are using the script "The world is revealed permanently for Player" incorrectly, that's why Gentool was confused and declared players as maphackers and disabled their controls:


*** IF ***
    Timer 'preintro1' has expired.
*** THEN ***
  Play Sound 'SpeakerTowerSelect'.
  The world is revealed permanently for Player 'SkirmishAmericaAirForceGeneral'.
  The world is revealed permanently for Player 'SkirmishAmericaLaserGeneral'.
  The world is revealed permanently for Player 'SkirmishAmericaSuperWeaponGeneral'.
  The world is revealed permanently for Player 'SkirmishChina'.
  The world is revealed permanently for Player 'SkirmishChinaInfantryGeneral'.
  The world is revealed permanently for Player 'SkirmishChinaNukeGeneral'.
  The world is revealed permanently for Player 'SkirmishChinaTankGeneral'.
  The world is revealed permanently for Player 'SkirmishGLA'.
  The world is revealed permanently for Player 'SkirmishGLADemolitionGeneral'.
  The world is revealed permanently for Player 'SkirmishGLAStealthGeneral'.
  The world is revealed permanently for Player 'SkirmishGLAToxinGeneral'.
  Set timer 'GLANuke' to expire in 4.00 seconds.
  Show military briefing String: 'Destroy all 10 waves and structures to win!' for  7000  milliseconds.
  Set timer 'preintro2' to expire in 11.00 seconds.
  Set timer 'preintro 2.1' to expire in 7.00 seconds.
  Set timer 'camint' to expire in 10.00 seconds.
  Have the camera follow Unit 'microintro'.  Snap camera to object is TRUE.

For fu**ed up reasons, this script works even when used incorrectly. Put player0-player7 instead to not get issues like this again.
kdreamland
  • kdreamland
  • 58.25% (Neutral)
  • Private Topic Starter
6 years ago

And btw, if you followed my advice of narrowing down the problem by deleting scripts, you would have been able to fix your map yourself.

You are using the script "The world is revealed permanently for Player" incorrectly, that's why Gentool was confused and declared players as maphackers and disabled their controls:


*** IF ***
    Timer 'preintro1' has expired.
*** THEN ***
  Play Sound 'SpeakerTowerSelect'.
  The world is revealed permanently for Player 'SkirmishAmericaAirForceGeneral'.
  The world is revealed permanently for Player 'SkirmishAmericaLaserGeneral'.
  The world is revealed permanently for Player 'SkirmishAmericaSuperWeaponGeneral'.
  The world is revealed permanently for Player 'SkirmishChina'.
  The world is revealed permanently for Player 'SkirmishChinaInfantryGeneral'.
  The world is revealed permanently for Player 'SkirmishChinaNukeGeneral'.
  The world is revealed permanently for Player 'SkirmishChinaTankGeneral'.
  The world is revealed permanently for Player 'SkirmishGLA'.
  The world is revealed permanently for Player 'SkirmishGLADemolitionGeneral'.
  The world is revealed permanently for Player 'SkirmishGLAStealthGeneral'.
  The world is revealed permanently for Player 'SkirmishGLAToxinGeneral'.
  Set timer 'GLANuke' to expire in 4.00 seconds.
  Show military briefing String: 'Destroy all 10 waves and structures to win!' for  7000  milliseconds.
  Set timer 'preintro2' to expire in 11.00 seconds.
  Set timer 'preintro 2.1' to expire in 7.00 seconds.
  Set timer 'camint' to expire in 10.00 seconds.
  Have the camera follow Unit 'microintro'.  Snap camera to object is TRUE.

For fu**ed up reasons, this script works even when used incorrectly. Put player0-player7 instead to not get issues like this again.

Originally Posted by: i^love^mixery 




I understand that you recommended going through each script, but to check these I need 3 volunteers each time lol. Still would have given it a go, but when I saw it working on vanilla ZH, I kinda gave up to be honest.
Thanks for your work deducing and solving. It's like a detective case. How weird that on vanilla ZH the script functions fine, but on later Gentools it doesn't. So Player 0 refers to the map positions, not the 'lobby number'. I'm sure that's it in fact. It was just a thought that crossed my mind fleetingly.

I will definitely have to add you on discord. Will check the map with this adjustment and get back to you

EDIT - I have to say that I did try removing all those scripts in the FB7 file attached earlier, including world shroud removing and world shroud re-enabling.

Your link certainly explained all the symptoms I had, where I would leave and everyone else would be frozen in place:

Check this out for full explanation and troubleshooting steps I've taken:
https://www.gamereplays.org/community/index.php?showtopic=1031963 

SkyMix_RMT
6 years ago

So Player 0 refers to the map positions, not the 'lobby number'.

Originally Posted by: kdreamland 



No, player0-7 refer to the lobby number, regardless of starting position in the map.
Check out:
My Music  (Techno/House/Experimental)
My Website  (GeneralsCentral)
My Youtube Channel  (Inactive)
World Builder Community Discord 
kdreamland
  • kdreamland
  • 58.25% (Neutral)
  • Private Topic Starter
6 years ago
Just to update: Now, both players on the left can build. But players on the right cannot. This is with no 'shroud' scripts at all. It's like the gentool fixed the issue for 2 players, but not for four.   King of the Hill R3 (FB8) ~usa ai ~ AoD~.rar (41kb) downloaded 21 time(s).
i^love^mixery
6 years ago

Just to update: Now, both players on the left can build. But players on the right cannot. This is with no 'shroud' scripts at all. It's like the gentool fixed the issue for 2 players, but not for four.

Originally Posted by: kdreamland 



The gentool version that fixed this bug is most definitely not live yet. You have to update manually to have the bug not occure to yourself.

So players who have not installed the update can still be affected.

The code that made this bug happen was entirely removed by xezon. It is absolutely impossible to occur on people with updated gentool.

Regardless of the gentool version, you can prevent this bug entirely for all versions and players by correct usage of the script. Only when using this script for player0-player7 gentool will correctly register, that you were allowed to see the command centers starting from the very beginning. If the script is used incorrectly, Gentool reports a false-positive and locks your controlls. Basically, it thinks you are using maphack. It was always quite incredible, that this script was working even when used completely incorrectly.
i^love^mixery
6 years ago
Oh also I wasn't making much sense at all when I said, removing the script entirely would also fix it.

That only goes for maps that have start positions far enough away from each other because the bug is also triggered by maps that have ccs close together, regardless of scripts.

But you can still manually fix this behaviour by correcting the reveal script.