Jump to content

dealman

Member
  • Content Count

    99
  • Joined

  • Last visited

  • Medals

Everything posted by dealman

  1. dealman

    [MP][CTI-COOP] Liberation (beta)

    Ah, cheers for the clarification. I'm fairly sure though that the while loop in recalculate_resources.sqf did not have a sleep timer though? Or it might be that I accidentally removed it... :rolleyes: Kind of weird how AI would affect client-side performance even if you restart the mission/server or simply return to main menu. I guess ArmA 3 doesn't do a very good job at cleaning stuff up. Fortunately restarting ArmA 3 isn't too great of a burden. Oh, any information on any upcoming updates/changes? I'm curious as to what's coming up before I go ahead and change too much stuff, I've been looking at implementing custom objective-types and it looks like it'll be a little journey to figure things out, but not too bad. I also noticed that Altis has one opfor_supspawn(or something similar) point, I assume this is used to spawn support-related units such as artillery/mortar? I'm still trying to figure out what the optimal way to design the layout is, how close objectives can be to one another. Where and how many points to place.
  2. dealman

    [MP][CTI-COOP] Liberation (beta)

    I've noticed there seems to be some sort of weird stuff going on for clients randomly in Liberation(memory leak?). The very first time I played it with a friend, he was hosting it and I started getting ~17 FPS after about 2½, 3 hours of playing. We were under the assumption it was the server, of which we restarted the mission first and then the server entirely. Neither of which helped, turns out I had to restart my game to fix it. I'm not too familiar with while loops in ArmA 3, but my experience with while loops in general is that they can make and break things fairly easily. I noticed in the script that recalculate resources, it's just an outright while loop - wouldn't performance be drastically better if the while loop only ran once every second? Or would that risk things such as resources going out of sync?
  3. dealman

    [MP][CTI-COOP] Liberation (beta)

    Oh, that should be very possible. The think to take note of is to build slightly over the water's surface. Weird shit happens if the water comes through the object and changes your player's animation to swimming or some stuff like that. I recall in ArmA 2 it'd often just outright kill you. Not only do you need to restart, but you also need to actually edit the mission itself. You'll have to download PBO Manager and unpack the mission file. Then you either replace the current list of available vehicles via classnames_extension.sqf or you append the current one by editing classnames.sqf. If you want it to be unlocked via a military base, you need to add it as an elite vehicle. :)
  4. dealman

    [MP][CTI-COOP] Liberation (beta)

    I was under the assumption boats would work fine so long as you built your FOB close to some water(by default you can only build within 150m of your FOB). Does it prevent you from building if it's above water? I haven't quite tested this myself yet, so would have to look into it.
  5. dealman

    [MP][CTI-COOP] Liberation (beta)

    This is what you'll want; if(combat_readiness >= 35 && combat_readiness <= 75) then {} As far as I'm aware, SQF uses a very similar syntax to the C languages. That means the equivalent of and would be &&. The equivalent of or would be ||. You'll also need to provide the variable in both statements, programming languages are logical. Edit: I worked a bit on my Tanoa conversion and I've fixed some of the issues and implemented necessary features for starting vehicles. The new version can be downloaded here(Google Drive). Changelog: • Added the Light Vehicle Respawn script. (F_vehicleRespawn.sqf) • Starting vehicles no longer use fuel. (Requires that you use my setup script! Changes made to recalculate_resources.sqf) • Removed CBA dependency. • Added a script to easily setup starting vehicles. (F_setupStartingVehicle.sqf) • Added 1 Speedboat + 2 Assault Boats to starting area. A starting vehicle does not use fuel resources, it also respawn when left abandoned or destroyed. You can easily specify what vehicles should act as starting vehicles by using my script. Double-click the vehicles you've placed in the editor and enter this into the init script box; _nul = [this, 60, 10, true] execVM "scripts\shared\functions\F_setupStartingVehicle.sqf"; The parameters are as follows; [Object, AbandonedDelay, RespawnDelay, ClearCargo]. Object - This should be left as this as it references the vehicle you added the init code to. AbandonedDelay - The time in seconds before the vehicle will respawn due to not being used. RespawnDelay - The time in seconds before the vehicle respawns after being destroyed. ClearCargo - true means the vehicle's contents will be deleted upon respawn. false if you want to keep its contents. Note: Only vehicles using my setup script will not consume fuel when used. I may add another parameter to my script later where you can specify whether it should use fuel or not if you for some reason would want that. Next up I will look into making it so you can build objects, vehicles and recruit units from the HQ. I'm also looking into adding a new objective type, which would be used on ports/docks(rewards ammo+fuel? The idea here is that they'd be a bit more defended than a basic capture point due to its strategic value).
  6. dealman

    [MP][CTI-COOP] Liberation (beta)

    I played around with it a bit some time ago, it'll require some changes to the script that manages the action menu. But shouldn't be too difficult, I've added a custom marker either way(bluforhq) maybe I'll be able to use that and simply measure the distance. Will look into it later. I'd prefer a either or respawn mechanic, so if it's away from the HQ and has been inactive - it will respawn. Also if it's been destroyed, rather than a pre-defined timer. Also cheers for the info regarding Game Logic, will fix that right away. :D
  7. dealman

    [MP][CTI-COOP] Liberation (beta)

    So I took some time off from working on our UE4 game and I've gone ahead and ported my version over to Tanoa. I've replaced both BLUFOR and OPFOR infantry and some vehicles with their Tanoa equivalent. I've of course also added the new vehicles such as the Prowler and Blackfish. OPFOR also being able to utilize their Tanoa vehicles. I've only playtested it a little bit, so it's very possible I might have missed something or that something is bugged. But it should be at a relatively working state. I've pre-modeled a HQ of sorts where you'll be starting - feel free to modify as you please. I also went ahead and extended the building menus so you have a few more objects to play around with. I tried adding some of the pier segments in hopes we'll be able to establish our own coastal FOBs(this needs some testing). This version has a modified save key, so it shouldn't overwrite any of your other Liberation games. Known Issues: • You can't build inside the HQ yet(thus I have provided the HQ with some starting vehicles). • Starting vehicles consume fuel. • Starting vehicles do not respawn upon death. If you find any bugs or have any suggestions for tweaking and whatnot - let me know. Oh, and it requires CBA just like the default mission due to it using a Game Logic module(is this necessary, Zbug, or can it be replaced with a default ArmA 3 module?). ArmA 3 Tanoa + CBA Liberation: Download (Google Drive)
  8. dealman

    [MP][CTI-COOP] Liberation (beta)

    Are you referring to the actual M109A6 Paladin? Then you'd need to get RHS.
  9. dealman

    [MP][CTI-COOP] Liberation (beta)

    I believe Applejakerie is working on a Tanoa conversion, but you can also make your own conversion fairly easily. Really, it's just a matter of copying and pasting a few things. So long as you keep the same naming convention, it should more or less work right out of the box(biggest issue being due to a lot of stuff relying on LHD). It all depends on how you want to customize it, if you want to support RHS for example, you'll need to edit some scripts. There is a Wiki entry available on how to do it, but it's really vague and lacks a lot of important information to avoid errors and stuff breaking. I wrote a very detailed documentation on this as I started my Takistan conversion, but I was using firepad.io for the first time and thought that private notes would save. Turns out they didn't :P
  10. dealman

    [MP][CTI-COOP] Liberation (beta)

    Pretty easy, since we already know that opfor_squad_low_intensity is spawned only during a certain threshold, we can assume that we'll find relevant code by searching through all the files to see where it's being referenced. Rightly so, you'll find that it is indeed being used in F_getAdaptiveSquadComp.sqf. In this script, I think you'll find a particular liking in this little piece of code; if ( !isNil 'combat_readiness' ) then { if ( combat_readiness < 35 ) then { :)
  11. dealman

    [MP][CTI-COOP] Liberation (beta)

    Did you add it via the extension or directly in classnames.sqf? What if you try this; vehicle_repair_sources = [] + vehicle_repair_sources_extension + [ "YourClassHere" /*"B_APC_Tracked_01_CRV_F", "C_Offroad_01_repair_F", "B_Truck_01_Repair_F", "B_Slingload_01_Repair_F", "JNS_Skycrane_Pod_Repair_BLU_Black"*/ ]; I haven't touched this yet myself, so will take a deeper look at it later. Also keep in mind that the last entry in an array should not have a comma, I'm not sure how sensitive ArmA is to this - but it does tend to be rather stubborn.
  12. dealman

    [MP][CTI-COOP] Liberation (beta)

    The boxes need to be within ~6 meters of the rear of the truck, the dismount and look at the boxes. You should get an option to load the boxes. Then unload these at an FOB(I think it has to be an FOB?) and they'll be turned into ammo after a few seconds.
  13. dealman

    [MP][CTI-COOP] Liberation (beta)

    Why not just host it as LAN for 1 player if you want to play it SP? It should save when you return back to menu. :)
  14. dealman

    [MP][CTI-COOP] Liberation (beta)

    It's not a start option per-se. I'd make it such, but I absolutely and utterly despise the way ArmA does their interface. So for now, it's a matter of setting a variable to true or false in the gameplay_constants.sqf. There's not too many changes needed, but the scripts of importance here is startgame.sqf and huron_manager.sqf. I also added some other fixes such as removing the wreck before it spawns, in case it was destroyed at its spawn position. If you're interested, you can PM me and I'll show you what I've changed. I don't quite wanna release it publicly yet as there's still a lot to fix. Nah, I use neither LHD or Chimera(doesn't that require the option to start with an FOB pre-built?). Instead I place an object and use that as a "HQ Reference". In my current case, it's just the US flag. This is used to respawn players as well as the camera management. There are things I still have to fix, for example, vehicles spawned via the editor will still use fuel and as such you may start out using 30 out of 0 fuel. Another issue is you can't build in the HQ at the moment, but that shouldn't be too hard to fix. I'll also be adding a script so you can specify what vehicles should be respawned upon death for example you maybe have 2 hummvees and some quadbikes you want to respawn at base. @zbug: Do you have any plans to implement a feature so we can specify certain loadouts for the enemies? Instead of replacing them with a pre-set class? This is utterly useful for mods such as RHS where you want US vs insurgents rather than Russia. I'm currently using MAS MiddleEast which works - but the look and sound of MAS equipment makes me cringe all over. :P
  15. dealman

    [MP][CTI-COOP] Liberation (beta)

    After doing some testing with Kunduz, I've come to the conclusion it's not a very good map for Liberation due to a variety of reasons. I have since started over and I'm now using Takistan. I've modified the script to allow for starting with an HQ instead of starting on a carrier. Some more testing and tweaking to be done before the map's in an enjoyable state, but it's currently playable without any errors(thus far) and lets you choose whether you want to start with an FOB truck or an FOB box, it's also now optional to start with a transport helicopter(default is huron, but I've changed the script so stuff doesn't break if a huron is not present). Zbug, with your permission once I consider this mission to be in an enjoyable state I can upload it to my Google Drive for other people to check out if so desired. Also, if you wanna look into the changes I made, simply throw me a PM and I'll upload it for you to check out. :) I've also documented the stuff needed to migrate the mission to another map so it should be a very easy procedure.
  16. dealman

    [MP][CTI-COOP] Liberation (beta)

    I used EDEN to migrate Liberation from Altis to Kunduz and also converting it from using ArmA 3 assets to only using RHS assets without any issues whatsoever(well, apart from LHD). I haven't seen any objects being duplicated. To make sure, are these the reproduction steps? 1. Edit the mission(manually or via EDEN), add some objects. 2. Save it, pack it back into a PBO. 3. Play it a little, abort to save it. 4. Rehost My assumption here is that Liberation might be getting all objects when saving the mission, since when you build objects around an FOB they obviously need to be saved. If such is the case, it shouldn't be too hard to fix. I'll check it out later. :) Edit: Zbug, could you clarify as to what the opfor_point markers do and what are battlegroups, reinforcements? So do the opfor_points serve as reinforcement points...?
  17. dealman

    [MP][CTI-COOP] Liberation (beta)

    It should save automatically when you stop hosting, it stores the data in your ArmA 3 Profile as far as I know. New weapons can easily be added by modifying the mission, but requires knowledge on how to unpack and pack the PBO. ACE should work more or less out-of-the box with the exception for the reviving mechanic I would imagine. :)
  18. dealman

    [MP][CTI-COOP] Liberation (beta)

    While LHD is cool, it's absolutely dependent on the map having some ocean or rather large body of water(would look weird if not an ocean though). I think supporting both is viable, all the stuff is more or less there - it just needs to be modified into a less convoluted method. I found out after a lot of trial and error that a lot of logic depends on actual mission-specific objects. The fix is rather simple(even if a bit tedious), instead of using objects as a reference for spawning the Huron and FOB box for example - expose such positions directly in the scripts instead. I've already done some of it, but it's a bit of a mess and not particularly polished since I figured out how it works a bit too late. Once I'm done with my mission I can upload it and you can cross-reference to see what changes I've made to make it work. Alternatively, I might just make a cleaner version later as I'd like to move this onto Tanoa as well. Also, if anyone's interested, I've made some changes so a circle is drawn at every zone and FOB so it's a bit easier to know where you can and can not put an FOB. Do note, that it's still possible to "exploit"(go to border, deploy FOB, move closer to the zone and place it). (clickable screenshot) If anyone wants to do this, here's how to;
  19. dealman

    [MP][CTI-COOP] Liberation (beta)

    Aren't those spawned manually in the editor? I didn't bother adding Base Chimera in my version. I don't think I've seen any code spawning AI in either base?
  20. dealman

    [MP][CTI-COOP] Liberation (beta)

    Did you try changing this in gameplay_constants.sqf? GRLIB_side_friendly = WEST; GRLIB_side_enemy = EAST; Might be necessary to edit elsewhere as well, I'll let you know if I see anything. :) Edit: @zbug: I'm sure you're well aware, but there are some variables that are not assigned - resulting in lots of stuff breaking when trying to avoid using LHD. Thus far, I've found that these are unassigned; huronspawn(huron_manager.sqf) edit: I just noticed huronspawn is supposed to be a helimarker, derp. :D base_boxspawn(startgame.sqf) edit: also, this is a grass cutter. Wouldn't it be better to have these as configurable in the script? I went ahead and added those to gameplay_constants.sqf; GRLIB_CustomHelicopter_Spawn = [[5019.852, 1399.524, 0], 262]; // Dealman's Note: Used for replacing Huron, Z not necessary due to using ATL(At Terrain Level), last element is the direction. GRLIB_FOBBox_Spawn = [[4997.832, 1403.077, 0], 260]; // Dealman's Note: Same as above. I've got some fixes to do with the FOB box to make sure it spawns and repackages properly, last I tried it just disappears when repackaging it and did not respawn. But that should be an easy fix.
  21. dealman

    [MP][CTI-COOP] Liberation (beta)

    I believe what you're looking for is under scripts/shared/classnames.sqf and try changing this line; if ( isNil "elite_vehicles_extension" ) then { elite_vehicles_extension = [] }; elite_vehicles = [] + elite_vehicles_extension + ["B_UGV_01_rcws_F","B_MBT_01_TUSK_F","B_MBT_01_arty_F","B_MBT_01_mlrs_F","B_Heli_Attack_01_F","B_Plane_CAS_01_F","B_UAV_02_F","B_UAV_02_CAS_F"]; to this; if ( isNil "elite_vehicles_extension" ) then { elite_vehicles_extension = [] }; elite_vehicles = [] + elite_vehicles_extension + []; I haven't actually tested it, so I might be wrong. :)
  22. dealman

    [MP][CTI-COOP] Liberation (beta)

    I've also run into a bug where the deploy screen won't go away, it spawns me when I click deploy - then the deploy screen opens right back up. I was working on porting it over to the Kunduz map and converting it to use RHS instead of vanilla ArmA 3 stuff - and it's all been going well, even made it so that LHD isn't a dependency. Really all I can think of is the save system, last I recall I aborted after I died during a quick playtest. Dunno if that's what bugged it. I haven't touched any of the respawn scripts, and I can see it actually spawning me for a split second - so that's working. But I wiped the mission via parameters and it's still happening. Any ideas? Edit: It seems I had accidentally moved the west_respawn marker too close to my replacement for the lhd object, I assume that's what was causing it. I moved it back to the 'debug spawn' and now it works again. :)
  23. I'm currently working on a plugin for the EDEN editor and I'd like to notify the user whenever he uses my tools as it copies data to the clipboard. However, since hints and the like don't seem to work I can't seem to find a way to display a message whilst in the editor. Does anyone know if this is possible? Edit: I went through the 3den.pbo and found fn_3DENShowMessage.sqf and looked through it. From what I can understand, the editor uses the display ID if 313 and the text display uses ID 101(found these in resincl.inc). So I went in blind and simply gave this a shot, which unsurprisingly crashes ArmA 3. _parentDisplay = findDisplay 313; _display = _parentDisplay createdisplay "display3DENMsgBox"; _ctrlText = _display displayctrl 101; _ctrlText ctrlsetstructuredtext parsetext "Hello World"; I say unsurprisingly because quite frankly I have no clue what I'm doing, I've never really worked with the displays before. Any help would be greatly appreciated :D Crashing was happening because I need to disable serialization, I'm still trying to figure out whether we can easily make our own notifications or not. Edit2: I managed to get the message box to work, however I am still clueless as to how to make use of the notifications. It would be nice if we could easily add our own messages/notifications via dedicated functions for example BIS_fnc_DisplayCustom3DENNotification or whatever. Or maybe this is already possible, I just don't know how to nor have found information about it. I managed to find this bug report and I can now make use of the function without the game crashing. However, I can't seem to find a similar function for the notifications which would be utmost useful. Result; Edit3: So I found that there is a function I can spawn to display notifications with, BIS_fnc_3DENNotification. However it doesn't seem like you can enter a custom message, only choose one of the predefined ones. I'll see if I can re-write it to support custom messages, shouldn't be too hard. Shouldn't, then again this is ArmA :P disableserialization; [0] spawn BIS_fnc_3DENNotification; For example will display the Scenario saved message. Edit4: I finally managed to sort it out. See this thread if you'd like to see the code I made.
  24. dealman

    EDEN Editor Notification/Messages?

    Cheers for that, unfortunately it only allows for 2 different kinds of messages(green or red, with 2 different sounds). But I already made a function where I can change everything, which is rather odd we can't normally do otherwise since it looks like it's written to be easily modified.
  25. So, since you seemingly can't create your own custom notifications in the new EDEN Editor, I took upon myself the task of writing a new custom function which does this very thing. However, I have very little experience in scripting for ArmA 3, let alone creating my own function. After some research and vigorous wiki reading, I've got the function working to some extent. But I can't get my parameters to work, there simply is no documentation(at least none that I can find) on how to make use of params when calling a custom function. Currently this is the code I have; private ["_notificationText", "_notificationColor"]; [_notificationText, _notificationColor] spawn { params [ ["_notificationText", "N/A", [""]], ["_notificationColor", [0.35, 0.35, 0.35, 1.0], [[]], 4] ]; disableserialization; _display = findDisplay 313; _ctrlNotification = _display displayCtrl 10312; _ctrlNotificationTextHeight = ctrlTextHeight _ctrlNotification; _ctrlNotification ctrlSetStructuredText parseText _notificationText; _ctrlNotification ctrlSetBackgroundColor _notificationColor; _ctrlNotificationPos = ctrlPosition _ctrlNotification; _ctrlNotificationPos set [3, ctrlTextHeight _ctrlNotification]; _ctrlNotification ctrlSetPosition _ctrlNotificationPos; _ctrlNotification ctrlCommit 0.1; uisleep 2; _ctrlNotificationPos set [3,0]; _ctrlNotification ctrlSetPosition _ctrlNotificationPos; _ctrlNotification ctrlCommit 0.1; }; Which is called via this function and the intended syntax. ["Test Message", [0, 0.71, 0, 1]] call DT_fnc_DisplayCustom3DENNotification; However, no matter what arguments I pass when calling the function, it always uses the default values. As I said, this is my first time trying to create my own function and while the documentation on the params function is very nice, there's absolute no information whatsoever on how to use it when calling a function. So I've just been going with trial and error but I'm not getting anywhere. So any help would be greatly appreciated!
×