the project repository:
https://github.com/dhk-room101/YetRPG
I’m physically and visually challenged( quasi-disabled computer related), with a lot of free time and an active mind, but not enough able time. anyways, in my limited able time, to keep my mind occupied I do stuff, mostly reverse engineering, as is challenging and fun, plus statistically speaking reverse engineering requires a lot of thinking and less eyes/hands using, which mine are mostly useless. I’m using voice recognition software to interface with the computer, that solves the lack of hands usability issue, for the eyes issue, I currently don’t have any work around except high contrast, big fonts and good memory ![]()
Anyways, enough about me, let’s talk about why I’m here: as I mentioned I randomly do stuff to keep my mind occupied and in the past few months I wanted to see if porting the engine used in Dragon Age 1/2 is doable. Which it is, although the premise is based on an invalid inference: both Bioware NSS scripting and Unity C# scripting are IL and C like.
So awkwardly and slowly I did the following:
- Copy/paste of the _h classes from Dragon Age 1, available from their toolset, into Visual Studio 2015 where the unity integration enabled
- Similar for _core classes
- Finally both Dragon Age 1/2 have a script.ldf which is just a middleman in between the NSS and their proprietary engine
- I migrated some Excel files from the original game into XML via CSV, if you browse the code you will see my approach
So in my case I made a class where I dumped all the directives found in script.ldf from Dragon Age 2, and updated the syntax from _h and _core files from Dragon Age 1 if/when needed. For example, Dragon Age 2 uses ‘ref’ similar to modern C# whereas Dragon Age 1 doesn’t. Also because the original directives from script.ldf come with very good comments, it was just a matter of writing my own C# code to complete the missing ingredient which in Dragon Age 1/2 exists in their proprietary engine.
Of course, because of the state of my health, I couldn’t write C# code for all the directives, but I did so for enough of them to illustrate my current game design intentions. Regardless, there is enough code ready to prove my point, which is porting to unity. I personally did this for two major reasons:
- educational, for me because I’m not a programmer(in early 90s I took a Pascal class in high school though), and for others because it’s such a good piece of software that can be used as an insight of how to do things the right way when developing an RPG
- To keep my mind occupied because unfortunately it requires a high degree of empathy to understand what I’m going through daily in chronic pain and useless body, although unfortunately for me the mind seems to be operational/active, and watching TV doesn’t do anything for me
Finally, one of the main reasons I decided to make this project public is that I’m tired: imagine trying to run with heavy weights around your ankles, you probably are able to move forward but at infinitesimal speed, and there is no efficiency from the input of energy required to move compared to the output of velocity.
Here is what I got so far
https://onedrive.live.com/?id=408CADBD12872CD5!105&cid=408CADBD12872CD5&group=0
the project nickname is: ‘yet another RPG’, that’s why it’s called yetRPG
I cannot use Github client because it’s all white color and my eyes explode in an instance, and I didn’t find it in me to deal with it for now, maybe later when I would feel better
What I expect: the community to use this repository to learn, and also I wouldn’t mind if there is some willingness to help along and move this forward
It took me about an hour to write this, and it’s unlikely I can afford to have a strong online presence, but if you live in the bay area maybe we can hang out, I spend most of my time confined to a small room though, but for zoon politikon purposes I’m willing to make an effort and go outside ![]()