Jump to content
Sign in to follow this  
xeno

co30 DominationA2! One Team

Recommended Posts

I have setup a base at the north airport on Panthera.

No time to do the positions for the tasks and zones for now.

If anyone wants the version as base to complete it, please PM me.

Share this post


Link to post
Share on other sites
I've been asked to expand Domination for more than 30 players, maybe as many as 50. I'm thinking this is a big undertaking?

The current version is setup for 40 (1.09).

Share this post


Link to post
Share on other sites

It's called co40, and there's 40 positions in the game, but the desc.ext file states 30.

---------- Post added at 02:32 PM ---------- Previous post was at 02:32 PM ----------

I'm playing 1.10 currently.

Share this post


Link to post
Share on other sites

Adding slots should be pretty simple I'm guessing..

- Open it in the editor

- Add playable characters

- Save as user mission

- Open the description.ext

- Change 30 to the number you need

- Load it in the editor

- Save to multiplayer missions

- You're done

Edited by Flightster

Share this post


Link to post
Share on other sites

I think it's more complex with Domination. There's lots of scripts run according to each player class, they'd all need to be changed too.

Share this post


Link to post
Share on other sites
It's called co40, and there's 40 positions in the game, but the desc.ext file states 30.

Whatever version you are using, it is not 1.09 or 1.10 :)

I'm currently wasting my time to find a workaround for a bug in A2.

As soon as there is some load on the server (happens in editor preview too) dead units end up with a wrong object reference once dead. Instead of the group and unit number they have the id and the p3d name as reference.

What's happening then is that those dead units can't get deleted by deleteVehicle (a FSM or script trys to delete them with deleteVehicle but nothing happens, checked it about 100 times while trying different workarounds).

Crew that disembarks is also not deletable, it just stays.

This was not the case in older A2 versions. Waiting for the next beta or full patch, hoping that it will fix it.

An example how normal object references of dead units (for example transfered to a killed eventhandler) look like:

[O 1-1-B:1,O 1-1-B:2,O 1-1-B:3,O 1-1-B:4,O 1-1-M:3,O 1-1-H:8,O 1-2-D:2,O 1-2-D:6]

The next example how it looks like when under load:

