Jump to content

Search the Community

Showing results for tags 'framework'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • BOHEMIA INTERACTIVE
    • BOHEMIA INTERACTIVE - NEWS
    • BOHEMIA INTERACTIVE - JOBS
    • BOHEMIA INTERACTIVE - GENERAL
  • FEATURED GAMES
    • Vigor
    • DAYZ
    • ARMA 3
    • ARMA 2
    • YLANDS
  • MOBILE GAMES
    • ARMA MOBILE OPS
    • MINIDAYZ
    • ARMA TACTICS
    • ARMA 2 FIRING RANGE
  • BI MILITARY GAMES FORUMS
  • BOHEMIA INCUBATOR
    • PROJECT LUCIE
  • OTHER BOHEMIA GAMES
    • ARGO
    • TAKE ON MARS
    • TAKE ON HELICOPTERS
    • CARRIER COMMAND: GAEA MISSION
    • ARMA: ARMED ASSAULT / COMBAT OPERATIONS
    • ARMA: COLD WAR ASSAULT / OPERATION FLASHPOINT
    • IRON FRONT: LIBERATION 1944
    • BACK CATALOGUE
  • OFFTOPIC
    • OFFTOPIC
  • ArmA Toolmakers's Releases
  • ArmA Toolmakers's General
  • Die Hard OFP Lovers' Club's Topics
  • Japan in Arma's Topics
  • Arma 3 Photography Club's Discussions
  • The Order Of the Wolfs- Unit's Topics
  • 4th Infantry Brigade's Recruitment
  • 11th Marine Expeditionary Unit OFFICIAL | 11th MEU(SOC)'s 11th MEU(SOC) Recruitment Status - OPEN
  • Legion latina semper fi's New Server Legion latina next wick
  • Legion latina semper fi's https://www.facebook.com/groups/legionlatinasemperfidelis/
  • Legion latina semper fi's Server VPN LEGION LATINA SEMPER FI
  • Team Nederland's Welkom bij ons club
  • Team Nederland's Facebook
  • [H.S.O.] Hellenic Special Operations's Infos

XBOX Live


PlayStation PSN


Origin


PlayFire


SoundCloud


Pinterest


Reddit


Twitch.Tv


Ustream.Tv


Duxter


Instagram


Location


Interests


Interests


Occupation

