Jump to content
Sign in to follow this  
Lynxy

Important spawning question

Recommended Posts

I wanna make a little capture the island mission in OFP and since there is a 63 group limit I cannot do so!. I have to spawn enemy and friendly units and control them. How do you make a trigger to spawn CUSTOM groups or individual units and then control them (set wypoints etc...)

I am desperate!

BTW: Do you guys know any good island, Everon, Malden, Kolgujev is yesterday, I want something with the superior quality of nogova, yet original, relatively big.

Nogova is good but too small and too familiar:)

I need something with that superior quality.

I have:

Gaia Island (ok, not that great)

Nogojev/Winter Nogojev (good, but kinda familiar)

Zafana (oh my god.......soo good, yet sooooo tiny)

NEEDS TO USE RESISTANCE TEXTURES!!!!! I AM SICK OF BURNED HOUSES LIKIE IN KOLGUJEV!

Thank you and please help with both questions!!!! Thank you

so much. I love OFP R!

Russian Addons rock smile_o.gif

Share this post


Link to post
Share on other sites

You can combine SpaceAlex's updated islands with FatWombat's upgraded textures. These will bring Everon and Kolgujev up to Resistance quality smile_o.gif .

Also, the FDF mod includes the East Border map (There's also a winter version). This map is slightly larger than Nogova and the terrain is just as good.

Quote[/b] ]Russian Addons rock

FDF also has some great Russian soldiers and equipment. Like the Mig-21 wink_o.gif .

Share this post


Link to post
Share on other sites

Hi,

My favorite island right now is Truax island. It has a great mix of landscapes and small towns, and in general has a really great overall mood to it. You should check it out - its available on www.ofp.info if I remember correctly.

As far as spawning troops are concerned, do you really need more than 63 groups per side? Remember, these are groups not units. This means 63*12 = 756 units per side. Should be enough I would think. smile_o.gif

Of course, dynamically creating units does have its advantages... but in most cases its just not needed. In general, if you do decide you need to create these units dynamically, you should use createUnit to create the units, then use the removeAllWeapons command to remove their weapons, and then add the weapons you need to the custom units. You don't need to use dynamic waypoints (I believe you can set them from a Game Logic) but if you want to use them then use the move command to move units to a position.

Hope some of this info helps!

Brother Blades

Share this post


Link to post
Share on other sites

Truax is nice, but do Truax have history like Sarugao tounge_o.gifbiggrin_o.gif

LOL.

Quote[/b] ]Sarugao, alone in the centre of the Mediterranean sea, far away enough from Countries like France, Italy or Spain.

It used to be ruled by the Spaniards back in late seventeen century, but after the natives realised the distance that separate Sarugao from the rest of the world they decided that independence wouldn’t be too difficult to achieve.

Sarugao’s population got organized secretly against their colonizers, and in 1805, without any warning, they took over the small Spanish presence.

The distance between Spain and Sarugao, made it difficult for King Felipe de Borbón to send the necessary reinforcements fast enough to be able to defeat the rebel forces. By the time the Spanish Armada arrived to Sarugao, the rebels had reinforced their defences using their own improved army helped by the Royal Spanish weaponry left by the previous defeated Spanish forces.

The dangerous winter weather made it really difficult for the Armada, almost impossible for the Spanish navy to approach tactically to the coasts of Sarugao.

Tired and injured, the Spaniards were finally defeated by ground artillery and boarding men that fought to the end, man against man, metal against metal, finally the Spanish decided to surrender.

Only a ten percent of the Iberic forces survived the catastrophic attempt to retake Sarugao for the Spanish kingdom.

Spain was invaded by Napoleons army in 1808, so a retake of Sarugao was out of the question. Sarugao lived in prosperity and peace for the rest of the century.

On the middle of the nineteenth century, Sarugao became one of the wealthiest independent countries of the Mediterranean, the difficult reach from other countries to the archipelago, let Sarugao living in peace for a long time, making the culture and resources free from foreign exploitation. Rich in natural resources, the Sarugense economy could only get better and better.

