Hello everyone,
I'm currently enrolled at school in which part of the curriculum is to be in a year long game project with other individuals within the same game class. Over the course of this summer, I developed a framework which I presented to them for us to use. It's not extremely amazing, but I do feel like it is a nice piece I have created that is both robust and flexible for additions and creating game content. Regarding the situations that I'm about to express, my background consists of coding for over 10 years through BASIC, Java, C# and C++ through academic and mainly personal project purposes.
The project with the group has been going on now for 5 weeks, started early September when I presented the documentation and framework to them, which this last week was our engine proof milestone; the presentation went well. (This is the documentation I presented to them: http://chazix-scripts.com/Documentation/ParadoxEngine/ParadoxEngineRev90414.pdf) However, throughout the events that lead up to this situation I was encountering situations that grew increasingly frustrating. Particularly between myself and one other individual, however beyond just the one individual I was beginning to feel increasingly disregarded, in terms of opinion and respect on particular systems for integrating into the framework. It was strange, they wouldn't come to the individual who created the framework, to ask how to integrate a particular something into the engine, it almost seemed as if I began to not exist to them. I was however the outsider to this group, they have been grouped together for a year prior to this semester beginning.
The situation that sparked my firing from the group revolves around this individual trying to implement an Introspection and Reflection system for serialization of our particular GameObjects and Components. There consisted of a wide range of templated functions for identifying the types and variables that were associated with a particular class / structure, and then outputting the serialized data to a file.
The main problem that sparked myself expressing verbal frustration with the group took place when this individual convinced everyone else in the group that, "We can't use constructors at all" as a conclusion to his problem when the problem stemmed from them just not being implemented in the first place, causing the linker errors. This frustration also heavily stemming from that particular individual convincing everyone else that they are right when the solution was right there in front of them. Which from my perspective translated to them not caring, looking for the easiest path and not respecting my opinion and thoughts on the situations. Before this, the same individual convinced everyone that we can't use private and protected data, where I disagreed. Upon being able to look at the problem the solution was to just create a member function to be called on engine initialization to bind that particular data type and it's members to the introspection and reflection system. Which, that verbal frustration I exerted lead the producer talking to various other instructors followed by the producer firing me.
I came to you all to hopefully help reflect on this situation. I am new to working amongst peers, at least only have been for a year or so in this sort of academical group environment. Can you help me point out maybe something that I did wrong, or maybe it's for the best. How can I be a better group member and leader when being the individual distributing the heart of the engine amongst future groups to come. I am now considered an independent I suppose and have to go find a new group, either make my own or join a studio group that is ran by an instructor. My professional and career goals are to work in the industry amongst other peers, I want to learn from this situation. The main problem now that I have to sort out is will they be able to keep this framework that I spent my summer and these past five weeks working on? (About 4k lines of code) I'll need to talk to the instructors and ask about the policy.
Thank you for any advice you can give me.