Coronaut Posted March 28, 2020 Report Share Posted March 28, 2020 (edited) Hello, Last year I posted an idea for a new civic center mechanic (link below) that I think would be a good addition to the game. I wanted to make it myself, so, for the past year I persisted and tried following the modding guides and forum posts, but realized since I have little experience with the game development process and coding it wouldn’t be possible. Original Idea: Here Now, a year later, I’m coming back to the forums to ask questions and be more involved in the community. Please excuse my ignorance. What is the difference between modding and developing for 0 a.d.? Correct me if I am wrong. A modder is a solo entity that creates changes in the game’s code how they want with resources already in the game and some they create themselves. A developer gets paid to work on the game from the standpoint of completing tickets to make a new and updated release of the game. Assuming you have no prior experience in game development, what knowledge is required to create mods for this game? How much coding experience is necessary? How many ways are there to obtain the game’s code? What advantages do you get from using eclipse, or Visual Studio rather than basic notepad? Who is the Svn copy for and how should it be used? Who uses workspaces and build environments Modders or Developers? What are they? What are they for? How do you quickly test if something worked or not? As you can tell I have no idea what I’m doing. If you can help me it would be greatly appreciated. -K(C)oronaut Edited March 28, 2020 by Coronaut Was a block of text. 2 Quote Link to comment Share on other sites More sharing options...
Loki1950 Posted March 28, 2020 Report Share Posted March 28, 2020 First off we'er an Open Source project most of us do not get paid at all even among our core developers.Modding can be differentiated from development very simply developers mostly deal with the C++ code of the engine it's self while modding handles the assets(models,actors and amimations) and the JavaScript in the public.zip mod yeah the main game is just an other mod.As for the required knowledge base that depends on how extensive you want to change things for general modding where you deal mainly with JavaScript so notepad++ is great as it is a full feature text editor with syntax checking for most programming languages for 0AD JavaScript and XML are the most useful.Check the wiki for more detailed info that's the Development link at the top our pages it goes to trac our ticket management system and our wiki.And keep asking questions as you may have noticed we don't bite Enjoy the Choice 1 Quote Link to comment Share on other sites More sharing options...
Lion.Kanzen Posted March 29, 2020 Report Share Posted March 29, 2020 https://trac.wildfiregames.com/ Here is our trac you can found the SVN there and many useful things. @Stan` can answer many questions. 1 Quote Link to comment Share on other sites More sharing options...
Coronaut Posted March 29, 2020 Author Report Share Posted March 29, 2020 @Lion.Kanzen @Loki1950 Thank you for replying, Now that I understand a bit more, to create my Idea I think I have to go both routes and be a modder and developer. What I need to learn is how to do: 1) to increase the physical size of civil_Centre at phase up 2) Detect and add buildings attributes to the civil_Centre at phase up ~~~~~ The current situation is that I downloaded the svn of the game and have already done most of the things the wiki says to do, but when I tried to build a 0ad.sln output reads that a bunch of things failed (I included the last few lines, becaus it's all pretty much the same). I'm pretty sure I'm missing somthing(s) extremely important. 1>ConsoleApplication1.cpp 1>ConsoleApplication4.cpp 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(9): error C2017: illegal escape sequence 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(9): error C2065: 'cd': undeclared identifier 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(9): error C2146: syntax error: missing ';' before identifier 'build' 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(9): error C2065: 'build': undeclared identifier 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(10): error C2146: syntax error: missing ';' before identifier 'workspaces' 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(9): error C2065: 'workspaces': undeclared identifier 1>consoleapplication4\consoleapplication4\ConsoleApplication4.cpp(10): error C2143: syntax error: missing ';' before 'return' 1>Hello World.cpp 1>hello world\hello world\Hello World.cpp(12): error C2065: 'cout': undeclared identifier 1>Generating Code... 1>Done building project "0ad.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Quote Link to comment Share on other sites More sharing options...
Stan` Posted March 29, 2020 Report Share Posted March 29, 2020 Hey @Coronaut I will try to answer some of your questions let me know if you need a more in depth response for one of them. 9 hours ago, Coronaut said: What is the difference between modding and developing for 0 a.d.? Correct me if I am wrong. A modder is a solo entity that creates changes in the game’s code how they want with resources already in the game and some they create themselves. A developer gets paid to work on the game from the standpoint of completing tickets to make a new and updated release of the game. As @Loki1950 said currently none of us developpers get paid for working on the game. We do that on our free time and for free. Currently the only difference between the two is the ability to change the SVN repository directly. An external contributor can only suggest changes and give his opinion on patches. The final decision on whether the change or the feature needs to be included is in the official teams hand. That being said being a modder gives you a lot of freedom as there are already a lot of things you can do by yourself. 9 hours ago, Coronaut said: Assuming you have no prior experience in game development, what knowledge is required to create mods for this game? You need to know how to edit text files mostly. Programming experience is a plus. 3D modelling animation rigging and texturing can also be a plus. Else you'll be "limited" to what the engine can do. 9 hours ago, Coronaut said: How many ways are there to obtain the game’s code? Three. SVN, github, gitlab. That's detailed in the wiki. 9 hours ago, Coronaut said: What advantages do you get from using eclipse, or Visual Studio rather than basic notepad? You need visual studio if you want to make C++ changes as you need to recompile the game. Eclipse will only allow you to have suggestions during the c++ edition but you'll need to tell it to use the msvc compiler. Technically unless you want a really specifc feature you needn't compile. 9 hours ago, Coronaut said: Who is the Svn copy for and how should it be used? It's for developpers or modders that wishes to use the last version of the game. You should basically update it every day to make sure you have the latest changes. You can also decide you'd rather mod the last release. 9 minutes ago, Coronaut said: to increase the physical size of civil_Centre at phase up You mean change it's size ? Then you need to modify the 3D model. The game has no scaling capatibility. 9 minutes ago, Coronaut said: Detect and add buildings attributes to the civil_Centre at phase up Not sure what you want to do. 10 minutes ago, Coronaut said: The current situation is that I downloaded the svn of the game and have already done most of the things the wiki says to do, but when I tried to build a 0ad.sln output reads that a bunch of things failed (I included the last few lines, becaus it's all pretty much the same). I'm pretty sure I'm missing somthing(s) extremely important. Did you add code ? You should use the generated pyrogenesis.sln. by runninfg update.workspaces.bat in build/workspaces. 2 Quote Link to comment Share on other sites More sharing options...
Coronaut Posted March 29, 2020 Author Report Share Posted March 29, 2020 Thank you @Stan` I understand the development philosophy behind 0.a.d alot better now, and like it alot. 11 hours ago, Stan` said: Not sure what you want to do. This is the original Idea from my post last year. (TL:DR) What I'm trying to do is create a new mechanic for a players' first Civic Center. How it's supposed to work is when you arrive at phase 2 or 3 the CC doubles in size removing some buildings around it. Then the CC would gain the ability of the buildings that were removed. For example: If a farm was removed at phase up the CC itself could now constantly produce food only limited by if women were garrisoned inside. 11 hours ago, Stan` said: Did you add code ? You should use the generated pyrogenesis.sln. by runninfg update.workspaces.bat in build/workspaces. I haven't changed anything and nothing has been added. I opened the pyrogenesis.sln in VS and saw the image below. Everything is unavailable. Could it be because I am missing the dependencies? Is 2019 the wrong version of VS? I followed the build instrustions the best I could trying to chage the compiler to 2015, but failed to figure out how to do it. Quote Link to comment Share on other sites More sharing options...
Loki1950 Posted March 29, 2020 Report Share Posted March 29, 2020 You did not run update.workspaces.bat first that is where all the dependencies are assembled and built.You skipped a few other steps too.BTW the file you have displayed in VS is only for Linux not Windows. Enjoy the Choice 1 Quote Link to comment Share on other sites More sharing options...
Stan` Posted March 29, 2020 Report Share Posted March 29, 2020 Yes you need to install VS2015 alongside. You can use V2019, but you need the V2015 Toolset to compile the game. SInce you are on windows, update-workspaces.sh isn't for you (It's only for Mac and Linux) You can download visual studio 2015 here https://visualstudio.microsoft.com/vs/older-downloads/ 1 Quote Link to comment Share on other sites More sharing options...
Coronaut Posted March 30, 2020 Author Report Share Posted March 30, 2020 Not sure how I did it, but I got a successful run of the svn through VS. I now have the Pyrogenesis.sln working properly ( I think), and can now build and run the latest svn version in VS. The projects (atlas, collada, engine, etc...) you see in the picture from earlier all needed to be manually reloaded in the right-click dropdown menu for each. So, now the question is... What is all of this, and How do I use it to do what I want? Thank you for the help. Quote Link to comment Share on other sites More sharing options...
Loki1950 Posted March 30, 2020 Report Share Posted March 30, 2020 All this builds pyrogenisis.exe and the dll's that are not part of ones that ship with Windows in other words the whole engine the AI and GUI are defined by JavaScript and XML files in the public folder of the SVN tree BTW the latest version of the exe is also part of the full SVN download game play is also defined in the JavaScript files, Enjoy the Choice 1 Quote Link to comment Share on other sites More sharing options...
Stan` Posted March 30, 2020 Report Share Posted March 30, 2020 5 hours ago, Coronaut said: So, now the question is... What is all of this, and How do I use it to do what I want? First step is to create a mod. This can be done by adding a folder in your documents/My Games/0ad/mods folder and adding a little file called mod.json such as this one. { "name": "koronauts", "version": "1.0.0", "label": "Koronauts", "url": "https://wildfiregames.com/", "description": "Like Argonauts, but not quite.", "dependencies": ["0ad=0.0.24"] } Then you can start adding new files, or modifying existing ones by copying them over to you mod, at the same relative location. 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.