martes, 19 de agosto de 2014

Scrips de Imperium

Un total de 207 scrips que servirán para crear nuestras propias aventuras y disfrutar aún más de este juego.

!!!!IMPORTANTE!!!!si copias (Control + C) y pegas (Control + V) en la secuencia, cambia las comillas del script.
1.Para que aparezca una conversación:
RunConv(“Nombre de la conversación”);

2.Para que salga un objetivo:
GiveNote(“Nombre del objetivo”);

3.Para quitar un objetivo:
RemoveNote(“Nombre del objetivo”);

4.Para que cuando en un grupo (o cuando muera una unidad) quden un número mínimo y máximo ocurra lo que quieras:
WaitQueryCountBetween(Nombre del grupo o la unidad,número mínimo de unidades, número máximo de unidades, -1);
Lo que quieres que pase.

5.Para que un jugador no vea niebla de guerra en un sitio:
_PlaceEx(“WatchEye”, coordenada 1, coordenada 2, número del jugador);

6.Para que una unidad tenga una exclamación y cuando se pinche con el botón derecho en ella se habra una conversación (necesario, sinó da a error):
WaitConvRequest(Nombre de la unidad que hay que seleccionar para que otra tenga la exclamación, nombre de la unidad que va a tener la exclamación, -1);
RunConv(“Nombre de la conversación que se activa”);

7.Para que aparezca un grupo:
SpawnGroup(“Nombre del grupo”);
8.Para que cuando pasen una cantidad de milésimas de segundo ocurra lo que quieras:
Sleep(Cantidad de milésimas que deben pasar);
Lo que quieres que pase.

9.Para que una unidad o un grupo se traslade de mapa y tú también:
Nombre de la unidad o el grupo que se traslada.SetParty(true);
ChangeMap("Nombre del mapa al que te trasladas y se traslada la unidad o el grupo" , "nombre del área a la que se traslada la unidad o el grupo en el mapa siguiente");

10.Para que un héroe tenga asignado a él un grupo:
Nombre del grupo.SetCommand(“attach”, nombre del héroe que dirige al grupo.obj);

11.Para que un grupo o una unidad cambie de jugador:
GetNamedObj(“Nombre de la unidad o el grupo”).obj.SetPlayer(Número del jugador al que cambia la unidad o el grupo);

12.Para que una unidad diga una frase de las que dice cuando se mueve:
Nombre de la unidad.obj.AsUnit.Talk();

13.Para que una unidad se cure cuando no tenga la salud al máximo:
Nombre de la unidad.obj.AsUnit.Bless();

14.Para que una estructura (menos un foro) mande víveres a una estrucura:
GetNamedObj(“Nombre de la estructura que manda los víveres”).SetCommand(“tribute_default”, nombre de la estructura a la que le mandan los víveres.obj);
15.Para cambiar las relaciones diplomáticas entre dos jugadores:
-Para que no se ataquen:
DiplCeaseFire(Número de un jugador, número del otro, true);
DiplCeaseFire(Número del otro, número de un jugador, true);
-Para que se vean:
DiplShareView(Número de un jugador, número del otro, true);
DiplShareView(Número del otro, número de un jugador, true);
-Para que compartan víveres:
DiplShareSupport(Número de un jugador, número del otro, true);
DiplShareSupport(Número del otro, número de un jugador, true);
-Para que compartan control:
DiplShareControl(Número de un jugador, número del otro, true);
DiplShareControl(Número del otro, número de un jugador, true);
En vez de true pon false si quieres hacer lo contrario.

16.Para que una unidad se traslade al centro de un área:
Nombre de la unidad.obj.SetPos(AreaCenter(“Nombre del área”));

17.Para que una unidad o un grupo vayan a un área:
Nombre del grupo o la unidad.SetCommand(“move”, AreaCenter(“Nombre del área”));

18.Para desvincular una unidad o un grupo de un héroe:
GetNamedObj(“Nombre de la unidad o el grupo que se van a desvincular”).obj.AsUnit().DetachFrom(GetNamedObj(“Nombbre del héroe que maneja el grupo o la unidad”).obj.AsUnit.hero);

19.Para que un grupo o una unidad mantenga la posición:
Nombre del grupo o la unidad.SetCommand(“hold_position”);
20.Para que cuando una unidad o un grupo esté dentro de un área ocurra lo que quieras:
while(!WaitUnitsInArea(Nombre del grupo o la unidad, “nombre del área en la que entra/n”, -1));
Lo que quieres que pase.

21.Para que una unidad desaparezca pero que siga en el mapa:
Nombre de la unidad.obj.AsUnit.Disappear();

22.Para que encima de una unidad aparezca una x roja (eso significa que tiene maldición, que dura unos segundos):
Nombre de la unidad.obj.AsUnit.Curse();

23.Para que un héroe use una caractéristica especial:
Nombre del héore.obj.AsHero().UseSkill(Código de la habilidad (más abajo));

