|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
THUNDERGROOVE
Fatal Absolution Negative-Feedback
1
|
Posted - 2015.05.20 20:19:00 -
[1] - Quote
Breakin Stuff wrote:Isa Lucifer wrote:Lets see what happens. Dust 514 will be on the ps3 for a couple of years thanks to innovation from the community and CCP.
"Necessity is the mother of invention. Now imagine what could be done with actual system resources I still think it's a good idea for them to attempt to lower the memory usage of Catma.
The problem is the way they generate the Catma database.
They have a utility written in C# that converts some folder structure that writes it into a Python object using an embedded Python implementation. From what I can tell it has an inheritance system to make adding new "skinned" or differently named versions and make changing only one attribute not requiring all the children types.
The Python object, catmaDB, is exported as a pickle and sent to clients as synchronizations along with other pickles. Adapter data, localization, etc..
One way they could easily lower the memory footprint without using any skin or power core system would be to add type inheritance to Catma directly. For example:
Let's say we have our 'Dragonfly' Scout G-1. Instead of it containing in it's type the same attributes that a normal Scout G-1 does we could instead have only a few differences.
we could have the following attributes:
- parentType: TypeID of a type to base all of it's attributes off of.
- mDisplayName: A string with the different name; in this case it's 'Dragonfly' Scout G-1
- mDescription: A different description.
- CCP's internal texture/coloration attributes that I won't post
In short the system would copy references to the attributes and apply the actual types attributes over the references allowing overriding of already in use attributes.
This would shave off tons of memory without exposing the end users to any change at all except fewer frame drops due to garbage collection.
Mace yourself, blame someone else itGÇÖs okay, no one will believe you
AIV member.
|
THUNDERGROOVE
Fatal Absolution Negative-Feedback
1
|
Posted - 2015.05.20 20:27:00 -
[2] - Quote
KalOfTheRathi wrote:It isn't necessary in PC games, at least for high end systems. Except it's the best way of doing it. Instead of patching local files it's much easier to generate an encoded data structure and have clients download this as a means of changing the way individual items behave.
Of course in a PC environment you have to handle people tapering with the file either on disk or in memory. Which isn't easy.
The best way of doing so would be to have very good server-side checks to verify the clients aren't doing anything too fishy.
Mace yourself, blame someone else itGÇÖs okay, no one will believe you
AIV member.
|
THUNDERGROOVE
Fatal Absolution Negative-Feedback
1
|
Posted - 2015.05.22 04:08:00 -
[3] - Quote
Operative 1174 Uuali wrote: Why aren't you working for CCP? Oh yeah, CCP's short sighted and you're not Icelandic.
I would have actually applied for a recent opening but I have no formal CS degree.
I've had recruiters on multiple occasions contact me about jobs and internships and all of them stop emailing back after I tell them I only have a Highschool diploma
KalOfTheRathi wrote:How did you discover this? I have yet to find an article discussing their internal workings.
Dumping my PS3's hardrive and decrypting it using my console keys.
I spent weeks going through all the files eventually found out that SDAT files that are shipped as full patches can be decrypted using the free game license stored in your PS3.
Opened the output files in a hex editor and noticed that the files had the same header of zip files. Turns out they're zips that you can add to sys.path (python)
The zips contained all the Python code for DUST. No raw source just Python bytecode. Ran it through Uncompyle2. Spend awhile digging through the Catma internals and learned a lot.
It's a really neat implementation and it's good at what it does. Just not as efficient as it could be.
KalOfTheRathi wrote: My concerns are the same. Without someone that understands project management (as in software project management) drives this then we are at the receiving end of their learning curve.
This all entirely depends. So long as the person who is in charge of management as a whole(The one who gets yelled at when **** hits the fan) is willing to accept mess ups and learn from it then it's alright in my book.
Learning from mistakes is a far better method that being lectured about it. I used to never write tests until I learned how much time it saves in the long run. All the time wasted figuring out what portion of my programs don't work would be better off running my tests and figuring out which one(s) fails.
Mace yourself, blame someone else itGÇÖs okay, no one will believe you
AIV member.
|
THUNDERGROOVE
Fatal Absolution Negative-Feedback
1
|
Posted - 2015.05.22 06:19:00 -
[4] - Quote
KalOfTheRathi wrote:words..
It all started because I simply wanted the information from the SDE that CCP didn't provide. One could call it drive?
In regards to a job in the field; I would say that I'm far more experienced than most my age. I'm only 19. I work in mainly C/Go and Python(as little as possible; dynamic typing is disgusting). I like being as platform agnostic as possible.
I've worked on all kinds of personal projects and even contributed to a lot of major open source projects yet most companies would rather hire some idiot who barely made it through their CS program to get a bachelors with no actual experience than someone who has actually worked on projects used by thousands of people and understands code-reviewing and test writing. Sure I may not have the best math background but I'm smart enough to figure it out.
I currently(actually laid off until August/September) work as a stage technician in a theater doing primarily live sound. It's cool and all but writing useful software is what I prefer doing.
We will see as time goes on though. This is getting way way off topic though
If you do have any questions about the internal workings of DUST; I've looked into more than Catma so just feel free to ask.
Mace yourself, blame someone else itGÇÖs okay, no one will believe you
AIV member.
|
|
|
|