It might sound dumb to some, but I think it'd be awesome to play Battle Royale against AI. The only issue is keeping the AI within the ever shrinking circle. Hell, add zombies to it as well for the fun of it. Any chance of that ever being created?
|
Hey Cheeks. Just noticed your reply after I went online to see whether or not there was a Battle Royale singleplayer and noticed your request. Funny enough I had just gotten off of a DayZ singleplayer mod from this same website. Anyways I basically replied to this so that it could possibly be thrown up somewhere on top of the more recent "updated" requests so other mod authors could see this.
I could be 3 years late, and there may be no one that wants this anymore, but to any modders that are seeing this I think this would be a really cool mod to play, especially because I am a guy that prefers singleplayer and I don't want to ever touch Fortnite or pay extra for PUBG. So if anyone wants to tinker around with a mod I feel like a mod like this would be popular as long as it was in sight of the public. Also I think a mod like this would be really easy to amke. I may be wrong, but it seems like all you would need to do is get AI to parachute from the sky when you as a player do and they fall at random locations to keep the random "spawning" random, and this be the hard part. I think everything else would be easy by just copying and pasting DaiZy Faction's AI mechanics into this, let there be random loot and car spawns as always and that basically be it. Last man standing wins, and it is shown on screen with a debug how many AI are left alive. And as for the AI spawns, you may not even need to have the AI to fall from the sky. Maybe make a timer, say 5 minutes to allow you yourself to be able to loot up as the AI would need to spawn fully equip for the AI to be easily implemented, or something similar for AI to just randomly spawn and the max be say 50 for the whole map of Chernarus. The next bit may be tricky so that all AI wouldn't just be running randomly around Chernarus, but have their targeting sequence be that they walk to the closest living "human" (and I mean walk like in DaiZy Factions 3.0 to kinda balance it all out). This may be super easy if the way I explained it is do-able, but I am not very familiar with coding, else I would do this myself. Either way, if any mod author could do this please reply. I would be very interested in a mod like this and others who still visit this website might be interested in this as well. |
The hard part would be an ever decreasing circle ... as unlike other BR games, arma2 visual clue is limited.
The rest wouldn't be that hard to be honest. There have been some battle royale missions made for vanillia arma2 , I doubt would be that hard to convert to SP with AI. I personally don't see the appeal of PUGB and Fortnight style of play myself. To be honest, besides the "open world" aspect, almost all of DayZ Online multi-player is basically a battle royale with all the KOS players. It just doesn't force players or funnel them into ever-shrinking zones, which is the only real big difference. But , you could do something with map markers and timed triggers, it'd show on the map , but not specifically while looking around the world. You could use radiation as the shrinking zone kill/damage ... AI easy to spawn in via radio trigger , and a bit of extra scripting to seek out the human player. I have such a script somewhere ... it'll spawn in AI of various skill level and arms, and they will seek out any players ... it's all done via trigger and script. If you wanted to control what weapons and stuff spawn in ... I have a trigger based "random" spawn via map marker system ... one would just need to edit the script and add in what random weapons and items they want to see used. They were found on Armaholic site. |
Alright cool. I was thinking the same thing because I used to watch FrankieOnPC and he once did a Battle Royale video and I figured the conversion wouldn't be that hard. But I left out the decreasing circle in my other comment because I was thinking it would be best to just leave it out. The AI probably wouldn't be able to know they needed to get to the circle without a bunch of coding. That is why I mentioned about the AI being coded to walk to the nearest living entity. And as you stated it would probably be the hardest part. And for a mod I wouldn't be looking at a PUBG remake in Arma 2 but a similar yet slightly different mod.
But if I were familiar with mods or mod making I would see about the resources you mention and compile them together to make a mod, but I'm even less than a noob when it comes to this so it would be like handing a dismantled gun to a 6 year old and tell him to put it together lol. Thanks for the reply though. Do you know of anyone that would probably try making a mod like this, or do you think yourself that you'd be interested in both making a mod like this and playing it? I know I'm interested in it but I'm curious as the whether or not others would be to. I know PUBG and Fornite are popular, so I kinda thought a mod like this would be popular among the singleplayer community of Arma 2. And I should state that I can't connect to multiplayer servers because I have a terrible internet provider and on average my internet latency has been over 700 within the past 3 weeks, so just hopping into a DayZ server wouldn't be an option for me. And I also would prefer a type of Battle Royale without the zombies. It would seem to me they'd be more of a headache than something worth having in a Battle Royale mod. |
there is this :
old arma 2 BR I also suggest looking at Day of Survival here , and Olives Wasteland 1987 both SP "dayz-like" missions/mods. No zombies in those, it pits you against AI. But you have to wander and search for some combat , and supplies. I'm kind of in the same boat as far as multiplayer goes. I played DayZ epoch and overpoch ( even ran a server at one time) , and wasteland missions for a couple of years, I took a break from arma2 for about a year, came back and same ISP , but horrible ping and latency. I can connect to some servers ... but I'm playing like at 4-6 FPS , which as you know is totally unplayble. as far as a BR type of game ... thats not really my ideal thing to do. When I played online, I wasn't ever bothered about PvP , but the fact that everything was PvP did bother me. There seemed to be no "moderation, no "in between" as DayZ was intended. ( or opposite , PvE ... where you were "forced" to Co-OP , couldn't take vehicles, items from tents with-out "permission" ... it watered down the game big time. ) Most the great "mods" for dayz didn't stay up long, or even get "finished" ... aftermath, re-load, and many more ... Origins , Epoch/Overpoch kept going. I had ignored Origins for a long time , by the time I got interested in it ... my ISP issues were bad. Since I don't play games like fortnight and PUGB , I'm not too certain on how to start really scripting or setting one up , specifically. Closest thing I played to that kind of game was CS:GO ... and I only did that for about 10 minutes. I just don't get a "thrill" of player vrs player "combat" like others do I guess. maybe because I play airsoft in real life, and do it for real... I dunno. I've just never cared for or understood the appeal of PvP pure combat in videogames. I've seen over time that "popularity" means little when it comes to video-games. I'm not trying to say, people are "stupid" ... but that they lack imagination, and lack incentive to demand "better" from game makers. Very few actual "good games" gain attention and popularity ... if it hadn't been for DayZ mods, Arma2 would have failed and flopped. DayZ mods, kept it going, well beyond it's life-span. Same players though, scoff at games like Stalker ... which despite it's age and bugs, is a very well thought out, and interesting game. Metro thats coming out soon ... I guarantee it'll be a difficult game , and will get "bad reviews" , only die-hard Metro fans enjoying it ... because players just can't logg in , and go wreck someone easily ... Game industry is full of "failed" 'survival' games , and over-full of PvP battle-royale games. Even "star-wars" made it's PvP debut ... Players buy them , play them until it gets old ... they might jump back in to try latest "updates" , keep going for a bit ... but inevitably they will be as played as old street fighter , hand to hand combat games. I mean, you don't exactly see FrankieonPC going at a full Mortal Kombat tourney ... , or PSi Syn doing a review on Tekken number 10 ( or whatever latest one was.) ... Because, such games are well ... you can only go so far with em, and do so much ... they became "un-interesting". Sorry, I'm just very picky when it comes to "gaming" really. I'm not even really a "gamer" , lol ... I like a few games , and the rest are for other people I guess. I didn't even join in "DayZ mods" when it was ultra-popular ... I came in late. Then I didn't join to PvP ... even though I found I was decent enough at defending myself. I wanted to immerse myself into a zombie-apocalypse simulation ... make my own "stories". I even see potential and want to do things in the "dayZ mods" , that I don't have knowledge or skill to do ... and sadly, the folks that had the talent, have left and went onto other things. |
In reply to this post by Cheeks
Dynamic AI creator
I've never used this myself ... but was searching Armaholic, thought it might be of use to you. |
private ["_min_groups", "_max_groups", "min_group_size", "_max_group_size", "_number_groups", "_man_type"]; private ["_this_speed","_speed","_this_formation","_formation","_formation_count","_this_group","_this_man_odds","skill_odds","_skill_index"]; _group0 = Creategroup EAST; _group1 = Creategroup EAST; _group2 = Creategroup EAST; _group3 = Creategroup EAST; _group4 = Creategroup EAST; _group5 = Creategroup EAST; _group6 = Creategroup EAST; _group7 = Creategroup EAST; // ****************************************************************************************************************************************************************************** // SET UP STUFF IN HERE!!!! _min_groups = 2; // The mimimum number of groups that will be created _max_groups = 3; // The maximum number of groups that will be created. This number CANNOT exceed 8 _min_group_size = 3; // The minimum number of people a group can contain _max_group_size = 6; // The maximum number of people a group can contain. _start_distance = 200; // This is the minimum spawn distance for a group from the trigger point _max_distance = 400; // This is the maximum spawn distance for a group from the trigger point _max_enemy_distance = 100; // This is the maximum distance a group can be from the player as the group follows the player around // ****************************************************************************************************************************************************************************** // // This array contains the type of enemy soldiers that a group can contain. _man_type=["O_Soldier_F","O_officer_F","O_Soldier_GL_F","O_Soldier_AR_F","O_Soldier_AT_F"]; // The man odds give the chances of what type of soldiers the enemy group will contain. 100 is 100% // // For example, if _man_odds_group1=[100,70,60,10,5]; it means that the chances of O_Soldier_F being created are 100 - 70, which is 30%, for // O_officer_F, the chances are 70 - 60 which is 10% chance. And so on. Each group can have different odds. _man_odds_group0=[100,90,60,20,10]; _man_odds_group1=[100,70,60,10,5]; _man_odds_group2=[100,50,40,10,5]; _man_odds_group3=[100,95,40,30,25]; _man_odds_group4=[100,80,20,15,5]; _man_odds_group5=[100,50,40,10,5]; _man_odds_group6=[100,50,40,10,5]; _man_odds_group7=[100,50,40,10,5]; // ****************************************************************************************************************************************************************************** // // These numbers represent the time BEFORE each group will be spawned in. Times are in seconds. // // _group_spawn_delay_min=[30,45,30,60,60,30]; // _group_spawn_delay_max=[40,60,60,80,65,40]; // // The initial delay before any groups are spawned will be 30 seconds + random time of (40 - 30), so 30 seconds + random of 10 seconds. // The next group will spawn at 45 seconds + random time of (60 - 45), so 45 seconds + random of 15 seconds, and so on. _group_spawn_delay_min=[60,60,60,60,60,120,120,120,120]; _group_spawn_delay_max=[80,120,120,80,240,240,240,240,240]; _sleep_delay = 20; // This MUST be at least two times less than any of the _group_spawn_delay numbers // ****************************************************************************************************************************************************************************** // // The _speed_type array contains the various types of speed the group can operate at. _speed_type=["LIMITED","NORMAL","FULL"]; // The _speed_odds array uses the same chance principles as the man odds. // For example, _speed_odds = [100,60,30]; will give 100 - 60, which is 40% chance that the group will have LIMITED speed, and so on. _speed_odds = [100,60,30]; // The _formation_type array contains all the types of formations that each group can move to a waypoint with. _formation_type=["NO CHANGE","COLUMN","STAG COLUMN","WEDGE","ECH LEFT","ECH RIGHT","VEE","LINE","FILE","DIAMOND"]; // The _formation_odds array uses the same chance principles as the man odds. _formation_odds = [100,90,80,70,60,50,40,30,20,10]; // ****************************************************************************************************************************************************************************** _group_skill=[0.2, 0.3, 0.4 ,0.5, 0.6, 0.7, 0.8, 0.9]; _group_skill_level=["Novice","Rookie","Rookie","Recruit","Recruit","Veteran","Veteran","Expert"]; _skill_odds=[100, 95, 85, 70, 50, 30, 15, 5]; // Must contain the same number of entries as _group_skill // ****************************************************************************************************************************************************************************** _all_groups = [_group0, _group1, _group2, _group3, _group4, _group5, _group6, _group7]; _all_man_odds = [_man_odds_group0, _man_odds_group1, _man_odds_group2, _man_odds_group3, _man_odds_group4, _man_odds_group5]; _number_groups = floor(random (_max_groups - _min_groups)) + _min_groups; //hint format ["Groups %1", _number_groups]; _man_number = count _man_type; _formation_count = count _formation_type; private ["_i", "_j", "_k", "_odds", "_table_odds", "_this_man", "_skill_level"]; //hint format ["Position %1, %2",_spawn_position, _number_groups]; _skill_count = (count _group_skill) - 1; // ****************************************************************************************************************************************************************************** _group_counter = 0; _wait_time = 0; _delay_min = _group_spawn_delay_min select _group_counter; _delay_max = _group_spawn_delay_max select _group_counter; _delay_time = (random (_delay_max - _delay_min)) + _delay_min; _wait_time = _wait_time + _delay_time; _skill_index = 0; // hint format ["Initial Delay: %1", _delay_time]; while {alive player} do { if ( time > _wait_time) then { if ( _group_counter < _number_groups) then { _this_group = _all_groups select _group_counter; _this_man_odds = _all_man_odds select _group_counter; _group_size = floor(random (_max_group_size - _min_group_size)) + _min_group_size; _spawn_position = position player; _xpos = _spawn_position select 0; _ypos = _spawn_position select 1; _zpos = _spawn_position select 2; _distance = _start_distance + random (_max_distance - _start_distance); _angle = random 360; _xxpos = (_distance * cos _angle); _yypos = (_distance * sin _angle); _xpos = _xpos + _xxpos; _ypos = _ypos + _yypos; _spawn_position set [0, _xpos]; _spawn_position set [1, _ypos]; _spawn_position set [2, _zpos]; _odds = random (100); for "_i" from 0 to _skill_count do { _table_odds = _skill_odds select _i; if (_odds < _table_odds) then { _skill_index = _i; }; }; // hint format ["_skill_index %1, _skill_count %2", _skill_index, _skill_count]; _skill_level = _group_skill select _skill_index; _skill_level_name = _group_skill_level select _skill_index; for "_i" from 0 to (_group_size - 1) do { _odds = random (100); for "_j" from 0 to (_man_number - 1) do { _table_odds = _this_man_odds select _j; if (_odds < _table_odds) then { _this_man = _j; }; }; _man = _man_type select _this_man; _man createUnit [_spawn_position, _this_group,"this allowFleeing 0", _skill_level, "Private"]; }; hint format ["BANDITS NEAR: Group size %1, Skill: %2", _group_size,_skill_level_name]; _formation = _formation_type select floor random count _formation_type; _wp1 = _this_group addWaypoint [position player, _max_enemy_distance]; _wp2 = _this_group addWaypoint [position player, _max_enemy_distance]; _wp3 = _this_group addWaypoint [position player, _max_enemy_distance]; _wp1 setWaypointBehaviour "AWARE"; _wp1 setwaypointtype "MOVE"; _wp1 setWaypointFormation _formation; _wp1 setWaypointSpeed "Normal"; _wp1 setwaypointstatements ["True", ""]; _wp2 setwaypointtype "MOVE"; _wp3 setWaypointType "Cycle"; _group_counter = _group_counter + 1; _delay_min = _group_spawn_delay_min select _group_counter; _delay_max = _group_spawn_delay_max select _group_counter; _delay_time = (random (_delay_max - _delay_min)) + _delay_min; _wait_time = _wait_time + _delay_time; // hint format ["Initial Delay: %1", _delay_time]; }; }; for "_i" from 0 to (_group_counter - 1) do { _this_group = _all_groups select _i; _odds = random (100); for "_j" from 0 to ((count _speed_odds) - 1) do { _table_odds = _speed_odds select _j; if (_odds < _table_odds) then { _this_speed = _j; }; }; _odds = random (100); for [ {_j=0}, { _j < _formation_count}, { _j =_j+1 } ] do { _table_odds = _formation_odds select _j; if (_odds < _table_odds) then { _this_formation = _j; }; }; _speed = _speed_type select _this_speed; _formation = _formation_type select _this_formation; // hint format ["Speed: %1, Formation: %2", _speed, _formation]; [_this_group, 1] setWaypointSpeed _speed; [_this_group, 1] setWaypointFormation _formation; [_this_group, 1] setWaypointPosition [ getPosATL player, random (_max_enemy_distance) ]; [_this_group, 2] setWaypointPosition [ getPosATL player, random (_max_enemy_distance) ]; }; sleep _sleep_delay; }; Ok, thats all Dynamic AI spawn script I had left ... I only used it once, and all I can remember is ... you need to have your /init.sqf execute the script, you need an opfor dead body ( place unit from opfor down, drag his health to "zero" , put him where he can't be "found" ) use a radio trigger ... I always put the trigger to be set off by "anybody" ... once you pass the trigger in game, it'll spawn in the enemy group, and they will come seeking you out ... even if it's all the way across a map .... This will happen, every time you cross that trigger , or any other triggers you have placed ... Like you could have one trigger per "town" , at certain places like check-points ... a couple at the airfields ... Ai generated with this are somewhat "random" in skill level ... some are easy, some are aimbot hard. I searched armaholic trying to find the package again, ... but I didn't see it by general search. I know it came with an example mission ... but since I wound up not using the script myself, I didn't save any part of it, except for a test mission I ran once. |
this line here :
_man_type=["O_Soldier_F","O_officer_F","O_Soldier_GL_F","O_Soldier_AR_F","O_Soldier_AT_F"]; thats the "units" that spawn ... these will always be under OPFOR ( east) side, no matter if you use independent units .... You can change the classnames in this line, to spawn different units. Each one needs a "dead body" somewhere accessible on the map ... as in place the unit in editor ( like in debug area, or small deserted island no one cares about going to ) ... and slide thier health over to nothing. That leaves em "dead" right after they spawn/load in ... I don't know why those are important to have, but I remember the script didn't work unless I did that too. There's two ways to "run" the script ... either copy the script code in the init line of each trigger , or run a execute command line to run the script from the same init file. like say you name the file in the game folder ... "DynamicAiScript.sqf" ... then you'd put this in the init line of the trigger : [] execVM "DynamicAiScript.sqf"; There are other ways to run it, but those are the most simplest ways I found. |
At one time, I was kind of working on a Stalker-sandbox " survival" mod , I used the script and code ... because I wanted players to "trigger" random packs of "bandits" that would seek them out and cause trouble ...
In the code , is numbers you can change spawn distance , how far away or how close ... I kept everything default. Usually the AI spawned "out of sight" , and came in the area in about 3-5 minutes for the first wave. This is also "random" , but it will spawn one group , sometime later it will spawn another ... and possibly a third "wave" a bit later from that. Each "group" is variable on skill level , one might be super easy to shoot down, the other be tactical, hard, flank you ... ect. ( I think other AI scripts added to your mission, might improve such behavior as well. ) Now keep in mind, this is a very SIMPLE script and means to achieve some desired results. I think say like dayz DZAI has a bit more ... versitility , or could ... but I actually do not understand how to use those systems myself. |
Thanks for the reply. I'm the same way when it comes to PVP gaming. Not much of a fan of it. The only difference is that if I feel in the "mood" for a PVP style game I want to be able to do it by myself, so this is where the bots come in. And I also agree with you on how the players don't know what they really want in terms of gaming. I feel like the PUBG and Fortnite stuff is highly overrated and will soon die out. I heard that Black Ops 4 was doing something with Battle Royale and that they were going to abandoned singleplayer all together, but I think that this is going to bite them in the rear-end because Red Dead Redemption 2 is likely going to be the game that changes the gaming industry and makes people realize that their gaming doesn't need to be a Battle Royale type of gameplay to be up to modern standards, and that singleplayer is truly not dead.
But what I was asking for was a type of DayZ style Hunger Games, just without the Cornucopia as a spawn point and without the DayZ zombies. Either way, I can already have a type of style game play like this with DayZ X because I tried changing a bit of coding for the zombies and it screwed their spawns up so they don't spawn, leaving me with a type of Wasteland mod without the vendors. I was just looking for more of a meaning for this type of play through than just going around killing everything that walks. I guess I was asking for a bit more of a end-game and the thought of knowing you were the last one standing. And as for the code you gave me and the links, I think I'll just not touch it. Don't have the time to try and mess with this anymore sense I have a job and I probably wouldn't know what to do with it anyways. Thanks for the time you put into giving me the resources though. |
In reply to this post by benevolentdevil
And I forgot to mention I had tried the Wasteland 1987 mod a few months back, but it isn't what I was expecting. It can be pretty buggy a times (once died changing clothes lol), and you can have a Apache helicopter lock onto you from 2km with missiles. If it wasn't for the helicopters it would probably be a good mod, but for the most part the helicopters are the main reason I don't play it, and is probably the main reason why I ended up here lol.
|
ahhh ... yeah, I forgot about the helicopters ...
I usually avoid em , so forgot about em ... Thats a part of that also keeps me from enjoying more of the DaiZy missions ... helicopters are a pain, especially when you only armed with a makarov or winchester ... ammo limited ... I understand the designers/makers were seeking ways to challenge the SP ... I think though ... in the aftermath of an apocalypse , infrastructure would not be helicopter "supportive" ... vehicles should be very rare that are running , and fuel almost non-existent. ( Or if there was a cache of fuel , it would be hoarded/guarded. It'd be an almost "priceless commodity" in reality.) Like really ... wtf is making ammo for the aircraft to fire? The infected? ... ........................................................... I might try my hand at doing some form of BR type mission for you ... I'm not so certain it will have all the dayz bells and whistles though ... would wind up being more "vanillia arma2 oa " in content ... I didn't offer that before , simply because I have other projects I'm working on ATM, not sure how much time I'd have to making a custom mission as such. I do agree with you on the point of ... most dayz lacks any real kind of "end game" ... most lack task, or minor objectives to do even. It's all pretty much, run here ... grab loot , get some weapons ... aviod zombies, kill AI , and repeat. |
I'd appreciate seeing a type of BR mod, but you don't have to make one, especially if you are already working on other things.
And yeah DayZ can get boring. One of the reasons why I'm looking for another type of survival to move on to. It's so repetitive, and I feel like in every DaiZy mod that the AI needs adjusting because I hate killing 6 AI in Grishino, going to Gorka and kill 6 AI there to securely loot and to look for a tire, and return to Grishino to another 6 AI that I have to kill again before I can securely fix a vehicle. My favorite DayZ singleplayer mod is likely DaiZy Factions 3.0.2, but like I was saying the AI spawns are a bit to much sense 6 AI seem to spawn in every town. And I agree with you. Depending on how much time has past, there wouldn't be a civilization left to build and maintain aircraft, so seeing helicopters takes away from the survival aspect of the game. But again you don't have to make a mod like this if you don't want to. I was just "updating" this post so any mod authors looking to fool around with something had an idea of something to work on that I would like to play. And by the time Red Dead Redemption 2 releases, I'll likely never be playing the mod anyways lol. That game might have exactly what I'm asking for and then some. But again thanks for your replies and the resources you sent me. |
Free forum by Nabble | Edit this page |