Jump to content
TrinityCore

Learning C++ and helping make commits


mmorganj
 Share

Recommended Posts

Hi all, 

New here, and I wanted to give you a little background. I began messing around with wow private servers back in high school with ArcEmu during the burning crusades, and a month ago I began messing around with trinity core 3.3.5a. First repacks, and then when I wanted to be able to control certain aspects of my game, like GCD for example, so I focused on modifying .cpp, .dbc files, and compiling modified files. I recently compiled the legion version and realized there's a lot of work to do. I've always found figuring things out more fun than actually playing the game. This kind of stuff has always intrigued me.

Anyway, I've got coding experience with skills in matlab and autoit and I majored in engineering from one of the top 3 schools in my field, but I've never coded in C++ or sql. I'd like to help out with scripting, database edits, and etc, but I don't know where to begin. Could anyone point me in the right direction, so I can fix things and make commits on my own? I'd love to have a new hobby and help you all out.

Message me. Reply to me. Whatever!

  • Upvote 1
Link to comment
Share on other sites

Hey mmorganj,

First of all, welcome to the community. It's great seeing people mature and getting off repacks, I just don't find one single benefit to repacks and It's even better when people come up (like you ;)) that want to contribute, even if it's for self learning, temporary experience, or being selfless in giving back to the very community that you seem to recognize. We can take all the help we can get, regardless of experience or background!

Now, with that said, I personally think the best way to get started is with the basic scripts. Learning to modify, change, or even add new scripts for quests, spells, events, etc...  If you are experienced with C++, learning C++, or just getting your feet wet for the first time with it, would be the best way to get the ball rolling.

With MySQL or any database, can be a breeze if you have the right tools to learn, and for the common person investing time can pick it up in a few weeks.. I personally use mysql client on Linux. Again, another personal experience to dive into learning how mysql works on an advanced aspect. For beginners, I think a lot of people use Windows and HeidiSQL is simple and easy since HeidiSQL (mysql gui) has a script output window that is very transparent on the exact commands it's doing while navigating through the GUI. If you would rather just jump into using Linux through a terminal client and get more advanced, let me know and I can get you started with those basic commands to get that ball rolling. Personally just not a Windows fan :P

Getting started, Well... there is so much to get going:

How to (to get going)

The issues we have (up to you on your pace for assisting), dissect how spells, waypoints, etc. work

SAI Scripts, this link has tools, questions, and basic understanding on how they work, etc..

Additional utilities (specifically for TC community to improve the experience and make it easy)

To be honest this community doesn't really teach how to code, but more of on what needs help and improvement. I would start by learning the basics of C++ like pointers, classes structs, etc...

If you choose to code something up, don't forget that we have standards before submitting a Pull Request (Code review) for the devs to research over before adding to the master (or flavor of branch you want to contribute)

 

  • Upvote 2
Link to comment
Share on other sites

  • 2 weeks later...
In my case my experience is with java and not with C ++. Although I imagine that the two have
certain resemblances since in theory both are Object Oriented Programming languages. 
I just have to study the declarations of data structures, types, methods and class 
structures. If you could suggest me some page it would be perfect.


 
Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...