By the beginning of the twentieth century, a family living in the north east of the Sarugao island of Carmona, discovered the remains of some kind of ship. The vessel was lying sideways along the beach, no human remains, no marks, nothing. The reminds of the sheep was on a petrify state, textured and coloured like coal, hard like steel, and dried, like if the vessel never touched water.

This became a mystery, and years later Germany offered to send a team of scientists to study the discovery.

No one came to any possible explainable conclusion, and while the Germans were in Sarugao, the first world war commenced.

Sarugao became friendly with Germany before the war started, and supplied food and materials to Kaiser Wilhelm II German armies.

This time it was easier to get to Sarugao. The mechanical engineering of the time made the journey by sea much faster and safer than the previous century; by the time Sarugao’s authorities realised that the French were about to strike, it was already too late. Sarugao collapse under French control.

The end of World War I came with France governing the archipelago, exporting Sarugao’s assets living it almost empty, almost without resources.

Then it came World War II, and the Germans still had interest in the mysterious discovery that took place at the beginning of the century.

Hitler had a obsession about the paranormal, and he didn’t wanted to miss the opportunity to find more about the vessel.

Spain had gone through a civil war no long before WWII started, and could not take part in this new conflict. Devastated by the vicious fighting between the participant sides of the Spanish war, Francisco Franco decided to stay away from fighting and just support Hitler and Mussolini in other ways.

During the Spanish war, the German presence was ample, using Spain as an experimental field for their new weapons and tactics, helping Franco to win the war against the Republicans.

Some German forces stayed in Spain afterwards, but Hitler decided to send them to Sarugao for a retake through the east coast of the Iberic peninsula instead than to help the rest of the nazis forces in France through the Pyrenees.

The German forces were far superior to the defending ones, and finally, the French were besieged by Hitler’s forces helped by a division of Franco’s army. Germany and Spain became the new rulers of Sarugao.

The island were plagued by scientists from Germany and Spain working on the mysterious vessel.

While studding the ship’s surrounding terrain, a German team of geologists leaded by the Spanish expert Jose Antonio Perez Masa, discovered that underneath Carmona’s soil was the biggest oil pocket ever found in Europe.

Sarugao became what it used to be, rich, but this time ruled by foreign leaders.

The Germans, expecting some kind of attack by the Allies in the archipelago, decided to build a stronger military presence in the islands and started recruiting natives and training them. Wrong move for Hitler, because after the Allies got half way through France after D Day, the natives knocked down all the German and Spanish presence in the islands and surroundings, becoming again independent and wealthy.

The fight only extended to eight days, and the damage to the country was minimal. A perfect victory.

Ricardo Fuentes was the man who took lead of Sarugao after the foreigners defeat. Supported by the respect and admiration of the population, Ricardo Fuentes became one of the most popular leaders of the twentieth century.

The 15 of December of 1963, Fuentes became ill at 75 years of age, and near death, from his bed he gave Sarugao a message, a wish for popular and fare elections after his death. He loved his country, and his country was non less.

Subsequent to his death, Sarugao started to organize their first governmental elections, fetching many different and promising candidates to the voters choice.

But General Alberto Sastre had different ideas of his own. In the 6 of April of 1964 General Sastre and his followers took over Sarugao, moving his army around the archipelago and destroying and killing any opposition. Sarugao’s civil war started.

In 1968 General Sastre won the war and became Sarugao’s new ruler.

The new dictator created a regime that within half a decade converted Sarugao in a concentration camp, no one lives, no one gets in.

By 1975, in isolation, different fighting groups from inside the country started to ambush and attack the dictators forces, whenever, wherever, and whoever.

A year later Sarugao was going through one of the most violent guerrilla wars ever seen in world history.

Don't ask ghostface.gif

@CERO.

Share this post


Link to post
Share on other sites

thnx, but no one really answered my question........ smile_o.gif

BTW: I have trouble with 63 groups because I like to create Sinle units and it counts them as groups. Single unit are in many ways easier to control.....maybe I am wrong....

I also need spawning for ambushes!

Share this post


Link to post
Share on other sites

Could try something like this (wrote it for my mission):

