Home   Help Search Login Register  

Author Topic: 63 groups supported per side  (Read 3251 times)

0 Members and 1 Guest are viewing this topic.

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
63 groups supported per side
« on: 28 Feb 2005, 23:20:21 »
Hello again,

I've been trying to add some resistance into a CTI  map,  The are not ramdonly placed but start wherei place them.  The problem i'm getting is that the game keeps comming up with the above error message.
Is the a map problem or a game limitation? and if this is a game limitation is it based on the number of A.i leaders?

Penfolde

Offline Planck

  • Honoured
  • Former Staff
  • ****
  • I'm never wrong ....I'm just not always right !
Re:63 groups supported per side
« Reply #1 on: 01 Mar 2005, 00:56:24 »
It means that you can only have 63 groups per side.

A group can only have a maximum of 12 units.

12 X 63 = 756

So, that is a maximum of 756, presuming you had 63 groups each containing 12 units.

A single unit by itself is still a group, even though it has no other members.

So, 63 groups that only comprise 1 unit each would give you only 63 units maximum.

I can't think why you would need more than 756 units in a mission.


Planck
I know a little about a lot, and a lot about a little.

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
Re:63 groups supported per side
« Reply #2 on: 01 Mar 2005, 01:29:29 »
nor do i,

I've just tryed add acouple of A.I aircaft into the REZ side and i got the error message, think i'll have to have a good look into how main A.I Rez ppl are knocking around the map.  Being an CTI map, think it will be 1 commander to each town  + grunts

Thx

Penfolde

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
Re:63 groups supported per side
« Reply #3 on: 01 Mar 2005, 02:15:55 »
just anuther question?

Is a game logic seen as a unit?,  I have create a number moves around the map using game logics.  If I just add aircraft to the CTI map everything is ok but.... if add the aircraft module i created with the game logic for them to move round the map it will not work!


Penfolde

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
Re:63 groups supported per side
« Reply #4 on: 01 Mar 2005, 02:47:48 »
to ansawer me own question yes it dose.  I'm now woundering if i copyed he same game-logic over and over would it see it as anuther unit per-copy or would it thinks its just the one?

Penfolde

Offline General Barron

  • Former Staff
  • ****
  • Semper Fi!
Re:63 groups supported per side
« Reply #5 on: 01 Mar 2005, 02:56:50 »
Quote
f i copyed he same game-logic over and over would it see it as anuther unit per-copy or would it thinks its just the one?
Copy/pasting a GL is just like copy/pasting a regular unit: it will add it to a new group. It is the same thing as just double-clicking and adding in the unit/GL yourself.

Game logics are kinda on their own "side". So that means, you can only have 63 groups of game logics.

Note that empty objects are not on any "side"--so you can place as many of them as you want. Same goes for markers. So if you want to use a ton of ojects as "waypoints" for your plane, then I suggest using empty markers or invisible H's.
HANDSIGNALS COMMAND SYSTEM-- A realistic squad-control modification for OFP
kexp.org-- The best radio station in the world, right here at home! Listen to John Richards!

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
anuther GL Question
« Reply #6 on: 02 Mar 2005, 18:19:54 »
Back again,

First of all thx to everyone who giving me help,  This has to be one of the best forums I've had the pleaser ov being a member ov ;D

The next thing I am struggling to under stand about GL's is when u have to put a server GL on to the map for script's.
The map I'm using already has a Server GL on the map, I've added a script that tells me to place A server GL on the map.  Will the script use the one already there or will I have to place another on the map with a different name?


Penfolde

Offline dmakatra

  • Members
  • *
  • Better known as Armsty
Re:63 groups supported per side
« Reply #7 on: 02 Mar 2005, 19:06:35 »
The GL that is already there works just fine.

:beat: *Gets Shot* :beat:

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
Re:63 groups supported per side
« Reply #8 on: 03 Mar 2005, 02:20:22 »
Hhhaaghhg,  think i'm getting there,

This script i'm using has throw something at me that I cannot fix. It gives me an error message, I've had aplay but cannot get around the error.
So could someone plz have a quick look and inform where i'm going wrong.
Quote
;[unit,"markername",logicname,waittime] exec "Main\nogova.sqs"

