When testing my WoG maps I always use a "cheat" mode so I can change instantly every detail without restarting map. It changes everything, from bugged passability to neutrals stats/numbers, heroes stats, skills and spells in one click. But there is only one thing which I can't figure how to give, it is customized experience ranks to neutrals
Here is how it looks (part of it, it is huge)
Code:
!?CM5;
!!CM:I?v1; [Area clicked: v1]
!!CM:F?v2; [Control key]
!!FU&v1<>37/v2<>4:E; exit if not Ctrl+left click on adventure map
!!CM:P?y1/?y2/?y3;
!!OBy1/y2/y3:T?y4 U?y5; Check type/subtype on square clicked
IF:M^Type is %Y4 and subtype is %Y5^;
!!TRy1/y2/y3:E?y6; Check square (yellow or red)
!!TRy1/y2/y3:P?y12; Check if passable
!!FU2222&y6=1/y4<>34/y4<>54/y12=0:Py1/y2/y3; **if not yellow square/creature/hero change passability
!!FU2223&y4=34/v2=4:Py1/y2/y3; Hero
!!FU2224&y4=54/v2=4:Py1/y2/y3; Creature
!?FU2222; **change passability x1, x2, x3 = coordinates
!!VRz988:S^Walk anywhere^;
!!VRz989:S^Click on any square where there is no Hero, Creature or Artefact to make it passable^;
!!UN:A90/9/988; **change boots of levitation description
!!UN:A90/10/989;
!!IF&v1=37/v2=4:Q1/8/90/2^Do you want to make this square passable?^;
!!UN:A90/9/0; ** restore boots of levitation description
!!UN:A90/10/0;
!!FU&-1:E;
!!IF:M^DONE!^;
!!TRx1/x2/x3:P1; square is passable now
!?FU2223; x1-x3 coordinates
!!IF:V1/1;
!!HEx1/x2/x3:N?y-99; get number
!!HEy-99:C0/0/?y1/?y2 C0/1/?y3/?y4 C0/2/?y5/?y6 C0/3/?y7/?y8;
!!HEy-99:C0/4/?y9/?y10 C0/5/?y11/?y12 C0/6/?y13/?y14;
!!IF:M^Which slot you wish to change?^;
!!VRz2:S^Enter the slot number^;
!!IF:D25/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0; [4]
!!IF:F25/0/0/0/0/1;
!!IF:E1/25;
!!VRz1:H5; **check if text entered, flag 5=1 if yes
!!VRv2002:S0;
!!VRv2002&5:Vz1; convert string to value
!!FU&v2002<0:E; [5]
!!IF:M^How many creatures you want in %V2002 slot?^;
!!VRz2:S^Enter the number^;
!!IF:D25/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0; [4]
!!IF:F25/0/0/0/0/1;
!!IF:E1/25;
!!VRz1:H5; **check if text entered, flag 5=1 if yes
!!VRv2003:S0;
!!VRv2003&5:Vz1; convert string to value
!!FU&v2003<0:E; [5]
!!IF:M^What type of creatures you want in slot %V2002?^;
!!VRz2:S^Enter the number^;
!!IF:D25/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0; [4]
!!IF:F25/0/0/0/0/1;
!!IF:E1/25;
!!VRz1:H5; **check if text entered, flag 5=1 if yes
!!VRv2004:S0;
!!VRv2004&5:Vz1; convert string to value
!!FU&v2004<0:E; [5]
!!HEy-99:C0/v2002/v2004/v2003;
!!IF:M^DONE^;
!?FU2224; [Change creature stats]
!!OBx1/x2/x3:T?y4 U?y5;
!!UN:N3/z3/y5/1; **get name at plural
!!MA:Ay5/?y6; attack
!!MA:Dy5/?y7; defense
!!MA:My5/?y8; low damage
!!MA:Ey5/?y9; high damage
!!MA:Py5/?y10; HP
!!MA:Sy5/?y11; Speed
!!MA:Ny5/?y12; shots
!!MOx1/x2/x3:R?y14/1; Aggression
!!MOx1/x2/x3:G?y13; Number
!!VRz970:S^Choose which characteristics to change for %Z3^;
!!VRz971:S^Change Attack->current is %Y6^; v1=1
!!VRz972:S^Change Defense->current is %Y7^; v1=2
!!VRz973:S^Change Low damage->current is %Y8^; v1=4
!!VRz974:S^Change High damage->current is %Y9^; v1=8
!!VRz975:S^Change Hit Points->current is %Y10^; v1=16
!!VRz976:S^Change Speed->current is %Y11^; v1=32
!!VRz977:S^Change number of shots^; v1=64
!!VRz978:S^Change monster stack's aggression->current is %Y14^; v1=128
!!VRz979:S^Set the number of monsters->currently they are %Y13^; v1=256
!!VRz980:S^Exit^; v1=512
!!IF:G1/1/1/z970/z971/z972/z973/z974/z975/z976/z977/z978/z979/z980;
!!FU&v1=512:E;