Jump to content

itsatrap

Member
  • Posts

    353
  • Joined

  • Last visited

  • Days Won

    2

Reputation Activity

  1. Like
    itsatrap reacted to hogscraper in New Block Garage Door   
    Don't know if this would work as I'm not sure how you would save the values but I used to use this to spawn vehicles on their top/side/at angles for scripted wrecks in A2. Would be amazing if I could use an MTVR and not have to have an airlock that people can crawl through.
     
    https://community.bistudio.com/wiki/BIS_fnc_setPitchBank
     
    BIS_fnc_setPitchBank = compile preprocessFileLineNumbers "ca\modules\functions\objects\fn_setPitchBank.sqf";
     
    [_object,_pitch,_bank] BIS_fnc_setPitchBank;
  2. Like
  3. Like
    itsatrap got a reaction from Donnovan in Statistics Based on Server Log File   
    hmm, why drop the database when update ?
  4. Like
    itsatrap reacted to Bags2247 in New GUI   
    Fair call mate...understood
  5. Like
    itsatrap got a reaction from kat in Overpoch Config Trader Entries / Setup   
    please make an Zip or bette GITHUB :)
  6. Like
    itsatrap reacted to BetterDeadThanZed in 125548 on DayZ Commander   
    Hey, you get what you pay for. DotJosh isn't under any obligation to update anything. Besides, now that the stable branch of Arma 2 OA has been updated to the latest beta version, opting into the beta is no longer required, making it easier for players to update to Arma 2 OA 1.63.
  7. Like
    itsatrap got a reaction from Defent in [PHP] Live kill feed   
    Had some more fun :)
     
    http://towel.dk/kills.html#ChernarusCharts
  8. Like
    itsatrap got a reaction from crazycarl in Tracking player name changes...   
    First Create the DB
    CREATE TABLE IF NOT EXISTS `player_alias` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` varchar(255) DEFAULT NULL, `PlayerNames` text, PRIMARY KEY (`id`), UNIQUE KEY `uid` (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; Then add this trigger
    DELIMITER ; DROP TRIGGER IF EXISTS `updateName`; DELIMITER // CREATE TRIGGER `updateName` AFTER UPDATE ON player_data FOR EACH ROW BEGIN #IF (NEW.PlayerName IS NULL OR NEW.PlayerName = '' OR NEW.PlayerName = OLD.PlayerName) THEN IF (SELECT EXISTS(SELECT uid FROM player_alias WHERE `uid` = NEW.PlayerUID)) THEN UPDATE player_alias SET PlayerNames = CONCAT_WS(',',PlayerNames,NEW.PlayerName) WHERE uid = NEW.PlayerUID; ELSE INSERT INTO player_alias (uid, PlayerNames) VALUES (NEW.PlayerUID,NEW.PlayerName); END IF; END// DELIMITER ;
  9. Like
    itsatrap got a reaction from mgm in Tracking player name changes...   
    First Create the DB
    CREATE TABLE IF NOT EXISTS `player_alias` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` varchar(255) DEFAULT NULL, `PlayerNames` text, PRIMARY KEY (`id`), UNIQUE KEY `uid` (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; Then add this trigger
    DELIMITER ; DROP TRIGGER IF EXISTS `updateName`; DELIMITER // CREATE TRIGGER `updateName` AFTER UPDATE ON player_data FOR EACH ROW BEGIN #IF (NEW.PlayerName IS NULL OR NEW.PlayerName = '' OR NEW.PlayerName = OLD.PlayerName) THEN IF (SELECT EXISTS(SELECT uid FROM player_alias WHERE `uid` = NEW.PlayerUID)) THEN UPDATE player_alias SET PlayerNames = CONCAT_WS(',',PlayerNames,NEW.PlayerName) WHERE uid = NEW.PlayerUID; ELSE INSERT INTO player_alias (uid, PlayerNames) VALUES (NEW.PlayerUID,NEW.PlayerName); END IF; END// DELIMITER ;
  10. Like
    itsatrap got a reaction from caboose1 in Adding random snow   
    can someone link the final script ?
  11. Like
    itsatrap reacted to vbawol in Epoch Mod for Arma 3   
    Arma 3 Epoch Mod will be a total conversion mod coded from the ground up, and no longer based on DayZ. Many of the key ideas from DayZ Epoch will play a major role in Epoch Mod however everything else will change!
     
    More will be announced early this year.
  12. Like
    itsatrap reacted to itsatrap in Performance in 1.0.2.5   
    I did bor know client side performance was a problem i have over 60 fps most og the times, but my server have really low :(
  13. Like
    itsatrap got a reaction from cosacee in Deconstruct Buildables   
    DELIMITER ; DROP TRIGGER IF EXISTS dayz_epoch.`update_owner`; DELIMITER // CREATE TRIGGER dayz_epoch.`update_owner` AFTER INSERT ON dayz_epoch.character_data FOR EACH ROW BEGIN UPDATE dayz_epoch.object_data SET CharacterID = NEW.CharacterID WHERE CharacterID IN (SELECT CharacterID FROM character_data WHERE PlayerUID = NEW.PlayerUID) AND NOT (Classname LIKE '%door%' OR Classname LIKE '%vault%' OR Classname LIKE '%box%'); END// DELIMITER ; Update now it don't update vault, doors and lockbox
  14. Like
    itsatrap got a reaction from ReDBaroN in Tracking player name changes...   
    First Create the DB
    CREATE TABLE IF NOT EXISTS `player_alias` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` varchar(255) DEFAULT NULL, `PlayerNames` text, PRIMARY KEY (`id`), UNIQUE KEY `uid` (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; Then add this trigger
    DELIMITER ; DROP TRIGGER IF EXISTS `updateName`; DELIMITER // CREATE TRIGGER `updateName` AFTER UPDATE ON player_data FOR EACH ROW BEGIN #IF (NEW.PlayerName IS NULL OR NEW.PlayerName = '' OR NEW.PlayerName = OLD.PlayerName) THEN IF (SELECT EXISTS(SELECT uid FROM player_alias WHERE `uid` = NEW.PlayerUID)) THEN UPDATE player_alias SET PlayerNames = CONCAT_WS(',',PlayerNames,NEW.PlayerName) WHERE uid = NEW.PlayerUID; ELSE INSERT INTO player_alias (uid, PlayerNames) VALUES (NEW.PlayerUID,NEW.PlayerName); END IF; END// DELIMITER ;
  15. Like
    itsatrap got a reaction from PetuniaEpoch in Tracking player name changes...   
    i think this can be don with an mysql trigger and a new felt in the player_data
  16. Like
    itsatrap got a reaction from happysan in Discussion about coming 1.0.2.4 update   
    Heads up to remove the backpack  thing.
     
    SQF/dayz_server/compile/server_playerSync.sqf
    + _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - if(_playerwasNearby) then { - _empty = [[],[]]; - _playerBackp = [typeOf _backpack,_empty,_empty]; - } else { - _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - };
  17. Like
    itsatrap got a reaction from Snowmobil in Deconstruct Buildables   
    BOOM
    DELIMITER ; DROP TRIGGER IF EXISTS dayz_epoch.`update_owner`; DELIMITER // CREATE TRIGGER dayz_epoch.`update_owner` AFTER INSERT ON dayz_epoch.character_data FOR EACH ROW BEGIN UPDATE dayz_epoch.object_data SET CharacterID = NEW.CharacterID WHERE CharacterID IN (SELECT CharacterID FROM character_data WHERE PlayerUID = NEW.PlayerUID); END// DELIMITER ;
  18. Like
    itsatrap reacted to Swash in new player joins and score board   
    I don't know how to get the score board back but I can tell you how to get the log in log off messages.
    Those are SYSTEM messages which you have to turn on in your description.ext file in your MPMission "map" folder.
    It will be around line 8
    disableChannels[]={0,1,2,6};
     
    Add the channels you want to disable. Channels left out will be enabled.
     
    The channels are 
    0 = Global 1 = Side 2 = Command 3 = Group 4 = Vehicle 5 = Direct 6 = System   I set mine to only disable Global (NEVER TURN ON) and Command. System messages and side channel are enabled.   disableChannels[]={0,2};
  19. Like
    itsatrap got a reaction from BetterDeadThanZed in Discussion about coming 1.0.2.4 update   
    Heads up to remove the backpack  thing.
     
    SQF/dayz_server/compile/server_playerSync.sqf
    + _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - if(_playerwasNearby) then { - _empty = [[],[]]; - _playerBackp = [typeOf _backpack,_empty,_empty]; - } else { - _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - };
  20. Like
    itsatrap got a reaction from Kind-Sir in Discussion about coming 1.0.2.4 update   
    Heads up to remove the backpack  thing.
     
    SQF/dayz_server/compile/server_playerSync.sqf
    + _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - if(_playerwasNearby) then { - _empty = [[],[]]; - _playerBackp = [typeOf _backpack,_empty,_empty]; - } else { - _playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack]; - };
  21. Like
    itsatrap reacted to Snowmobil in Deconstruct Buildables   
    With this you can remove every new modular buildable, except lockable doors, if you are the owner. Unfortunately, right now the ID stored as OwnerID in the database is the CharacterID. Which means after you die you can't remove any buildables that you build before you died. (You could probably write a mysql trigger that updates the characterID once you respawn.)
     
    Lockable doors can be removed by everyone if they are unlocked, because the OwnerID is used to store the combination for the door.
     
    I haven't really tested this thoroughly, so use at your own risk ;)
    Sorry for all the quotes, text color doesn't seem to work with code.
    Instructions:
     
    Copy 
    dayz_code\init\compiles.sqf dayz_code\compile\fn_selfActions.sqf dayz_code\actions\remove.sqf to a folder in your mission.pbo. (I named it "custom")
     
    init.sqf
     
    compiles.sqf
     
    fn_selfActions.sqf:
     
     
     
     
    remove.sqf
     
     
  22. Like
    itsatrap reacted to ToejaM in [How To] [CPC] Indestructible Bases   
    Patch 1.0.3 Information
    I would just like to point out that my script is working entirely flawlessly however the line numbers are wrong in some cases in the tutorials below but they are easy enough to see where it goes instead by searching for the correct words. All the information you need is in this post.
     
    At present I do not have time to write the tutorial on pulling the maintain_area.sqf from the DayZ code files, however you will need to do this as Axe Cop's script is now part of Epoch as standard.
     
    When I get time I will add this if someone hasn't done it already, its very quick and easy to do but I want to make sure I write it as perfectly as possible to avoid confusion. Its as simple as finding it in the file structure, placing it in your mission folder and then changing the path inside the self actions file.
     
    If you do not pull the maintain_area.sqf from the code and add my fix to it, when you maintain your base using the area function on the plot pole it will make your base vulnerable to attack until the restart.
     
    [CPC] Indestructible Bases - PART1: On Server Restart
     
    What it does:
     
    Anything you define inside the _cpcimmune tag will respawn on server restart entirely indestructible and will also not be able to be knocked down. You can add anything you like to the list. the list currently only comprises of the new modular base buildables.
     
    How to:
     
    Step 1)
     
    Unpack your dayz_server.pbo
     
    Step 2)
     
    Find \system\server_monitor.sqf add copy this at around line 6
    _script = getText(missionConfigFile >> "onPauseScript"); // ### [CPC] Indestructible Buildables Fix _cpcimmune =[ "WoodFloor_DZ", "WoodFloorHalf_DZ", "WoodFloorQuarter_DZ", "Land_DZE_LargeWoodDoorLocked", "WoodLargeWallDoor_DZ", "WoodLargeWallWin_DZ", "WoodLargeWall_DZ", "Land_DZE_WoodDoorLocked", "WoodSmallWallDoor_DZ", "WoodSmallWallWin_DZ", "Land_DZE_GarageWoodDoor", "Land_DZE_GarageWoodDoorLocked", "WoodLadder_DZ", "WoodStairsSans_DZ", "WoodStairs_DZ", "WoodSmallWall_DZ", "WoodSmallWallThird_DZ", "CinderWallHalf_DZ", "CinderWall_DZ", "CinderWallDoorway_DZ", "Land_DZE_LargeWoodDoor", "MetalFloor_DZ", "CinderWallDoorSmallLocked_DZ", "CinderWallSmallDoorway_DZ", "CinderWallDoor_DZ" ]; // ### [CPC] Indestructible Buildables Fix if ((count playableUnits == 0) and !isDedicated) then { Step 3)
     
    Scroll down to around line 180 and copy this
    _object setdir _dir; _object setpos _pos; _object setDamage _damage; // ### [CPC] Indestructible Buildables Fix if (typeOf(_object) in _cpcimmune) then { _object addEventHandler ["HandleDamage", {false}]; _object enableSimulation false; }; // ### [CPC] Indestructible Buildables Fix Step 4)
     
    Repack your dayz_server.pbo
     
    Notes:
     
    You're done, its as simple as that. This has been tested on my server for well over a few weeks and is entirely stable. We don't have buildables destructible until a server restart to allow players to remove them by force themselves if neccesary to reduce admin intervention.
     
    If you wish to contribute and add your a tutorial for spawning items indestructible without need for a server restart then send me a PM and I'll update this post.
     
    [CPC] Indestructible Base Fix - PART2: On Object Creation
     
    What it does
     
    This is how to make your base objects spawn immediately indestructible without the need for a restart - Credit to Snowmobil for the player_build.sqf coding.
     
    If you already have a custom compiles.sqf you can skip the first 3 steps
     
    Create a custom compiles.sqf in your mission file.
    Creating a custom compiles.sqf
     
    Step 1)
    Unpack your dayz_code.pbo in Dayz_Epoch\addons\
     
    Step 2)
    Pull out the compiles.sqf from dayz_code\init\ and place into your root mission folder (where mission.sqm is)
     
    Step 3)
     
    Edit your init.sqf inside your mission file around line 58 to look like this
    call compile preprocessFileLineNumbers "compiles.sqf"; //Compile regular functions Step 4)
     
    If not already done due to step 1, unpack your dayz_code.pbo in DayZ_Epoch\addons\
     
    Step 5)
     
    Find your player_build.sqf in your dayz_code\actions\
     
    Step 6)
     
    Around line 231 copy to look like this
    // Start Build _tmpbuilt = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"]; // ### [CPC] Indestructible Base Fix _tmpbuilt addEventHandler ["HandleDamage", {false}]; _tmpbuilt enableSimulation false; // ### [CPC] Indestructible Base Fix Save the file in its current location if not already made a copy elsewhere.
     
    Step 7)
    In your mission folder create a folder called "fixes" and place the player_build.sqf in there.
     
    Step 8)
     
    Edit your compiles.sqf around line 95
    player_build = compile preprocessFileLineNumbers "fixes\player_build.sqf"; Notes:
    You're now done. You don't need to repack your dayz_code folder as the fix overwrites the original file due to where its called from, you also don't need to save the player_buid.sqf in the folder you copied it from, you can copy it elsewhere if you wish to keep an original version incase you need to revert for what ever reason.
     
    This does not need the buildable array that the first part of this tutorial needs, however you will need the first part that edits the server side files for a restart to keep these buildables indestructible.
     
    Locations of files are optional, the compiles.sqf does not have to be in the root folder if you wish to have it in your fixes folder just amend the file path. This also means you do not need to name the folder where player_build.sqf goes to "fixes" it can be called anything you like, I just happen to use "fixes" for my custom files.
     
    If you use this fix or think its a good idea, please hit the like button on this post. It doesn't do anything for me but shows interest in having indestructible bases. Thanks.
     
    [CPC] Indestructible Base Fix - PART3: Prevent Maintenance Exploit
     
     
    Currently you can "maintain" an object and it becomes destructible. This stops players from "maintaining" your buildables and then destroying them, as the server swaps them out to destructible types. There are several ways to implement this fix. If someone wishes to modify the server_dayzswap file so that the swapped buildables are also indestructible I will update this post. This however is suitable for my servers needs and helps players to register their base.   If you have a custom fn_selfActions file you can skip to step 3.   Step 1)   Unpack your dayz_code.pbo in your @DayZ_Epoch client folder   Step 2)   Put the \addons\dayz_code\compile\fn_selfActions.sqf inside your fixes folder.   Step 3)   Modify your fn_selfActions.sqf this around line 501 and save   if (s_player_maint_build < 0) then { s_player_lastTarget set [1,_cursorTarget]; // ### [CPC] Maintenance Fix s_player_maint_build = player addAction [format["Maintain %1",_text], "fixes\cpcmaintfix.sqf",_cursorTarget, -2, false, true, "",""]; // ### [CPC] Maintenance Fix }; } else { Step 4)
     
    Create a new .sqf file, either by copying an existing one or renaming the file extension of a newly created .txt document. Name this file cpcmaintfix.sqf, place this in your fixes folder and put this code inside the newly created .sqf
    cutText [format["Maintenance is disabled on this server as it is not required. Please see our website on how to ensure your base is not deleted."], "PLAIN DOWN"]; Optionally customize the message to what you like, we run a base registration system so that we can delete old bases due to there being no viable cleanup system thanks to indestructible buildables and believing that maintenance as it stands, its too much work for base owners.
    Step 5)
    Modify your compiles.sqf (see above on this post on how to create one, you should have already done it by now if you're this far though) around line 17
    fnc_usec_selfActions = compile preprocessFileLineNumbers "fixes\fn_selfActions.sqf"; //Checks which actions for self Notes:
     
    None
     
    [CPC] Indestructible Base Fix - PART4: Swap Objects Fix
     
    When you maintain an object either through Axe Cop's areal maintenance script or by doing it individually on each object, it swaps out the object for a new one. You don't see a change but it does happen. This spawns it in using server_swapObject.sqf which does not have the indestructible code inside. You don't have to do this as a restart will make your objects indestructible again however, if you maintain many objects they will be vulnerable to normal attacks until a restart, so it is advised that you do this.
     
    Part 4a: Normal DayZ Epoch maintenance system
     
    Step 1)
     
    Decompile dayz_server.pbo
     
    Step 2)
     
    Goto: @DayZ_Epoch_Server\addons\dayz_server\compile\ and find server_swapObject.sqf
     
    Step 3)
     
    Around line 44 change this:
    _object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}]; // Test disabling simulation server side on buildables only. _object enableSimulation false; to this:
    _object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}]; // Test disabling simulation server side on buildables only. _object enableSimulation false; // ### CPC Swap Object Fix _object addEventHandler ["HandleDamage", {false}]; // ### CPC Swap Object Fix Step 4)
     
    Recompile your dayz_server.pbo and you're now done.
     
    Notes:
     
    None
     
    Part 4b: Axe Cop's Maintain Area Script
     
    Step 1)
     
    In your mission file, or where ever you have stored the script, open the file
     
    e.g mine: D:\Gameservers\testserver\MPMissions\DayZ_Epoch_11.Chernarus\fixes\maintain_area.sqf
     
    If neccesary you might need to unpack your mission.pbo
     
    Step 2)
     
    Go to around line 104
    // Set location _object setPosATL _location; PVDZE_obj_Swap = [_objectCharacterID,_object,[_dir,_location],_classname,_obj,_objectID,_objectUID]; publicVariableServer "PVDZE_obj_Swap"; player reveal _object; } forEach _objects; and change to this
    // Set location _object setPosATL _location; // ### CPC Swap Object Fix _object enableSimulation false; _object addEventHandler ["HandleDamage", {false}]; // ### CPC Swap Object Fix PVDZE_obj_Swap = [_objectCharacterID,_object,[_dir,_location],_classname,_obj,_objectID,_objectUID]; publicVariableServer "PVDZE_obj_Swap"; player reveal _object; } forEach _objects; Step 3)
     
    Save your file and if necessary, repack your mission.pbo and you're done.
     
    Notes:
     
    None
  23. Like
    itsatrap reacted to vbawol in The currency system needs a complete do over   
    Changing the animation is something we are going to do, as well as giving change. I think next patch 1.0.2.3-ish I will add a magazine item for a "coin pouch" that would hold 0-900 coins to replace all other lower bars as currency. All bars lower than 1oz of gold will just be trade-able into coins. This would be used for trades on items lower than 1oz of gold. When making change this item will be consumed and a item will be replaced with the proper change. Over 1oz Gold Bars will still be used and made to stack in 1oz increments (1-10oz). Briefcases will function the same as they always have but will store increments of 1oz (0-100oz). On selling the trade would look for partially filled "coin pouches","Bar Stacks","Briefcases" and append the output.   On buying the trade will look first for the exact Item/change consume that item and return nothing. Otherwise it will give the highest denominations back as change, for example:   Player has a coin pouch with 900 coins, makes a purchase costing 50 coins  Returns: (900 - 50 = 850). Player has a coin pouch with 500 coins, makes a purchase costing 50 coins  Returns: (500 - 50 = 450). Player has 10 x 1oz Gold Bars, makes a purchase costing 50 coins  Returns: (10 - 1 = 9oz + 900 - 50 = 850). Player has 10 x 1oz Gold Bars, makes a purchase costing 1oz bar Returns: (10 - 1 = 9oz). Player has a Briefcase with 100 x 1oz bars, makes a purchase costing 1oz bar Returns: (100 - 1 = 99oz). Player has a Briefcase with 100 x 1oz bars, makes a purchase costing 50 coins  Returns: (100 - 1 = 99oz + 900 - 50 = 850).   (1-900) Coins (900-9000) Bars (9000-90000) Briefcase 
  24. Like
    itsatrap reacted to maca134 in The currency system needs a complete do over   
    I created a system to get around flaw in arma/dayz/epoch, that some people consider to be an improvement on the bar system. Inventory is too buggy, overflow is used and in my opinion should not be relied on to get around other issues. It is something i may consider releasing but dont want to step on peoples toes etc.
     
    Here is a run down, as i think my system is a good balance between what epoch want to do and making the currency abit more manageable.
     
    Traders use a single gold coin currency. 900/9000 gold coins can be smelted into 1oz/10oz gold bar. Bars are still stored in safes. If you die with gold coins on your body, any other player can take the money. You can give player gold coins. Can trader bars <--> coins at all traders. Bank trader - Allows you to store upto a briefcase on gold safely. (this is something im not 100% on board with each, more testing required)  
     
    Honestly, flatly refusing to consider a possible option is abit of a disappointment. 
  25. Like
    itsatrap reacted to ToejaM in Epoch Buildables - How to make Indestructible   
    I found the file I need to use, I have a fix. Will post it up later.
×
×
  • Create New...