Exec via

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">[Town1,"inf",SpawnGrp1] exec "spawn.sqs"

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">?!Local Server : Exit

_place = _this select 0

_type = _this select 1

_grp = _this select 2

_pos = getpos _place

?_type == "mech" : goto "mech"

?_type == "inf" : goto "inf"

?_type == "tank" : goto "tank"

hint "Error"

exit

#mech

_array = ["JAM_EBHDOfficer","JAM_EMedicHD","JAM_EBHDSoldier","JAM_EBHDSoldier","JAM_EBMGHD","JAM_EBGLVestHDSoldier","JAM_EBGLVestHDSoldier","JAM_EBSoldierHDRPG","JAM_EBSoldierHDRPG","JAM_EBMGHD","JAM_EBHDSoldier"]

_BMP = "BMP" createvehicle _pos

_x = 0

#LoopMech

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "loopmech"

units _grp select 1 moveindriver _bmp

units _grp select 2 moveingunner _bmp

units _grp select 3 moveincommander _bmp

{IF (vehicle _X == _x) then {_x moveincargo _bmp}} foreach units _grp

~0.5

[_bmp] exec "randmove.sqs"

exit

#Inf

_array = ["JAM_EBHDOfficer","JAM_EMedicHD","JAM_EBHDSoldier","JAM_EBHDSoldier","JAM_EBMGHD","JAM_EBGLVestHDSoldier","JAM_EBGLVestHDSoldier","JAM_EBSoldierHDRPG","JAM_EBSoldierHDRPG","JAM_EBMGHD","JAM_EBHDSoldier","JAM_EBHDSoldier"]

_x = 0

#LoopInf

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "LoopInf"

~0.5

[units _grp] exec "randmove.sqs"

exit

#tank

_array = ["JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew"]

_T551 = "BMP" createvehicle _pos

_T552 = "T72" createvehicle _pos

_BMP1 = "BMP2" createvehicle _pos

_x = 0

#LoopTank

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "looptank"

_y = 0

#looptank2

~0.01

_man = call format ["units _grp select %1",_y]

?_y >=0 && _y <3 : _tank = _t551

?_y >=3 && _y <6  : _tank = _t552

?_y >=6 && _y <9  : _tank = _bmp1

?isnull driver _tank : _man moveindriver _tank

?isnull gunner _tank : _man moveingunner _tank

?isnull commander _tank : _man moveincommander _tank

_y = _y + 1

?_y < 9 : goto "looptank2"

~0.5

[_bmp1] exec "randmove.sqs"

[_t551] exec "randmove.sqs"

[_t552] exec "randmove.sqs"

exit

Then of course make/use a random move script..

Now of course, change it how you want etc.

And to KEEP spawning them, make something like

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

;;spawnmanager.sqs

#init

_grp = SpawnGroup1