_man = _this select 0
_mark = _this select 1
_glog = _this select 2
_wait = _this select 3
; GAMELOGIC Created
_glog = _trr
_trr = "logic" camCreate [0,0,0]
_mark setMarkerType "Empty"
#init
;Coridnates from map i found the best way
;to get them is to place a man at each
;point you wont ai to move to then open
;the mission.sqm and take the cordinates
;and remove the middle array and add ,0]
;at the end

_cor0 = [1652.157349,11339.863281,0]
_cor1 = [1753.439331,9586.099609,0]
_cor2 = [1660.864502,5377.964844,0]
_cor3 = [1471.569458,4406.257813,0]
_cor4 = [4124.677246,3684.739746,0]
_cor5 = [4113.013184,4885.212891,0]
_cor6 = [4014.181152,6986.245605,0]
_cor7 = [4014.181152,6986.245605,0]
_cor8 = [5563.431641,9538.151367,0]
_cor9 = [4906.201660,10124.529297,0]
_cor10 = [5346.237305,5572.573242,0]
_cor11 = [5281.149414,5039.665039,0]
_cor12 = [5773.377441,5194.249023,0]
_cor13 = [5895.598145,8557.513672,0]
_cor14 = [6241.133301,7297.695801,0]
_cor15 = [6666.956543,6747.656250,0]
_cor16 = [7954.496582,9495.800781,0]
_cor17 = [11006.471680,11590.018555,0]
_cor18 = [10737.041016,9460.487305,0]
_cor19 = [7751.680176,4440.179688,0]
_cor20 = [6638.000488,4113.655762,0]
_cor21 = [8463.039063,7023.213867,0]
_cor22 = [9413.456055,2661.785889,0]
_cor23 = [10585.442383,1740.521240,0]
_cor24 = [11425.074219,2177.829834,0]
_cor25 = [10917.797852,2994.139160,0]
_cor26 = [10527.132813,4037.848633,0]
_cor27 = [9168.561523,4894.973145,0]
_cor28 = [11226.016602,5409.173828,0]
_cor29 = [9782.431641,6975.364746,0]
_cor30 = [11053.541992,7546.780273,0]
_cor31 = [5423.159668,7039.540039,0]
_cor32 = [4915.446777,3882.012207,0]
_cor33 = [5362.744629,4043.039795,0]
_cor34 = [1719.600342,3517.446777,0]
_cor35 = [2264.762695,4529.892090,0]
_cor36 = [2311.491211,7645.107422,0]
_cor37 = [9087.082031,7878.747559,0]
_cor38 = [9554.364258,9732.300781,0]
_cor39 = [10083.952148,7551.649414,0]
_cor40 = [10239.712891,5246.389648,0]
_cor41 = [9850.310547,2404.945313,0]
_cor42 = [7222.232910,4765.409180,0]
_cor43 = [5971.504395,3245.703125,0]
_cor44 = [2907.610840,8759.673828,0]
_cor45 = [3828.847168,9391.763672,0]
_cor46 = [1925.854492,10454.208008,0]
_cor47 = [5119.923340,8847.085938,0]
_cor48 = [4696.288574,7441.696777,0]
_cor49 = [11943.598633,11402.368164,0]
_cor50 = [11948.769531,11966.054688,0]
_cor51 = [10226.677734,10543.908203,0]
_cor52 = [8737.304688,9995.736328,0]
_cor53 = [3259.560059,4646.626465,0]

#Start
~_wait
~0.0001
;Random movement part
?(Local Server):movepos=Random 15
?(Local Server):movepos=(movepos+.05)-((movepos+.05) mod 1)
PublicVariable "movepos"