-Liderazgo: hsAdministration
-Marcha forzada: hsQuickMarch
-Veteranía: hsLeadership
-Ataque heroico: hsEpicAttack
-Curación: hsHealing
-Alto al fuego: hsCeaseFire
-Vigor: hsVigor
-Sabiduría: hsWisdom
-Recuperación: hsRecovery
-Supervivencia: hsSurvival
-Exploración: hsScout
-Llamada a la defensa: hsDefensiveCry
-Euforia: hsEuphoria
-Superiorodad ofensiva: hsTeamAttack
-Superioridad defensiva: hsTeamDefense
-Acomentida: hsRush
-Osadía: hsFrenzy
-Fidelidad: hsEgoism
-Carisma: hsCharge
-Gesta: hsAssault
-Defensa heroica: hsEpicArmor
-Movimiento evasivo: hsConcealment
-Resistencia heroica: hsEpicEndurance
-Maestría: hsLeaderShip
-Proeza: hsBattleCry
24.Para que una unidad no pueda consumir víveres:
Nombre de la unidad.obj.AsUnit.SetFeeding(false);

25.Para que una unidad pueda consumir víveres:
Nombre de la unidad.obj.AsUnit.SetFeeding(true);

26.Para terminar y ganar la aventura:
EndGame(Número de jugador que gana, false, Translate(“Texto que quieres que salga”));

27.Para que aparezca una unidad:
SpawnNamed(“Nombre de la unidad”);

28.Para que desaparezca una unidad o un grupo:
Nombre de la unidad o grupo.Erase();

29.Para fijar la vista solo en el lugar en el que está ahora una unidad:
View(Nombre de la unidad.obj.pos, true);

30.Para dejar de fijar la vista solo en el lugar en el que está ahora una unidad:
View(Nombre de la unidad.obj.pos, false);

31.Para activar la niebla de guerra:
SetFog(true);
32.Para desactivar la niebla de guerra:
SetFog(false)

33.Para que a un jugador se le explore un área:
ExploreArea(Número del jugador que va a ver el área, “nombre del área que va a ver”);

34.Para que un grupo o una unidad entre en un barco:
Nombre del grupo o la unidad.SetCommand(“boardship”,nombre del barco.obj.AsShip);

35.Para que cuando una estructura sea de un jugador ocurra lo que quieras:
WaitSettlementCapture(“Nombre de la estructura que se captura”, número de jugador que debe tener la estructura capturada, -1);

36.Para que una unidad o un grupo ataque un área:
Nombre del grupo o la unidad.SetCommand(“attack”, AreaCenter(“Nombre del área”));

37.Para que una unidad o un grupo ataque un área con otro código:
AttackArea(Nombre del grupo o la unidad, “nombre del área”);

38.Para que una unidad o un grupo se muevan a un área con otro código:
MoveToArea(Nombre del grupo o la unidad, “nombre del área”);

39.Para que una unidad patrulle desde donde está hasta un área:
Nombre de la unidad.SetCommand(“patrol”, AreaCenter(“Nombre del área”));
40.Para desembarcar las unidades que hay en un barco en un área (esta área debe tener tierra):
Nombre del barco.SetCommand(“unboarall”, GetRandomPointInArea(“Área en la que van a desembarcar las unidades”));

41.Para que un grupo o una unidad entre en una estructura:
Nombre del grupo o la unidad.SetCommand(“enter”, nombre de la estructura.obj);

42.Para que una unidad o un grupo capturen una estructura:
Nombre de la unidad o el grupo.SetCommand(“capture”,nombre de la estructura.obj);

43.Para que una unidad sea dirigida por un héore:
Nombre de la unidad.AttachTo(Nombre del héroe.obj.AsHero);

44.Para que una unidad o un grupo aparezca en una estructura (código de Imperivm III):
SpawnGroupInHolder(“Nombre del grupo o la unidad”, GetNamedObj(“Nombre de la estructura”));

45.Para desactivar todos los objetivos que haya activados:
ClearNotes();

46.Para que cuando una estructura tenga más de una cantidad de oro ocurra lo que quieras:
while(GetSettlement(“Nombre de la estructura”).gold >cantidad de oro);
Lo que quieres que pase.
47.Para que un grupo patrulle desde donde está hacia un área:
int i;
Nombre del grupo.SetCommand("patrol",AreaCenter("Nombre del área"));
for(i=2 ;i<=4;i+=1)
Nombre del grupo.AddCommand(false,"patrol",AreaCenter("Nombre del área"));
Nota: int i; se debe poner al principio de la secuencia.

48.Para añadir a una unidad un objeto mágico:
Nombre de la unidad.obj.AddItem(“Nombre de script del objeto”);

49.Para poner el nivel que quieras a una unidad:
Nombre de la unidad.obj.AsUnit.SetLevel(Nivel (del 1 al 1000));

50.Para que una estructura no se pueda conquistar:
GetSettlement("Nombre de la estructura").AllowCapture(false);

51.Para que una estructura sí se pueda capturar:
GetSettlement("Nombre de la estructura").AllowCapture(true);

52.Para cambiar de jugador una unidad, un grupo o una estructura:
Nombre de la unidad, el grupo o la estructura.SetPlayer(Número de jugador al que se cambia);

