Jan18101997 16 Report post Posted September 21, 2015 (edited) You all hate it to update your current Exile installation without installing any heavy Software? Then this is the way to go! So I am currently working on a small lightweight Exile Launcher and Downloader and i would like to ask you about your opinion on my small project. It Downloads all data via http! You can download it here: Link (requires .NET 4) (note if your download is to slow i cant do anithing about it it is not my server) Windows 8/8.1/10 skip SmartScreen: Link Changes: Link In case you do not trust me or have any ideas (i can undersand this) here you have the source code: GitHub (all Controls are designed by me feel free to use them in your Project) VirusTotal: Link Some Screenshots: Spoiler Main Menue: Direct Connect means directly connect to a specified server. Install Page: Install Page with MultiMod: See below for more infos how to add this for your own Server. Settings: Direct connect may not work with domains haven't tried it You want to develop something? This is how you can open this code in VisualStudio: Spoiler If you want to get into programming i can recommend https://code.org and http://www.sololearn.com 1. Download sourcecode: Navigate to my GitHub page and click on "Download ZIP" 2. Unzip ZipFile 3. Download DotNetZip and save the needed dll File (DotNetZipLib-DevKit-v1.9.zip\zip-v1.9\Debug\Ionic.Zip.dll) 4. Place it somewhere where you can find it. 5. Open up "Exile Launcher\Exile Launcher.sln" 6. Open the Reference group inside the Solution Explorer and remove Jan18101997.GUI.Controlls and Ionic.Zip 7. Add References a. Rightklick on References and click "Add Reference...". Click on Browse and open the "Ionic.Zip.dll" file. b. Navigate to Solution -> Projects and check Jan18101997.GUI.Controlls Click Ok 8. You are basically Done... Happy developing PS.: Make sure to download Exile, rename it as exile.zip and place it inside bin/Debug/exile.zip (tested in VisualStudio 2013 Pro) Project Info: Spoiler If you just want to change Something like the DirectConnect settings or the links have a look at CustomConfig/Settings.cs and change it the way you want it to be How is the Project build up? You basically have 3 folders inside your Solution Explorer (CustomConfig, GUI, Resources) there is everything you need to know. CustomConfig -> contins all kinds of config options for serveradmins like setting a persistent DirectConnect and links to Teamspeak, Forum and Twitch. It also contains a About.txt file whitch has all license infos and other stuff to display inside the about frame. GUI and GUI.Pages -> Contain all GUI elements like Windows, Pages, Klickevents, etc. Resources -> contains all images used in this Project How does the navigation thing work? It is simple! If you start you application it will create a new instance of GUI.MainWindow and calls the constructor inside GUI/MainWindow.xaml.cs. Inside the contructor are thes methods InitializeComponent();, InitPages();, InitGamePath();, CheckGamePathPermissions();. InitializeComponent(); -> basic C# WPF Gui stuff and things InitPages(); -> Initializes all pages to navigate. Each page needs a MainWindow parameter it is in all cases this. On the end it will show a page of type pageMainMenue Navigate(typeof(pageMainMenue)); InitGamePath(); -> checks if the Gamepath was found if not trys to find a new one or asks the user for defining one. CheckGamePathPermissions(); -> checks for WriteAccess inside the GamePath But how doese it navigate? this is simple earlier we passed a MainWindow type to all Pages this means all pahes can get access to this MainWindow instace and call Navigate(typeof(<page>)); this will set the page to display inside the main frame. It also adjusts the Width and Height to match the Page size. What things do i have to edit? Typically just CustomConfig/Settings.cs. But if you want to do more have a look at the other files I cant realy help you with them just have a look through them and try to do your best... Adding Multiple Mods: This is one of the new fetures to allow you to add multiple mods/maps for examlpe namalsk. You just have to open /Calsses/Mods/ and add a new Class called something like ModNamalsk. This class has to inherit from IMod you have to implement all needes methods (rightklick on class ModNamalsk : IMod) and chose Implement Interface->Implement Interface Explicitly. From IMods: Spoiler /// <summary> /// A ID string just pure text like exilemod Wrong: @Exile, exile mod,... /// </summary> /// <returns></returns> string getModID(); /// <summary> /// Mod Name /// </summary> /// <returns></returns> string getModName(); /// <summary> /// Arma3 Mod start paramaeter like @potatopack /// </summary> /// <returns></returns> string getModParameter(); /// <summary> /// Dowload path to mod something like trains.com/potatopack-<VERSIONSTRING>.zip make zure to use <VERSIONSTRING> /// </summary> /// <returns></returns> string getDownloadPath(); /// <summary> /// Used to get the newes version of the mod later it will replace <VERSIONSTRING> /// </summary> /// <returns></returns> string getModVersion(); after you implementet all your code and settings your calss should look like this Spoiler class ModNamalsk : IMod { string modeVersion = null; string IMod.getModID() { return "namalskmods"; } string IMod.getModName() { return "Namalsk"; } string IMod.getModParameter() { return "@Namalsk"; } string IMod.getDownloadPath() { return "http://ThisIsTheRealNamalsk.download/@namalsk-<VERSIONSTRING>.zip"; } string IMod.getModVersion() { if (modeVersion != null) //if we already have a version dont get it again return modeVersion; WebClient wc = new WebClient(); string data = wc.DownloadString("http://ThisIsTheRealNamalsk.download/currentVersion.html"); modeVersion = data; return data; } } You just need to register your mod in /CustomConfig/Settings.cs at line 32 public static readonly IMod[] Mods = { new ModExile(), new ModNamalsk() }; Installer: Inside the project is a Installer includet. If you want to add any custom files like a new dll just add it as a Link to the Installer/Files folder. Make sure you change the build action to recourse. Remember: Do NOT remove or change anything from CustomConfig/About.txt just add your stuff! Make sure to folow the license ruels! PS: if you made some improvements make sure to push them into the git. License: This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/. Edited January 10, 2016 by Jan18101997 10 Share this post Link to post Share on other sites
Santa 20 Report post Posted September 21, 2015 From a GUI perspective, looks nice Well done.Had a quick look through the code, nice and clean ++ 2 Share this post Link to post Share on other sites
Guest Report post Posted September 22, 2015 Looks clean. However as always use at your own risk. Share this post Link to post Share on other sites
Meragon_GER 8 Report post Posted September 22, 2015 it run, but i get this Error:(German Messagen) Share this post Link to post Share on other sites
William =D 134 Report post Posted September 22, 2015 (edited) Looks great! what would really be nice is allowing Server owners to enter their own details server links, website, team-speak ect, making this the the Main EXILE launcher for every one to use! Edited September 22, 2015 by William =D Share this post Link to post Share on other sites
Falcon911 33 Report post Posted September 23, 2015 Adding Mods would be nice, Example CUP Weapons, Bornholm..etc. Share this post Link to post Share on other sites
William =D 134 Report post Posted September 23, 2015 Adding Mods would be nice, Example CUP Weapons, Bornholm..etc. I think it would be easier for a player if it was only using a stored location of files that you have access to (similar to any cloud service ect) , to keep the files the same as per the server files? but never the less, more features are always great! Share this post Link to post Share on other sites
Falcon911 33 Report post Posted September 23, 2015 Correct. We have a repo and currently using Arma 3 Sync to allow them to upload the mods to their PC. But a custom tool would be useful. Share this post Link to post Share on other sites
Guest Report post Posted September 23, 2015 Eww Vipre? Share this post Link to post Share on other sites
[RW] DaCoon 49 Report post Posted September 23, 2015 (edited) ya it could be werry nice if you could dowload mods trough it ...... either from a fixede possition or from the local servers ..... :-)But looking nice and easy to use... Good work Edited September 23, 2015 by [RW] DaCoon Share this post Link to post Share on other sites