?(movepos==0):Goto "0"
?(movepos==1):Goto "1"
?(movepos==2):Goto "2"
?(movepos==3):Goto "3"
?(movepos==4):Goto "4"
?(movepos==5):Goto "5"
?(movepos==6):Goto "6"
?(movepos==7):Goto "7"
?(movepos==8):Goto "8"
?(movepos==9):Goto "9"
?(movepos==10):Goto "10"
?(movepos==11):Goto "11"
?(movepos==12):Goto "12"
?(movepos==13):Goto "13"
?(movepos==14):Goto "14"
?(movepos==15):Goto "15"
?(movepos==16):Goto "16"
?(movepos==17):Goto "17"
?(movepos==18):Goto "18"
?(movepos==19):Goto "19"
?(movepos==20):Goto "20"
?(movepos==21):Goto "21"
?(movepos==22):Goto "22"
?(movepos==23):Goto "23"
?(movepos==24):Goto "24"
?(movepos==25):Goto "25"
?(movepos==26):Goto "26"
?(movepos==27):Goto "27"
?(movepos==28):Goto "28"
?(movepos==29):Goto "29"
?(movepos==30):Goto "30"
?(movepos==31):Goto "31"
?(movepos==32):Goto "32"
?(movepos==33):Goto "33"
?(movepos==34):Goto "34"
?(movepos==35):Goto "35"
?(movepos==36):Goto "36"
?(movepos==37):Goto "37"
?(movepos==38):Goto "38"
?(movepos==39):Goto "39"
?(movepos==40):Goto "40"
?(movepos==41):Goto "41"
?(movepos==42):Goto "42"
?(movepos==43):Goto "43"
?(movepos==44):Goto "44"
?(movepos==45):Goto "45"
?(movepos==46):Goto "46"
?(movepos==47):Goto "47"
?(movepos==48):Goto "48"
?(movepos==49):Goto "49"
?(movepos==50):Goto "50"
?(movepos==51):Goto "51"
?(movepos==52):Goto "52"
?(movepos==53):Goto "53"
goto "init"
#0
_mark setMarkerPos _cor0
Goto "move"
#1
_mark setMarkerPos _cor1
Goto "move"
#2
_mark setMarkerPos _cor2
Goto "move"
#3
_mark setMarkerPos _cor3
Goto "move"
#4
_mark setMarkerPos _cor4
Goto "move"
#5
_mark setMarkerPos _cor5
Goto "move"
#6
_mark setMarkerPos _cor6
Goto "move"
#7
_mark setMarkerPos _cor7
Goto "move"
#8
_mark setMarkerPos _cor8
Goto "move"
#9
_mark setMarkerPos _cor9
Goto "move"
#10
_mark setMarkerPos _cor10
Goto "move"
#11
_mark setMarkerPos _cor11
Goto "move"
#12
_mark setMarkerPos _cor12
Goto "move"
#13
_mark setMarkerPos _cor13
Goto "move"
#14
_mark setMarkerPos _cor14
Goto "move"
#15
_mark setMarkerPos _cor15
Goto "move"
#16
_mark setMarkerPos _cor16
Goto "move"
#17
_mark setMarkerPos _cor17
Goto "move"
#18
_mark setMarkerPos _cor18
Goto "move"
#19
_mark setMarkerPos _cor19
Goto "move"
#20
_mark setMarkerPos _cor20
Goto "move"
#21
_mark setMarkerPos _cor21
Goto "move"
#22
_mark setMarkerPos _cor22
Goto "move"
#23
_mark setMarkerPos _cor23
Goto "move"
#24
_mark setMarkerPos _cor24
Goto "move"
#25
_mark setMarkerPos _cor25
Goto "move"
#26
_mark setMarkerPos _cor26
Goto "move"
#27
_mark setMarkerPos _cor27
Goto "move"
#28
_mark setMarkerPos _cor28
Goto "move"
#29
_mark setMarkerPos _cor29
Goto "move"
#30
_mark setMarkerPos _cor30
Goto "move"
#31
_mark setMarkerPos _cor31
Goto "move"
#32
_mark setMarkerPos _cor32
Goto "move"
#33
_mark setMarkerPos _cor33
Goto "move"
#34
_mark setMarkerPos _cor34
Goto "move"
#35
_mark setMarkerPos _cor35
Goto "move"
#36
_mark setMarkerPos _cor36
Goto "move"
#37
_mark setMarkerPos _cor37
Goto "move"
#38
_mark setMarkerPos _cor38
Goto "move"
#39
_mark setMarkerPos _cor39
Goto "move"
#40
_mark setMarkerPos _cor40
Goto "move"
#41
_mark setMarkerPos _cor41
Goto "move"
#42
_mark setMarkerPos _cor42
Goto "move"
#43
_mark setMarkerPos _cor43
Goto "move"
#44
_mark setMarkerPos _cor44
Goto "move"
#45
_mark setMarkerPos _cor45
Goto "move"
#46
_mark setMarkerPos _cor46
Goto "move"
#47
_mark setMarkerPos _cor47
Goto "move"
#48
_mark setMarkerPos _cor48
Goto "move"
#49
_mark setMarkerPos _cor49
Goto "move"
#50
_mark setMarkerPos _cor50
Goto "move"
#51
_mark setMarkerPos _cor51
Goto "move"
#52
_mark setMarkerPos _cor52
Goto "move"
#53
_mark setMarkerPos _cor53
;End of random movement
Goto "move"
;Move the ai to marker
#move
_man doMove getMarkerPos _mark
~30
_ma = getMarkerPos _mark
_trr setpos _ma
_t = 0
?(!alive _man): hint "ARRRRRRR an AI has bean killed"
?(!alive _man): goto "exit"
?(_man distance _trr < 300) :goto "start"
goto "move"
#exit
exit