Found 12 results

  1. Apex Framework

    ArmA 3 Apex Framework Version - 1.1.3 (5/12/2018) Compatibility - A3 1.86 Download (Github) Support (Discord) Email - armacombatgroup <at> gmail Documentation (Github) Donate (Patreon) Enjoy ______________________________________________ Terrains: Altis Tanoa Malden 2035 Mission Types: Invade & Annex: Apex Edition. Classic I&A style mode. Sector Control. Domination-style Sector Control mode. Campaign. Insurgency-style campaign mode. Custom. Disable the objectives and use the integrated systems (including advanced Zeus systems) to support your own custom content. Gameplay: Edited Raw Features: Advanced AI behaviors: suppressive fire, building clearance, logistics & helicopter use, dynamic close air support & mortar support, regrouping, automated medics, vehicle repair, demolitions, house/building suppressive fire, stance adjustment, inter-squad communications, evasive behavior, attack & defend routines, tactical commander, organic intel gathering to decide where to commit soldiers & resources. tracer rounds to make battlefield more visceral, custom jungle spawning & patrol routines built for Tanoa. Ambient civilians and wildlife. Custom wildlife and civilians at missions, using high-performance techniques to ensure they don't reduce FPS. Geo-typical dynamic weather. Weather for Altis/Stratis/Malden taken from Lemnos data, Tanoa weather taken from Fiji data. Persistent and full yearly cycle. Storm simulation & fog reduction. Dynamic day/night cycle. Accelerated nights, accelerated noon, slowed down at dawn & dusk. Cinematic AO lighting on dark nights. Persistent and full yearly cycle. Dynamic missions. Players can create tasks and objectives for each other. Recruitable AI. Players can recruit AI to help with the fight, either as engineers, fire support, fully integrated automated medics, etc.. Wide range of enemy weapons. Enemies use a wider array of weapons that those defined in config. 70+ custom player interactions. Intuitive and custom player interactions using the action menu (familiar to veterans and newbies alike). Custom menu system. Menu system supporting custom buttons, player options and link buttons to your community website. Full difficulty scaling by player population. Dynamic AI difficulty. New and interactive side missions. Custom Zeus systems. Keybindings (numpad) to support on-the-fly Zeus missions, including garrison, patrol, attack, suppressive fire, player revive, unit incapacitation, and hunting/stalking logic. Custom medical system. An intuitive and simple medical system for public server play, not buggy! Revive, stabilise, medevac, carry, drag, load, unload, ambulances, field hospitals, AI revive. Custom MOUT operations. urban warfare AOs for Tanoa & Altis. Player damage modeling. Dynamic damage modeling to make playing against AI more fun. Admin tools. Admin tool menu with a range of options for moderators, admins and developers, including a custom dev terminal. Anti-cheat. A proven anticheat custom-fitted into the mission, caught about 30 cheaters on the development server over 16 months. Anti-troll. A system to resist and counter common forms of griefing. Restart schedule. A custom restart schedule built into the mission to provide graceful restarts, reminding players which server they are on and time-until-restart. Helmet-cam live feed. Players at base can watch a live feed of operations. Enemy capture. Capture enemies and imprison them. Blue Force Tracker. High detail blue force tracker system with dozens of configurations, including custom enemy info on the map display. Earplugs. Squad radar HUD. Visibility & View Distance menu. Magazine repack. Backpack locking. Parajump backpack-to-chest. Explosives charge 'attach to surface'. Gameplay Leaderboards. Track transport pilot effectiveness, top medics and other objective-based metrics. Semi-persistent (weekly ladder). Dynamic Simulation. Server-side dynamic simulation and client-side optional dynamic simulation to improve FPS and performance. Logistics, Towing, Hauling & Mounting, Carrying & Dragging. Custom system to facilitate towing, and mounting of static weapons to suitable vehicles. Also linked directly to ingame Vehicle-in-Vehicle system for seamless logistics. Enhanced Slingload rope controls. Adjust rope length during flight and seamlessly attach Taru pods to Taru helicopters with simple controls. Forward Operating Bases. Forward operating bases built directly into the framework, with logistics tasks, respawn tickets, vehicle respawns, ... Aircraft Carrier (USS Freedom). Dynamic aircraft carrier can be toggled on and off with a mission parameter, spawns at random locations, fully supported with vehicle respawns, player respawns, optional defensive turrets, and field hospital mechanics. Destroyer (USS Liberty). Dynamic destroyer can be toggled on and off with a mission parameter, spawns at random locations, fully supported with vehicle respawns, player respawns, optional defensive turrets, optional naval artillery, and field hospital mechanics. 40+ Custom object compositions. Many missions spawn custom scenes to add a fresh and replayable element to the missions. Custom vehicle & uniform skins. A variety of custom and realistic military skins created for this framework. Monetization solutions. Servers cost money, so we have put in solutions to reward players for donating. Custom cosmetics system for patches, uniforms and vehicle skins, and whitelisted lobby roles. Monetization license. You may use this framework on monetized servers. Highly polished. Considerable time spent polishing and ironing out bugs and rough edges, a necessary part of professional development missing from many other mission offers. Performance. Surprisingly high FPS (both client & server) for the amount of action going on, smooth and doesn't stutter. Change Log: https://github.com/auQuiksilver/Apex-Framework/blob/master/Apex_framework.terrain/documentation/_Change Log.txt Mods supported: Blastcore Edited (standalone) by Opticalsnare JSRS soundmod by LordJarhead Mods integrated: Advanced Rappelling by duda Mag Repack Custom skins (third party designers): A sample of the vehicle & uniform skins that come as a separate content pack for use with the framework, purchased from third-party designers. Notes: Do not use AI mods like VCOM and ASR. There is an AI system built directly into the framework. Youtube development channel: https://www.youtube.com/user/QuiksiIver/videos License: Monetization permitted APL-SA (you have permission to modify and publish the modified version for others to download/use). Credits: coming soon
  2. RED FRAMEWORK A collection of useful functions for mission maker. Website under construction: http://www.redframework.com Version: 1.0.9 Release date: 11-03-2018 WORKSHOP: https://steamcommunity.com/sharedfiles/filedetails/?id=1226877632 GITHUB: https://github.com/RedBelette/RED_FRAMEWORK LICENSE: https://github.com/RedBelette/RED_FRAMEWORK/blob/master/LICENSE MISSION TEMPLATE (take it for a quick start !) https://github.com/RedBelette/RedFramework-Simple-Template https://github.com/RedBelette/RedFramework-TGV-Template INITIALIZATION - Voice is disabled for players (just for ingame recorded speeches, not VOIP). - Saving is disabled. FUNCTIONS ace improvements // This feature allows you to use a huntir ammo as a satellite that you can later use via ACE's huntir monitor. _huntirAmmo = [satellitePos] call RF_fnc_huntirSatellite; Action mecanism Trigger (by script) in arma are very useful but contain a lot of code to do something. We need to create new paradigm to replace it and to enhanced the behavior. We need an action mechanism. An action is to execute something when the condition is true. In more we can specify if the action is a one shot or in a loop. Maybe you want that the action is timed also. By creating a registry of action we can start and stop an action. // This function acts as a trigger and executes code when a condition is true. _action = [_condition, _codeAsString, _params(*default=[])] call RF_fnc_action; // This function acts as a trigger and executes code when a condition is true with a delay time. _action = [_condition, _codeAsString, _delayAsSecond, _params(*default=[])] call RF_fnc_delayedAction; // This function acts as a trigger and executes code every x seconds. _action = [_condition, _codeAsString, _timeToTheNextExecutionAsSecond, _params(*default=[])] call RF_fnc_repeatedAction; // This function acts as a trigger and executes code when a condition is true on the targeted remote side. _action = [_condition, _codeAsString, _params(*default=[]), _target(*default=0)] call RF_fnc_remoteAction; // This function acts as a trigger and executes code when a condition is true with a delay time on the targeted remote side. _action = [_condition, _codeAsString, _delayAsSecond, _params(*default=[]), _target(*default=0)] call RF_fnc_remoteDelayedAction; // This function acts as a trigger and executes code every x seconds on the targeted remote side. _action = [_condition, _codeAsString, _timeToTheNextExecutionAsSecond, _params(*default=[]), _target(*default=0)] call RF_fnc_remoteRepeatedAction; // This function opens a register of actions, allowing you to start or stop an action. call RF_fnc_actionRegistry; // The RF_fnc_actionRegistry function needs to be called beforehand to open an action register. _action = [_actionIdAsString, _actionAsReturnedAction] call RF_fnc_addAction; // This function allows you to find an action in the action register. _action = [_actionIdAsString] call RF_fnc_getAction; // Activate the action from the action register. [_actionIdAsString] call RF_fnc_runAction; // Desactivate the action from the action register. [_actionIdAsString] call RF_fnc_stopAction; // Remove action from the action register. [_actionIdAsString] call RF_fnc_unregisterAction; Ai behavior // Surrender occurs when the remaining units of the desired faction are below the desired minimum number. _trueOrFalse = [_side, _minUnitsToSurrenderTheSide] call RF_fnc_makeSideSurrender; // Order the entire faction to defend an area around a radius. [_side, _position, _radius] call RF_fnc_sideDefendArea; Ambience // Flash on the desired area (like zeus). [_position, _delay(*default:0)] call RF_fnc_lightningBolt Animation // Play a looping animation with the playMove instruction [_unit, _animClassName] call RF_fnc_playMoveLoop; Condition // Check if the unit is inside a vehicle _trueOrFalse = [_unit] call RF_fnc_isInVehicle; // Checks if a player is close to an entity following a radius _trueOrFalse = [_entity, _radius] call RF_fnc_isPlayerNearEntity; Converter // Convert string on side ojbect _side = [_sideAsString] call RF_fnc_convertSideStr; Heli control // Initialize a helicopter so that it stays quietly on the ground. [_group] call RF_fnc_heliInit; // Order the helicopter to land in the desired area. [_group, _position] call RF_fnc_landHeli; // Send the helicopter to fight. [_group, _position, _radius] call RF_fnc_sendHeliToFight; // The helicopters unload the units present in an area and then disappear. [_vehicle, _landingPosition, _getOutPosition] call RF_fnc_unloadUnitsWithHeli; Init // This function allows you to wait for the end of the loading screen. call RF_fnc_loadingComplete; waitUntil {loadingFinished}; Layer // Enable 3den editor layer. [_layerIdAsString] call RF_fnc_enableLayer; // Disable 3den editor layer. [_layerIdAsString] call RF_fnc_disableLayer; Mission generator This engine offer to you a complete engine to manage tasks and missions. You have a completer CRUD fort the task to create, changing state, close or remove it. You can also generate a random mission with a little configuration from description.ext. // Creates a new mission in the framework and generates an Arma task. This task may not be visible to players. _missionIdUnique = [_missionIdAsString, _side, _parentMissionIdAsString, _title, _description, _taskType(*default="default"), _taskDestination(*default=objNull), _taskSetCurrent(*default=false), _taskPriority(*default=0), _taskNotification(*default=true), _taskSharing(*default=false)] call RF_fnc_createMission; // Closes the mission identified by the missionID passed in parameter. By default, the status of the mission will be successful and an alert will be displayed. [_missionIdAsString, _taskStatus(*default="SUCCEEDED"), _taskShowHint(*default=true)] call RF_fnc_closeMission; // Returns true when the mission is closed. _trueOrFalse = [_missionIdAsString] call RF_fnc_isMissionClosed; // Return the task state of the mission _taskStatus = [_missionIdAsString] call RF_fnc_missionState; // Returns all the cities of the map. _locations = call RF_fnc_locations; // Return a random location of the map. _randomLocation = call RF_fnc_locationGenerator; // Generate a random mission based on the description.ext. (see config on the bottom) _missionIdUnique = call RF_fnc_missionGenerator; // Generates an example mission based on the condig file or past parameters. _missionIdUnique = [_side(*default=config), _helicopterClassName(*default=config), _unitsClassNameArray(*default=config)] call RF_fnc_spawnMissionHelicopterCrashInTown; Spawn // Create units. _group = [_side, _unitsClassNameArray, _position] call RF_fnc_spawnUnits; // Create garrisons around an area based on the description.ext or parameters. _allGroups = [_position, _radius(*default=config), _side(*default=config), _unitsClassNameArray(*default=config), _randomDistance(*default=config)] call RF_fnc_spawnGarrison; // Create patrols around an area based on the description.ext or parameters. _allGroups = [_position, _radius(*default=config), _side(*default=config), _unitsClassNameArray(*default=config), _radiusPatrols(*default=config)] call RF_fnc_spawnCirclePatrols; // Create a helicopter and teleport the group inside to the desired position. After landing the helicopter drops off the group, returns to its starting position and disappears. [_groupWillTeleportedInsideHeli, _spawnPosition, _landingPos, _heliClassName(*default="B_Heli_Light_01_F"), _side(*default=west), _driverClassName(*default="B_Helipilot_F")] call RF_fnc_spawnByHeli; Spectator // This script will allow you to create the spectator's mode. (config acre and tfar inside) call RF_fnc_spectator; // Add an action into object to enter spectator mode [_object] call RF_fnc_addSpectatorAction; Ui // Displays an image in full screen for a given time. [_imagePath, _timeInSecond] call RF_fnc_imageFullScreen; // Displays an image in full screen in the sky during a given time. [_imagePath, _timeInSecond] call RF_fnc_imageInSky; // Simplify the code to create a progress bar. [_object, _progressBarId, _titleAction, _titleBar, _codeAsString, _cancelCodeAsString, _parametersToTheCode, _timeInSecond, _actionType(*default=0), _actionParent(*default="ACE_MainActions"), _actionIcon(*default="")] call RF_fnc_progressBar; // Displays the name of the scenario and its author at the bottom right. [_missionName, _byAuthor] call RF_fnc_scenarioTitle; Vehicle // Charge a group of players in the cargo of a vehicle. The basic moveInCargo instruction is defective in MP. [_group, _vehicle] call RF_fnc_moveInCargo; Zeus // Allows zeus to modify all new spawner units by script. call RF_fnc_makeAllUnitsEditableForAllCurators; // Allows to make editable all the objects passed in parameter. [_objectArray] call RF_fnc_makeObjectsEditableForAllCurators; Zombie /* * The mod zombie Ryan's spawner module seems to pose performance * concerns in MP so here is a spawner optimize. * * Parameters * side: west, east, ... * gameLogic: gameLogic module * numberByWave: number of Z max spawned by wave. * time: delay between wave * type: (default: mediumCivilian) * - fastCivilian * - fastSoldier * - fastCivilianAndSoldier * - mediumCivilian * - mediumSoldier * - mediumCivilianAndSoldier * - slowCivilian * - slowSoldier * - slowCivilianAndSoldier * - walkerCivilian * - walkerSoldier * - walkerCivilianAndSoldier * - demon * - spider * - brittleCrawler * - mixedZombie * - mixedZombieNoSpiderNoCrawler */ [_side, _gameLogic, _numberByWave, _time, _type(*default:'mediumCivilian')] call RF_fnc_zSpawner Configuration in description.ext (optional) // Example class RedFrameworkConfig { class missionCfg { addItemEarPlugs=true; putInEarPlugs=true; putSafeMode=true; }; class MissionGenerator { missionPaths[] = { // HERE THE PATH OF YOUR MISSION "pathofmission1.sqf", "pathofmission2.sqf" }; }; class combatPatrol_CfgEnemis { side = "east"; // HERE THE DEFAULT SIDE }; class combatPatrol_SpawnCirclePatrols { // HERE THE FUNCTION DEFAULT VALUES distance = 200; unitTypes[] = {{"LOP_US_Infantry_SL", "LOP_US_Infantry_Rifleman_4", "LOP_US_Infantry_TL"}, {"LOP_US_Infantry_MG_2", "LOP_US_Infantry_MG_Asst"}, {"LOP_US_Infantry_Rifleman_2", "LOP_US_Infantry_Rifleman_4"}, {"LOP_US_Infantry_Rifleman_2", "LOP_US_Infantry_Rifleman_4", "LOP_US_Infantry_MG_Asst", "LOP_US_Infantry_MG_2"}}; radiusPatrols[] = {50, 100, 200}; }; class combatPatrol_SpawnGarrison { // HERE THE FUNCTION DEFAULT VALUES distance = 100; unitTypes[] = {{"LOP_US_Infantry_SL", "LOP_US_Infantry_Rifleman_4", "LOP_US_Infantry_TL"}, {"LOP_US_Infantry_MG_2", "LOP_US_Infantry_MG_Asst"}, {"LOP_US_Infantry_Rifleman_2", "LOP_US_Infantry_Rifleman_4"}, {"LOP_US_Infantry_Rifleman_2", "LOP_US_Infantry_Rifleman_4", "LOP_US_Infantry_MG_Asst", "LOP_US_Infantry_MG_2"}}; ramdomizeDistance = 80; }; class combatPatrol_missions { class combatPatrol_helicopterCrashInTown { // HERE THE FUNCTION DEFAULT VALUES helicopterClass = "B_Heli_Light_01_dynamicLoadout_F"; unitTypes[] = {{"LOP_US_Infantry_SL", "LOP_US_Infantry_Rifleman_4", "LOP_US_Infantry_TL"}}; }; }; }; CHANGELOG ## 05-02-2018 version 1.0.1 - ADD RF_fnc_moveInCargo - FIX RF_fnc_spawnByHeli with the new move in cargo (MP fail) ## 05-05-2018 version 1.0.2 - FIX RF_fnc_moveInCargo: brute force moveInCargo with infinite loop protection ## 05-10-2018 version 1.0.3 - ADD RF_fnc_lightningBolt to flash on desirated area. - ADD RF_fnc_spectator create the spectator's mode on client - ADD RF_fnc_addSpectatorAction to addAction your object with the previous spectator's function. - ADD RF_fnc_zSpawner to spawn Zombie and Demons with more performance in MP ## 05-10-2018 version 1.0.4 - ADD Configure your mission with features: add and put earplugs, security safemod for weapons. // Example description.ext: class RedFrameworkConfig { class missionCfg { addItemEarPlugs=true; putInEarPlugs=true; putSafeMode=true; }; }; ## 05-13-2018 version 1.0.5 - FIX counter variable's name mistake, '_' missing CHANGELOG version 1.0.6 ## 05-20-2018 - HOTFIX: Resolve default value on the init - HOTFIX: Partial hotfix for RF_fnc_moveInCargo and RF_fnc_spawnByHeli CHANGELOG version 1.0.7 ## 06-02-2018 - ADD capabilities to recieve code instead string for the executed job. - ADD capabilities to recieve parameters - ADD remote action for all the types of actions see action mecanism for more details ## 07-15-2018 version 1.0.8 - FIX when you try to configure earPlug with description.ext ## 11-03-2018 version 1.0.9 - FIX move in cargo for MP
  3. DesolationREDUX has released our first Alpha build, v0.1.0. Server files are now available for hosting your own server. Server Files Download Instructions can be found at DR Wiki Support at DesolationREDUX Forums This post will cover two projects that are really one in the same. DR Project is a collection of a Mod Framework, DB Extension, Assets, Tools, Plugin Repository, and Terrains. DesolationREDUX is a survival mod using all that, working as a showcase for everything. The mod is currently in beta testing as we continue to add in the original planned features. Progress has been going very well, and we are pleased enough with how things are working that we decided to post up here. The hope, when completed and released, is that other mod makers will be able to take our work and make their own projects with them. The DR Project is open source, and will be released under APL-SA. Code, assets, terrains, will all be able to be used and edited by the community at large. ArmA Plugin Management System (APMS) The ArmA Plugin Management System (APMS for short) was created to add a plugin framework into ArmA. It allows for server owners to easily add and remove content from their server. Developers can create server-sided "plugins" that can add key binds, add events, add buildings to the map, and add SQF code. It also allows Developers to create a custom .cfg file to add control to the content within their plugin. The APMS system is the core for DesolationREDUX. Everything within the mod runs through the Plugin Manager; all key binds, events, and map edits. APMS WIKI The benefits of the APMS are as follows: Customizable keybinds created by the server. All aspects of a plugin can be customized by the server owner via the .cfg file. Managed events for both server and player. Managed Actions. Ability to easily add and remove features from a server. Managed map edits, spawned before the server has finished starting. Installation of plugins is incredibly easy. Simply place the plugin PBO into the Addons folder of @DesolationServer. Place the plugin CFG into the Config folder of @DesolationServer. Add the plugin name into the Plugin managers PluginList.cfg file. Done RedEx: REDEX WIKI Key features are: - Supports 64Bit and the new CallExtension with Arrayarguments. - Has an builtin mechanism to load additional config whitelisted Modules dynamically, so no need for plugin writers to struggle with the ArmA CallExtension API, you get wonderful objects containing "key -> value" associations, where you simply can call: `extArguments.get<unsigned int>("itemAmount")` or `extArguments.get<std::string>("listName");` and you return ArmA strings. Everything else like handling strings that are to long is done by LibRedex. - Supports sync, async and quiet async calls (calls that do not return any data) - Has a wide range of functionality to make life easier: -- Random lists that connect an chance with an item, like they are used for Loot spawn. -- Random lists of numbers (you request what kind of numbers you want, how many and in which range) -- Getting real world time in different formats like epoch(unix) time, an date array. -- Handling of file input and output on in the config defined files. -- You can define if an file readable, writable or even only readable one, which use useful to hide data. -- An module to call whitelisted urls and the Steam API, for example to get informations about VAC Bans etc. -- An build in client which can connect to an middle ware to allow ArmA to communicate with other tools like an admin web framework, as example we provide an Discord Bot, that does allow the players to request the current Performance and Server Stats. -- And of course an database connector. Database specific features: -- Does support multiple Databases like MySQL(MariaDB) and PostgreSQL, additional support for Stores like Redis are easy to implement. -- All IDs are based on UUIDs, so no longer waiting until data is committed to the Database to get back the identifier of an Object. Just request an UUID, set it as ID for the Object and then tell the System to commit the Object. -- All sql querys are sanitized additional most of them use prepared statements. -- Some function calls like "update objects" are dynamic and don't need all data to be supplied, for example you only want to update the position of the car? fine! only send the position. -- The goal of the design of the database itself was to fulfill all possible needs we could imagine. As Plugin writer perspective this means you should not need to change anything database related, all object and character information are stored automatically. This includes also variables starting with an specific Prefix as well as skins etc. -- In case of objects we provide the "svar_" prefix, so if someone would like to add a coins system, they could store the current coin count of the object ins "svar_coins". -- In case of an Player we provide "svar_" and "pvar_" both work the same as in case of objects, but the difference is "svar_" is bound to the character, so if the character dies the variable is lost, while "pvar_" is bound to the player profile, so if an character dies these variables are still present on a new character. Last is useful to save for example the skills an player has earned. -- There are also more advanced features, like the database is able to save the connection of two or more objects, so you can attach an box to the roof of an car and after the server restart the box is still attached to the car. -- An encryption library using an PSK set in the config to validate the hash of objects, and encrypt text in general. We created a couple tools along the way for server managers to use. Admin Tools: The DesolationREDUX Web Administration Panel is a plugin to help with server administration via the use of a fully configurable website panel which allows the server owner to define groups and permissions for all the staff. This panel allows the server administrators to be able to start, stop and restart the server. It allows admins to view all the logs on the server to allow them to help catch hackers! Server admins are able to view the chat of all servers on one simple web page. Server owners can use the web panel to setup and configure groups and permissions for a web based RCON tool to allow banning, un banning, kicking, remote chatting and much more. Server Manager: This tool is aimed at server owners who want to make server management easy as it aims to remove the annoying server start bat files. It will be GUI based and allows for easy server configuration. The Administration tool takes up the task of automatically restarting your server via a time picked by the server owner. It allows the installation of plugins via just one click as it works alongside the script Plugin Repository System. It allows server administrators to be able to easily add and remove parameters to their servers without the use of a bat file. Most importantly, it has support for multiple servers so managing more than one server could not be easier. The tool is C# based and currently only set up for Windows platforms. As of quarter 2 2017, C# received Linux support, but we have not done any Linux support for the Server Manager. It is planned. Plugin Repository: The DesolationREDUX Script Repository will be a website hosted on a sub domain of DesolationREDUX which hooks into our forums authentication system. This website will allow users of the community to easily publish plugins/ scripts to our website, push changes and updates to the plugin, and give a detailed description of the plugin. This website will be moderated by our forum moderators and staff to ensure nothing malicious is submitted. This repository will also be included in my Server Administration Tool, and will allow server owners to simply click a plugin on the repository to install it directly to the server. Vehicle and Loot Spawn Location Tool: The Vehicle and Loot Spawn Location Tool is used to get your own custom spawn location. This may be necessary for custom buildings, or to simply add your own touches to your server. These tools are located in Eden Editor, and are very simple to use. Due to the way in which REDUX spawns vehicles, the tool is needed for accurate position locating. Upon finding your locations, simply go to any text editor and "paste". It will paste the appropriate code config information. Server Discord Bot: The discord bot is a simple to install bot that provides easy access to server information such as Server FPS, CPS, Active Threads, Server Uptime, Player Count, Online Players, and has the option for the server owner only to shutdown the server. It is recommended this tool is placed in it's own channel as the players seem to love checking it. All assets we create, or port from the A2/TKOH data packs, will be made available as a separate download once REDUX goes into Beta. These assets will include magazine items, map objects, weapons, structures, characters & gear, and vehicles. All assets will be available unbinarized so they can be edited to suit the users needs. We hope these assets will be taken to supplement the available A3 assets, and used to create more interesting content for the ArmA community. All we ask is that we are credited with providing the source files and any derivatives are shared with the community. As for terrains, that portion of the project is on hold until we complete DesolationREDUX. Once the mod goes into Beta, the modeling team will move over to creating assets for a western themed map. We originally had plans for a map based on the San Juan Islands. This may still happen. Will have to see what the team feels like creating when we get there, but we will be creating a US based terrain and appropriate assets. Some of the project members also have their own side terrain projects that will be released as well most likely using available A2 ported assets and A3 assets. Thanks to past and present dev team members, and those that have contributed content. Present Kegan BigBen Legodev Optix TheKnightTemplar ComatoseBadger Nex ImUnleasheD JMaster Zisb CrazyMike Movinggun SonicSound Ducky Contributors DL++ (Has contributed some assets including journal image as well as shared ideas while he works on his No Cure mod) Argument (his released source files for open A2 buildings have been edited to fix many config issues and AI paths for use with A2 missions) Jonpas (for allowing us to use and edit his Theseus Services assets) Screamer (for our branding images and game icons) Kol9yN (Provides us with our custom animations) Past Dirty Sanchez ANixon David3D Natu StokesMagee Cronicash
  4. Hi, looking for a scripter to solve this Flowchart Theoretical Framework', via use of scripts. I am a videographer, not a scripter or anything technical. Basically, using what apex has given us, have put down a load of modules and triggers in a planned manner, all related around tasks and briefings, along with scripts within triggers filling in the gaps which will make the changes when certain conditions are met. The hypothesis is that these modules should be able to add up/correlate so an objective can either be completed or failed, with the (missing) script in triggers making the missing links. Why do i not do it? Because 1) Not a scripter 2) It would take me a decade to crack it If you take it on and crack it; - include a 'noob' definition of how it works - Add me on steam - Will give you credit in my video for theory, with possibly more rewards Check the link for a image of the theory, along with mission.sqm https://www.dropbox.com/s/e4kc066vn329dsz/Theory.png?dl=0
  5. Hello everyone, I started editing and scripting on Arma since March / April. After some creations of missions, I felt the need to build a framework to regain my developer habits. So far we had taken over the framework f3 that we had adapted. For the time being, we are reviewing the whole system. I would like to solicit you because I want to take a good habit and do a good job and can be, in a future that I hope close, make the community benefit from a flexible framework, powerful, easy to use even for beginners. We also have a rather nice reference project to play. Currently in French but we will translate it later. This implementation creates a battle zone where 300 units compete in real time. However, if you do not have a powerful machine, I advise you to go through a server. This should please you. Just before you provide the links, I warn you that the code is under development and that it still takes time to make it all mature. So I ask the community to follow the development, in order to provide advice. I also ask you to kindly test the reference mission. Of course, if you are interested by the subject ;-) Framework implementation https://github.com/RedBelette/TGV_MissionFramework_Template Wiki https://github.com/RedBelette/TGV_MissionFramework_Template/wiki (update required) Reference implementation https://github.com/RedBelette/RED_co9_op_anger_of_the_west.Kunduz (Youtube video = Milsim Live from beta5) Another reference implementation https://github.com/RedBelette/RED_co9_virgin_territory.kobbvatn (Youtube video = Cutscene) Client / Server Timer Demo https://github.com/RedBelette/RED_EX_TIMER.VR PS: No license, made what you want about the code, it's gift ;-) Bonus: An interteam was made with 45 players on the Kunduz map. More than 400 units were created from the mission. This proves me that the TGV framework is rather stable;) Here is a video summary made by the team 126RIM. Update This project is canceled and will no longer be updated. In fact, it is completely reworked in an addon named "Red Framework". Much more convenient for updates. A Beta version is available here: http://steamcommunity.com/sharedfiles/filedetails/?id=1226877632 A technical demo here : http://steamcommunity.com/sharedfiles/filedetails/?id=1230760053 We need a lot of Beta Tester. Are you interested ? Regards, RedBelette
  6. Hi, For those who don't know, Arma has a framework to check for an event on each frame of the game (similar to the sleep/sleepUI commands but unscheduled, so higher priority). Currently, there's no easy way to make it consider objects (or indeed any other data) that does not have a global name. This basic framework can let you add events easily based on time (it uses diag_tickTime fyi). Also, you can pass custom functions to it not based on time and write out the outcomes yourself (bit more advanced). If you specify a timeout parameter (in seconds), it will only execute your code once the timeout is up. Without a timeout specified, it will execute your code on each frame. FORMAT This is the format for using it: _thisEventHandler = [arguments,code,timeout (optional)] call horde_fnc_addMissionEventHandler; The rules are that the arguments you pass to it must be in an array. So these are ok: [[player],myFunction,10] call horde_fnc_addMissionEventHandler; [["string"],myFunction,10] call horde_fnc_addMissionEventHandler; [[player,"string"],myFunction,10] call horde_fnc_addMissionEventHandler; Using a single argument is NOT ok: [player,myFunction,10] call horde_fnc_addMissionEventHandler; // bad ["string",myFunction,10] call horde_fnc_addMissionEventHandler; // bad There's no error checking currently* so as long as you stick to the format, then you're ok. EXAMPLES ein) _fnc = { player sideChat format ["%1",_this select 0] }; [["hello"],_fnc,2] call horde_fnc_addMissionEventHandler; [["poopy"],_fnc,3] call horde_fnc_addMissionEventHandler; [["fluffy paws"],_fnc,4] call horde_fnc_addMissionEventHandler; Prints "hello" on screen after 2 seconds, then "poopy" a second later, then "fluffy paws" a second after that. drei) _fnc = { missionNamespace getVariable ("horde_gv_eachFrameArgs_" + (_thisEventHandler toFixed 0)) params ["_unit","_moving","_notMoving"]; if (vectorMagnitude velocity vehicle _unit > 1) then { systemChat format ["%1 is %2",_unit,_moving] } else { systemChat format ["%1 %2",_unit,_notMoving] } }; TAG_movingIndicatorID = [[player,"moving","not moving"],_fnc] call horde_fnc_addMissionEventHandler; Infinite loop informing player if he/she is moving or not by systemChat. Note that we no not define the timeout (3rd parameter in the arguments). You can stop it in this example by using the return (TAG_movingIndicatorID) TAG_movingIndicatorID call horde_fnc_removeMissionEventHandler; // stops the sideChat zwei) _fnc = { missionNamespace getVariable ("horde_gv_eachFrameArgs_" + (_thisEventHandler toFixed 0)) params ["_unit","_moving"]; if (vectorMagnitude velocity vehicle _unit > 1) then { systemChat format ["%1 is %2 - deleting EventHandler",_unit,_moving]; _thisEventHandler call horde_fnc_removeMissionEventHandler } }; [[player,"moving"],_fnc] call horde_fnc_addMissionEventHandler; This is a function that is not dependent on time so the 3rd parameter of the arguments does not need to be defined. If the unit passed to it moves, then it prints a message and then quits. Note that the deletion is specified in the function. CBA I just wanted to mention cba as they have a great system for this sort of thing, but if you want to use it, then you have to be comfortable with mod dependencies. This is a poor man's system that lets you manage an unscheduled event system without mods. ALWAYS DO BETTER If you can write something faster/better than this then please comment and post your code in here so we can all benefit. My code's not great but works ok I think. I'm sure there's better ways of doing it but I can't think of them right now. FUNCTIONS horde_fnc_addMissionEventHandler = { params ["_args","_code","_timeout"]; private _thisEventHandler = -1; if (isNil "_timeout") then { _thisEventHandler = addMissionEventHandler [ 'EachFrame', _code ]; } else { _thisEventHandler = addMissionEventHandler [ 'EachFrame', horde_fnc_missionEventHandlerTimeout ]; _args pushBack [_code,diag_tickTime + _timeout] }; missionNamespace setVariable ["horde_gv_eachFrameArgs_" + (_thisEventHandler toFixed 0),_args]; _thisEventHandler }; horde_fnc_missionEventHandlerTimeout = { private _args = missionNamespace getVariable ("horde_gv_eachFrameArgs_" + (_thisEventHandler toFixed 0)); _args select (count _args - 1) params ["_code","_timeout"]; if (diag_tickTime > _timeout) then { _args deleteAt (count _args - 1); _args call _code; removeMissionEventHandler ["EachFrame",_thisEventHandler]; missionNamespace setVariable ["horde_gv_eachFrameArgs_" + (_thisEventHandler toFixed 0),nil]; }; true }; horde_fnc_removeMissionEventHandler = { removeMissionEventHandler ["EachFrame",_this]; missionNamespace setVariable ["horde_gv_eachFrameArgs_" + (_this toFixed 0),nil]; true }; Ta * = I could put this in if required but it will slow the execution down a bit
  7. I am proud to present a new framework for mission makers to use. Thanks to the initial feedback, the framework was rewritten to utilize the latest scripting commands added for improved performance, as well as proper MP support with broadcasting / global events. Global events can be raised from any machine, and handlers registered to on client machines are remote executed when an event is raised. JIP is still being looked into for integration. IGN Event Framework gives mission makers custom event support, being able to define events, add handlers, and raising events. The framework was originally developed back in 2014 when I released Tiger Shark on the steam workshop (which heavily used it for updating tasks and controlling mission flow). Most of the 'pilot xxx' missions on Steam Workshop also use this framework. Download: http://www.mediafire.com/file/6c5o9louso1583o/IGN_EH_v1_1.zip The download comes with demo missions, documentation, and in 2 flavors - the typical scripted approach, and CfgFunctions approach, with instructions on how to install using both. There is also debug mode support, Documentation is included with a list of all calls and explanations for each in the Docs folder. There is a manual.pdf included, but it's not complete by any means. There are also some functions for creating functors/function objects, but this is still work in progress. Changelog: v 1.1: - added path parameter to IGN_EH_INIT.sqf, which lets you specify the path where IGN will compile scripts from. Useful if you wish to move the folder to a different directory. - compileFinal used instead of compile - rewrite of all functions to utilize new scripting commands (push, params, etc) - added proper MP support with global events and remote handlers - added new demo mission IGN_EH_MPDemo1_DedicatedServer.VR which showcases using events on dedicated server with clients - updated documentation v 1.0 - Initial Release Demo Missions: IGN_EH_SPDemo1.VR - a mission with 3 tasks using the traditional scripted approach IGN_EH_SPDemo2.VR - same mission, this time using the CfgFunctions approach IGN_EH_MPDemo1_DedicatedServer.VR - same mission, tweaked to use both Global and Local events Please feel free to leave feedback and any bugs encountered using this.
  8. Original post in spoiler above. This topic is no longer supported, because the project has moved to another development team. Our continuation of PRA3 will be available soon. Thanks.
  9. SQF Classes for ArmA 3 Edited - release updated with a couple of bugfixes - if you downloaded prior to 6pm GMT on 29 October then please re-download to get the corrected files. "If . . . [the] fact [that brutes abstract not] be made the distinguishing property of that sort of animal, I fear a great many of those that pass for men must be reckoned into their number." -- George Berkeley Many times when scripting in SQF it may occur that implementing object-oriented techniques can simplify or enhance certain abstractions. The technique of using getVariable/setVariable on a unit or gamelogic to store function code or references specific to that unit's situation is a common pattern found in many missions and modules. Here, that idea is taken one step farther: instead of storing functions on game objects, we store an array of class names (representing a chain of inheritance or a mixture of interfaces). Meanwhile, a master Classes array holds a subarray for each defined class, containing a function definition for each class method. With this arrangement and just a handful of primitive functions, an unlimited variety of classes and methods can be declared on-the-fly while a mission is running. Release (.zip): https://github.com/dwringer/a3system/releases/tag/v1.0 Code: http://github.com/dwringer/a3system/tree/master/ClassDemo.Tanoa This is a selection of modules drawn from a larger repository I keep at http://www.github.com/dwringer/a3system/. There, more recent versions of these modules can often be found. I also placed other modules I created over the years, which are of variable quality and may or may not be worth a look. Class layout Lambda Macros Example overview This will demonstrate how to create abstract instances and send messages (method calls) to them. The included example is a mission with four men (crew_1..crew_4) and two vehicles (car_1, car_2). You may easily duplicate it in a different map if you don't have Tanoa available. There is a single Radio Alpha trigger, upon whose activation the following scripts are executed: CG = ["CrewUnitGroup"] call fnc_new; [CG, "assign", crew_1, "driver"] call fnc_tell; [CG, "assign", crew_2, "gunner"] call fnc_tell; [CG, "assign", crew_3, "driver"] call fnc_tell; [CG, "assign", crew_4, "gunner"] call fnc_tell; [CG, "assign", car_1, "vehicle"] call fnc_tell; [CG, "assign", car_2, "vehicle"] call fnc_tell; [CG, "board_instant"] call fnc_tell; Here, fnc_new is how we create a new instance. It accepts the class name and any init parameters appended to it (here there are none). We could also put a Game Logic in the editor instead of using fnc_new, and in its init use the following: _nil = this spawn { waitUntil {not isNil "ClassesInitialized"}; [_this, "CrewUnitGroup"] call fnc_instance; .. rest of code .. }; The method calls are actually made with fnc_tell, which takes as parameters the class instance, method name, and subsequently each method parameter. Thus, all methods to all classes are defined and called using a standardized syntax and set of functions which have been precompiled. Since fnc_instance makes an instance out of an existing object, we can also use it for creating class inheritance. Consider the following: DEFCLASS("MySubClass") ["_self"] DO { [_self, "SuperClass"] call fnc_instance; .. rest of code .. _self } ENDCLASS; Now, MySubClass inherits all the methods from SuperClass. Each game object keeps an ordered list of its class assignments, so if a method is not found on MySubClass it will be looked up on SuperClass. I have provided the macros SUPER and SUPER_ARGS in include\classes.hpp to facilitate subclassing from within classdef header files. If you want to create a subclass method that implements a superclass method under a different name, that can be done by looking up the class alist in the Classes global alist and using the function contained there as a new method. In classdef files, this has a macro called ALIAS(subclass, subclass_method, superclass, superclass_method). Another example Without further ado, the link to the repository containing the above example mission folder and all required modules is: Release (.zip): https://github.com/dwringer/a3system/releases/tag/v1.0 Code: http://github.com/dwringer/a3system/tree/master/ClassDemo.Tanoa Good luck, and if anyone creates some useful classes or a cool class tree, I'd love to hear about it. Even if this just serves as an example of what can be done to (ab)use SQF, I am satisfied. "No point in mentioning these bats, I thought. Poor bastard will see them soon enough." -- Raoul Duke Edited - release updated with a couple of bugfixes - if you downloaded prior to 6pm GMT on 29 October then please redownload to get the corrected files. There were changes made to fnc_tell and fnc_filter related to nil values being passed as parameters. Edited - added another example section
  10. [framework no longer works as intended due to some new game updates - I might break it down and release certain scripts that work]
  11. . . . Making missions is tough, it really is. On top of learning a metric ton of scripting commands and SQF syntax, mission makers are also expected to extensively test their scenarios and hope to god everything falls into place as expected. Although it's a job that can feel unrewarding, make no mistake: without missions, no community can exist, and by definition, neither can the ArmA series. So how do we solve these two problems? How do we kindle the interest in making scenarios within the general player-base, without forcing people to spend precious time learning extensive scripting? Throughout the years, BromA - my community of choice - struggled with missions who had a standard of quality, something we could rely on and that wasn't gonna just break at one point or another, pissing off all players and ruining the session. And so, we've started to develop a template for all of our missions, which through lots of testing and debugging, would be stable enough to use and simple enough to be actually utilized. Long story short, as time went by and we got a bit better at scripting, here we are. The Framework comes with a robust and flexible Plugin system, which makes sharing functionality across missions super easy - take a look on what's already implemented. Another powerful feature is the ability to make your missions completely retroactive compatible with any gameplay mods you might want to use: in uses no modules placed from the editor, spawning them all through scripting. On top of making the mission.sqm cleared of clutter that might stop your mission from loading, this also means many module settings are linked to the mission parameters, enabling an unprecedented level of customization. Some of the features include: ACE3, AGM, TFAR, ACRE2, ALIVE and DAC are fully integrated. AI spawning system, complete with unit caching for performance. Cargo loading made simple. Casualty Cap and Body Removal. Casualty Cap for civilians. Commander Lock. JIPs handling. Limit player movement to the AO. Loading screens. Mission time limit. Respawn system with tickets and respawn waves. Setup Zones. Spawn protection. Tasks system which is very flexible and simple to understand. Team Roster. Team killing warning. Very effective Loadout System. Well organized and scenario-agnostic. Important note: this Framework absolutely requires CBA to run. You may need to use a modified version of DAC, compatible with HC to run this properly. Please keep in mind DAC is Silola's work and therefore we ask everyone to keep distribution to a minimum. Yes. Although we don't have any binds like DAC to make its use easier, it's still entirely possible to use ALIVE in your missions and several of our mission makers already have. This project was developed and grew alongside me and its contributors as a great learning experience. As one would expect, we utilized a lot of reference and cannibalized many scripts written by other awesome ArmA modders, so let me stress this as much as I can: although the vast majority of the scripts utilized in the framework have been extensively modified to fit in as a proper Plugin with many hours dedicated to make everything would work, credit to the original authors is fully retained and this is in no way an attempt to upset anyone. That said, this Framework is open-source and free for everyone to use and abuse; if you want to credit me for any of it go ahead but otherwise I really don't care. However, the same might not be true for the authors of the original scripts so please be considerate and don't remove the licenses I've included. List of all Framework contributors. Special Thanks: Ferstaberinde for his work on the F3 Framework and Naught & Olsen for the Core Framework, which basically inspired this one into existing. The BromA and /a3g/ communities, for being nice sports and keeping things always fun to be around. You, for reading all this crap. Although in the future I plan on making a series of video tutorials explaining how to properly utilize every aspect of the Framework, so far the best I've managed is a bunch of dumb streams of myself making missions. This might help you get started on it, but otherwise I recommend the Wiki for documentation. This project is young and still has a long way to go: If you run into some trouble or just have any questions, please hit me up on Steam any time and I'll get back to you ASAP. As a small side note, someone has taken the time to impersonate me on reddit; I do not ever post there so please, kindly ignore whatever is in that account. We hope this Framework helps you to finally make those mission scenarios you've always wanted to make, and then more. Thanks for giving it a shot!
  12. Hello, Today i am asking if any advanced scripters are happy to take on the job of helping to create a Altis Life 'Like' variant. I wish to create a user friendly and mod friendly Life framework that is free to use. Features include the normal altis life like features: Cops, Civs, Federal Reserve, shops etc. Some of the features i want this framework to include in the default build are: Dynamic Economy and Market system, Custom Textured Phone/Tablet, Local Banks as well as the federal reserve up for robbery. It will also an inbuilt admin panel which will have multiple uses such as; comping players, banning and kicking (maybe), whitelisting (maybe), teleporting, godmode and a vehicle and weapon spawn system. This project will be 100% FREE, only that i ask that you leave the crediting in the files. Their are currently a Head Developer spot which i will give to a veteran scripter who can manage the overall development. I will just manage content of the mission file. Notes for anyone who is thinking of becoming a developer: Since i am looking to get skilled scripters any previous work would be great. Application Link: http://goo.gl/forms/cPkvxKOaeU This application's results will only be seen by myself and my community's other owner. Please only apply if you are serious Regards, Rowantrek
×