53.Para que cuando una unidad esté en un grupo ocurra lo que quieras:
while(Nombre de la unidad.obj.IsInGroup("Nombre del grupo"){
Lo que quieres que pase.
54.Para que un grupo o una unidad construya una catapulta:
Nombre del grupo o la unidad que la construye.GetObjList().Siege(Nombre de la estructura que se asedia.obj, 1, 4);

55.Para que un grupo o una unidad salga de una catapulta:
Nombre del grupo o la unidad.SetCommand("move", nombre de la estructura que se asedia.obj.pos + Point(100, 100));

56.Para que cuando una estructura tenga la salud entre otras dos cantidades de salud ocurra lo que quieras:
WaitHealthBetween(Nombre de la esructura, valor mínimo de salud que debe tener, valor máximo de salud que debe tener, -1);
Lo que quieres que ocurra.

57.Para que una unidad o un grupo no se pueda mover mediante códigos:
Nombre de la unidad o el grupo.SetCommand(“close_permanent”);

58.Para que una unidad o un grupo sí se puedan mover durante códigos:
Nombrre del grupo o la unidad.SetCommand(“elose_permanent”);

59.Para que una unidad o un grupo se quede quieto:
Nombre del grupo o la unidad.SetCommand(“stand_position”);

60.Para que una unidad o un grupo se pare:
Nombre del grupo o la unidad.SetCommand(“idle”);

61.Para poner los centinelas que quieras a las murallas de una fortaleza o aldea:
GetSettlement("Nombre de la fortaleza o aldea").AddSentries(centinelas (acepta -80 por ejemplo));
62.Para que empiece un vídeo (en formato .avi):
PlayMovie(Translate(“moviesNombre del vídeo.avi”));

63.Para que empiece a sonar música (en formato .mp3):
PlayMusic(“Dirección del archivo.mp3”);

64.Para que cuando muera una unidad de un grupo ocurra lo que quieras:
while(Nombre de grupo.count > número de unidades que tiene el grupo);
Lo que quieres que pase.

65.Para que depende de cada dificultad (fácil, media, o dificil) haya ocurra algo:
if(GetDifficulty() == dificultad, fácil es 0, medio es 1 y dificil es 2);
Lo que debe pasar.

66.Para que pase algo cada cierto tiempo (tiempo si es necesario):
while(1){
Lo que quieres que pase.
Sleep(Cantidad de milésimas que quieres que pasen hasta que pase otra vez lo que quieras (si es que tiene que pasar tiempo));
}

67.Para que cuando una unidad muera ocurra lo que quieras (con otro código):
while(!Nombre de la unidad.obj.AsUnit.IsDead());
Lo que quieres que pase.

68.Para quitar una unidad o un grupo de un grupo:
Nombre del grupo o la unidad.RemoveFromGroup(“Nombre del grupo del que se quita la unidad o el grupo”);
69.Para desvincular todas las unidades que tiene un héroe asignadas:
Nombre del héroe.SetCommand(“leavearmy”);

70.Para que cuando un edificio o una uniad o un grupo sea de un jugador ocurra lo que quieras:
while(Nombre de una estructura.obj.player != número del jugador que la captura);
Lo que quieres que ocurra.
Nota: si quieres que sean más edificios, grupos o unidades los que hay que conquistar, añades antes de ); los iconos || y a continuación de ellos lo mismo, y así sucesivamente.

71.Para que a una unidad le pongan una cantidad de puntos de salud:
Nombre de la unidad.obj.AsUnit.Heal(Cantidad de puntos de salud que recibe la unidad);

72.Para que una unidad pierda la libertad:
Nombre de la unidad.obj.AsUnit().SetFreedom(false);

73.Para que una unidad tenga la libertad:
Nombre de la unidad.obj.AsUnit().SetFreedom(true);

74.Para que una unidad o grupo se añadan a un grupo:
Nombre del grupo o la unidad.AddToGroup(“Nombre del grupo al que se añaden”);

75.Para que las unidades controladas por un héroe se pongan en formación de línea:
Nombre del héroe.obj.AsHero().SetFormation("line");
76.Para que las unidades controladas por un héroe se pongan en formación de cuadrado:
Nombre del héroe.obj.AsHero().SetFormation("block");

77.Para que cuando una unidad tenga un objeto mágico ocurra lo que quieras:
while(1){
while(!Nombre de la unidad.obj.FindItem("Nombre de script del objeto").IsValid)
Sleep(200);
Lo que quieres que pase.
break;
}

78Para que una puerta se abra:

Nombre de la puerta.obj.AsGate().OpenNow();


79.Para que empieze una cuenta hacia alante:

int charges;

while (1) {
ShowAnnouncement("Nombre del anuncio", Translate("Texto que quieres que salga" + charges));
Sleep(1000);
if(charges < segundos que va a durar la cuenta alante)
charges += 1;
while(charges > segundos que va a durar la cuenta alante)
HideAnnouncement("Nombre del anuncio");
}

Nota: en vez de charges puedes poner cualquier cosa.

80.Para que cuando haya comenzado una secuencia ocurra lo que quieras:
while(IsRunning("Nombre de la secuencia"));
Lo que quieres que pase.

81.Para que mientras un objetivo esté activado ocurra lo que quieras:
while(IsNoteActive("Nombre del objetivo"));
Lo que quieres que pas si el objetivo está activado.

82.Para que cuando una unidad estñe con una cantidad de comida ocurra lo que quieras:
while(Nombre de la unidad.obj.AsUnit.food == número de víveres que debe tener );
Lo que quieres que pase.

83.Para que se seleccione una unidad:
Nombre de la unidad.obj.Select(1);

84.Para activar un anuncio:
ShowAnnouncement("Nombre del anuncio" ,Translate("Texto que quieres que salga"));

85.Para desactivar un anuncio:
HideAnnouncement("Nombre del anuncio");

86.Para que cuando un grupo esté vacío ocurra lo que quieras:
WaitEmptyQuery(Nombre del grupo, -1 );
Lo que quieres que ocurra.

87.Para añadir una cantidad de puntos de salud a una unidad:
Nombre de la unidad.Heal(Cantidad de puntos que quieres poner);

88.Para que una unidad se convierta en otra:
SpawnNamed(“Nombre de la unidad que va a aparecer”);
Nombre de la unidad que va a aparecer.obj.SetPos(Unidad que de momento tienes.obj.pos);
Unidad que tienes de momento.Erase();
89.Para que una unidad sea invisible:
Nombre de la unidad.obj.AsUnit.SetVisible(false);

90.Para que una unidad sea visible:
Nombre de la unidad.obj.AsUnit.SetVisible(true);

91.Para que una unidad nunca se pueda hacer invisible:
while(1){
Sleep(0);
Nombre de la unidad.obj.AsUnit.SetVisible(true);
}

92.Para que una unidad nunca se pueda hacer visible:
while(1){
Sleep(0);
Nombre de la unidad.obj.AsUnit.SetVisible(false);
}

93.Para quitar a una unidad un objeto mágico:
GetNamedObj("Nombre de la unidad").obj.RemoveItem("Nombre de script del objeto");

94.Para que una unidad utilize un objeto mágico:
Nombre de la unidad.obj.AsUnit().UseItem(“Nombre de script del objeto mágico”);

95.Para que a una unidad le caiga un rayo:
CreateFeedback(“Lighthing3”, nombre de la unidad a la que le cae el rayo.obj.AsUnit());

96.Para que una puerta se abra:
Nombre de la puerta.SetCommand(“opengate”);
97.Para poner el escenario como una película:
BlockUserInput();

98.Para poner el escenario normal:
UnblockUserInput();

99.Para que la cámara siga a una unidad:
StartViewFollow(Nombre de la unidad);

100.Para que la cámara deje de seguir a la unidad que está siguiendo:
StopViewFollow();
101.Para que se desexplore el mapa:
RecreateExploration();

102.Para que salga un texto arriba a la izquierda a la pantalla:
pr(“Texto que quieres que salga”);

103.Para cancelar todas las relaciones diplomáticas:
ClearDiplomacy();

104.Para que aparezca el icono de una unidad o un grupo al lado de la pantalla (en el Imperivm III):
SetShorcutSel(1, lugar (del 1 al 6), nombre del grupo o la unidad.GetObjList());

105.Para que cuando un grupo esté parado ocurra lo que quieras:
WaitIdle(Nombre del grupo o unidad, -1);
Lo que quieres que ocurra.

106.Para que una unidad o un grupo pueda pasar de mapa:
Nombre del grupo o unidad.SetParty(true);

107.Para que un grupo o una unidad no pueda pasar de mapa:
Nombre del grupo o unidad.SetParty(false);

108.Para atribuir habilidades especiales a una unidad:
Nombre de la unidad.obj.AsUnit().SetSpecial(Número de cada habilidad (más abajo), true);
Código de cada habilidad:

1: extenuación
2: ferocidad.
3: golpe triple.
4: inmunidad.
5: vitalidad.
6: absorción.
7: determinación.
8: reanimación.
9: resistencia.
10: ataque experto.
11: tácticas defensivas.
12: penetración.
13: daño reflejado.
14: obstinación.
15: ataque especial.
16: defensa especial.
17: golpe mortal.
18: ataque letal.
19: golpe experto.
20: carga.
21: regeneración.
22: furia.
23: venganza.
24: triunfo.
25: ataque venenoso.
26: ocultación.
27: encubrimiento.
28: aprendizaje.
29: iniciación.
30: libertad.
31: desvanecimiento.
32: curación.
33: vista de lince.
34: daño epansivo.
35: maldición.

109.Para que la IA deje de controlar a un jugador:
AIStop(Número del jugador que controlaba);

110.Para que una unidad o un grupo se trasladen al lado de un objeto:
Nombre de la unidad.obj.SetPos(Nombre del objeto.obj.pos);

111.Para que una unidad o un grupo se traslade a un punto aleatorio de un área:
Nombre de la unidad.obj.SetPos(GetRandomPointInArea(“Área”));

112.Para romper la función de un while(1){:
while(1){
Función que hacía el while(1){.
break;
}
113.Para hacer aparecer una unidad en un área:
Unit u;
u=Place(“Código de cada unidad (más abajo)”, AreaCenter(“Nombre del área en la que aparece la unidad”),número del jugador al que va a apertenecer la unidad);
u.SetStamin(Puntos de energía);
u.SetLevel(Nivel que va a tener la unidad);
u.SetCommand(“spawn”);
Nota: u.SetStamin(Puntos de energía); es un código que solo sirve para el Imperivm III.
Nota: Unit u; se debe poner al prncipio de la secuencia.

Códigos de las unidades:

HÉROES: 
Roma Imperial: MHero1, MHero2, MHero3, MHero4
 
Roma Republicana: RHero1, RHero2, RHero3, RHero4
 
Ibero: IHero1, IHero2, IHero3, IHero4
 
Britania: BHero1, BHero2, BHero3, BHero4
 
Germania: GHero1, GHero2, GHero3, GHero4
 
Egipto: EHero1, EHero2, EHero3, EHero4
 
Galia: GHero1, GHero2, GHero3, GHero4
 
Cartago: CHero1, CHero2, CHero3, Chero4

ROMA IMPERIAL Y REPUBLICANA: 
Héroe republicano: RepublicanRomanHero
 
Héroe imperia: ImperialRomanHero
 
Legionario: RHastatus
 
Arquero romano: RArcher
 
Velite: RVelit
 
Princep: RPrinciple
 
Equite: RScout
 
Pretoriano: RPraetorian
 
Liberatus: RLiberatus
 
Sacerdote: RPriest
 
Gladiador: RGladiator
 
Tribuno: RTribune
 
Carro de guerra: RChariot

BRITANIA: 
Héroe britano: BritonHero
 
Guerrero: BSwordsman
 
Arquero: BBowman
 
Lancero: BBronzeSpearman
 
Luchador caledonio: BShieldBearer
 
Jabalinas: BJavelineer
 
Highlander: BHighlander
 
Jefe normando: BVikingLord (en el Imperivm I y II se pone G en vez de B)
Druida: BDruid

CARTAGO: 
Heroe: CarthaginianHero
 
Infante númida: CLibyanFootman
 
Lancero libio: CJavelinThrower
 
Luchador mauritano: CBerberAssassin
 
Guerrero con maza: CMaceman
 
Tuareg: CNumidianRider
 
Noble: CNoble
 
Elefante: CWarElephant
 
Chaman: CShaman
IBEROS: 
Héroe: IberianHero
 
Miliciano: IMilitiaman
 
Arquero: IArcher
 
Hondero: ISlinger
 
Defensor: IDefender
 
Jinete: ICavalry
 
Elite: IEliteGuard
 
Guerrillero: IMountaineer
 
Sacerdotisa: IEnchantress

GALOS: 
Heroe galo: GaulHero
 
Guerrero: GSwordsman
 
Arquero: GArcher
 
Guerrero con hacha: GAxeman
 
Lancero: GSpearman
 
Jinete: GHorseman
 
Guerrera: GWomanWarrior
 
Guerrero de fand: GTridentWarrior
 
Druida: GDruid

GERMANIA: 
Heroe: GermanHero
 
Guerrero germano: TSwordsman
 
Arquero: TArcher
 
Guerrero con hacha: TAxeman
 
Cazadora: THuntress
 
Arquero teuton: TTeutonArcher
Jinete teuton: TTeutonRide 
Guerrero con maza: TMaceman
 
Valkiria: TValkyrie
 
Hechizera: TEnchantress

EGIPTO:
Héroe: EgyptianHero 
Luchador: ESwordsman
 
Arquero: EArcher
 
Lanzador de hachas: EAxetrower
 
Guerrero de Anubis: EAnubisWarrior
 
Guerrero de Horus: EHorusWarrior
 
Guardián del Nilo: EGuardian
 
Sacerdote: EPriest
 
Carro de Horus: EChariot

OTROS
Mula: Trader
Navío egipcio: ShipEgypt
 
Navío romano: ShipRome

Espíritu vampiro: GGhost
114.Para activar una posada:
SetInnState(Nombre de la posada.obj, 1);

115.Para que se abra el mapa general (barra espaciadora):
ShowZoomMap();

116.Para que se quite el mapa general:
HideZoomMap();

117.Guarda la aventura con el nombre que quieras:
SaveAdventure(Translate("Nombre que quieres que salga al cargar la aventura"));

118.Para poner el oro que quieras a una estructura:
GetSettlement(“Nombre de la estructura”).SetGold(Cantidad de oro);

119.Para poner los víveres que quieras a una estructura:
GetSettlement(“Nombre de la estructura”).SetFood(Cantidad de comida);

120.Para añadir la población que quieras a un edificio:
GetSettlement(“Nombre de la estructura”).AddToPopulation(Cantidad de pobación);

121.Para que cuando una unidad tire un objeto vuelva a él:
while(1){
Sleep(500);
if(Nombre de la unidad.obj.AsUnit.FindItem(“Nombre del objeto”).IsValid())
Nombre de la unidad.obj.AsUnit.AddItem(“Nombre del objeto”);
}

122.Para que se realice el ritual hambruna en un altar de sacrificios cuando pase el tiempo que quieras:
//void
Obj O_Obj;
point p_MyPoint;
Sleep(Cantidad de milésimas que quieres que pasen);
Nombre del altar.obj.ExecCmd(“starvation”, p_MyPoint, O_Obj, false);

Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.

123.Para que se realice el ritual viento de la sabiduría en un altar de sacrificios cuando pase el tiempo que quieras:
//void
Obj O_Obj;
point p_MyPoint;
Sleep(Cantidad de milésimas que quieres que pasen);
Nombre del altar.obj.ExecCmd(“wisdom”, p_MyPoint, O_Obj, false);
Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.

124.Para que se realice el ritual de la vitalidad en un altar de sacrificios cuando pase el tiempo que quieras:
//void
Obj O_Obj;
point p_MyPoint;
Sleep(Cantidad de milésimas que quieres que pasen);
Nombre del altar.obj.ExecCmd(“soothing”, p_MyPoint, O_Obj, false);
Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera
125.Para que se realice el ritual sede de sangre en un altar de sacrificios cuando pase el tiempo que quieras:
//void
Obj O_Obj;
point p_MyPoint;
Sleep(Cantidad de milésimas que quieres que pasen);
Nombre del altar.obj.ExecCmd(“bloodlust”, p_MyPoint, O_Obj, false);
Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.
126.Para que se realice el ritual castigo espiritual en un altar de sacrificios cuando pase le tiempo que quieras:
//void
Obj O_Obj;
point p_MyPoint;
Sleep(Cantidad de milésimas que quieres que pasen);
Nombre del altar.obj.ExecCmd(“sacrifice”, p_MyPoint, O_Obj, false);
Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.

127.Para añadir a un lugar de objetos mágicos un objeto mágico:
Nombre del lugar.obj.AsItemHolder.AddItem(“Nombre de script del objeto”);

128.Para que cuando ua unidad pise un área ocurra lo que quieras:
WaitObjInQuery(Nombre de la unidad, AreaObjs(“Área”, “Unit”), -1);
Lo que quieres que pase.

129.Para que una unidad recupere los puntos de energía que quieras:
Nombre de la unidad.HealStamina(Puntos de energía que quieres que se le recuperen);

130.Para desembarcar un grupo o una unidad que hay en un barco:
Nombre del barco.obj.AsShip().UnboardUnits(Nombre del grupo o la unidad.GetObjList);

131.Para añadir a un grupo un objeto mágico:
int i;

for(i=0;i<Nombre del grupo.count;i+=1)
Nombre del grupo.GetObjList()[i].AsUnit.AddItem(“Nombre de script del objeto”);

132.Para que el juego se pare (sin que ponga “PAUSA TÁCTICA”):
TogglePause();

133.Para quitar puntos de salud a una unidad o a un edificio:
Nombre del edificio o la estructura.obj.Damage(10000);

134.Para que cuando un edificio sea de un jugador, o sea de otro ocurra lo que quieras:
while(Nombre del edificio.obj.player != uno de los jugadores que lo debe tener || Nombre del mismo edificio.obj.player !=otro jugador que lo debe tener);
Nota: si quieres que sean más jugadores los que lo deben conquistar, pon orso dos || antes del ); y escribe lo mismo: nombre del edicio.obj.play...

135.Para poner a una unidad en estado de mensjaro:
Nombre de la unidad.SetMessengerStatus(true);

136.Para quitar a una unidad el estado de mensajero:
Nombre de la unidad.SetMessengerStatus(false);

137.Para que no haya centinelas en una fortaleza:
GetSettlement("Nombre de la fortaleza").AddSentries(-80);

138.Para que se desseleccione lo que tiene seleccionado un jugador:
ClearSelection(Número del juagador);

139.Para que cuando se seleccione (una vez) una unidad ocurra lo que quieras:
if(_GetSelection().Contains(Nombre de la unidad)){
Lo que quieres que ocurra.
ClearSelection(Número del jugador del que es la unidad);
}

140.Para que siempre que entre/n una o varias unidades de un jugador en un área (sean cuales sean) ocurra algo:
int i;
ObjList ol;
while(true){

WaitQueryCountBetween(ClassPlayerAreaObjs(cUnit, número del jugador, "nombre del área"), 1, -1, -1);
ol = ClassPlayerAreaObjs(cUnit, número del jugador, "nombre del área ").GetObjList();
for(i=0;i<ol.count;i+=1)
ol[i].Acción que hace la/s unidad/es que entra/n.

141.Para que un héroe use la habilidad de sanación heroica cada vez que la necesite (código de Imperivm III):
Nombre del héroe.obj.AsHero().SetAutocast(true);

142.Para que un héroe deje de usar la sanación heroica (código de Imperivm III):
Nombre del héroe.obj.AsHero().SetAutocast(false);

143.Para que cuando varias unidades dejen de entrenar ocurra lo que quieras:
while (Nombre de una unidad.obj.command != "train" ||Nombre de otra unidad.obj.command != "train");
Lo que quieres que ocurra.
Nota: si quieres que sean más unidades repie lo que está a partir del segundo ||.

144.Para que desaparezca un grupo:
ObjList ol;
int i;

ol = Nombre del grupo.GetObjList();
for(i=0;i<ol.count;i+ =1){
ol[i].Erase();
Nota: ObjList ol; y int i; se deben poner al principio de la secuencia.

145.Para que aparezca un grupo de unidades en un área:
int i;
ObjList Units;
Units = SpawnGroup(“Nombre del grupo”);
for(i=0 ; i<Units.count ; i+= 1);
Units[i].SetPos(GetRandomPointInArea(“Nombre del área”));

146.Para ir al menú principal:
quit();

147.Para guardar un texto en la carpeta de Imperivm:
AppendFile("Nombre que va a tener el archvivo.extensión del archivo", "Texto que quieres que vaya a salir")

148.Para poner la lealtad que quieras a un edificio:
GetSettlement(“Nombre de la estructura”).SetLoyalty(Puntos de lealtad);

149.Para tener todas las hábilidades de un héore disponible:
Nombre del hérore.obj.AsHero().EnableAllSkills();

150.Para poner a una unidad en estado de mula:
Nombre de la unidad.obj.AsUnit.AsWagon();

151.Para cambiar la velocidad de ataque de una unidad:
Nombre de la unidad.AsUnit().SetSpeedFactor(Nombre de la unidad.speed_factor signo de velociad si más rápido se pone + si más lento se pone – velocidad, por ejemplo a 30 más o menos);

152.Para cambiar el nombre de script a una unidad:
Nombre de la unidad.obj.SetName(Nombre que quieres que tenga);

153.Para desseleccionar una unidad:
Nombre de la unidad.obj.Deselect(Número del jugador del que es la unidad);

154.Para quitar todos los objetos que tiene una unidad:
Nombre de la unidad.RemoveAllIems();

155.Para distribuir experiencia a un grupo:
DistributeExperience(Nombre del grupo, cantidad de experiencia que distribuyes);

156.Para que entrenen las unidades de un héroe:
Nombre del héroe.obj.AsUnit.StartTraining();

157.Para que dejen de entrenar las unidades de un héore:
Nombre del héroe.obj.AsUnit.Stoptraining();

158.Para que se repare un edificio:
Nombre del edifcio.obj.AsBuilding.RRepair();

159.Para que ubna unidad no se pueda seleccionar:
Nombre de la unidad.obj.AsUnit.SetNoselectFalg(false);

160.Para que la IA pueda controlar a una unidad:
Nombre de la unidad.obj.AsUnit.SetNoAIFlag(false);

161.Para que la IA no pueda controlar una unidad:
Nombre de la unidad.obj.AsUnit.SetNoAIFlag(true);

162.Para que una unidad si se pueda seleccionar:
Nombre de la unidad.obj.AsUnit.SetNoselectFalg(true);

163.Para que cuando un grupo tenga menos, más, igual, más o igual o menos o igual de X unidades ocurra lo que quieras:
while(Nombre del grupo.count signo (más abajo) número X de unidades);
Lo que quieres que ocurra.
Signos:
> : menos de X unidades.
< : más de X unidades.
== : igual a X unidades.
>= : menos o igual a X unidades.
<= : más o igual a X unidades.

164.Para que cuando un grupo o una unidad tenga menos, más, igual, más o igual o menos o igual de X nivel ocurra lo que quieras:
while(Nombre del grupo.level signo (más abajo) número de nivel);
Lo que quieres que ocurra.
Signos:
> : menos de X nivel.
< : más de X nivel.
== : igual a X nivel.
>= : menos o igual a X nivel.
<= : más o igual a X nivel.

165.Para que cuando un grupo o una unidad tenga menos, más, igual, más o igual o menos o igual de X salud ocurra lo que quieras:
while(Nombre del grupo.health signo (más abajo) número de salud);
Lo que quieres que ocurra.
Signos:
> : menos de X salud.
< : más de X salud.
== : igual a X saludl.
>= : menos o igual a X salud.
<= : más o igual a X salud.
166.Para poner el envenenamiento (de los carros de Osiris egipcios) a una unidad:
Nombre de la unidad.obj.AsUnit.Disease();

167.Mostrar un minimapa:
MiniMap();

168.Poner la velocidad que quieras al juego:
SetSpeed(Cantidad de puntos de velocidad);
169.Para que un grupo o una unidad patrulle en el área y cuando entre un enemigo este enemigo sea atacado:
RunAIHelper("GuardCentralArea", "guard area", "Nombre del grupo o la unidad", "nombre del área");

170.Para dejar siempre fijada la vista estés donde estés:
LockView();

171.Para dejar de fijar siempre fijada la vista estés donde estés:
UnlockView();

172.Para que suba o baje la cantidad de oro que quieras a una estructura:
Nombre de laestructura.obj.AsBuilding().settlement.SetGold(Nombre de laestructura.obj.AsBuilding().settlement.gold signo, si quieres añadir oro, pon + si quieres quitar oro pon – cantidad de oro que restas o sumas);

173.Para que suba o baje la cantidad de comida que quieras a una estructura:
Nombre de laestructura.obj.AsBuilding().settlement.SetFood(Nombre de laestructura.obj.AsBuilding().settlement.food signo, si quieres añadir comida, pon + si quieres quitar comida pon –cantidad de comida que restas o sumas);

174.Para que suba o baje la cantidad de lealtad que quieras a una estructura:
Nombre de laestructura.obj.AsBuilding().settlement.SetLoyalty(Nombre de la estructura.obj.AsBuilding().settlement.loyalty signo, si quieres añadir lealtad, pon + si quieres quitar lealtad pon –cantidad de lealtad que restas o sumas);

175.Para que una unidad tenga el mismo nivel que el que tiene otra:
Nombre de la unidad que va a tener otro nivel.obj.AsUnit().SetLevel(Nombre de la unidad que tiene el nivel.obj.AsUnit().level);

176.Para terminar y perder la aventura:
EndGame(1, true, Translate(“Texto que quieres que salga”));

176.Para que aparezca un grupo y haga algo (cada cierto tiempo).
while(1){ 
Sleep(Tiempo que quieres que pase hasta que vuelva a hacer lo mismo el grupo);
 
SpawnGroup("Nombre del grupo otra vez").AddToGroup("Grupo para la unidad cualquiera");
 
Acción que hace el grupo cualquiera.
Nombre del grupo que va a la estructura.RemoveFromGroup("Nombre del grupo cualquiera");
 
}
Nota: hay que crear un grupo con una unidad cualquiera e invisible.

177.Para que un grupo o una unidad mire a otra unidad:
Nombre del grupo o unidad.Face(Nombre de la unidad.obj.pos);

178.Para poner el nivel que quieras a los centinelas del jugador que quieras (código del Imperivm III):
ObjList ol; 
int i;
 

ol = ClassPlayerObjs(cSentry,
 número del jugador).GetObjList();
for(i=0;i<ol.count;i+=1){
 
ol[i].AsUnit.SetLevel(Nivel que van a tener los ceninelas);
 
}

179.Para que pase lo mismo que en el código 176 solo que con otro código:
ObjList ol; 

while(1){
 
Sleep(Tiempo que quieres que pase hasta que haga lo mismo el grupo);
 
ol = SpawnGroup("Nombre del grupo que va a entrar en la estructura");
 
ol.SetCommand("enter",
 Nombre de la estructura.obj); 
}

180.Para que baje o suba el nivel del portador de un objeto
owner.obj.AsUnit.SetLevel(owner.inherentlevelcódigo, subir es + y bajar es – niveles que subes o bajas);

ATENCIÓN: este código es para un objeto y no para una unidad sino para el portador de un objeto.

181.Para que empiece una cuenta atrás:
int unload;
unload = 100;
while (1) {
ShowAnnouncement("Nombre del anuncio", Translate("Texto que quieres que salga:" + unload));
Sleep(1000);
if(unload <
 segundos que va a durar la cuenta trás)
unload -= 1;
while(unload == 1)
HideAnnouncement("Nombre del anuncio");
}
Nota: en los sitios donde pone unload se puede poner cualquier otra cosa.

182.Para que una aldea cree campesinos:
Nombre de la aldea.obj.AsBuilding().SetCommand(“trainpeasant”);
GetNamedObj(“Nombre de la aldea que va a mandar los víveres o los campesinos”);

183.Para añadir un comando a la línea de comandos:
Nombre del grupo o la unidad.AddCommand(true, “comando" ,AreaCenter(“Área”));
Nota: true pone el comando al final de la cola y false al principio.

184.Para cambiar los valores de defensa, ataque, energía, nivel y salud de una unidad:
Nombre de la unidad.obj.AsUnit.AddBonus(Valores de ataque,valores de defensa, valores de nivel , valores de energía,valores de salud);
Nota: los valores finales se mezclan, si pones 200, 300 saldrá luego 210 de energía y 200 puntos más de salud.

185.Para que cuando una estructura tenga menos de una cantidad de víveres ocurra lo que quieras:
while(GetSettlement("Nombre de la estructura").food >Cantidad de oro);
Lo que quieres que ocurra.

186.Para que un grupo o una unidad se mueva, patrulle o ataque a un área con la formación que tiene:
Nombre del grupo.SetCommandOffset(“Comando: atacar: attack. Mover: move. patrullar: patrol”, AreaCenter(“Área”));

187.Para añadir a un grupo, un grupo recién expandido:
Nombre del grupo o la unidad que aparece.AddUnits(SpawnGroup(“Nombre del grupo”));

189.Para abrir/cerrar el mapa general:
ToggleZoomMap();

190.Para que una estrucura cree una mula:
GetSettlement(Nombre de la estrucura).SenMule();

191.Para que un puerto cree un bote:
GetSettlement(Nombre del puerto).SedBoat();

192.Para que cuando un grupo entre en un área se ejecute una conversación y en una frase diga algo la primera unidad que ha entrado:

Conversation C_Conv;

while(!WaitUnitsInArea(Nombre del grupo, “nombre del área”, -1));
C_Conv.Init("Nombre de la conversación");
C_Conv.SetActor("Actor_sample”,
 nombre del grupo[0].AsUnit());C_Conv.Run();

Nota 1: en vez de C_Conv se puede poner cualquier cosa y en vez de Actor_sample se puede poner otro nombre (que no sea ya de una unidad).
Nota 2: Actor_sample es el nombre de actor de frase que se pone a la primera unidad del grupo que entra en el área, entonces, en la frase que dice esta unidad, debemos poner Actor_sample (o el nombre que has puesto).

193.Para poner la velocidad que quieras al juego:
SetSpeed(Cantidad de puntos de velocidad);

194.Para que si una unidad o un grupo está en un grupo ocurra lo que quieras:
if(Nombre de la unidad o del grupo.IsInGroup(“Nombre del grupo en el que deben estar para que pase lo que quieras”){
Lo que quieres que pase.
196.Para poner un título y guiarte de que empieze algo:
//Nombre del título.

197.Para que cuando un query esté en otro ocurra lo que quieras:
WaitCommonObjects(Nombre del query que tiene que estar en otro, nombre del query en el que se tiene que estar, -1);
Lo que quieres que pase.

198.Para dejar de ver un sitio (código 5 para ver un sitio):
Obj o;
o = _PlaceEx(“WatchEye”, coordenada 1, coordenada 2, número del jugador que deja de ver);
o.Erase();
Nota_ Obj o; se debe poner al principio de al secuencia

199.Para borrar de la consola lo que se escriba:
cls();

200.Para cerrar todas las variables del entorno:
clr();

201.Para que un jugador no vea niebla de guerra en un sitio (este sitio es pequeño):
_PlaceEx("WatchEyeSmall", coordenada 1, coordenada 2,jugador que no ve la niebla);

202.Para eliminar de un grupo las unidaes muertas de ese grupo:
Nombre del grupo.ClearDead();
203.Para detener la secuencia:
KillScript();

204.Para que un jugador no haga nada en un área (ni que la pise):
AreaAINoRecruit("Nombre del área", número del jugador, true);
205.Para que un jugador pise y pueda hacer algo en un área:
AreaAINoRecruit("Nombre del área", número del jugador, false);
206.Para que si una unidad se está moviendo a alguna parte ocurra lo que quieras:
Nombre de la unidad.obj.AsUnit().HasPath();
207.Para que no aparezca una opción en una estructura:
Nombre de la estructura.obj.CmdDisable(“Opción (las del código 78)”);