?Count list Ruskies <40 : [Spawn1,"mech",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup2

?Count list Ruskies <40 : [Spawn2,"mech",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup3

?Count list Ruskies <40 : [Spawn1,"inf",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup4

?Count list Ruskies <40 : [Spawn2,"inf",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup5

?Count list Ruskies <40 : [Spawn1,"tank",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup6

?Count list Ruskies <40 : [Spawn2,"tank",_grp] exec "spawn.sqs"

~30

?endgame : exit

goto "init"

Share this post


Link to post
Share on other sites
Could try something like this (wrote it for my mission):

Exec via

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">[Town1,"inf",SpawnGrp1] exec "spawn.sqs"

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">?!Local Server : Exit

_place = _this select 0

_type = _this select 1

_grp = _this select 2

_pos = getpos _place

?_type == "mech" : goto "mech"

?_type == "inf" : goto "inf"

?_type == "tank" : goto "tank"

hint "Error"

exit

#mech

_array = ["JAM_EBHDOfficer","JAM_EMedicHD","JAM_EBHDSoldier","JAM_EBHDSoldier","JAM_EBMGHD","JAM_EBGLVestHDSoldier","JAM_EBGLVestHDSoldier","JAM_EBSoldierHDRPG","JAM_EBSoldierHDRPG","JAM_EBMGHD","JAM_EBHDSoldier"]

_BMP = "BMP" createvehicle _pos

_x = 0

#LoopMech

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "loopmech"

units _grp select 1 moveindriver _bmp

units _grp select 2 moveingunner _bmp

units _grp select 3 moveincommander _bmp

{IF (vehicle _X == _x) then {_x moveincargo _bmp}} foreach units _grp

~0.5

[_bmp] exec "randmove.sqs"

exit

#Inf

_array = ["JAM_EBHDOfficer","JAM_EMedicHD","JAM_EBHDSoldier","JAM_EBHDSoldier","JAM_EBMGHD","JAM_EBGLVestHDSoldier","JAM_EBGLVestHDSoldier","JAM_EBSoldierHDRPG","JAM_EBSoldierHDRPG","JAM_EBMGHD","JAM_EBHDSoldier","JAM_EBHDSoldier"]

_x = 0

#LoopInf

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "LoopInf"

~0.5

[units _grp] exec "randmove.sqs"

exit

#tank

_array = ["JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew","JAM_SoldierEHDCrew"]

_T551 = "BMP" createvehicle _pos

_T552 = "T72" createvehicle _pos

_BMP1 = "BMP2" createvehicle _pos

_x = 0

#LoopTank

~0.01

_type = _array select _x

_type createunit [_pos,_grp,"man = this"]

[man] join grpnull

man allowfleeing 0

?_x != 0 : [man] join _grp

?_x == 0 : _grp = group man

_x = _X + 1

?_X <= count _array : goto "looptank"

_y = 0

#looptank2

~0.01

_man = call format ["units _grp select %1",_y]

?_y >=0 && _y <3 : _tank = _t551

?_y >=3 && _y <6  : _tank = _t552

?_y >=6 && _y <9  : _tank = _bmp1

?isnull driver _tank : _man moveindriver _tank

?isnull gunner _tank : _man moveingunner _tank

?isnull commander _tank : _man moveincommander _tank

_y = _y + 1

?_y < 9 : goto "looptank2"

~0.5

[_bmp1] exec "randmove.sqs"

[_t551] exec "randmove.sqs"

[_t552] exec "randmove.sqs"

exit

Then of course make/use a random move script..

Now of course, change it how you want etc.

And to KEEP spawning them, make something like

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

;;spawnmanager.sqs

#init

_grp = SpawnGroup1

?Count list Ruskies <40 : [Spawn1,"mech",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup2

?Count list Ruskies <40 : [Spawn2,"mech",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup3

?Count list Ruskies <40 : [Spawn1,"inf",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup4

?Count list Ruskies <40 : [Spawn2,"inf",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup5

?Count list Ruskies <40 : [Spawn1,"tank",_grp] exec "spawn.sqs"

~2

_grp = SpawnGroup6

?Count list Ruskies <40 : [Spawn2,"tank",_grp] exec "spawn.sqs"

~30

?endgame : exit

goto "init"

missing randmove.sqs please post as i would lie to use this thanks

Share this post


Link to post
Share on other sites

First, find all the places that the units exec randmove.sqs, and change it to

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">[_grp] exec "randmove.sqs"

Now, for randmove.sqs

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">; RandomPatrol 1.5

; 2003 by ])rStrangelove

; Group/Unit chooses random pos, patrols there, chooses again etc etc

; grp is the group..

; Range is How far you want them to move (max)

; Delay is how long you want em to wait at the position they move to, before moving along

_grp = _this select 0

_range = 100

_delay = 8

_origPos = getpos leader _grp

_patrol = patrol

{_X setUnitPos "up"} forEach units _grp

#patrol_again

({_x setBehaviour "AWARE"} forEach units _grp)

_checktime = time

_newpos = [(_origPos select 0) - _range + (random (2 * _range)), (_origPos select 1) - _range + (random (2 * _range))]

units _grp commandMove _newpos

;go on if group has reached WP or was stuck somewhere for 10 minutes

@(unitready leader _grp)

({_x setBehaviour "COMBAT"} forEach units _grp)

~_delay

goto "patrol_again"

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×