This is the error message



The problem only started when i to call the script into init.sqs.
I'm not sure if this script is mp freindly but it dose have the local server instruction but afair bit down the script.

Offline General Barron

  • Former Staff
  • ****
  • Semper Fi!
Re:63 groups supported per side
« Reply #9 on: 03 Mar 2005, 03:53:11 »
I don't see any problems with the script (well, it has its problems, such as never using the game logic that gets passed to it, but none that would cause this error). So the problem must be in the way you are calling the script. Are you sure you are passing the right number of parameters to the script?
HANDSIGNALS COMMAND SYSTEM-- A realistic squad-control modification for OFP
kexp.org-- The best radio station in the world, right here at home! Listen to John Richards!

Offline Planck

  • Honoured
  • Former Staff
  • ****
  • I'm never wrong ....I'm just not always right !
Re:63 groups supported per side
« Reply #10 on: 03 Mar 2005, 03:56:26 »
Shouldn't these be the other way around?

_glog = _trr
_trr = "logic" camCreate [0,0,0]


If not, just ignore me......it's late   ::)


Planck
I know a little about a lot, and a lot about a little.

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
scripting problem
« Reply #11 on: 03 Mar 2005, 16:12:47 »
Ello

I've adopted this from a nuther map and created all new map position, and i think i said it worked fine when the scripts where not entered into the init.sqs. The entery in init.sqs is "? local(Server) : [] exec "Main\nogova.sqs";
" and to give an example of wot i'm put into the units init "init="[elite1,""AImove0"",log0,10] exec ""Main\nogova.sqs"";  ";".
Each "log" number is different, each unit has a wait time and each unit has it own "AImove" reference string.
I have also place an GL down with the name of the script, and the script is placed in sub folder called "Main".

Penfolde

Offline General Barron

  • Former Staff
  • ****
  • Semper Fi!
Re:63 groups supported per side
« Reply #12 on: 03 Mar 2005, 18:54:21 »
Okay, well, your error is coming from this line in your init.sqs:
? local(Server) : [] exec "Main\nogova.sqs"
The script wants you to pass it 4 pieces of data, and you aren't passing it any. I don't know what this line is supposed to do, but all it is doing is causing that error message. Get rid of that line.

What you are putting in the unit's init fields should be fine, but there might be issues with MP. I think this script is only supposed to be run on the server, and I think that init fields run on all machines. To be safe, I'd take all of the stuff out of the unit's init fields and put them into the init.sqs like this:

? local(Server) : [elite1,"AImove0",log0,10] exec "Main\nogova.sqs";  

One thing I should point out, just to save you time, is that the logic (log0) doesn't have to be unique for each unit you run the script on. As I said before, that script doesn't even use the logic you pass it (because it just creates its own), so you could even just put the number 0 there for every unit, and it would work fine. This way you don't have to go and create 20+ named logics. Also, I see no need to place a logic with the name of the script.

