Jump to content

gdscei

Member
  • Content Count

    76
  • Joined

  • Last visited

  • Medals

Everything posted by gdscei

  1. Hi guys, this is a guide on PBO building automation with Jenkins CI server. Let's first talk about the added benefits of this: Don't need to worry about binarising PBOs anymore No issues with binarising (we've all had our fair share of issues with BinPBO/Addon Builder) Ideal for the lazy people under us ;) Keep track of succesful and failed builds (failed could be for example a config error) Generally nice to have if you have a bigger project with multiple PBO's and multiple developers All the other general CI benefits. Prerequisites Windows server that runs 24/7 Repository on GitHub where you keep track of everything Some knowledge about Jenkins is required... if you don't have any, read up on it and learn it. Jenkins actually set-up on your server (Install the workspace in a place with no spaces preferably in the absolute path) Jenkins plug-in 'GitHub plugin' installed, and optionally the 'embeddable-build-status' plugin. Step 1: Jenkins global settings and server set-up First we would want to set-up jenkins and make sure the server can connect to our GitHub repository. For private repositories, make sure you have a deploy key set-up. GitHub has a guide on this. In the Global Jenkins Configuration , set-up 'GitHub Web Hook' to manual manage. Step 2: Jenkins project set-up Now we want to set-up Jenkins with our new project. Set-up a single-configuration project Make sure the name does not have spaces in it In the 'GitHub project' field, optionally enter the link to your GitHub repository (not necessary) Under SCM, select 'Git' and enter your repository URL + branch you want to build (single branch only!) I also recommend adding 'Use commit author in changelog'. Select 'Build when a change is pushed to GitHub' under 'Build triggers'. Under 'Build', add a step 'Execute Windows batch command'. In the 'Command' field, enter: ..\buildpbo.bat Under 'Post-build Actions', you could have it send an E-mail notification to you if the build failed. Add a post-build action 'Set build status on GitHub commit'. Finally, save your project. Step 3: Jenkins Workspace set-up You're going to need a few extra things to actually build your PBO's. This was the part that took the most time for me. Place A3 tools' binarize.exe and Mikero's DePbo.dll & makepbo.exe in Jenkins' workspace directory (i.e C:\jenkins\workspace) Create a folder called '{YOUR PROJECT NAME}_binned'. (where {YOUR_PROJECT_NAME} is the Jenkins project name) Put this paste in a file called 'buildpbo.bat' (note the extension) inside the workspace directory: http://pastebin.com/FcSZQw45 Edit the above file with the correct pbo directories etc. (comments are given in the areas which you need to edit) Put this paste in a file called 'buildpboprefix.bat' (note the extension, again) inside the workspace directory: http://pastebin.com/tL56ZjLY (edit it if the prefix is not going to be your folder name) Step 4: Test-build Run a build. See if everything works out, all the pbo's are created and version.txt file + the pbo directories are deleted from the _binned folder. Are the pbo's all set-up correctly too? Prefix? Models binarised? If not, go back, check everything and if it all fails just ask here in the thread. Step 5: Connect GitHub Now we're up for the final steps... Since the build finished succesfully we can now connect GitHub so Jenkins will automaticly build when a commit is pushed. From the Global Settings in Jenkins, under 'GitHub Web Hook' select the help icon next to 'Manually manage hook URLs' (which should be selected). Copy the URL it gives you. Go to the 'Service Hooks' tab on the settings page of your GitHub repository on the GitHub site. Under 'Service Hooks', select 'Jenkins (GitHub plugin)' (not Jenkins (Git plugin)!) and add the URL you copied in the field, and set it to 'Active'. Click 'Update settings'. Step 6: Try everything out again You should be set-up now. Try to do a commit to your repository to see if everything works. Check the same stuff you checked in step 4. If you want to do anything else, like copying over the PBO's to a web-accesible directory, just add commands to the bottom of the buildpbo.bat file. If you like to have a build status icon on your GitHub readme, click on the "Embeddable Build Status" item on your project dashboard, which will explain how to do that. End Well that was the guide, if you have any other questions feel free to ask! This can be a pain to set-up (as I have noticed myself), so I'm definetely willing to help you guys out if you have any issues. :) Resources used "Building a software project" from the Jenkins wiki - https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project "Managing deploy keys" from GitHub Help - https://help.github.com/articles/managing-deploy-keys GitHub Plugin from the Jenkins wiki - https://wiki.jenkins-ci.org/display/JENKINS/GitHub+Plugin Mikero's great help with his DOS tools - http://dev-heaven.net/projects/mikero-pbodll
  2. gdscei

    How to get rid of Karts?

    "ermehgerd, I have to add 2 lines of script to my spawning scripts, I don't want that, so thousands of people are not allowed to have fun with DLC!" I mean, seriously, how can you be so inconsiderate and selfish? Protip: if(!(_vehicle isKindOf "Kart_01_Base_F")) then{ // spawn the vehicle here };
  3. gdscei

    Suggestion: command "disableRadar"

    I suggest going to the Feedback tracker and suggesting it there ;)
  4. gdscei

    Karts EBO files

    I did not say 100% of the cases. Also, there's this thing called a wiki - it has most information. If not, there's always the Skype channels or the forums here. Plenty of folks willing to help out. Not saying that looking at other people's work to learn is wrong btw. For some it can be useful. But saying "All that I learnt was looking through others people work" seems a bit strange - surely most of the information in there was available to you anyways.
  5. gdscei

    Karts EBO files

    I've had experience with this, and the mod that did it is still there, and people play it. It wasn't dealt with accordingly, there is no support from BIS on this front, so how can you ever deal with it accordingly without spending rediculous amounts of money on lawsuits for a free product? I would like to protect mods because they are my property; why would that be wrong? Also, the argument of "you are disallowing people to learn from your content" is BS, 80% of the cases, these are people that copy-paste things into other mods, without any permission whatsoever. Modders spent hours upon days upon weeks upon months working on content that gets copy-pasted in a heartbeat.
  6. Follow up to the above post, here's a thread on it on our forums! :) http://2017mod.com/forums/threads/2017-team-recruitment.592/
  7. gdscei

    The new ARMA 3 DLC system - debate

    I am pretty sure DarkWanderer is true here. See my post, and look at my sig. I am part of a team of one of the biggest mods in Arma history (not bragging there btw, it's just literally a big mod ;)), and I voted I think the DLC strategy is good (note: that is my personal opinion, not necessarily that of the modding team I am with). I am sure there are many other content creators that think the same.
  8. gdscei

    The new ARMA 3 DLC system - debate

    I think I have made up my statistics for the authors of posts with a negative opinion on the matter in this thread: - 60% didn't read all the information on the DLC strategy - 80% are unreasonable and think that everything should be handed to them for free (c'mon guys, BI is and stays a company; they need to make money, otherwise there won't be an Arma anymore!) - 19% don't realise that this is one of the fairest DLC models there is in the gaming industry - 1% is actually considerate and comes up with a different suggestion that is still profitable for BI (I knew the Arma forum community was pretty bad at times; but really?) My opinion on the matter: it's DLC; paid content, not free. That's all. Also, I have seen numerous times in this thread "But if x person doesn't have the DLC and doesn't want to buy it, they can't play the mission/mod!" - really? I didn't see anyone hesitate to buy A2:Arrowhead for DayZmod. If people aren't willing to buy a $10-$15 DLC for a mission/mod you made, there is clearly a lack of quality and/or re-playability in your creation. And if that was so, the player would probably still want to play the mods/missions that do contain the DLC that actually have quality, so they would buy it anyways. But that's just my opinion.
  9. I don't take responsibility for what you do, but I am pretty sure you can binarise them. This has obvious improvements over not binarising them in terms of performance and logging too.
  10. What would make Arma 3 complete? You mean like less bugs in SQF & multiplayer and better performance? Then yes, that would make Arma 3 complete. ;)
  11. Check out our new interview with Pixel Enemy :)
  12. gdscei

    Meet-up at a gaming conference

    After I met up with some of the team members on my modding team at EGX Rezzed, I wondered... why not a modding community meet-up? Events that it could be at would probably be limited to Europe, since as far as I know, most modders are from Europe (correct me if I am wrong), and so the two most obvious answers would be: EGX London or Gamescom (Cologne, Germany). As BIS has been at Gamescom last year, I would expect them to come this year as well, so we could even meet-up all together with some BIS people, if the meet-up would be there. What are your guys' thoughts on this? Personally, I have met some great people in the modding community that I would love to meet-up with. And I can't see it not happening.. the modding community has existed for a while now :)
  13. gdscei

    Meet-up at a gaming conference

    ArmaCon? It needs to happen now! ^^
  14. gdscei

    Meet-up at a gaming conference

    Of course, it would be mostly European people that could come, I know that not everyone would be able to go :)
  15. gdscei

    DirecxtX 12 for ArmA 3?

    If it is Win 8/9 exclusive, I bet not many game devs will adopt DX12
  16. gdscei

    Arma 3 Region Restriction

    Even if BI is behind it, it seems pretty normal to me, considering for some reason you can get the game a lot cheaper in Russia.
  17. Awesome that it was useful to you! If you have any questions, feel free to ask :)
  18. With the issue tracker for ArmA 3, I thought development would be probably a lot more focused towards the community than ArmA 2 was. However, communication is still quite bad. I understand you're all busy, but when important modding-related issues from march 2013 are still not fixed and have not received any notes from developers for 6 months, you start to wonder what good the issue tracker does if you don't communicate with the players. So you might say... oh what's the point of this thread? Just to point the finger towards BI that they are not communicating enough about ArmA 3's development? No, I am not looking to start a rant about BI and their development processes and progress. But I would like to ask the developers to communicate more on the issue tracker. Letting us know what the status of an issue is, is it actively being worked on? Are you having major difficulty with the issue, or are other things taking priority? I am not saying you need to be specific about everything that goes on behind the scenes, but at least letting us know you're still aware of the issue is the least you can do (maybe not necessarily on feature requests, but bugs definetely yes). So this is what I am asking from you BI... If you can provide this I think it will make the community a lot happier, at least knowing that their issues are still being looked at :)
  19. That seems like the best option, lots of contests do that.
  20. Hey Craig, I'm pretty certain everyone has a license to go as creative as possible, that's the whole point of the contest from my POV.
  21. gdscei

    A storm is coming (Arma 3 Zeus DLC)

    It's called scripting ;)
  22. gdscei

    A storm is coming (Arma 3 Zeus DLC)

    Destruction engine. You heard it here first, people.
  23. Yes this was a total suprise to us! And thank you for the kind words!
  24. Be excited though guys! Seen the vehicles, looks amazing :)
  25. I agree that we could put out more information, and we are actually in the midst of changes things up a bit... A forum will be out soon just for 2017 :) In the mean time, I think there was a miscommunication if you thought we had a closed alpha in the beginning of october. We had plans to, but our closed alpha hasn't started yet.
×