kellz Posted December 10, 2018 Share Posted December 10, 2018 I'm looking to make a custom Invade and Annex mission for my private server. I want to gut every single script besides the objective ones, so the side OBJS, the main AO, and the like. I want to remove the earplugs, vehicle rearm system, TK system, etc; any script that isn't related to the generation of the AOs. Problem is that I do not even know where to start with doing this. I also want to add in custom RHS units, though that is at the bottom of the priority list compared to removing all the scripts. I have seen this thread and this thread but there wasn't any information that I could use to complete the process or even getting anywhere close. I am using the most recent IA version on Altis, 3.9.9. I'd just like to know where to start and how to go about doing something like this Link to comment Share on other sites More sharing options...
Stanhope Posted December 10, 2018 Share Posted December 10, 2018 1 minute ago, kellz said: I am using the most recent IA version on Altis, 3.9.9. Latest version is 3.3.10 which should've gone live on the servers today I think. 2 minutes ago, kellz said: remove the earplugs InitPlayerLocal.sqf line 44: [] execVM "scripts\misc\earplugs.sqf"; < remove that 2 minutes ago, kellz said: vehicle rearm system Remove the ingame triggers that call the scripts in Invade_&_Annex_3_3_10.Altis\Scripts\vehicle and alter Invade_&_Annex_3_3_10.Altis\Functions\Base\fn_BaseManager.sqf to remove references to those triggers. 4 minutes ago, kellz said: TK system In initplayerlocal remove lines 5 to 39. In Invade_&_Annex_3_3_10.Altis\Functions\revive\fn_handleDamage.sqf remove all the remoteExecs of AW_fnc_killMessage and you can delete that function as well. Let me know which other things you want to get rid of but can't get rid of on your own Link to comment Share on other sites More sharing options...
kellz Posted December 10, 2018 Author Share Posted December 10, 2018 Epic, thanks. I'll go and do these and see what else I gotta remove Link to comment Share on other sites More sharing options...
Stanhope Posted December 10, 2018 Share Posted December 10, 2018 Oh yea, forgot to mention: to change the units over to RHS you'll have to edit the following files: Invade_&_Annex_3_3_10.Altis\Functions\AI\fn_mainAOSpawnHandler.sqf Invade_&_Annex_3_3_10.Altis\Functions\Units\* Invade_&_Annex_3_3_10.Altis\Functions\Supports\fn_airfieldJet.sqf Invade_&_Annex_3_3_10.Altis\Missions\* All those files have some mention of a vanilla unit you'll have to replace by RHS units. Link to comment Share on other sites More sharing options...
kellz Posted December 10, 2018 Author Share Posted December 10, 2018 So far so good. Next on the list would be the arsenal restrictions, the revive system, weapon sling, and the role-specific items and abilities (such as only pilots can fly helicopters or restricting certain weapons or equipment to certain in-game roles). I'm sure there are more, but these seem to be the last of the bunch that are important to remove for what we want to do. Thanks for your help again. A side note and not relevant to the above, I'm surprised ahoyworld has not simply released a template without all the scripts present as-is. I realize that ahoy can do whatever it pleases as it is their scenario and mission, but with how often it gets asked, it'd just make the whole process easier. EDIT: the bluforce tracker that shows friendly POS on map I gotta remove too. Link to comment Share on other sites More sharing options...
Stanhope Posted December 10, 2018 Share Posted December 10, 2018 Remove [] execVM "scripts\misc\QS_icons.sqf"; from initplayerlocal for the blufor tracking, remove anything that says derp revive from all the inits and the onplayerrespawn, weapon sling is called in onplayerrespawn with ["Respawn"] spawn AW_fnc_slingWeapon; and for pilots remove player addEventHandler ["GetInMan", { [] spawn AW_fnc_restrictedAircraftSeatsCheck; [] spawn AW_fnc_restrictedGunnerSeatsCheck; }]; player addEventHandler ["SeatSwitchedMan", { [] spawn AW_fnc_restrictedAircraftSeatsCheck; [] spawn AW_fnc_restrictedGunnerSeatsCheck; }]; from initplayerlocal. Role specific items are done by the arsenal, you can either make an open arsenal or remove the arsenal all together. The arsenal is called with _arsenalDefinitions_handler = execVM "Scripts\arsenal\ArsenalDefinitions.sqf"; from initplayerlocal, more code follows that is also related to the arsenal. Link to comment Share on other sites More sharing options...
kellz Posted December 11, 2018 Author Share Posted December 11, 2018 All the above is done and working flawlessly except for the RHS units. I've gotten the vehicles in game; easy enough. Getting the actual infantry groups into the main AO was something else; I attempted to put them in but they simply didn't spawn. How would you go about adding them in? For reference, I've only tried this in Invade_&_Annex_3_3_10.Altis\Functions\AI\fn_mainAOSpawnHandler.sqm EDIT: I've removed the lines that in initplayerlocal related to the pilot restriction, but it is still happening. Not sure why. Link to comment Share on other sites More sharing options...
Stanhope Posted December 11, 2018 Share Posted December 11, 2018 7 hours ago, kellz said: I've gotten the vehicles in game; easy enough. Getting the actual infantry groups into the main AO was something else; I attempted to put them in but they simply didn't spawn. How would you go about adding them in? For reference, I've only tried this in Invade_&_Annex_3_3_10.Altis\Functions\AI\fn_mainAOSpawnHandler.sqm How are you adding them into that file? Currently they're being called via the missionconfigfile. Now that contains a path to where the vanilla groups are defined, you'll need to redefine that to where the RHS groups are defined. 7 hours ago, kellz said: I've removed the lines that in initplayerlocal related to the pilot restriction, but it is still happening. Not sure why. You've got to ask that to @ansin11, he completely reworked that since I last touched it. Link to comment Share on other sites More sharing options...
ansin11 Posted December 11, 2018 Share Posted December 11, 2018 17 hours ago, kellz said: A side note and not relevant to the above, I'm surprised ahoyworld has not simply released a template without all the scripts present as-is. I realize that ahoy can do whatever it pleases as it is their scenario and mission, but with how often it gets asked, it'd just make the whole process easier. Because I & A is not a clean, organized enterprise project. We're not using version control and we ignore a lot of software engineering standards. We should probably change that. But then again I have no idea how they did it in I & A 4 and how far they are with it, so maybe we are doing it by now. As for AW_fnc_restrictedAircraftSeatsCheck, it (should) only be added to the two Event Handlers Stan already mentioned, so if you removed those two lines, you should be fine. Did you save your changes and restart the test run? The GetInMan and SeatSwitchedMan Event Handlers stick to their unit even after respawn. Link to comment Share on other sites More sharing options...
Ryko Posted December 11, 2018 Share Posted December 11, 2018 2 hours ago, ansin11 said: But then again I have no idea how they did it in I & A 4 and how far they are with it, so maybe we are doing it by now. Um... not abiding by any specific standards for 4, either, so... sorry Link to comment Share on other sites More sharing options...
Stanhope Posted December 11, 2018 Share Posted December 11, 2018 3 hours ago, ansin11 said: We're not using version control and we ignore a lot of software engineering standards Isn't the gitlab being used any more? Also what's a coding standard? I've never heard of that Link to comment Share on other sites More sharing options...
GhostDragon Posted December 11, 2018 Share Posted December 11, 2018 I tried @Stanhope I really did im happy to let everyone know that future code for server back end will be provided using gitlab and forked for ahoyworld use. Meaning the public release will be separate from the aw but close, will also possibly have Linux versions. Link to comment Share on other sites More sharing options...
Stanhope Posted December 11, 2018 Share Posted December 11, 2018 1 hour ago, GhostDragon said: will also possibly have Linux versions. Make it in java then you'll by default also have linux support Link to comment Share on other sites More sharing options...
GhostDragon Posted December 12, 2018 Share Posted December 12, 2018 3 hours ago, Stanhope said: Make it in java then you'll by default also have linux support You do realise that file paths still change from \ to / in linux right? BTW python is usually more powerful in linux than windows...... Link to comment Share on other sites More sharing options...
kellz Posted December 12, 2018 Author Share Posted December 12, 2018 Yeah, I've removed the lines from the appropriate file for the seat restrictions but no dice. Still not working, and I've restarted a dozen or more times. Does the same on our dedi server. Is there a way to just assign someone as a pilot without naming them "Pilot" in their role? That'd work just as good if it is possible. Also, I'm having trouble removing the revive system fully. I have insured that any mention of derp_revive or revive in general is out of all of the inits. The revive system itself doesn't seem to execute, so it's out, but it also seems that it still interferes with ACE. I am not able to use ACE, ACRE and a few other mods in the server. I figured it might be a mod conflict, but I then just deleted the entire revive folder to see if I could then use ACE and ACRE and it worked fine. Is revive being called / executed from somewhere else? Link to comment Share on other sites More sharing options...
Stanhope Posted December 12, 2018 Share Posted December 12, 2018 8 hours ago, kellz said: s revive being called / executed from somewhere else? It's references in the functions define that is in the functions folder (I think) Link to comment Share on other sites More sharing options...
ansin11 Posted December 12, 2018 Share Posted December 12, 2018 Well then just either delete or rename [...]\Functions\SeatRestrictions\fn_restrictedAircraftSeatsCheck.sqf or remove class restrictedAircraftSeatsCheck {}; from [...]\Functions\cfgfunctions.hpp and have a look where the now undefined function generates errors. Isn't this the obvious way to go when removing something? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now