One more thing is that this script will only select one of the first 15 coordinates you have given it. BTW, I think this script is pretty poorly written, and could easily be condensed. I'll post an improved version.
« Last Edit: 03 Mar 2005, 19:22:46 by General Barron »
HANDSIGNALS COMMAND SYSTEM-- A realistic squad-control modification for OFP
kexp.org-- The best radio station in the world, right here at home! Listen to John Richards!

Offline General Barron

  • Former Staff
  • ****
  • Semper Fi!
Re:63 groups supported per side
« Reply #13 on: 03 Mar 2005, 19:18:15 »
Here is an improved version of that random movement script. You will have to put all your movement positions in there, but I've put a few of yours in to show you how it is done. This script can be run from the init field of a unit, because it checks itself to see if it is local or not. There is no need to place any game logics, "Server" game logics, or markers. Check the top of the script to see how to call it. I haven't tested the script, but it should work

Code: [Select]
;[unit, distance, wait] exec "randomMove.sqs"
;example (in a unit's init field):
;[this, 50, 90] exec "randomMove.sqs"

;unit = unit to randomly move
;distance = distance unit must be from destination before he considers it reached
;wait = amount of time (seconds) unit will wait before moving on to next destination

_man = _this select 0
;square the distance to increase performance of function below
_dist = (_this select 1) ^ 2
_wait = _this select 2

;exit if the unit isn't local (for mp)
? !(local _man) : exit

;prevent man from moving to help other units in his group when they engage the enemy
_man disableAI "target"

;will be filled with our waypoints
_wps = []

;function to return the 2D distance between 2 positions
;distance is squared to increase performance (by not finding square root)
;this is because we don't need the actual distance between unit & waypoint
;we just need to know if this distance is less than the distance needed to complete WP
;make var global to cut down on local variables (because it never changes)

GENB_distPosSqr = {(((_this select 0) select 0) - ((_this select 1) select 0))^2 + (((_this select 0) select 1) - ((_this select 1) select 1))^2}

;Define waypoints to be randomly selected
;Add your own waypoints by copying a line
;and changing the array next to _coord =

_coord = [1652.157349,11339.863281,0]; _wps = _wps + [_coord]
_coord = [1753.439331,9586.099609,0]; _wps = _wps + [_coord]
_coord = [1660.864502,5377.964844,0]; _wps = _wps + [_coord]
_coord = [1471.569458,4406.257813,0]; _wps = _wps + [_coord]

#chooseWP
;delay before choosing another waypoint
~_wait
;randomly select an index from the waypoint array
_dest = Random (count _wps - 1)
_dest = _dest - (_dest % 1)
;extract the waypoint position from the array
_dest = _wps select _dest

#move
_man domove _dest
~30
? [getpos _man, _dest] call GENB_distPosSqr <= _dist : goto "chooseWP"
? alive _man : goto "move"
exit
« Last Edit: 03 Mar 2005, 19:24:00 by General Barron »
HANDSIGNALS COMMAND SYSTEM-- A realistic squad-control modification for OFP
kexp.org-- The best radio station in the world, right here at home! Listen to John Richards!

Offline penfolde

  • Members
  • *
  • chaos, disorder and mayhem....my work is done!
thanks
« Reply #14 on: 03 Mar 2005, 23:17:32 »
Thx's General Barron,
Maybe one day i'll be able to write script's.  Only started editing 2 months ago so still a noobie. I'll keep in formed on how the script gose.

Penfolde

Offline General Barron

  • Former Staff
  • ****
  • Semper Fi!
Re:63 groups supported per side
« Reply #15 on: 04 Mar 2005, 03:50:03 »
Your welcome :) I'm sure you will write scripts in due time. I don't think I was even using other people's scripts until after editing for like 6 months, so it looks like you've got a head start. ;)
HANDSIGNALS COMMAND SYSTEM-- A realistic squad-control modification for OFP
kexp.org-- The best radio station in the world, right here at home! Listen to John Richards!