[O 1-1-B:2,9dca400# 1056482: soldier_mg.p3d,O 1-3-B:3,7d97800# 1056304: ins_soldier_at.p3d,9960400# 1056540: ins_soldier_2.p3d,c898800# 1056543: ins_soldier_2.p3d,b78d000# 1056552: ins_soldier_1.p3d,965d000# 1056554: ins_soldier_2.p3d,8a97c00# 1056480: soldier.p3d,6d7f400# 1056377: ins_soldier_2.p3d,O 1-2-F:7,O 1-2-F:6,9505800# 1056373: ins_soldier_at.p3d,O 1-2-F:4,ba57400# 1056365: ins_soldier_2.p3d,d7cf400# 1056362: ins_soldier_com.p3d,9b40800# 1056491: soldier.p3d,7ae7c00# 1056488: soldier.p3d,905e800# 1056489: soldier.p3d,a50e400# 1056478: soldier.p3d,773c000# 1056475: soldier.p3d,c7dd800# 1056484: soldier_at.p3d,9079000# 1056469: soldier_mg.p3d,76ca800# 1056465: soldier_co.p3d,7b61c00# 1056471: soldier_at.p3d,b485400# 1056440: ghillie_overall.p3d]

It's a little bit frustrating.

Xeno

Share this post


Link to post
Share on other sites
I think it's more complex with Domination. There's lots of scripts run according to each player class, they'd all need to be changed too.

My mistake, should have known a master-scripter like Xeno wouldn't take the easy route :D

Edited by Flightster

Share this post


Link to post
Share on other sites
My mistake, should have known a master-scripter like Xeno wouldn't take the easy route :D

Actually it is totally easy to add new playable units.

Simply place them playable in the editor, give them a variable name, edit i_common.sqf, add the variable name as string to d_player_entities and add the correct role to d_player_roles.

If it is a medic update d_is_medic, mg gunner update d_can_use_mgnests, and so on.

That's it, everything else works magically ;)

Edit: And of course adjust description.ext

Xeno

Edited by Xeno

Share this post


Link to post
Share on other sites

Do you actually enable/disable medic healing in some way, or is the medic check only for other various stuff such as equipment/revive/etc? Because I was looking for a way to disable/enable medic healing capability (not specifically in domination) and couldn't find a way to do it...

Share this post


Link to post
Share on other sites

Really glad to see that's what you are working on Xeno - that's killing our server, as it's usually full, and I've altered the map to have a lot more enemies everywhere.

I didn't migrate my modifications to your lastest beta release, as I saw you hadn't fixed the dead bodies problem.

Wish I could help you but - good luck!

~Z~

Share this post


Link to post
Share on other sites

An example how normal object references of dead units (for example transfered to a killed eventhandler) look like:

The next example how it looks like when under load:

It's a little bit frustrating.

Xeno

Thats odd. When a vehicle has a dude in it and he dies, the dead dude can't be deleted until he is ejected from the vehicle I've noticed.

Is this crew that started inside of the vehicle or was moved into it?

Did you make a bug for this issue you're describing? Maybe we can make some kind of test scenario so the dev's can quickly test it.

As for the weird formatting for the unit, like 67d6400# 19568: bink_usa_crew.p3d when converted to a string.. I always thought that was normal. Now the object isn't a unit, its a static body. But the reference should still work to delete it. (i only tested it with one crew guy)

Edited by oktane

Share this post


Link to post
Share on other sites
Thats odd. When a vehicle has a dude in it and he dies, the dead dude can't be deleted until he is ejected from the vehicle I've noticed.

Well, that still works perfectly. You have to use a little trick. Once the vehicle gets killed you have to delete the vehicle and the crew immediately and replace the killed vehicle with a new destroyed vehicle.

But if the crew disembarks, means the vehicle doesn't get destroyed everything goes fubar.

Is this crew that started inside of the vehicle or was moved into it?

You can't spawn vehicles with crew inside, spawn empty vehicle and move crew inside is the only way.

Did you make a bug for this issue you're describing? Maybe we can make some kind of test scenario so the dev's can quickly test it.

No, no bug report yet as it isn't easy to make a testcase or testmission.

As for the weird formatting for the unit, like 67d6400# 19568: bink_usa_crew.p3d when converted to a string.. I always thought that was normal. Now the object isn't a unit, its a static body. But the reference should still work to delete it. (i only tested it with one crew guy)

And exactly that is the problem, deleteVehicle does nothing :(

Xeno

Share this post


Link to post
Share on other sites

Simply place them playable in the editor, give them a variable name, edit i_common.sqf, add the variable name as string to d_player_entities and add the correct role to d_player_roles.

If it is a medic update d_is_medic, mg gunner update d_can_use_mgnests, and so on.

That's it, everything else works magically ;)

Edit: And of course adjust description.ext

Xeno

Excellent. Thanks muchly. :)

Share this post


Link to post
Share on other sites

Ok, fixed the problem.

All dead units get deleted now, finally.

It seems that the killed eventhandler is broken.

All units (when created) get now added to an array and a slow running (fsm) loop iterates through the array and checks if the unit is alive. If not alive it gets deleted with deleteVehicle and it gets removed from the array. This works perfectly.

Adding the unit reference to such an array via the killed eventhandler and deleteVehicle doesn't do anything.

Xeno

Share this post


Link to post
Share on other sites

was wondering if anyone could explain where do i need to go to edit the size of the main target, as in the red circle on the map, i want to make it bigger in radius, and if i do this will it auto create enemy men to adjust for the size of the circle... if that makes sense?

Share this post


Link to post
Share on other sites
was wondering if anyone could explain where do i need to go to edit the size of the main target, as in the red circle on the map, i want to make it bigger in radius, and if i do this will it auto create enemy men to adjust for the size of the circle... if that makes sense?

You increase the size in i_common.sqf

target_names = 
[
[[2733.7,5306.05,0],"Zelenogorsk",300], // 0
];

for example.. this makes one town, with a size radius of 300. For the second question, no.. I don't believe so. IIRC, the code will just do its normal thing and randomly fill that circle with the troops/units min/max counts defined in i_server.sqf

// first element (array. for example: [2,1]): number of vehicle groups that will get spawned, the first number is the max number that will get spawned,
// the second one the minimum. So [2,0] means, there can be no vehicle groups at all or a maximum of 2 groups of this kind
// second element: maximum number of vehicles in group; randomly chosen

d_vehicle_numbers_guard = [
[[2,1], 3], // tanks
[[1,1], 2], // apc (bmp)
[[2,1], 2], // apc2 (brdm)
[[2,1], 2], // jeep with mg (uaz mg)
[[2,1], 2] // jeep with gl (uaz grenade)
];

Share this post


Link to post
Share on other sites

Yet another Test Release available: 1.11T

Most important fix in this version: dead units and vehicles get now deleted properly (needed a lot of internal rewrites).

Download:

http://dev-heaven.net/projects/list_files/domination

You'll find a new version for a not yet released island ;) in the mission pack.

Please report problems in the Dom bug tracker at dev-heaven (http://dev-heaven.net/projects/domination/issues/new, you need a dev-heaven account for it).

Just a warning, Dom is not made to be played hosted only dedicated!

Enjoy!

Xeno

Share this post


Link to post
Share on other sites

@marc420: As oktane says, you set the targets radius in i_common.sqf. However, if you check x_scripts\x_createnexttargetclient.sqf, you'll see that the area marker size is hardcoded to 300,300. So it will not update according to the target radius.

I remember this because in Arma1 I used grossly larger placement radiuses in my (own) non city main targets, and people would bitch about getting killed before they were "supposed to" :D I ended up replacing the area marker with a regular icon marker instead. This is not as trivial as it may sound though.

Share this post


Link to post
Share on other sites
@marc420: As oktane says, you set the targets radius in i_common.sqf. However, if you check x_scripts\x_createnexttargetclient.sqf, you'll see that the area marker size is hardcoded to 300,300. So it will not update according to the target radius.

I remember this because in Arma1 I used grossly larger placement radiuses in my (own) non city main targets, and people would bitch about getting killed before they were "supposed to" :D I ended up replacing the area marker with a regular icon marker instead. This is not as trivial as it may sound though.

Oh thank you for this, I have added a bunch of small towns and knowing that now I'll have to hunt that down and fix it. Thanks for the info.

Share this post


Link to post
Share on other sites

thanks again oktane and carl

and thanks xeno testing now

btw can Carl or anyone else explain how i might go about adding example: someone gets into the MHQ to drive it and when they get into it, it then says in vehicle chat "Don't forget to pick up the ammo box". i asked xeno in pm about this and he did answer but i couldn't make sense out of it, i think its because i am newish to editing arma2 stuff :S anyways any help would be appreciated.

ok i edited the target eclipse size like said above

target_names =

[

[[2733.7,5306.05,0],"Zelenogorsk",3000], // 0

[[6728.4,2590.29,0],"Chernogorsk",3000], // 1

[[10269.5,2110.25,0],"Elektrozavodsk",3000], // 2

[[11146.5,12302.7,0],"Krasnostav",3000], // 3

[[12012.4,9095.97,0],"Berezino",3000], // 4

[[6147.54,7757.34,0],"Stary Sobor",3000], // 5

[[3814.73,8901.37,0],"Vybor",3000], // 6

[[7555.26,5149.45,0],"Mogilevka",3000], // 7

[[10680.4,8054.11,0],"Polana",3000], // 8

[[10412.8,9768.09,0],"Dubrovka",3000], // 9

[[9548.47,8846.42,0],"Gorka",3000], // 10

[[13381.5,6254.74,0],"Solnichniy",3000], // 11

[[10118.6,5521.33,0],"Staroye",3000], // 12

[[1697.54,3847.5,0],"Pavlovo",3000], // 13

[[3075.33,7916.48,0],"Pustoschka",3000], // 14

[[12971.1,10109.1,0],"Berezino Harbour",3000], // 15

[[9178.31,3870.64,0],"Pusta",3000], // 16

[[4741.96,6799.19,0],"Rogovo",3000], // 17

[[4393.77,4606.03,0],"Kozlovka",3000], // 18

[[1828.09,2249.49,0],"Kamenka",3000], // 19

[[8659.28,11840.9,0],"Gvozdno",3000] // 20

];

done this with the other towns aswell, then went into x_scripts like carl said and changed it to

#ifndef __TT__

[_current_target_name, _current_target_pos,"ELLIPSE","ColorRed",[3000,3000]] call XfCreateMarkerLocal;

#else

[_current_target_name, _current_target_pos,"ELLIPSE","ColorYellow",[3000,3000]] call XfCreateMarkerLocal;

#endif

now i am no coder so maybe i done it wrong but after uploading the new pbo to my server and going into game i bring up the map and see that the main target red circle is the same size it always was, am i missing something here? when you say its hard coded does that mean you cannot change the visual size of the red circle on the map, if so i have see it done on a random server before which is why i wanted to change it.

Edited by marc420

Share this post


Link to post
Share on other sites
thanks again oktane and carl

and thanks xeno testing now

btw can Carl or anyone else explain how i might go about adding example: someone gets into the MHQ to drive it and when they get into it, it then says in vehicle chat "Don't forget to pick up the ammo box". i asked xeno in pm about this and he did answer but i couldn't make sense out of it, i think its because i am newish to editing arma2 stuff :S anyways any help would be appreciated.

ok i edited the target eclipse size like said above

Whoa man, if you make them that big you'll never be able to finish the town! This is because you need to kill all the units in the circle. (all tanks, and all but 6 men in the stock version)

So if you want a town to be 500m large,

For the server:

In createnexttarget, there are two triggers made.. one is a test trigger that must be 20m larger than the size you want, so 520m. Then the script makes the units when the town is spawned, and when all of them are done being created, the trigger is satisfied. Then the actual mission success trigger is made, and it must be 50m larger than the size you want, so 550m. This trigger only activates when all the tanks, cars and all but 6 guys are dead. When it triggers, the town is done.

For the client:

In createnexttargetclient, change the 300,300 to be 500, 500 where it creates the marker. This will make the big red circle. But you need to do the server things too, otherwise the units will only spawn in the old 300m circle.

Here is what I would do instead, so its easy to adjust in i_common and more logical:

in createnexttarget, change 320 to be (_current_target_radius + 20) and 350 to be (_current_target_radius + 50), like this:

other code....
check_trigger setTriggerArea [(_current_target_radius + 20) , (_current_target_radius + 20), 0, false];
more code...
current_trigger setTriggerArea [(_current_target_radius + 50), (_current_target_radius + 50), 0, false];
rest of code..

in createnexttargetclient, add a line under _current_target_name = blah... that reads:

_current_target_radius = _t_array select 2;

Then change

[_current_target_name, _current_target_pos,"ELLIPSE","ColorRed",[300,300]] call XfCreateMarkerLocal; 

to be

[_current_target_name, _current_target_pos,"ELLIPSE","ColorRed",[_current_target_radius,_current_target_radius]] call XfCreateMarkerLocal;

if you do those changes, then you should be free to change the size in i_common and it will calculate the rest for you. Hope this helps.

There are probably some other places its hardcoded too, like x_setup_player.. i need to do this anyways so I will post the changes shortly.

Edited by oktane

Share this post


Link to post
Share on other sites

changed everything like you said Oktane, target circle is still the default size on the map, if you manage to get it changed let me know please :P

Edited by marc420

Share this post


Link to post
Share on other sites
changed everything like you said Oktane, target circle is still the default size on the map, if you manage to get it changed let me know please :P

in setupplayer:

... snip ...
_res = resolved_targets select _i;
_target_array = target_names select _res;
_current_target_pos = _target_array select 0;
_target_name = _target_array select 1;
// add this line below
	_target_radius = _target_array select 2;

then change the 300's to _target_radius

there are a few places where you have to do that above in that file.

Share this post


Link to post
Share on other sites

got it working now oktane thanks for taking the time.

damn you xeno i wanna play eden NOW!

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×